[EGIT] [tools/eflete] eflete-1.18 07/91: export-edc: add the command option to set the export-edc path.

2017-01-23 Thread Jaehwan Kim
rimmed pushed a commit to branch eflete-1.18.

http://git.enlightenment.org/tools/eflete.git/commit/?id=1f4a56fd6f23b39381cc56dd918475ba4f6d6523

commit 1f4a56fd6f23b39381cc56dd918475ba4f6d6523
Author: Jaehwan Kim <jae.hwan@samsung.com>
Date:   Thu Sep 1 14:15:33 2016 +0900

export-edc: add the command option to set the export-edc path.

It should set PATH/FOLDER/FILE. If this option is enabled the file
browser is not shown and the edc file is exported in the previously
set path.

@feature
---
 src/bin/eflete.c   |  8 +++
 src/bin/eflete.h   |  5 
 src/bin/main.c | 28 +-
 .../project_manager/project_manager_export_edc.c   | 11 +++--
 src/bin/ui/menu.c  |  5 +++-
 src/bin/ui/project_export.c| 21 
 6 files changed, 70 insertions(+), 8 deletions(-)

diff --git a/src/bin/eflete.c b/src/bin/eflete.c
index fab8db6..9f79e76 100644
--- a/src/bin/eflete.c
+++ b/src/bin/eflete.c
@@ -132,6 +132,14 @@ app_shutdown()
  eina_stringshare_del(ap.path.edj_path);
if (ap.path.image_path)
  eina_stringshare_del(ap.path.image_path);
+   if (ap.path.export_edj)
+ eina_stringshare_del(ap.path.export_edj);
+   if (ap.path.export_edc.path)
+ eina_stringshare_del(ap.path.export_edc.path);
+   if (ap.path.export_edc.folder)
+ eina_stringshare_del(ap.path.export_edc.folder);
+   if (ap.path.export_edc.file)
+ eina_stringshare_del(ap.path.export_edc.file);
 
config_shutdown();
elm_theme_free(ap.theme);
diff --git a/src/bin/eflete.h b/src/bin/eflete.h
index dcaea44..6ada2be 100644
--- a/src/bin/eflete.h
+++ b/src/bin/eflete.h
@@ -135,6 +135,11 @@ struct _App_Data
   Eina_Stringshare *image_path;
   Eina_Stringshare *sound_path;
   Eina_Stringshare *export_edj;
+  struct {
+ Eina_Stringshare *path;
+ Eina_Stringshare *folder;
+ Eina_Stringshare *file;
+  } export_edc;
} path;
Project *project;
Shortcut_Module *shortcuts; /**< Structure with data from shortcuts module 
*/
diff --git a/src/bin/main.c b/src/bin/main.c
index 479cd17..c176219 100644
--- a/src/bin/main.c
+++ b/src/bin/main.c
@@ -32,6 +32,7 @@ static char *file = NULL;
 static char *pro_name = NULL;
 static char *pro_path = NULL;
 static char *export_edj = NULL;
+static char *export_edc = NULL;
 static Eina_List *img_dirs = NULL;
 static Eina_List *snd_dirs = NULL;
 static Eina_List *fnt_dirs = NULL;
@@ -62,7 +63,8 @@ static const Ecore_Getopt options = {
{
   ECORE_GETOPT_STORE_STR(0, "name", N_("Name for new project")),
   ECORE_GETOPT_STORE_STR(0, "path", N_("Path to project directory")),
-  ECORE_GETOPT_STORE_STR(0, "export-edj", N_("Export file path")),
+  ECORE_GETOPT_STORE_STR(0, "export-edj", N_("Export edj file path")),
+  ECORE_GETOPT_STORE_STR(0, "export-edc", N_("Export edc file path. This 
should include the path, folder and edc file name.(PATH/FOLDER/FILE)")),
   ECORE_GETOPT_APPEND_METAVAR('i', "id", "Add image directory for edc 
compilation", "DIR_NAME", ECORE_GETOPT_TYPE_STR),
   ECORE_GETOPT_APPEND_METAVAR('s', "sd", "Add sound directory for edc 
compilation", "DIR_NAME", ECORE_GETOPT_TYPE_STR),
   ECORE_GETOPT_APPEND_METAVAR('f', "fd", "Add font directory for edc 
compilation", "DIR_NAME", ECORE_GETOPT_TYPE_STR),
@@ -171,6 +173,28 @@ _new_project(void *data __UNUSED__)
tabs_home_tab_add(TAB_HOME_NEW_PROJECT);
 }
 
+static void
+_export_edc_path_set(char *export_edc)
+{
+   char tmp[256];
+   int len = 0, rlen = 0;
+
+   strcpy(tmp, export_edc);
+   len = strlen(tmp);
+   rlen = strlen(strrchr(tmp, '/'));
+   if (!rlen) return;
+   ap.path.export_edc.file = eina_stringshare_add(tmp + (len - rlen + 1));
+   tmp[len - rlen] = '\0';
+
+   len = strlen(tmp);
+   rlen = strlen(strrchr(tmp, '/'));
+   if (!rlen) return;
+   ap.path.export_edc.folder = eina_stringshare_add(tmp + (len - rlen + 1));
+   tmp[len - rlen] = '\0';
+
+   ap.path.export_edc.path = eina_stringshare_add(tmp);
+}
+
 EAPI_MAIN int
 elm_main(int argc, char **argv)
 {
@@ -183,6 +207,7 @@ elm_main(int argc, char **argv)
  ECORE_GETOPT_VALUE_STR(pro_name),
  ECORE_GETOPT_VALUE_STR(pro_path),
  ECORE_GETOPT_VALUE_STR(export_edj),
+ ECORE_GETOPT_VALUE_STR(export_edc),
  ECORE_GETOPT_VALUE_LIST(img_dirs),
  ECORE_GETOPT_VALUE_LIST(snd_dirs),
  ECORE_GETOPT_VALUE_LIST(fnt_dirs),
@@ -324,6 +349,7 @@ elm_main(int argc, char **argv)
 
 run:
 ap.path.export_edj = export_edj;
+_export_edc_path_set(export_edc);
 if (!ui_main_window_add())
   {
  app_shutdown();
diff --git a/src/

[EGIT] [tools/eflete] eflete-1.18 57/91: Tizen : fix the usage of the spinner in tizen

2017-01-23 Thread Jaehwan Kim
rimmed pushed a commit to branch eflete-1.18.

http://git.enlightenment.org/tools/eflete.git/commit/?id=6219490890a34ac211cabc0553bbcfb5bf07c78f

commit 6219490890a34ac211cabc0553bbcfb5bf07c78f
Author: Jaehwan Kim <jae.hwan@samsung.com>
Date:   Tue Sep 13 13:25:18 2016 +0900

Tizen : fix the usage of the spinner in tizen

The work of spinner is different in upstream and tizen.
If the "changed" callback of the spinner is called by api,
just return.
---
 src/bin/ui/property/property_common.c |   4 +
 src/bin/ui/property/property_group.c  | 197 ++
 2 files changed, 108 insertions(+), 93 deletions(-)

diff --git a/src/bin/ui/property/property_common.c 
b/src/bin/ui/property/property_common.c
index f16ddc9..55c3906 100644
--- a/src/bin/ui/property/property_common.c
+++ b/src/bin/ui/property/property_common.c
@@ -168,6 +168,10 @@ _start_change_stop_cb(void *data,
   Evas_Object *obj,
   void *event_info __UNUSED__)
 {
+#ifdef HAVE_TIZEN
+   Eina_Bool by_api = evas_object_data_get(obj, "by_api");
+   if (by_api) return;
+#endif
PROPERTY_DATA_GET(obj);
Property_Attribute *pa = data;
 
diff --git a/src/bin/ui/property/property_group.c 
b/src/bin/ui/property/property_group.c
index 7b93c82..8d8c38c 100644
--- a/src/bin/ui/property/property_group.c
+++ b/src/bin/ui/property/property_group.c
@@ -205,6 +205,17 @@ static const char *image_border_fill_strings[] = { 
STR_NONE,
"Default",
"Solid",
NULL};
+_spinner_value_set(Evas_Object *obj, double val)
+{
+#ifdef HAVE_TIZEN
+   evas_object_data_set(obj, "by_api", EINA_TRUE);
+#endif
+   elm_spinner_value_set(obj, val);
+#ifdef HAVE_TIZEN
+   evas_object_data_set(obj, "by_api", EINA_FALSE);
+#endif
+}
+
 /* defines for args */
 static inline const char *
 _part_name_get(void)
@@ -1770,19 +1781,19 @@ _update_cb(Property_Attribute *pa, Property_Action 
*action)
  return images_list == NULL;
   case ATTRIBUTE_GROUP_MIN_W:
  int_val1 = edje_edit_group_min_w_get(EDIT_OBJ);
- elm_spinner_value_set(action->control, int_val1);
+ _spinner_value_set(action->control, int_val1);
  return !int_val1;
   case ATTRIBUTE_GROUP_MIN_H:
  int_val1 = edje_edit_group_min_h_get(EDIT_OBJ);
- elm_spinner_value_set(action->control, int_val1);
+ _spinner_value_set(action->control, int_val1);
  return !int_val1;
   case ATTRIBUTE_GROUP_MAX_W:
  int_val1 = edje_edit_group_max_w_get(EDIT_OBJ);
- elm_spinner_value_set(action->control, int_val1);
+ _spinner_value_set(action->control, int_val1);
  return !int_val1;
   case ATTRIBUTE_GROUP_MAX_H:
  int_val1 = edje_edit_group_max_h_get(EDIT_OBJ);
- elm_spinner_value_set(action->control, int_val1);
+ _spinner_value_set(action->control, int_val1);
  return !int_val1;
   case ATTRIBUTE_PART_NAME:
  property_entry_set(action->control, PART_ARGS);
@@ -1854,27 +1865,27 @@ _update_cb(Property_Attribute *pa, Property_Action 
*action)
  return editor_part_text_shadow_direction_default_is(EDIT_OBJ, 
PART_ARGS);
   case ATTRIBUTE_PART_DRAG_X:
  int_val1 = edje_edit_part_drag_x_get(EDIT_OBJ, PART_ARGS);
- elm_spinner_value_set(action->control, int_val1);
+ _spinner_value_set(action->control, int_val1);
  return editor_part_drag_x_default_is(EDIT_OBJ, PART_ARGS);
   case ATTRIBUTE_PART_DRAG_Y:
  int_val1 = edje_edit_part_drag_y_get(EDIT_OBJ, PART_ARGS);
- elm_spinner_value_set(action->control, int_val1);
+ _spinner_value_set(action->control, int_val1);
  return editor_part_drag_y_default_is(EDIT_OBJ, PART_ARGS);
   case ATTRIBUTE_PART_DRAG_STEP_X:
  int_val1 = edje_edit_part_drag_step_x_get(EDIT_OBJ, PART_ARGS);
- elm_spinner_value_set(action->control, int_val1);
+ _spinner_value_set(action->control, int_val1);
  return editor_part_drag_step_x_default_is(EDIT_OBJ, PART_ARGS);
   case ATTRIBUTE_PART_DRAG_STEP_Y:
  int_val1 = edje_edit_part_drag_step_y_get(EDIT_OBJ, PART_ARGS);
- elm_spinner_value_set(action->control, int_val1);
+ _spinner_value_set(action->control, int_val1);
  return editor_part_drag_step_y_default_is(EDIT_OBJ, PART_ARGS);
   case ATTRIBUTE_PART_DRAG_COUNT_X:
  int_val1 = edje_edit_part_drag_count_x_get(EDIT_OBJ, PART_ARGS);
- elm_spinner_value_set(action->control, int_val1);
+ _spinner_value_set(action->control, int_val1);
  return editor_part_drag_count_x_default_is(EDIT_OBJ, PART_ARGS);
   case ATTRIBUTE_PART_DRAG_COUNT_Y:

[EGIT] [tools/eflete] eflete-1.18 89/91: tab_home: fix a segment fault

2017-01-23 Thread Jaehwan Kim
rimmed pushed a commit to branch eflete-1.18.

http://git.enlightenment.org/tools/eflete.git/commit/?id=25926cab4bd13271d7a1fa7901729bd615743c18

commit 25926cab4bd13271d7a1fa7901729bd615743c18
Author: Jaehwan Kim <jae.hwan@samsung.com>
Date:   Wed Sep 21 17:07:29 2016 +0900

tab_home: fix a segment fault
---
 src/bin/ui/tab_home_import_edj.c | 5 ++---
 1 file changed, 2 insertions(+), 3 deletions(-)

diff --git a/src/bin/ui/tab_home_import_edj.c b/src/bin/ui/tab_home_import_edj.c
index f01ab8d..28c3369 100644
--- a/src/bin/ui/tab_home_import_edj.c
+++ b/src/bin/ui/tab_home_import_edj.c
@@ -708,16 +708,15 @@ _tab_import_edj_data_set(const char *name, const char 
*path, const char *edj, co
 if (!item)
   {
  item = elm_genlist_first_item_get(tab_edj.genlist);
- do
+ while (item)
{
   node = elm_object_item_data_get(item);
   if (!strcmp(node->name, "elm/"))
 break;
   item = elm_genlist_item_next_get(item);
}
- while (item);
   }
-if (node->list)
+if (node && node->list)
   {
  EINA_LIST_FOREACH(node->list, l1, sub)
  {

-- 




[EGIT] [tools/eflete] eflete-1.18 79/91: export: fix to call the popup dismiss.

2017-01-23 Thread Jaehwan Kim
rimmed pushed a commit to branch eflete-1.18.

http://git.enlightenment.org/tools/eflete.git/commit/?id=1576fed33adf7da6183e3ebdb4a4bc30e6076891

commit 1576fed33adf7da6183e3ebdb4a4bc30e6076891
Author: Jaehwan Kim <jae.hwan@samsung.com>
Date:   Mon Sep 19 17:04:14 2016 +0900

export: fix to call the popup dismiss.

If the export is executed by command option, don't call the function
that is related to popup.
---
 src/bin/ui/project_export.c | 9 ++---
 1 file changed, 6 insertions(+), 3 deletions(-)

diff --git a/src/bin/ui/project_export.c b/src/bin/ui/project_export.c
index 1e44af2..5c9e184 100644
--- a/src/bin/ui/project_export.c
+++ b/src/bin/ui/project_export.c
@@ -46,7 +46,8 @@ _after_export_dev_check(void *data)
ap.splash = splash_add(ap.win, _export_develop_setup, _export_teardown, 
NULL, data);
evas_object_focus_set(ap.splash, true);
evas_object_show(ap.splash);
-   popup_fileselector_helper_dismiss();
+   if (!ap.path.export_edj)
+ popup_fileselector_helper_dismiss();
 }
 
 static Eina_Bool
@@ -122,7 +123,8 @@ _after_export_release_check(void *data)
NULL, data);
evas_object_focus_set(ap.splash, true);
evas_object_show(ap.splash);
-   popup_fileselector_helper_dismiss();
+   if (!ap.path.export_edj)
+ popup_fileselector_helper_dismiss();
 }
 
 static Eina_Bool
@@ -202,7 +204,8 @@ _after_export_source_code_check(void *data)
ap.splash = splash_add(ap.win, _export_source_code_setup, _export_teardown, 
NULL, data);
evas_object_focus_set(ap.splash, true);
evas_object_show(ap.splash);
-   popup_fileselector_helper_dismiss();
+   if (!ap.path.export_edc.path)
+ popup_fileselector_helper_dismiss();
 }
 
 static Eina_Bool

-- 




[EGIT] [tools/eflete] eflete-1.18 08/91: export-edc: fix segment fault.

2017-01-23 Thread Jaehwan Kim
rimmed pushed a commit to branch eflete-1.18.

http://git.enlightenment.org/tools/eflete.git/commit/?id=3c80179731293e2bd5df66c214a8c99a4b3575c6

commit 3c80179731293e2bd5df66c214a8c99a4b3575c6
Author: Jaehwan Kim <jae.hwan@samsung.com>
Date:   Thu Sep 1 18:09:22 2016 +0900

export-edc: fix segment fault.
---
 src/bin/main.c | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/src/bin/main.c b/src/bin/main.c
index c176219..093043e 100644
--- a/src/bin/main.c
+++ b/src/bin/main.c
@@ -349,7 +349,8 @@ elm_main(int argc, char **argv)
 
 run:
 ap.path.export_edj = export_edj;
-_export_edc_path_set(export_edc);
+if (export_edc)
+  _export_edc_path_set(export_edc);
 if (!ui_main_window_add())
   {
  app_shutdown();

-- 




[EGIT] [tools/eflete] master 01/01: style manager: change the method to show the tags

2017-01-12 Thread Jaehwan Kim
jaehwan pushed a commit to branch master.

http://git.enlightenment.org/tools/eflete.git/commit/?id=066ce3a24f55525aaaf6a479c157a50fba5fde6c

commit 066ce3a24f55525aaaf6a479c157a50fba5fde6c
Author: Jaehwan Kim <jae.hwan@samsung.com>
Date:   Thu Jan 12 17:53:24 2017 +0900

style manager: change the method to show the tags

1. remove the unless tags.
2. remove "DEFAULT" tag. and show it when style item is clicked.
3. Default tag is applied to all other tags.
---
 src/bin/ui/style_manager.c | 49 --
 1 file changed, 34 insertions(+), 15 deletions(-)

diff --git a/src/bin/ui/style_manager.c b/src/bin/ui/style_manager.c
index 332c685..5113106 100644
--- a/src/bin/ui/style_manager.c
+++ b/src/bin/ui/style_manager.c
@@ -117,17 +117,27 @@ _on_glit_selected(void *data __UNUSED__,
glit = (Elm_Object_Item *)event_info;
glit_parent = elm_genlist_item_parent_get(glit);
 
-   if (!glit_parent) return;
+   if (!glit_parent)
+ {
+style_name = (char *)elm_object_item_data_get(glit);
+tag = STYLE_DEFAULT;
+ }
+   else
+ {
+style_name = elm_object_item_data_get(glit_parent);
+tag = (char *)elm_object_item_data_get(glit);
+ }
 
style = eina_strbuf_new();
eina_strbuf_append(style, STYLE_DEFAULT"='"STYLE_DEFAULT_VALUE);
 
-   style_name = elm_object_item_data_get(glit_parent);
-   tag = (char *)elm_object_item_data_get(glit);
-   if (!strcmp(tag, STYLE_DEFAULT))
- elm_object_disabled_set(mng.button_del, true);
-   value = edje_edit_style_tag_value_get(ap.project->global_object, 
style_name, tag);
+   value = edje_edit_style_tag_value_get(ap.project->global_object, 
style_name, STYLE_DEFAULT);
eina_strbuf_append(style, value);
+   if (strcmp(tag, STYLE_DEFAULT))
+ {
+value = edje_edit_style_tag_value_get(ap.project->global_object, 
style_name, tag);
+eina_strbuf_append(style, value);
+ }
 
elm_object_signal_emit(mng.entry_prev, "entry,show", "eflete");
eina_strbuf_append(style, "'");
@@ -621,19 +631,28 @@ _expanded_cb(void *data __UNUSED__,
 {
Elm_Object_Item *glit = (Elm_Object_Item *)event_info;
const char *name = elm_object_item_data_get(glit);
-   Eina_List *tags, *l_tg;
+   Eina_List *l, *l_tg;
Elm_Object_Item *glit_tag;
-   char *tag;
+   Style2 *style;
+   Style_Tag2 *tag;
 
-   tags = edje_edit_style_tags_list_get(ap.project->global_object, name);
-   EINA_LIST_FOREACH(tags, l_tg, tag)
+   EINA_LIST_FOREACH(ap.project->RM.styles, l, style)
  {
-glit_tag = elm_genlist_item_append(mng.genlist, _itc_tags,
-   tag, glit, ELM_GENLIST_ITEM_NONE,
-   _on_glit_selected, NULL);
-elm_object_item_data_set(glit_tag, tag);
+if (!strcmp(style->common.name, name))
+  {
+ EINA_LIST_FOREACH(style->tags, l_tg, tag)
+   {
+  if (strcmp(tag->common.name, STYLE_DEFAULT))
+{
+   glit_tag = elm_genlist_item_append(mng.genlist, 
_itc_tags,
+  tag->common.name, 
glit, ELM_GENLIST_ITEM_NONE,
+  _on_glit_selected, 
NULL);
+   elm_object_item_data_set(glit_tag, (char 
*)tag->common.name);
+}
+   }
+ return;
+  }
  }
-   eina_list_free(tags);
 }
 
 static void

-- 




[EGIT] [tools/eflete] master 01/01: style manager: hide the preview after deleting tag item.

2017-01-09 Thread Jaehwan Kim
jaehwan pushed a commit to branch master.

http://git.enlightenment.org/tools/eflete.git/commit/?id=b98d350371b6036bfb8f1649e3456c73df79da05

commit b98d350371b6036bfb8f1649e3456c73df79da05
Author: Jaehwan Kim <jae.hwan@samsung.com>
Date:   Tue Jan 10 13:19:01 2017 +0900

style manager: hide the preview after deleting tag item.
---
 src/bin/ui/style_manager.c | 1 +
 1 file changed, 1 insertion(+)

diff --git a/src/bin/ui/style_manager.c b/src/bin/ui/style_manager.c
index 4501d04..332c685 100644
--- a/src/bin/ui/style_manager.c
+++ b/src/bin/ui/style_manager.c
@@ -355,6 +355,7 @@ _btn_del_cb(void *data __UNUSED__,
 style_name = elm_object_item_data_get(glit_parent);
 tag = elm_object_item_data_get(glit);
 CRIT_ON_FAIL(editor_style_tag_del(edje_edit_obj, style_name, tag));
+elm_object_signal_emit(mng.entry_prev, "entry,hide", "eflete");
  }
 
elm_object_item_del(glit);

-- 




[EGIT] [tools/eflete] master 02/02: resource_manager_react: fix the crash.

2017-01-09 Thread Jaehwan Kim
jaehwan pushed a commit to branch master.

http://git.enlightenment.org/tools/eflete.git/commit/?id=d3b1801fd0797853df732b0056a4166b4d4c9ed1

commit d3b1801fd0797853df732b0056a4166b4d4c9ed1
Author: Jaehwan Kim <jae.hwan@samsung.com>
Date:   Mon Jan 9 17:48:23 2017 +0900

resource_manager_react: fix the crash.

If style_tag is null, it occurs crash.
But this is temporary solution.
The style tag list is not matching with added genlist items.
It should be fixed right way.
---
 src/bin/resource_manager/resource_manager_react.c | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/src/bin/resource_manager/resource_manager_react.c 
b/src/bin/resource_manager/resource_manager_react.c
index f9c19da..f1d6f99 100644
--- a/src/bin/resource_manager/resource_manager_react.c
+++ b/src/bin/resource_manager/resource_manager_react.c
@@ -78,7 +78,8 @@ _property_resource_attribute_changed(void *data,
   change->style_name);
  style_tag = (Style_Tag2 *)resource_manager_find(style_res->tags,
  change->tag_name);
- _resource_style_tag_free(style_tag);
+ if (style_tag)
+   _resource_style_tag_free(style_tag);
  break;
   default:
  break;

-- 




[EGIT] [tools/eflete] master 01/02: resource manager: hide the preview after deleting item.

2017-01-09 Thread Jaehwan Kim
jaehwan pushed a commit to branch master.

http://git.enlightenment.org/tools/eflete.git/commit/?id=fccc08adeacc84748c72ca72ff4661a71c9ae75e

commit fccc08adeacc84748c72ca72ff4661a71c9ae75e
Author: Jaehwan Kim <jae.hwan@samsung.com>
Date:   Mon Jan 9 17:41:30 2017 +0900

resource manager: hide the preview after deleting item.
---
 src/bin/ui/colorclass_manager.c | 3 ++-
 src/bin/ui/style_manager.c  | 1 +
 2 files changed, 3 insertions(+), 1 deletion(-)

diff --git a/src/bin/ui/colorclass_manager.c b/src/bin/ui/colorclass_manager.c
index 2cdf7d1..7328198 100644
--- a/src/bin/ui/colorclass_manager.c
+++ b/src/bin/ui/colorclass_manager.c
@@ -152,6 +152,7 @@ _colorclass_del_cb(void *data __UNUSED__,
Elm_Object_Item *it = elm_genlist_selected_item_get(mng.genlist);
Elm_Object_Item *next = elm_genlist_item_next_get(it);
Colorclass_Item *ccl = elm_object_item_data_get(it);
+   if (!next) next = elm_genlist_item_prev_get(it);
 
CRIT_ON_FAIL(editor_color_class_del(ap.project->global_object, ccl->name, 
true));
elm_object_item_del(it);
@@ -184,13 +185,13 @@ _colorclass_del_cb(void *data __UNUSED__,
  }
 #endif
 
-   if (!next) next = elm_genlist_item_prev_get(it);
if (next)
   elm_genlist_item_selected_set(next, EINA_TRUE);
else
  {
 mng.current_ccl = NULL;
 elm_object_disabled_set(mng.del_button, EINA_TRUE);
+elm_object_signal_emit(mng.preview_layout, "entry,hide", "eflete");
 evas_object_smart_callback_call(ap.win, SIGNAL_COLOR_SELECTED, NULL);
  }
 }
diff --git a/src/bin/ui/style_manager.c b/src/bin/ui/style_manager.c
index d52d6d6..4501d04 100644
--- a/src/bin/ui/style_manager.c
+++ b/src/bin/ui/style_manager.c
@@ -348,6 +348,7 @@ _btn_del_cb(void *data __UNUSED__,
 style_name = elm_object_item_data_get(glit);
 CRIT_ON_FAIL(editor_style_del(edje_edit_obj, style_name, true));
 evas_object_smart_callback_call(ap.win, 
SIGNAL_EDITOR_ATTRIBUTE_CHANGED, );
+elm_object_signal_emit(mng.entry_prev, "entry,hide", "eflete");
  }
else
  {

-- 




[EGIT] [tools/eflete] master 01/02: fix build error.

2017-01-02 Thread Jaehwan Kim
jaehwan pushed a commit to branch master.

http://git.enlightenment.org/tools/eflete.git/commit/?id=88630ef6806f273c8a05635b56c0e86f4c4713a8

commit 88630ef6806f273c8a05635b56c0e86f4c4713a8
Author: Jaehwan Kim <jae.hwan@samsung.com>
Date:   Tue Jan 3 15:07:23 2017 +0900

fix build error.
---
 src/bin/project_manager/project_manager2.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/src/bin/project_manager/project_manager2.c 
b/src/bin/project_manager/project_manager2.c
index 78a468f..3eaacac 100644
--- a/src/bin/project_manager/project_manager2.c
+++ b/src/bin/project_manager/project_manager2.c
@@ -424,7 +424,7 @@ _project_lock(Project *project)
dir = ecore_file_dir_get(project->pro_path);
snprintf(path, sizeof(path), "%s/"LOCK_FILE, dir);
free(dir);
-   project->fd_lock = open(path, O_RDWR | O_CREAT);
+   project->fd_lock = open(path, O_RDWR | O_CREAT, S_IROTH | S_IWOTH);
if (!project->fd_lock)
  {
 ERR("%s: %s\n", path, strerror(errno));

-- 




[EGIT] [tools/eflete] master 02/02: groupview: set the edje object scale to own base scale.

2017-01-02 Thread Jaehwan Kim
jaehwan pushed a commit to branch master.

http://git.enlightenment.org/tools/eflete.git/commit/?id=815cee6902c325ae9cc73cc1635b670863a1b0c7

commit 815cee6902c325ae9cc73cc1635b670863a1b0c7
Author: Jaehwan Kim <jae.hwan@samsung.com>
Date:   Tue Jan 3 15:09:04 2017 +0900

groupview: set the edje object scale to own base scale.

If the scale is different with base scale, it changes the size of
the highlight area.
---
 src/bin/ui/workspace/groupview.c | 1 +
 1 file changed, 1 insertion(+)

diff --git a/src/bin/ui/workspace/groupview.c b/src/bin/ui/workspace/groupview.c
index b01e181..2b917b9 100644
--- a/src/bin/ui/workspace/groupview.c
+++ b/src/bin/ui/workspace/groupview.c
@@ -276,6 +276,7 @@ groupview_add(Evas_Object *parent, Group2 *group)
TODO("set the state for all parts to default 0.0")
sd->group = group;
evas_object_smart_member_add(sd->group->edit_object, obj);
+   edje_object_scale_set(sd->group->edit_object, 
edje_object_base_scale_get(sd->group->edit_object));
 
sd->box = elm_box_add(parent);
elm_box_layout_set(sd->box, _parts_stack_layout, sd, NULL);

-- 




[EGIT] [tools/eflete] master 02/02: reorder the calling expanded_set.

2016-12-28 Thread Jaehwan Kim
jaehwan pushed a commit to branch master.

http://git.enlightenment.org/tools/eflete.git/commit/?id=5097b0c42f703ffed8f4780a35973ee5e3158d76

commit 5097b0c42f703ffed8f4780a35973ee5e3158d76
Author: Jaehwan Kim <jae.hwan@samsung.com>
Date:   Thu Dec 29 13:31:33 2016 +0900

reorder the calling expanded_set.

Current genlist show or bring_in to the chilren items of last expanded item
So sometimes the group content navigator bring_in to the last items.
To fix this situation, reorder the calling expanded_set.
As a result, the first expand item is called the last time.
---
 src/bin/ui/workspace/group_navigator.c | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/src/bin/ui/workspace/group_navigator.c 
b/src/bin/ui/workspace/group_navigator.c
index 5c800cc..818491d 100644
--- a/src/bin/ui/workspace/group_navigator.c
+++ b/src/bin/ui/workspace/group_navigator.c
@@ -2635,9 +2635,9 @@ group_navigator_add(Evas_Object *parent, Group2 *group)
  elm_object_disabled_set(pl->layout, true);
else
  {
-elm_genlist_item_expanded_set(pl->parts_caption_item, true);
-elm_genlist_item_expanded_set(pl->programs_caption_item, true);
 elm_genlist_item_expanded_set(pl->data_caption_item, true);
+elm_genlist_item_expanded_set(pl->programs_caption_item, true);
+elm_genlist_item_expanded_set(pl->parts_caption_item, true);
  }
 
evas_object_event_callback_add(pl->layout, EVAS_CALLBACK_DEL, 
_group_navigator_del, pl);

-- 




[EGIT] [tools/eflete] master 01/02: fix build error.

2016-12-28 Thread Jaehwan Kim
jaehwan pushed a commit to branch master.

http://git.enlightenment.org/tools/eflete.git/commit/?id=f769a7b08d449940bdf09994020ba2a33911af44

commit f769a7b08d449940bdf09994020ba2a33911af44
Author: Jaehwan Kim <jae.hwan@samsung.com>
Date:   Thu Dec 29 13:30:38 2016 +0900

fix build error.
---
 src/lib/ewe_ruler.eo | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/src/lib/ewe_ruler.eo b/src/lib/ewe_ruler.eo
index 2f5009d..5330afe 100644
--- a/src/lib/ewe_ruler.eo
+++ b/src/lib/ewe_ruler.eo
@@ -314,9 +314,9 @@ class Ewe.Ruler (Elm.Widget)
implements {
   class.constructor;
   Efl.Object.constructor;
-  Efl.Gfx.size.set;
-  Efl.Gfx.position.set;
-  Efl.Gfx.visible.set;
+  Efl.Gfx.size { set; }
+  Efl.Gfx.position { set; }
+  Efl.Gfx.visible { set; }
   Efl.Canvas.Group.group_add;
   Efl.Canvas.Group.group_del;
   Efl.Canvas.Group.group_calculate;

-- 




[EGIT] [tools/eflete] master 01/01: property_sound: fix the range of frequency.

2016-12-26 Thread Jaehwan Kim
jaehwan pushed a commit to branch master.

http://git.enlightenment.org/tools/eflete.git/commit/?id=1df2213b7af199b56af6393db299063ee310c841

commit 1df2213b7af199b56af6393db299063ee310c841
Author: Jaehwan Kim <jae.hwan@samsung.com>
Date:   Tue Dec 27 13:01:52 2016 +0900

property_sound: fix the range of frequency.

The range should be 20-2.

@fix
---
 src/bin/ui/property/property_sound.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/src/bin/ui/property/property_sound.c 
b/src/bin/ui/property/property_sound.c
index b383ab1..160030e 100644
--- a/src/bin/ui/property/property_sound.c
+++ b/src/bin/ui/property/property_sound.c
@@ -93,7 +93,7 @@ _init_cb(Property_Attribute *pa, Property_Action *action)
  elm_spinner_label_format_set(action->control, "%.2f");
  break;
   case PROPERTY_SOUND_ITEM_FREQ:
- elm_spinner_min_max_set(action->control, 200, 2);
+ elm_spinner_min_max_set(action->control, 20, 2);
  elm_object_disabled_set(action->control, true);
  break;
 #ifdef HAVE_AUDIO

-- 




[EGIT] [core/efl] master 01/02: edje_pick: add vector resources into the output file.

2016-12-22 Thread Jaehwan Kim
jaehwan pushed a commit to branch master.

http://git.enlightenment.org/core/efl.git/commit/?id=65b7ab95bc5eb0da3a982dc44d2dbce2f092b097

commit 65b7ab95bc5eb0da3a982dc44d2dbce2f092b097
Author: Jaehwan Kim <jae.hwan@samsung.com>
Date:   Fri Dec 23 13:10:14 2016 +0900

edje_pick: add vector resources into the output file.
---
 src/bin/edje/edje_pick.c | 130 ++-
 1 file changed, 129 insertions(+), 1 deletion(-)

diff --git a/src/bin/edje/edje_pick.c b/src/bin/edje/edje_pick.c
index b856115..c7d41f6 100644
--- a/src/bin/edje/edje_pick.c
+++ b/src/bin/edje/edje_pick.c
@@ -64,6 +64,7 @@ struct _Edje_Pick_File_Params
Eina_List *luascriptlist;
Eina_List *imagelist;
Eina_List *imagesetlist;  /* List of IDs (Edje_Pick_Data) for image sets */
+   Eina_List *vectorlist;
Eina_List *samplelist;
Eina_List *tonelist;
Eina_List *vibrationlist;
@@ -238,6 +239,9 @@ _edje_pick_cleanup(Eina_List *ifs, Edje_File *out_file, 
Edje_Pick_Status s)
 _edje_pick_data_free(p->imagelist);
 p->imagelist = NULL;
 
+_edje_pick_data_free(p->vectorlist);
+p->vectorlist = NULL;
+
 _edje_pick_data_free(p->imagesetlist);
 p->imagesetlist = NULL;
 
@@ -861,7 +865,7 @@ _edje_pick_images_copy(Edje_File *edf, Edje_File *o)
int old_id;
Eina_Bool status = EDJE_PICK_NO_ERROR;
Eina_List *l, *l1;
-   Edje_Pick_Data *image, *set;
+   Edje_Pick_Data *image, *set, *vector;
 
if (edf->image_dir)
  {
@@ -934,6 +938,38 @@ _edje_pick_images_copy(Edje_File *edf, Edje_File *o)
 }
}
   }
+
+if (edf->image_dir->vectors)
+  {  /* Copy vector dir entries of current file */
+ Edje_Vector_Directory_Entry *vectors = NULL;
+
+ EINA_LIST_FOREACH(context.current_file->vectorlist, l, vector)
+   {
+  if (vector->id.used)
+{
+   o->image_dir->vectors_count += 1;
+
+   /* alloc mem first time  or  re-allocate again (bigger 
array) */
+   vectors = realloc(o->image_dir->vectors,
+ o->image_dir->vectors_count *
+ sizeof(Edje_Vector_Directory_Entry));
+   if (!vectors)
+ {
+EINA_LOG_ERR("Out of memory in realloc()");
+return EDJE_PICK_IMAGE_NOT_FOUND;
+ }
+   o->image_dir->vectors = vectors;
+
+   old_id = _edje_pick_image_old_id_get(
+ context.current_file->vectorlist, 
o->image_dir->vectors_count - 1);
+   /* Concatinate current file vectors to re-allocaed 
array */
+   
memcpy(>image_dir->vectors[o->image_dir->vectors_count - 1],
+  >image_dir->vectors[old_id],
+  sizeof(Edje_Vector_Directory_Entry));
+   o->image_dir->vectors[o->image_dir->vectors_count - 
1].id = vector->id.new_id;
+}
+   }
+  }
  }
 
return status;
@@ -1267,6 +1303,68 @@ _edje_pick_image_set_add(int id, Edje_File *edf, 
Edje_File *o)
return current_set_id;
 }
 
+static int
+_edje_pick_vector_entry_add(int id, Edje_File *edf, Edje_File *o)
+{
+   char buf[1024];
+   int size;
+   void *data;
+   static int current_vg_id = -1;
+
+   int new_id = _edje_pick_image_new_id_get(context.current_file->vectorlist, 
id);
+   if (new_id >= 0) return new_id;
+
+   if (edf->image_dir)
+ {
+if (!o->image_dir)  /* First time only */
+  o->image_dir = calloc(1, sizeof(*(o->image_dir)));
+
+if (edf->image_dir->vectors)
+  { /* Copy Vectors */
+ Edje_Vector_Directory_Entry *vg = >image_dir->vectors[id];
+
+ snprintf(buf, sizeof(buf), "edje/vectors/%i", vg->id);
+ VERBOSE(EINA_LOG_INFO("Trying to read <%s>\n", vg->entry));
+ data = eet_read(edf->ef, buf, );
+ if (size)
+   {  /* Advance vector ID and register this in vectorlist */
+  current_vg_id++;
+  Edje_Pick_Data *vector = malloc(sizeof(*vector));
+
+  vector->filename = eina_stringshare_add(vg->entry);
+  vector->data = data;
+  vector->size = size;
+  vector->entry = (void *) vg;  /* for output file vector dir 
*/
+  vector->id.old_id = vg->id;
+  vg->id = vector->id.new_id = current_vg_id;
+  vector->id.used = EINA_TRUE;
+
+  VERBO

[EGIT] [core/efl] master 02/02: edje_data: add the missed vector data.

2016-12-22 Thread Jaehwan Kim
jaehwan pushed a commit to branch master.

http://git.enlightenment.org/core/efl.git/commit/?id=05521763ed66bdbf563ce95bfe0944556c6aede9

commit 05521763ed66bdbf563ce95bfe0944556c6aede9
Author: Jaehwan Kim <jae.hwan@samsung.com>
Date:   Fri Dec 23 13:11:14 2016 +0900

edje_data: add the missed vector data.
---
 src/lib/edje/edje_data.c | 10 ++
 1 file changed, 10 insertions(+)

diff --git a/src/lib/edje/edje_data.c b/src/lib/edje/edje_data.c
index 0af3b13..df21571 100644
--- a/src/lib/edje/edje_data.c
+++ b/src/lib/edje/edje_data.c
@@ -17,6 +17,7 @@ Eet_Data_Descriptor *_edje_edd_edje_image_directory = NULL;
 Eet_Data_Descriptor *_edje_edd_edje_image_directory_entry = NULL;
 Eet_Data_Descriptor *_edje_edd_edje_image_directory_set = NULL;
 Eet_Data_Descriptor *_edje_edd_edje_image_directory_set_entry = NULL;
+Eet_Data_Descriptor *_edje_edd_edje_vector_directory_entry = NULL;
 Eet_Data_Descriptor *_edje_edd_edje_model_directory = NULL;
 Eet_Data_Descriptor *_edje_edd_edje_model_directory_entry = NULL;
 Eet_Data_Descriptor *_edje_edd_edje_limit = NULL;
@@ -670,6 +671,7 @@ _edje_edd_shutdown(void)
FREED(_edje_edd_edje_image_directory_entry);
FREED(_edje_edd_edje_image_directory_set);
FREED(_edje_edd_edje_image_directory_set_entry);
+   FREED(_edje_edd_edje_vector_directory_entry);
FREED(_edje_edd_edje_model_directory);
FREED(_edje_edd_edje_model_directory_entry);
FREED(_edje_edd_edje_limit);
@@ -818,11 +820,19 @@ _edje_edd_init(void)
EET_DATA_DESCRIPTOR_ADD_BASIC(_edje_edd_edje_image_directory_set, 
Edje_Image_Directory_Set, "id", id, EET_T_INT);
EET_DATA_DESCRIPTOR_ADD_LIST(_edje_edd_edje_image_directory_set, 
Edje_Image_Directory_Set, "entries", entries, 
_edje_edd_edje_image_directory_set_entry);
 
+   /* vector directory */
+   EET_EINA_FILE_DATA_DESCRIPTOR_CLASS_SET(, Edje_Vector_Directory_Entry);
+   _edje_edd_edje_vector_directory_entry =
+ eet_data_descriptor_file_new();
+   EET_DATA_DESCRIPTOR_ADD_BASIC(_edje_edd_edje_vector_directory_entry, 
Edje_Vector_Directory_Entry, "entry", entry, EET_T_STRING);
+   EET_DATA_DESCRIPTOR_ADD_BASIC(_edje_edd_edje_vector_directory_entry, 
Edje_Vector_Directory_Entry, "id", id, EET_T_INT);
+
EET_EINA_FILE_DATA_DESCRIPTOR_CLASS_SET(, Edje_Image_Directory);
_edje_edd_edje_image_directory =
  eet_data_descriptor_file_new();
EET_DATA_DESCRIPTOR_ADD_VAR_ARRAY(_edje_edd_edje_image_directory, 
Edje_Image_Directory, "entries", entries, _edje_edd_edje_image_directory_entry);
EET_DATA_DESCRIPTOR_ADD_VAR_ARRAY(_edje_edd_edje_image_directory, 
Edje_Image_Directory, "sets", sets, _edje_edd_edje_image_directory_set);
+   EET_DATA_DESCRIPTOR_ADD_VAR_ARRAY(_edje_edd_edje_image_directory, 
Edje_Image_Directory, "vectors", vectors, 
_edje_edd_edje_vector_directory_entry);
 
/*MO*/
 

-- 




[EGIT] [tools/eflete] master 01/01: icon: add vector icon.

2016-12-21 Thread Jaehwan Kim
jaehwan pushed a commit to branch master.

http://git.enlightenment.org/tools/eflete.git/commit/?id=e4f4aafa6ef5c04d77ee8d99a094088bfb11da83

commit e4f4aafa6ef5c04d77ee8d99a094088bfb11da83
Author: Jaehwan Kim <jae.hwan@samsung.com>
Date:   Thu Dec 22 14:31:07 2016 +0900

icon: add vector icon.
---
 .../images/Group contents navigator/group_vector_mv.png  | Bin 0 -> 1007 bytes
 .../images/Group contents navigator/group_vector_nor.png | Bin 0 -> 995 bytes
 .../images/Group contents navigator/group_vector_sel.png | Bin 0 -> 993 bytes
 data/themes/tizen/widgets/image.edc  |   4 
 4 files changed, 4 insertions(+)

diff --git a/data/themes/tizen/images/Group contents 
navigator/group_vector_mv.png b/data/themes/tizen/images/Group contents 
navigator/group_vector_mv.png
new file mode 100755
index 000..8153c32
Binary files /dev/null and b/data/themes/tizen/images/Group contents 
navigator/group_vector_mv.png differ
diff --git a/data/themes/tizen/images/Group contents 
navigator/group_vector_nor.png b/data/themes/tizen/images/Group contents 
navigator/group_vector_nor.png
new file mode 100755
index 000..99f7de8
Binary files /dev/null and b/data/themes/tizen/images/Group contents 
navigator/group_vector_nor.png differ
diff --git a/data/themes/tizen/images/Group contents 
navigator/group_vector_sel.png b/data/themes/tizen/images/Group contents 
navigator/group_vector_sel.png
new file mode 100755
index 000..3a1ec1b
Binary files /dev/null and b/data/themes/tizen/images/Group contents 
navigator/group_vector_sel.png differ
diff --git a/data/themes/tizen/widgets/image.edc 
b/data/themes/tizen/widgets/image.edc
index 6b31a8b..3f1fc84 100644
--- a/data/themes/tizen/widgets/image.edc
+++ b/data/themes/tizen/widgets/image.edc
@@ -58,6 +58,10 @@ IM("icon", "box","Group contents 
navigator/group_box_nor.png",
 IM("icon", "box1",   "Group contents navigator/group_box_sel.png", 
  16 16,   0 0 0 0,SCALE,   SOLID)
 IM("icon", "box2",   "Group contents navigator/group_box_mv.png",  
 16 16,   0 0 0 0,SCALE,   SOLID)
 
+IM("icon", "vector",  "Group contents navigator/group_vector_nor.png", 
 16 16,   0 0 0 0,SCALE,   SOLID)
+IM("icon", "vector1", "Group contents navigator/group_vector_sel.png", 
16 16,   0 0 0 0,SCALE,   SOLID)
+IM("icon", "vector2", "Group contents navigator/group_vector_mv.png",  
   16 16,   0 0 0 0,SCALE,   SOLID)
+
 IM("icon", "folder", "Group navigator/view_s_folder_nor.png",  
   16 16,   0 0 0 0,SCALE,   SOLID)
 IM("icon", "folder1","Group navigator/view_s_folder_sel.png",  
  16 16,   0 0 0 0,SCALE,   SOLID)
 IM("icon", "folder2","Group navigator/view_s_folder_mv.png",   
 16 16,   0 0 0 0,SCALE,   SOLID)

-- 




[EGIT] [core/efl] master 01/01: edje_pick: include the resources that is only used.

2016-12-21 Thread Jaehwan Kim
jaehwan pushed a commit to branch master.

http://git.enlightenment.org/core/efl.git/commit/?id=5f95a15bc1c277df81e9f801ad3f27973b8af79e

commit 5f95a15bc1c277df81e9f801ad3f27973b8af79e
Author: Jaehwan Kim <jae.hwan@samsung.com>
Date:   Thu Dec 22 10:16:32 2016 +0900

edje_pick: include the resources that is only used.

When it pick any groups, it just includes the resources that is used
in those groups.
---
 src/bin/edje/edje_pick.c | 100 ++-
 1 file changed, 64 insertions(+), 36 deletions(-)

diff --git a/src/bin/edje/edje_pick.c b/src/bin/edje/edje_pick.c
index 79a361c..d02e5c7 100644
--- a/src/bin/edje/edje_pick.c
+++ b/src/bin/edje/edje_pick.c
@@ -1174,28 +1174,6 @@ _edje_pick_lua_scripts_add(Edje_File *edf, int id, int 
new_id)
return EDJE_PICK_NO_ERROR;
 }
 
-static void
-_edje_pick_styles_update(Edje_File *o, Edje_File *edf)
-{
-   /* Styles in Edje_File */
-   Eina_List *l;
-   Edje_Style *stl;
-
-   EINA_LIST_FOREACH(edf->styles, l, stl)
- o->styles = eina_list_append(o->styles, stl);
-}
-
-static void
-_edje_pick_color_class_update(Edje_File *o, Edje_File *edf)
-{
-   /* Color Class in Edje_File */
-   Eina_List *l;
-   Edje_Color_Class *cc;
-
-   EINA_LIST_FOREACH(edf->color_classes, l, cc)
- o->color_classes = eina_list_append(o->color_classes, cc);
-}
-
 static int
 _edje_pick_image_entry_add(int id, Edje_File *edf, Edje_File *o)
 {
@@ -1302,16 +1280,16 @@ 
_edje_pick_images_desc_update(Edje_Part_Description_Image *desc, Edje_File *edf,
  {
 unsigned int k;
 int new_id = (desc->image.set) ?
-   _edje_pick_image_set_add(desc->image.id, edf, o) :
-   _edje_pick_image_entry_add(desc->image.id, edf, o);
+  _edje_pick_image_set_add(desc->image.id, edf, o) :
+  _edje_pick_image_entry_add(desc->image.id, edf, o);
 
 desc->image.id = new_id;
 
 for (k = 0; k < desc->image.tweens_count; k++)
   {
  new_id = (desc->image.set) ?
-_edje_pick_image_set_add(desc->image.tweens[k]->id, edf, o) :
-_edje_pick_image_entry_add(desc->image.tweens[k]->id, edf, o);
+   _edje_pick_image_set_add(desc->image.tweens[k]->id, edf, o) :
+   _edje_pick_image_entry_add(desc->image.tweens[k]->id, edf, o);
 
  desc->image.tweens[k]->id = new_id;
   }
@@ -1319,26 +1297,79 @@ 
_edje_pick_images_desc_update(Edje_Part_Description_Image *desc, Edje_File *edf,
 }
 
 static void
-_edje_pick_images_process(Edje_Part_Collection *edc, Edje_File *edf, Edje_File 
*o)
+_edje_pick_styles_desc_update(Edje_Part_Description_Text *desc, Edje_File 
*edf, Edje_File *o)
 {
-   /* Find what images are used, update IDs, mark as USED */
-   unsigned int i;
+   Eina_List *l;
+   Edje_Style *stl;
+   const char *style;
+
+   if (desc)
+ {
+style = desc->text.style.str;
+
+if (style)
+  {
+ EINA_LIST_FOREACH(edf->styles, l, stl)
+   if ((stl->name) && (!strcmp(stl->name, style)))
+ o->styles = eina_list_append(o->styles, stl);
+  }
+ }
+}
+
+static void
+_edje_pick_color_class_desc_update(Edje_Part_Description_Common *desc, 
Edje_File *edf, Edje_File *o)
+{
+   Eina_List *l;
+   Edje_Color_Class *cc;
+   const char *color_class;
+
+   if (desc)
+ {
+color_class = desc->color_class;
+
+if (color_class)
+  {
+ EINA_LIST_FOREACH(edf->color_classes, l, cc)
+   if ((cc->name) && (!strcmp(cc->name, color_class)))
+ o->color_classes = eina_list_append(o->color_classes, cc);
+  }
+ }
+}
+
+static void
+_edje_pick_resources_process(Edje_Part_Collection *edc, Edje_File *edf, 
Edje_File *o)
+{
+   /* Find what imagees are used, update IDs, mark as USED */
+   /* Find what styles and color classes are used */
+   unsigned int i, k;
 
for (i = 0; i < edc->parts_count; i++)
  {
-/* Scan all parts, locate what images used */
+/* Scan all parts, locate what resources used */
 Edje_Part *part = edc->parts[i];
 
+/* Update all color class in ALL descs of this part */
+_edje_pick_color_class_desc_update((Edje_Part_Description_Common *) 
part->default_desc, edf, o);
+
+for (k = 0; k < part->other.desc_count; k++)
+  _edje_pick_color_class_desc_update((Edje_Part_Description_Common *) 
part->other.desc[k], edf, o);
+
 if (part->type == EDJE_PART_TYPE_IMAGE)
   {
  /* Update IDs of all images in ALL descs of this part */
- unsigned int k;
-
  _edje_pick_images_desc_update((Edje_Part_Description_Image *) 
part->default_desc, edf, o);
 
  for (k = 0; k < part->other.desc_count; k++)
   

[EGIT] [tools/eflete] master 01/01: image manager: update gengrid when the image manager is shown.

2016-12-18 Thread Jaehwan Kim
jaehwan pushed a commit to branch master.

http://git.enlightenment.org/tools/eflete.git/commit/?id=e16eb1be84d9cc58a798dfe1a335c41be02afaff

commit e16eb1be84d9cc58a798dfe1a335c41be02afaff
Author: Jaehwan Kim <jae.hwan@samsung.com>
Date:   Mon Dec 19 10:22:44 2016 +0900

image manager: update gengrid when the image manager is shown.
---
 src/bin/ui/image_manager.c | 2 ++
 1 file changed, 2 insertions(+)

diff --git a/src/bin/ui/image_manager.c b/src/bin/ui/image_manager.c
index 5099f5d..e824cd7 100644
--- a/src/bin/ui/image_manager.c
+++ b/src/bin/ui/image_manager.c
@@ -615,6 +615,8 @@ done:
 * first time or projectwas reopened */
if (!elm_gengrid_realized_items_get(mng.gengrid))
  _image_manager_init();
+   else
+ elm_gengrid_realized_items_update(mng.gengrid);
 
elm_object_content_set(mng.win, mng.panes);
evas_object_show(mng.win);

-- 




[EGIT] [tools/eflete] master 01/01: modal window: add the done/cancel callback on modal window.

2016-12-13 Thread Jaehwan Kim
jaehwan pushed a commit to branch master.

http://git.enlightenment.org/tools/eflete.git/commit/?id=3ea1b0a8dabb761b948eaa9868062addc8563abf

commit 3ea1b0a8dabb761b948eaa9868062addc8563abf
Author: Jaehwan Kim <jae.hwan@samsung.com>
Date:   Wed Dec 14 16:26:41 2016 +0900

modal window: add the done/cancel callback on modal window.
---
 src/bin/ui/modal_window/modal_window.c | 3 +++
 1 file changed, 3 insertions(+)

diff --git a/src/bin/ui/modal_window/modal_window.c 
b/src/bin/ui/modal_window/modal_window.c
index 5871243..918 100644
--- a/src/bin/ui/modal_window/modal_window.c
+++ b/src/bin/ui/modal_window/modal_window.c
@@ -207,6 +207,9 @@ mw_add(void)
 BUTTON_ADD(mw, btn, _("Ok"))
evas_object_smart_callback_add(btn, signals.elm.button.clicked, 
_mw_done, mw);
 elm_object_part_content_set(mw, "eflete.swallow.btn_ok", btn);
+
+evas_object_smart_callback_add(mw, signals.shortcut.popup.cancel, 
_mw_close, mw);
+evas_object_smart_callback_add(mw, signals.shortcut.popup.done, 
_mw_done, mw);
  }
 
shortcuts_object_push(mw);

-- 




[EGIT] [tools/eflete] master 01/01: project_manager: add mutex lock feature in Window.

2016-12-13 Thread Jaehwan Kim
jaehwan pushed a commit to branch master.

http://git.enlightenment.org/tools/eflete.git/commit/?id=0d7694e492b457f766243b545bde2bcdad2d3bb8

commit 0d7694e492b457f766243b545bde2bcdad2d3bb8
Author: Jaehwan Kim <jae.hwan@samsung.com>
Date:   Wed Dec 14 11:22:25 2016 +0900

project_manager: add mutex lock feature in Window.
---
 src/bin/project_manager/project_manager2.c | 32 --
 1 file changed, 26 insertions(+), 6 deletions(-)

diff --git a/src/bin/project_manager/project_manager2.c 
b/src/bin/project_manager/project_manager2.c
index 0c56ffd..fce3b2b 100644
--- a/src/bin/project_manager/project_manager2.c
+++ b/src/bin/project_manager/project_manager2.c
@@ -26,6 +26,8 @@
 #include 
 #else
 #include 
+#include 
+static HANDLE hMutex = NULL;
 #endif
 
 #define PROJECT_FILE_KEY  "project"
@@ -429,7 +431,17 @@ _project_lock(Project *project)
 return false;
  }
 
-#ifndef _WIN32
+#ifdef _WIN32
+   hMutex = CreateMutex(NULL, FALSE, PACKAGE_NAME);
+
+   HANDLE handle = CreateFile(path, GENERIC_READ, NULL, NULL, CREATE_NEW,
+  FILE_FLAG_DELETE_ON_CLOSE, 0);
+   if (INVALID_HANDLE_VALUE == handle)
+ {
+ERR("Failed to open file \"%s\"", path);
+return false;
+ }
+#else
struct flock fl;
fl.l_type = F_WRLCK;
fl.l_whence = SEEK_SET;
@@ -442,7 +454,6 @@ _project_lock(Project *project)
 close(project->fd_lock);
 return false;
  }
-#endif /* _WIN32 */
 
snprintf(buf, sizeof(buf), "%d\n", pid);
if (!write(project->fd_lock, buf, strlen(buf)))
@@ -450,6 +461,7 @@ _project_lock(Project *project)
 close(project->fd_lock);
 return false;
  }
+#endif /* _WIN32 */
 
return true;
 }
@@ -462,12 +474,17 @@ _project_unlock(Project *project)
 
assert(project != NULL);
 
-
dir = ecore_file_dir_get(project->pro_path);
snprintf(path, sizeof(path), "%s/"LOCK_FILE, dir);
free(dir);
 
-#ifndef _WIN32
+#ifdef _WIN32
+   if (hMutex)
+ {
+CloseHandle(hMutex);
+hMutex = NULL;
+ }
+#else
struct flock fl;
fl.l_type = F_UNLCK;
fl.l_whence = SEEK_SET;
@@ -504,7 +521,6 @@ _project_trylock(const char *pro_path)
if (!ecore_file_exists(path))
  return true;
 
-
fd = open(path, O_RDWR);
if (fd < 1)
  {
@@ -512,7 +528,11 @@ _project_trylock(const char *pro_path)
 return false;
  }
 
-#ifndef _WIN32
+#ifdef _WIN32
+   hMutex = OpenMutex(MUTEX_ALL_ACCESS, 0, PACKAGE_NAME);
+   if (hMutex)
+ return false;
+#else
struct flock fl;
fl.l_type = F_UNLCK;
fl.l_whence = SEEK_SET;

-- 




[EGIT] [tools/eflete] master 01/01: main: allow only one application launch in Tizen.

2016-12-09 Thread Jaehwan Kim
jaehwan pushed a commit to branch master.

http://git.enlightenment.org/tools/eflete.git/commit/?id=c089fc0c4febd288a09a141d1b140321ebe61da6

commit c089fc0c4febd288a09a141d1b140321ebe61da6
Author: Jaehwan Kim <jae.hwan@samsung.com>
Date:   Sat Dec 10 14:45:46 2016 +0900

main: allow only one application launch in Tizen.
---
 src/bin/main.c | 25 +
 1 file changed, 25 insertions(+)

diff --git a/src/bin/main.c b/src/bin/main.c
index 539a1fe..1a4ef3f 100644
--- a/src/bin/main.c
+++ b/src/bin/main.c
@@ -137,8 +137,12 @@ _import_edj(void *data __UNUSED__)
  }
else
  {
+#ifndef HAVE_TIZEN
 name = ecore_file_file_get(file);
 proj_name = eina_tmpstr_add_length(name, strlen(name) - 4);
+#else
+proj_name = eina_tmpstr_add("Component_Designer");
+#endif
 tabs_menu_import_edj_data_set(proj_name, pro_path, file, widgets);
 eina_tmpstr_del(proj_name);
  }
@@ -234,6 +238,27 @@ elm_main(int argc, char **argv)
 #endif
 
 config_load();
+
+#ifdef HAVE_TIZEN
+Eina_Strbuf *buf;
+const char *path, *name;
+
+if (pro_path) path = pro_path;
+else path = profile_get()->general.projects_folder;
+if (pro_name) name = pro_name;
+else name = "Component_Designer";
+
+buf = eina_strbuf_new();
+eina_strbuf_append_printf(buf, "%s/%s/%s.pro",
+  path, name, name);
+if (!pm_lock_check(eina_strbuf_string_get(buf)))
+  {
+ eina_strbuf_free(buf);
+ goto exit;
+  }
+eina_strbuf_free(buf);
+#endif /* HAVE_TIZEN */
+
 if (!ui_main_window_add())
   {
  app_shutdown();

-- 




[EGIT] [tools/eflete] master 01/02: string: fix the allocation error.

2016-12-09 Thread Jaehwan Kim
jaehwan pushed a commit to branch master.

http://git.enlightenment.org/tools/eflete.git/commit/?id=4c7526dbc4f8de87ed86a003da7c9aa65d24a679

commit 4c7526dbc4f8de87ed86a003da7c9aa65d24a679
Author: Jaehwan Kim <jae.hwan@samsung.com>
Date:   Fri Dec 9 17:47:35 2016 +0900

string: fix the allocation error.
---
 src/bin/common/string_common.c | 12 +++-
 1 file changed, 7 insertions(+), 5 deletions(-)

diff --git a/src/bin/common/string_common.c b/src/bin/common/string_common.c
index 712a0c9..1c4cb51 100644
--- a/src/bin/common/string_common.c
+++ b/src/bin/common/string_common.c
@@ -103,19 +103,21 @@ string_backslash_insert(const char *str, char src)
 {
assert(str != NULL);
char *dst;
-   int i = 0;
-   int count = 1;
+   int i = 0, count = 1;
 
-   dst = mem_malloc((strlen(str) + count) * sizeof(char));
+   for (i = 0; i < strlen(str); i++)
+ if (str[i] == src)
+   count++;
 
+   dst = mem_calloc(strlen(str) + count, sizeof(char));
+
+   i = 0;
while (*str != '\0')
  {
 if (*str != src)
   dst[i] = *str;
 else
   {
- count++;
- dst = mem_malloc((strlen(str) + count) * sizeof(char));
  dst[i++] = '\\';
  dst[i] = src;
   }

-- 




[EGIT] [tools/eflete] master 02/02: project_manager: don't add the backslash in Window environment.

2016-12-09 Thread Jaehwan Kim
jaehwan pushed a commit to branch master.

http://git.enlightenment.org/tools/eflete.git/commit/?id=42381337f1529586d0e69fae9cc25918d74cd8ee

commit 42381337f1529586d0e69fae9cc25918d74cd8ee
Author: Jaehwan Kim <jae.hwan@samsung.com>
Date:   Fri Dec 9 18:32:37 2016 +0900

project_manager: don't add the backslash in Window environment.
---
 src/bin/project_manager/project_manager2.c | 10 ++
 1 file changed, 6 insertions(+), 4 deletions(-)

diff --git a/src/bin/project_manager/project_manager2.c 
b/src/bin/project_manager/project_manager2.c
index 90b1eef..c243670 100644
--- a/src/bin/project_manager/project_manager2.c
+++ b/src/bin/project_manager/project_manager2.c
@@ -820,7 +820,6 @@ _project_import_edj(Project_Process_Data *ppd)
Evas_Object *obj = NULL;
Eina_Strbuf *strbuf;
char buf[PATH_MAX];
-   char *str;
unsigned int count;
 
//Eina_Stringshare *msg = eina_stringshare_printf(_("Start import '%s' file 
as new project"), ptd->edj);
@@ -892,11 +891,14 @@ _project_import_edj(Project_Process_Data *ppd)
 eina_stringshare_del(ppd->edj);
 ppd->edj = eina_stringshare_ref(edj_out);
 ppd->source_edj = eina_stringshare_ref(edj_in);
-
-str = string_backslash_insert(eina_strbuf_string_get(strbuf), '&');
+#ifndef _WIN32
+char *str = string_backslash_insert(eina_strbuf_string_get(strbuf), 
'&');
 ecore_exe_pipe_run(str, FLAGS, NULL);
-eina_strbuf_free(strbuf);
 free(str);
+#else
+ecore_exe_pipe_run(eina_strbuf_string_get(strbuf), FLAGS, NULL);
+eina_strbuf_free(strbuf);
+#endif /* _WIN32 */
 
 ppd->data_handler = ecore_event_handler_add(ECORE_EXE_EVENT_DATA, 
_exe_output_handler, ppd);
 ppd->del_handler = ecore_event_handler_add(ECORE_EXE_EVENT_DEL, 
_edje_pick_finish_handler, ppd);

-- 




[EGIT] [tools/eflete] master 01/01: string: allocate the string memory dynamically.

2016-12-08 Thread Jaehwan Kim
jaehwan pushed a commit to branch master.

http://git.enlightenment.org/tools/eflete.git/commit/?id=aee2f39e4493721a9e2eff59012c021a26158c72

commit aee2f39e4493721a9e2eff59012c021a26158c72
Author: Jaehwan Kim <jae.hwan@samsung.com>
Date:   Thu Dec 8 17:44:18 2016 +0900

string: allocate the string memory dynamically.
---
 src/bin/common/string_common.c | 9 +++--
 1 file changed, 7 insertions(+), 2 deletions(-)

diff --git a/src/bin/common/string_common.c b/src/bin/common/string_common.c
index a11e825..712a0c9 100644
--- a/src/bin/common/string_common.c
+++ b/src/bin/common/string_common.c
@@ -102,8 +102,11 @@ char *
 string_backslash_insert(const char *str, char src)
 {
assert(str != NULL);
-   char dst[256];
+   char *dst;
int i = 0;
+   int count = 1;
+
+   dst = mem_malloc((strlen(str) + count) * sizeof(char));
 
while (*str != '\0')
  {
@@ -111,6 +114,8 @@ string_backslash_insert(const char *str, char src)
   dst[i] = *str;
 else
   {
+ count++;
+ dst = mem_malloc((strlen(str) + count) * sizeof(char));
  dst[i++] = '\\';
  dst[i] = src;
   }
@@ -119,7 +124,7 @@ string_backslash_insert(const char *str, char src)
  }
dst[i] = '\0';
 
-   return strdup(dst);
+   return dst;
 }
 
 /**

-- 




[EGIT] [tools/eflete] master 03/03: project_manager: add backslash in the edje_pick command line.

2016-12-07 Thread Jaehwan Kim
jaehwan pushed a commit to branch master.

http://git.enlightenment.org/tools/eflete.git/commit/?id=f2c943d6344565ac73d64c4de471902c80109cd2

commit f2c943d6344565ac73d64c4de471902c80109cd2
Author: Jaehwan Kim <jae.hwan@samsung.com>
Date:   Thu Dec 8 14:39:01 2016 +0900

project_manager: add backslash in the edje_pick command line.

Some group has a '&' in the style name like "on".
---
 src/bin/common/string_common.c | 24 
 src/bin/common/string_common.h |  3 +++
 src/bin/project_manager/project_manager2.c |  5 -
 3 files changed, 31 insertions(+), 1 deletion(-)

diff --git a/src/bin/common/string_common.c b/src/bin/common/string_common.c
index 5fd8cf4..a11e825 100644
--- a/src/bin/common/string_common.c
+++ b/src/bin/common/string_common.c
@@ -98,6 +98,30 @@ string_rstr(const char *str1, const char *str2)
return NULL;
 }
 
+char *
+string_backslash_insert(const char *str, char src)
+{
+   assert(str != NULL);
+   char dst[256];
+   int i = 0;
+
+   while (*str != '\0')
+ {
+if (*str != src)
+  dst[i] = *str;
+else
+  {
+ dst[i++] = '\\';
+ dst[i] = src;
+  }
+str++;
+i++;
+ }
+   dst[i] = '\0';
+
+   return strdup(dst);
+}
+
 /**
  * ref http://docs.enlightenment.org/auto/edje/group__Edje__Object__Part.html
  */
diff --git a/src/bin/common/string_common.h b/src/bin/common/string_common.h
index 1cf6751..d4cb837 100644
--- a/src/bin/common/string_common.h
+++ b/src/bin/common/string_common.h
@@ -66,6 +66,9 @@ string_cat(const char *str1, const char *str2);
 const char *
 string_rstr(const char *str1, const char *str2);
 
+char *
+string_backslash_insert(const char *str, char src);
+
 const char *
 part_type_text_get(Edje_Part_Type part_type);
 
diff --git a/src/bin/project_manager/project_manager2.c 
b/src/bin/project_manager/project_manager2.c
index d13d8b2..90b1eef 100644
--- a/src/bin/project_manager/project_manager2.c
+++ b/src/bin/project_manager/project_manager2.c
@@ -820,6 +820,7 @@ _project_import_edj(Project_Process_Data *ppd)
Evas_Object *obj = NULL;
Eina_Strbuf *strbuf;
char buf[PATH_MAX];
+   char *str;
unsigned int count;
 
//Eina_Stringshare *msg = eina_stringshare_printf(_("Start import '%s' file 
as new project"), ptd->edj);
@@ -892,8 +893,10 @@ _project_import_edj(Project_Process_Data *ppd)
 ppd->edj = eina_stringshare_ref(edj_out);
 ppd->source_edj = eina_stringshare_ref(edj_in);
 
-ecore_exe_pipe_run(eina_strbuf_string_get(strbuf), FLAGS, NULL);
+str = string_backslash_insert(eina_strbuf_string_get(strbuf), '&');
+ecore_exe_pipe_run(str, FLAGS, NULL);
 eina_strbuf_free(strbuf);
+free(str);
 
 ppd->data_handler = ecore_event_handler_add(ECORE_EXE_EVENT_DATA, 
_exe_output_handler, ppd);
 ppd->del_handler = ecore_event_handler_add(ECORE_EXE_EVENT_DEL, 
_edje_pick_finish_handler, ppd);

-- 




[EGIT] [tools/eflete] master 02/03: layout: remove the release note in about.

2016-12-07 Thread Jaehwan Kim
jaehwan pushed a commit to branch master.

http://git.enlightenment.org/tools/eflete.git/commit/?id=0ef8e77d826d777b6f3d7b570be5162038de9ba4

commit 0ef8e77d826d777b6f3d7b570be5162038de9ba4
Author: Jaehwan Kim <jae.hwan@samsung.com>
Date:   Thu Dec 8 14:33:55 2016 +0900

layout: remove the release note in about.
---
 data/themes/tizen/widgets/layout.edc | 47 
 1 file changed, 47 deletions(-)

diff --git a/data/themes/tizen/widgets/layout.edc 
b/data/themes/tizen/widgets/layout.edc
index c6858f6..437aae8 100644
--- a/data/themes/tizen/widgets/layout.edc
+++ b/data/themes/tizen/widgets/layout.edc
@@ -2239,53 +2239,6 @@ group { name: "elm/layout/about/default";
 }
  }
   }
-  part { name: "note.label";
- type: TEXT;
- description { state: "default" 0.0;
-align: 0.0 0.0;
-min: 104 13;
-max: 104 13;
-color_class: "genlist_text_tree";
-text {
-   text: "Release Note";
-   font: FN_B;
-   size: 10;
-   align: 0.0 0.5;
-}
-rel1 {
-   relative: 0.0 1.0;
-   offset: 28 14;
-   to_x: "bg";
-   to_y: "site.label";
-}
-rel2.to: "bg";
- }
-  }
-  part { name: "note.text";
- type: TEXT;
- description { state: "default" 0.0;
-fixed: 1 0;
-min: 0 13;
-max: -1 13;
-color_class: "popup_helper_border";
-text {
-   text: "http://xx.xx.xx;;
-   font: FN;
-   size: 10;
-   align: 0.0 0.5;
-}
-rel1 {
-   relative: 1.0 0.0;
-   offset: 47 0;
-   to: "note.label";
-}
-rel2 {
-   offset: -54 0;
-   to_x: "bg";
-   to_y: "note.label";
-}
- }
-  }
}
 }
 

-- 




[EGIT] [tools/eflete] master 01/03: project_navigator: fix typing-error

2016-12-07 Thread Jaehwan Kim
jaehwan pushed a commit to branch master.

http://git.enlightenment.org/tools/eflete.git/commit/?id=7dcbe9c01b713d4ad2a2db6257677e6549e5d2d0

commit 7dcbe9c01b713d4ad2a2db6257677e6549e5d2d0
Author: Jaehwan Kim <jae.hwan@samsung.com>
Date:   Thu Dec 8 14:32:57 2016 +0900

project_navigator: fix typing-error
---
 src/bin/ui/project_navigator.c | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/src/bin/ui/project_navigator.c b/src/bin/ui/project_navigator.c
index fcfb8a1..b6af159 100644
--- a/src/bin/ui/project_navigator.c
+++ b/src/bin/ui/project_navigator.c
@@ -698,7 +698,7 @@ _btn_del_group_cb(void *data __UNUSED__,
 if (!_folder_check(prefix, true))
   {
  popup_add(_("Warning: Delete layout"),
-   _("Cann't delete one of those opened layouts. Please, "
+   _("Can't delete one of those opened layouts. Please, "
  "close the layout tab before delete it."),
BTN_CANCEL, NULL, NULL);
  return;
@@ -720,7 +720,7 @@ _btn_del_group_cb(void *data __UNUSED__,
 if (group->edit_object)
   {
  popup_add(_("Warning: Delete layout"),
-   _("Cann't delete the opened layout. Please, "
+   _("Can't delete the opened layout. Please, "
  "close the layout tab before delete it."),
BTN_CANCEL, NULL, NULL);
  return;

-- 




[EGIT] [tools/eflete] master 01/01: inwin, popup: change the red warning to dim background in Tizen.

2016-12-05 Thread Jaehwan Kim
jaehwan pushed a commit to branch master.

http://git.enlightenment.org/tools/eflete.git/commit/?id=448109b67c327f5f85b3aaa3d97fc0323e1c5c52

commit 448109b67c327f5f85b3aaa3d97fc0323e1c5c52
Author: Jaehwan Kim <jae.hwan@samsung.com>
Date:   Mon Dec 5 17:23:45 2016 +0900

inwin, popup: change the red warning to dim background in Tizen.
---
 data/themes/tizen/widgets/inwin.edc | 18 +-
 data/themes/tizen/widgets/popup.edc | 19 +--
 2 files changed, 2 insertions(+), 35 deletions(-)

diff --git a/data/themes/tizen/widgets/inwin.edc 
b/data/themes/tizen/widgets/inwin.edc
index 7b62625..8825fb3 100644
--- a/data/themes/tizen/widgets/inwin.edc
+++ b/data/themes/tizen/widgets/inwin.edc
@@ -324,11 +324,7 @@ group { name: "elm/win/inwin/splash";
   part { name: "block_events";
  type: RECT;
  description { state: "default" 0.0;
-color: 255 0 0 0;
- }
- description { state: "clicked" 0.0;
-inherit: "default" 0.00;
-color: 255 0 0 50;
+color: 0 0 0 50;
  }
   }
   part { name: "area.info";
@@ -490,7 +486,6 @@ group { name: "elm/win/inwin/splash";
  signal: "mouse,clicked,*";
  source: "block_events";
  action: SIGNAL_EMIT "elm,action,click" "elm";
- after: "deeper_block_color";
   }
   program { name: "teardown";
  signal: "end";
@@ -507,17 +502,6 @@ group { name: "elm/win/inwin/splash";
   program { name: "emit_teardown";
  action: SIGNAL_EMIT "teardown" "eflete";
   }
-  program { name: "deeper_block_color";
- action: STATE_SET "clicked" 0.00;
- transition: LINEAR 0.2;
- target: "block_events";
- after: "default_block_color";
-  }
-  program { name: "default_block_color";
- action: STATE_SET "default" 0.00;
- transition: LINEAR 0.2;
- target: "block_events";
-  }
   program { name: "load_anim";
  signal: "load";
  action: STATE_SET "default" 0.00;
diff --git a/data/themes/tizen/widgets/popup.edc 
b/data/themes/tizen/widgets/popup.edc
index 6d726f5..29c1522 100644
--- a/data/themes/tizen/widgets/popup.edc
+++ b/data/themes/tizen/widgets/popup.edc
@@ -9,10 +9,7 @@ group { name: "elm/notify/block_events/popup/default";
   part { name: "block_events";
  type: RECT;
  description { state: "default" 0.0;
-color: 0 0 0 0;
- }
- description { state: "clicked" 0.0;
-color: 255 0 0 50;
+color: 0 0 0 50;
  }
   }
}
@@ -21,20 +18,6 @@ group { name: "elm/notify/block_events/popup/default";
  signal: "mouse,clicked,*";
  source: "block_events";
  action: SIGNAL_EMIT "elm,action,click" "elm";
- after: "deeper_block_color";
-  }
-  program {
- name: "deeper_block_color";
- action: STATE_SET "clicked" 0.0;
- target: "block_events";
- transition: LINEAR 0.2;
- after: "default_block_color";
-  }
-  program {
- name: "default_block_color";
- action: STATE_SET "default" 0.0;
- target: "block_events";
- transition: LINEAR 0.2;
   }
}
 }

-- 




[EGIT] [tools/eflete] master 01/01: inwin: change the red warning to dim background in Tizen.

2016-12-04 Thread Jaehwan Kim
jaehwan pushed a commit to branch master.

http://git.enlightenment.org/tools/eflete.git/commit/?id=c1dbd09ae954aeb649a5628b396f1ab8ae276ae5

commit c1dbd09ae954aeb649a5628b396f1ab8ae276ae5
Author: Jaehwan Kim <jae.hwan@samsung.com>
Date:   Mon Dec 5 14:50:15 2016 +0900

inwin: change the red warning to dim background in Tizen.
---
 data/themes/tizen/widgets/inwin.edc | 17 +
 1 file changed, 1 insertion(+), 16 deletions(-)

diff --git a/data/themes/tizen/widgets/inwin.edc 
b/data/themes/tizen/widgets/inwin.edc
index 4e94c20..7b62625 100644
--- a/data/themes/tizen/widgets/inwin.edc
+++ b/data/themes/tizen/widgets/inwin.edc
@@ -4,11 +4,7 @@ group { name: "elm/win/inwin/modal_window";
   part { name: "block_events";
  type: RECT;
  description { state: "default" 0.0;
-color: 0 0 0 0;
- }
- description { state: "clicked" 0.0;
-inherit: "default" 0.00;
-color: 255 0 0 50;
+color: 0 0 0 50;
  }
   }
   part { name: "shadow";
@@ -232,17 +228,6 @@ group { name: "elm/win/inwin/modal_window";
  signal: "mouse,clicked,*";
  source: "block_events";
  action: SIGNAL_EMIT "elm,action,click" "elm";
- after: "deeper_block_color";
-  }
-  program { name: "deeper_block_color";
- action: STATE_SET "clicked" 0.00;
- target: "block_events";
- after: "default_block_color";
-  }
-  program { name: "default_block_color";
- action: STATE_SET "default" 0.00;
- transition: LINEAR 0.2;
- target: "block_events";
   }
}
 }

-- 




[EGIT] [tools/eflete] master 02/02: shortcut: assign the keyname by using strdup.

2016-12-04 Thread Jaehwan Kim
jaehwan pushed a commit to branch master.

http://git.enlightenment.org/tools/eflete.git/commit/?id=ecd7385ab3c7b19eb5d542763364f5e1cd7e4a59

commit ecd7385ab3c7b19eb5d542763364f5e1cd7e4a59
Author: Jaehwan Kim <jae.hwan@samsung.com>
Date:   Mon Dec 5 10:42:05 2016 +0900

shortcut: assign the keyname by using strdup.

By this bug, the changed key doesn't work.

@fix
---
 src/bin/ui/shortcuts/shortcuts.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/src/bin/ui/shortcuts/shortcuts.c b/src/bin/ui/shortcuts/shortcuts.c
index 9b1b11c..6e2ff00 100644
--- a/src/bin/ui/shortcuts/shortcuts.c
+++ b/src/bin/ui/shortcuts/shortcuts.c
@@ -669,7 +669,7 @@ shortcuts_shortcut_new_set(Shortcut_Type type, 
Evas_Event_Key_Up *ev)
  {
 shortcut->modifiers = sc.modifiers;
 shortcut->keycode = sc.keycode;
-shortcut->keyname = sc.keyname;
+shortcut->keyname = strdup(sc.keyname);
 shortcut->combination = _combination_string_get(shortcut);
 ap.shortcuts->shortcuts = 
eina_list_sorted_insert(ap.shortcuts->shortcuts,
   (Eina_Compare_Cb) 
_shortcut_cmp, shortcut);

-- 




[EGIT] [tools/eflete] master 01/02: shortcut: save the shortcut after change the key.

2016-12-04 Thread Jaehwan Kim
jaehwan pushed a commit to branch master.

http://git.enlightenment.org/tools/eflete.git/commit/?id=5b4f1d25da013024f510d2cfbf6b8c322420eb04

commit 5b4f1d25da013024f510d2cfbf6b8c322420eb04
Author: Jaehwan Kim <jae.hwan@samsung.com>
Date:   Mon Dec 5 10:40:18 2016 +0900

shortcut: save the shortcut after change the key.

By this bug, the changed shortcut become empty after re-executing.

@fix
---
 src/bin/ui/shortcuts/shortcuts.c | 1 +
 1 file changed, 1 insertion(+)

diff --git a/src/bin/ui/shortcuts/shortcuts.c b/src/bin/ui/shortcuts/shortcuts.c
index 1e227a0..9b1b11c 100644
--- a/src/bin/ui/shortcuts/shortcuts.c
+++ b/src/bin/ui/shortcuts/shortcuts.c
@@ -673,6 +673,7 @@ shortcuts_shortcut_new_set(Shortcut_Type type, 
Evas_Event_Key_Up *ev)
 shortcut->combination = _combination_string_get(shortcut);
 ap.shortcuts->shortcuts = 
eina_list_sorted_insert(ap.shortcuts->shortcuts,
   (Eina_Compare_Cb) 
_shortcut_cmp, shortcut);
+((Profile *)profile_get())->shortcuts = ap.shortcuts->shortcuts;
  }
else return false;
 

-- 




[EGIT] [tools/eflete] master 03/03: menu: disable state and item as a status.

2016-12-02 Thread Jaehwan Kim
jaehwan pushed a commit to branch master.

http://git.enlightenment.org/tools/eflete.git/commit/?id=47859cc46e89dfef3879b7363cafc965f7af81dc

commit 47859cc46e89dfef3879b7363cafc965f7af81dc
Author: Jaehwan Kim <jae.hwan@samsung.com>
Date:   Sat Dec 3 13:13:27 2016 +0900

menu: disable state and item as a status.
---
 src/bin/ui/tabs.c  |  6 +-
 src/bin/ui/workspace/group_navigator.c | 10 +-
 2 files changed, 14 insertions(+), 2 deletions(-)

diff --git a/src/bin/ui/tabs.c b/src/bin/ui/tabs.c
index 5695f28..2c53632 100644
--- a/src/bin/ui/tabs.c
+++ b/src/bin/ui/tabs.c
@@ -112,7 +112,11 @@ _content_set(void *data,
 tabs.current_workspace = item->content;
 tabs.current_group = item->group;
 if (ap.project)
-  ui_menu_items_list_disable_set(ap.menu, MENU_ITEMS_LIST_STYLE_ONLY, 
false);
+  {
+ ui_menu_items_list_disable_set(ap.menu, 
MENU_ITEMS_LIST_STYLE_ONLY, false);
+ ui_menu_disable_set(ap.menu, MENU_EDIT_STATE_ADD, true);
+ ui_menu_disable_set(ap.menu, MENU_EDIT_ITEM_ADD, true);
+  }
 if (item->need_recalc)
   {
  workspace_groupview_hard_update(tabs.current_workspace);
diff --git a/src/bin/ui/workspace/group_navigator.c 
b/src/bin/ui/workspace/group_navigator.c
index b6e229f..5c800cc 100644
--- a/src/bin/ui/workspace/group_navigator.c
+++ b/src/bin/ui/workspace/group_navigator.c
@@ -674,7 +674,9 @@ _unselect_internal(Part_List *pl)
pl->group->current_selected = NULL;
 
elm_object_item_disabled_set(pl->add_state_menu_item, true);
+   ui_menu_disable_set(ap.menu, MENU_EDIT_STATE_ADD, true);
elm_object_item_disabled_set(pl->add_part_item_menu_item, true);
+   ui_menu_disable_set(ap.menu, MENU_EDIT_ITEM_ADD, true);
 
elm_object_disabled_set(pl->btn_del, true);
elm_object_disabled_set(pl->btn_down, true);
@@ -691,10 +693,14 @@ _enable_buttons(Part_List *pl, Elm_Object_Item *glit)
if (pl->part)
  {
 elm_object_item_disabled_set(pl->add_state_menu_item, false);
+ui_menu_disable_set(ap.menu, MENU_EDIT_STATE_ADD, false);
 
 if ((pl->part->type == EDJE_PART_TYPE_BOX) ||
 (pl->part->type == EDJE_PART_TYPE_TABLE))
-  elm_object_item_disabled_set(pl->add_part_item_menu_item, false);
+  {
+ elm_object_item_disabled_set(pl->add_part_item_menu_item, false);
+ ui_menu_disable_set(ap.menu, MENU_EDIT_ITEM_ADD, false);
+  }
  }
if (pl->group->current_selected)
  {
@@ -2602,9 +2608,11 @@ group_navigator_add(Evas_Object *parent, Group2 *group)
pl->add_state_menu_item = elm_menu_item_add(pl->menu, NULL, NULL, 
_("State"), _on_menu_add_state_clicked, NULL);
elm_object_part_text_set(elm_menu_item_object_get(pl->add_state_menu_item), 
"elm.shortcut", "w");
elm_object_item_disabled_set(pl->add_state_menu_item, true);
+   ui_menu_disable_set(ap.menu, MENU_EDIT_STATE_ADD, true);
pl->add_part_item_menu_item = elm_menu_item_add(pl->menu, NULL, NULL, 
_("Item"), _on_menu_add_item_clicked, NULL);

elm_object_part_text_set(elm_menu_item_object_get(pl->add_part_item_menu_item), 
"elm.shortcut", "e");
elm_object_item_disabled_set(pl->add_part_item_menu_item, true);
+   ui_menu_disable_set(ap.menu, MENU_EDIT_ITEM_ADD, true);
 #if !HAVE_TIZEN
elm_menu_item_separator_add(pl->menu, NULL);
 #endif

-- 




[EGIT] [tools/eflete] master 02/03: shortcut: add shortcut about resource manager.

2016-12-02 Thread Jaehwan Kim
jaehwan pushed a commit to branch master.

http://git.enlightenment.org/tools/eflete.git/commit/?id=e6d8f0f2c8cd9cea8d44520563d68b45637e79ef

commit e6d8f0f2c8cd9cea8d44520563d68b45637e79ef
Author: Jaehwan Kim <jae.hwan@samsung.com>
Date:   Sat Dec 3 11:35:54 2016 +0900

shortcut: add shortcut about resource manager.
---
 src/bin/ui/menu.c | 12 ++--
 src/bin/ui/tabs.c | 36 
 2 files changed, 42 insertions(+), 6 deletions(-)

diff --git a/src/bin/ui/menu.c b/src/bin/ui/menu.c
index 0021e29..52ba9fb 100644
--- a/src/bin/ui/menu.c
+++ b/src/bin/ui/menu.c
@@ -183,16 +183,16 @@ _menu_cb(void *data __UNUSED__,
  tabs_home_tab_add(TAB_HOME_OPEN_PROJECT);
  break;
   case MENU_WINDOW_MANAGER_IMAGE:
- image_manager_add();
+ shortcuts_shortcut_send(SHORTCUT_TYPE_TAB_IMAGE_MANAGER);
  break;
   case MENU_WINDOW_MANAGER_SOUND:
- sound_manager_add();
- break;
-  case MENU_WINDOW_MANAGER_COLORCLASS:
- colorclass_manager_add();
+ shortcuts_shortcut_send(SHORTCUT_TYPE_TAB_SOUND_MANAGER);
  break;
   case MENU_WINDOW_MANAGER_TEXT_STYLE:
- style_manager_add();
+ shortcuts_shortcut_send(SHORTCUT_TYPE_TAB_STYLE_MANAGER);
+ break;
+  case MENU_WINDOW_MANAGER_COLORCLASS:
+ shortcuts_shortcut_send(SHORTCUT_TYPE_TAB_COLOR_CLASS_MANAGER);
  break;
   case MENU_HELP_ABOUT:
  about_window_add();
diff --git a/src/bin/ui/tabs.c b/src/bin/ui/tabs.c
index 1d3c804..5695f28 100644
--- a/src/bin/ui/tabs.c
+++ b/src/bin/ui/tabs.c
@@ -831,6 +831,38 @@ _shortcut_tab_close_cb(void *data __UNUSED__,
 }
 
 static void
+_shortcut_image_manager_cb(void *data __UNUSED__,
+   Evas_Object *obj __UNUSED__,
+   void *event_info __UNUSED__)
+{
+   image_manager_add();
+}
+
+static void
+_shortcut_sound_manager_cb(void *data __UNUSED__,
+   Evas_Object *obj __UNUSED__,
+   void *event_info __UNUSED__)
+{
+   sound_manager_add();
+}
+
+static void
+_shortcut_style_manager_cb(void *data __UNUSED__,
+   Evas_Object *obj __UNUSED__,
+   void *event_info __UNUSED__)
+{
+   style_manager_add();
+}
+
+static void
+_shortcut_color_class_manager_cb(void *data __UNUSED__,
+Evas_Object *obj __UNUSED__,
+void *event_info __UNUSED__)
+{
+   colorclass_manager_add();
+}
+
+static void
 _shortcut_mode_normal_cb(void *data __UNUSED__,
  Evas_Object *obj __UNUSED__,
  void *event_info __UNUSED__)
@@ -1051,6 +1083,10 @@ tabs_add(void)
evas_object_smart_callback_add(ap.win, signals.shortcut.tab.prev, 
_shortcut_tab_prev_cb, NULL);
evas_object_smart_callback_add(ap.win, signals.shortcut.tab.num, 
_shortcut_tab_num_cb, NULL);
evas_object_smart_callback_add(ap.win, signals.shortcut.tab.close, 
_shortcut_tab_close_cb, NULL);
+   evas_object_smart_callback_add(ap.win, signals.shortcut.manager.image, 
_shortcut_image_manager_cb, NULL);
+   evas_object_smart_callback_add(ap.win, signals.shortcut.manager.sound, 
_shortcut_sound_manager_cb, NULL);
+   evas_object_smart_callback_add(ap.win, signals.shortcut.manager.style, 
_shortcut_style_manager_cb, NULL);
+   evas_object_smart_callback_add(ap.win, 
signals.shortcut.manager.color_class, _shortcut_color_class_manager_cb, NULL);
evas_object_smart_callback_add(ap.win, 
signals.shortcut.workspace.mode.normal, _shortcut_mode_normal_cb, NULL);
 #if !HAVE_TIZEN
evas_object_smart_callback_add(ap.win, 
signals.shortcut.workspace.mode.code, _shortcut_mode_code_cb, NULL);

-- 




[EGIT] [tools/eflete] master 01/03: project_navigator: add the option to open the first group automatically.

2016-12-02 Thread Jaehwan Kim
jaehwan pushed a commit to branch master.

http://git.enlightenment.org/tools/eflete.git/commit/?id=220c58eb8f650cada6dc45f10f152265add2c411

commit 220c58eb8f650cada6dc45f10f152265add2c411
Author: Jaehwan Kim <jae.hwan@samsung.com>
Date:   Sat Dec 3 10:52:54 2016 +0900

project_navigator: add the option to open the first group automatically.

The user want to the widget more quickly. So they can use --open-group
option to open the first group automatically. If the user open only
one group, this option is more useful.
---
 src/bin/eflete.h   |  1 +
 src/bin/main.c |  5 -
 src/bin/ui/project_navigator.c | 16 ++--
 src/bin/ui/tabs.c  |  2 +-
 4 files changed, 20 insertions(+), 4 deletions(-)

diff --git a/src/bin/eflete.h b/src/bin/eflete.h
index 768eb33..f39bbce 100644
--- a/src/bin/eflete.h
+++ b/src/bin/eflete.h
@@ -145,6 +145,7 @@ struct _App_Data
This is needed to continue closing 
application after
clicking in save/don't save buttons in 
project close
popup */
+   Eina_Bool open_group : 1;
 #ifdef HAVE_ENVENTOR
Evas_Object *enventor;
Eina_Bool enventor_mode : 1;
diff --git a/src/bin/main.c b/src/bin/main.c
index b100aaa..539a1fe 100644
--- a/src/bin/main.c
+++ b/src/bin/main.c
@@ -71,6 +71,7 @@ static const Ecore_Getopt options = {
   ECORE_GETOPT_APPEND_METAVAR('d', "dd", "Add data directory for edc 
compilation", "DIR_NAME", ECORE_GETOPT_TYPE_STR),
   ECORE_GETOPT_APPEND_METAVAR('w', "widget", "Add widget to new project or 
import edj-file. Add its styles if the style names are added. Copy its styles 
if the copy style names are added. **rule = 
WIDGET:STYLE[COPY_STYLE,..]{ITEM_STYLE,..[COPY_ITEM_STYLE,..]},..", "(Follow 
the below rule)", ECORE_GETOPT_TYPE_STR),
   ECORE_GETOPT_STORE_TRUE('r', "reopen", "reopen last project"),
+  ECORE_GETOPT_STORE_TRUE('o', "open-group", "open the first group 
automatically"),
   ECORE_GETOPT_VERSION  ('v', "version"),
   ECORE_GETOPT_COPYRIGHT('c', "copyright"),
   ECORE_GETOPT_LICENSE  ('l', "license"),
@@ -185,7 +186,7 @@ _new_project(void *data __UNUSED__)
 EAPI_MAIN int
 elm_main(int argc, char **argv)
 {
-   Eina_Bool info_only = false, reopen = false;
+   Eina_Bool info_only = false, reopen = false, open_group = false;
Config *config;
Recent *r;
int pos;
@@ -201,6 +202,7 @@ elm_main(int argc, char **argv)
  ECORE_GETOPT_VALUE_LIST(data_dirs),
  ECORE_GETOPT_VALUE_LIST(widgets),
  ECORE_GETOPT_VALUE_BOOL(reopen),
+ ECORE_GETOPT_VALUE_BOOL(open_group),
  ECORE_GETOPT_VALUE_BOOL(info_only),
  ECORE_GETOPT_VALUE_BOOL(info_only),
  ECORE_GETOPT_VALUE_BOOL(info_only),
@@ -359,6 +361,7 @@ run:
  ecore_file_mkpath(export_edc);
  ap.path.export_edc = eina_stringshare_add(export_edc);
   }
+ap.open_group = open_group;
 evas_object_show(ap.win);
 elm_run();
 exit:
diff --git a/src/bin/ui/project_navigator.c b/src/bin/ui/project_navigator.c
index dc89760..fcfb8a1 100644
--- a/src/bin/ui/project_navigator.c
+++ b/src/bin/ui/project_navigator.c
@@ -57,6 +57,7 @@ typedef struct
 static Project_Navigator project_navigator;
 static Layout_Popup layout_p;
 static Resource_Name_Validator *validator = NULL;
+static Eina_Bool first_group_open = EINA_FALSE;
 
 static char *
 _group_item_label_get(void *data,
@@ -196,6 +197,7 @@ _expanded_cb(void *data __UNUSED__,
Eina_List *folders = NULL, *groups = NULL;
Elm_Object_Item *glit = event_info;
Eina_Stringshare *prefix = elm_object_item_data_get(glit);
+   Elm_Object_Item *it;
 
if (glit == project_navigator.item_top)
  widget_tree_items_get(ap.project->RM.groups, "", , );
@@ -204,23 +206,33 @@ _expanded_cb(void *data __UNUSED__,
 
EINA_LIST_FREE(folders, prefix)
  {
-elm_genlist_item_append(project_navigator.genlist,
+it = elm_genlist_item_append(project_navigator.genlist,
 project_navigator.itc_folder,
 prefix,
 glit,
 ELM_GENLIST_ITEM_TREE,
 NULL,
 NULL);
+if (ap.open_group && !first_group_open)
+  elm_genlist_item_expanded_set(it, true);
  }
EINA_LIST_FREE(groups, group)
  {
-elm_genlist_item_append(project_navigator.genlist,
+it = elm_genlist_item_append(project_navigator.genlist,
 project_navigator.itc_group,
 group,
 glit,
 

[EGIT] [core/efl] master 01/01: edje_calc: round the scaled value when it is casted to int type.

2016-11-29 Thread Jaehwan Kim
jaehwan pushed a commit to branch master.

http://git.enlightenment.org/core/efl.git/commit/?id=7cce8ae40d7b9d607448135f0384605395537c32

commit 7cce8ae40d7b9d607448135f0384605395537c32
Author: Jaehwan Kim <jae.hwan@samsung.com>
Date:   Tue Nov 29 14:03:20 2016 +0900

edje_calc: round the scaled value when it is casted to int type.

It rounds the value for the more precious calculation when the scaled
value is casted to int type.
---
 src/lib/edje/edje_calc.c| 16 
 src/lib/edje/edje_private.h |  2 ++
 2 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/src/lib/edje/edje_calc.c b/src/lib/edje/edje_calc.c
index 1d97be9..251dad5 100644
--- a/src/lib/edje/edje_calc.c
+++ b/src/lib/edje/edje_calc.c
@@ -2266,7 +2266,7 @@ _edje_part_recalc_single_min_max(FLOAT_T sc,
  }
 
*minw = mnw;
-   if (ep->part->scale) *minw = TO_INT(SCALE(sc, *minw));
+   if (ep->part->scale) *minw = TO_INT_ROUND(SCALE(sc, *minw));
if ((ep->type == EDJE_RP_TYPE_SWALLOW) &&
(ep->typedata.swallow))
  {
@@ -2293,7 +2293,7 @@ _edje_part_recalc_single_min_max(FLOAT_T sc,
  *maxw = mxw;
  if (*maxw > 0)
{
-  if (ep->part->scale) *maxw = TO_INT(SCALE(sc, *maxw));
+  if (ep->part->scale) *maxw = TO_INT_ROUND(SCALE(sc, *maxw));
   if (*maxw < 1) *maxw = 1;
}
   }
@@ -2306,7 +2306,7 @@ _edje_part_recalc_single_min_max(FLOAT_T sc,
   *maxw = mxw;
   if (*maxw > 0)
 {
-   if (ep->part->scale) *maxw = TO_INT(SCALE(sc, *maxw));
+   if (ep->part->scale) *maxw = TO_INT_ROUND(SCALE(sc, 
*maxw));
if (*maxw < 1) *maxw = 1;
 }
   if (ep->typedata.swallow->swallow_params.max.w < *maxw)
@@ -2319,7 +2319,7 @@ _edje_part_recalc_single_min_max(FLOAT_T sc,
 *maxw = mxw;
 if (*maxw > 0)
   {
- if (ep->part->scale) *maxw = TO_INT(SCALE(sc, *maxw));
+ if (ep->part->scale) *maxw = TO_INT_ROUND(SCALE(sc, *maxw));
  if (*maxw < 1) *maxw = 1;
   }
  }
@@ -2331,7 +2331,7 @@ _edje_part_recalc_single_min_max(FLOAT_T sc,
  }
 
*minh = mnh;
-   if (ep->part->scale) *minh = TO_INT(SCALE(sc, *minh));
+   if (ep->part->scale) *minh = TO_INT_ROUND(SCALE(sc, *minh));
if ((ep->type == EDJE_RP_TYPE_SWALLOW) &&
(ep->typedata.swallow))
  {
@@ -2358,7 +2358,7 @@ _edje_part_recalc_single_min_max(FLOAT_T sc,
  *maxh = mxh;
  if (*maxh > 0)
{
-  if (ep->part->scale) *maxh = TO_INT(SCALE(sc, *maxh));
+  if (ep->part->scale) *maxh = TO_INT_ROUND(SCALE(sc, *maxh));
   if (*maxh < 1) *maxh = 1;
}
   }
@@ -2371,7 +2371,7 @@ _edje_part_recalc_single_min_max(FLOAT_T sc,
   *maxh = mxh;
   if (*maxh > 0)
 {
-   if (ep->part->scale) *maxh = TO_INT(SCALE(sc, *maxh));
+   if (ep->part->scale) *maxh = TO_INT_ROUND(SCALE(sc, 
*maxh));
if (*maxh < 1) *maxh = 1;
 }
   if (ep->typedata.swallow->swallow_params.max.h < *maxh)
@@ -2384,7 +2384,7 @@ _edje_part_recalc_single_min_max(FLOAT_T sc,
 *maxh = mxh;
 if (*maxh > 0)
   {
- if (ep->part->scale) *maxh = TO_INT(SCALE(sc, *maxh));
+ if (ep->part->scale) *maxh = TO_INT_ROUND(SCALE(sc, *maxh));
  if (*maxh < 1) *maxh = 1;
   }
  }
diff --git a/src/lib/edje/edje_private.h b/src/lib/edje/edje_private.h
index 3e610d2..9a0fd21 100644
--- a/src/lib/edje/edje_private.h
+++ b/src/lib/edje/edje_private.h
@@ -148,6 +148,7 @@ EAPI extern int _edje_default_log_dom ;
 #define FROM_DOUBLE(a) eina_f32p32_double_from(a)
 #define FROM_INT(a) eina_f32p32_int_from(a)
 #define TO_INT(a) eina_f32p32_int_to(a)
+#define TO_INT_ROUND(a) eina_f32p32_int_to(ADD(a, FROM_DOUBLE(0.5)))
 #define ZERO 0
 #define COS(a) eina_f32p32_cos(a)
 #define SIN(a) eina_f32p32_sin(a)
@@ -168,6 +169,7 @@ EAPI extern int _edje_default_log_dom ;
 #define FROM_DOUBLE(a) (a)
 #define FROM_INT(a) (double)(a)
 #define TO_INT(a) (int)(a)
+#define TO_INT_ROUND(a) (int)(a + 0.5)
 #define ZERO 0.0
 #define COS(a) cos(a)
 #define SIN(a) sin(a)

-- 




[EGIT] [core/efl] master 01/01: edje_pick: add base_scale value to target edj from origin edj

2016-11-24 Thread Jaehwan Kim
jaehwan pushed a commit to branch master.

http://git.enlightenment.org/core/efl.git/commit/?id=b5e9818c02d39fab68e47e54ea41b3e14537fd2a

commit b5e9818c02d39fab68e47e54ea41b3e14537fd2a
Author: Jaehwan Kim <jae.hwan@samsung.com>
Date:   Fri Nov 25 13:17:56 2016 +0900

edje_pick: add base_scale value to target edj from origin edj
---
 src/bin/edje/edje_pick.c | 13 +
 1 file changed, 13 insertions(+)

diff --git a/src/bin/edje/edje_pick.c b/src/bin/edje/edje_pick.c
index 744fc04..12b8964 100644
--- a/src/bin/edje/edje_pick.c
+++ b/src/bin/edje/edje_pick.c
@@ -529,6 +529,7 @@ _edje_pick_output_prepare(Edje_File *o, Edje_File *edf, 
char *name)
 o->version = edf->version;
 o->minor = edf->minor;
 o->feature_ver = edf->feature_ver;
+o->base_scale = edf->base_scale;
 o->collection = eina_hash_string_small_new(NULL);
 o->data = eina_hash_string_small_new(NULL);
 
@@ -557,6 +558,12 @@ _edje_pick_output_prepare(Edje_File *o, Edje_File *edf, 
char *name)
  if (o->feature_ver < edf->feature_ver)
o->feature_ver = edf->feature_ver;
   }
+if (o->base_scale != edf->base_scale)
+  {
+ EINA_LOG_ERR("Error: Merging files of various base scale. Base 
scale of the files should be same.\n");
+ free(o);
+ return NULL;
+  }
  }
 
_edje_pick_external_dir_update(o, edf);
@@ -1499,6 +1506,12 @@ main(int argc, char **argv)
 edf->ef = ef;
 
 out_file = _edje_pick_output_prepare(out_file, edf, output_filename);
+if (!out_file)
+  {
+ _edje_cache_file_unref(edf);
+ eet_close(ef);
+ return _edje_pick_cleanup(inp_files, out_file, k);
+  }
 
 k = _edje_pick_header_make(out_file, edf, inp_files);
 if (k != EDJE_PICK_NO_ERROR)

-- 




[EGIT] [tools/eflete] master 01/01: project_common: don't show project-save popup in Tizen

2016-11-23 Thread Jaehwan Kim
jaehwan pushed a commit to branch master.

http://git.enlightenment.org/tools/eflete.git/commit/?id=22b9ef6410cfb411a6a14c2aca011dad600c10af

commit 22b9ef6410cfb411a6a14c2aca011dad600c10af
Author: Jaehwan Kim <jae.hwan@samsung.com>
Date:   Thu Nov 24 14:28:14 2016 +0900

project_common: don't show project-save popup in Tizen
---
 src/bin/ui/main_window.h |  7 +++
 src/bin/ui/project_common.c  | 19 +++
 src/bin/ui/project_common.h  |  2 +-
 src/bin/ui/project_export.c  |  8 
 src/bin/ui/tab_home_import_edc.c |  2 +-
 src/bin/ui/tab_home_import_edj.c |  7 ++-
 src/bin/ui/tab_home_new.c|  2 +-
 7 files changed, 35 insertions(+), 12 deletions(-)

diff --git a/src/bin/ui/main_window.h b/src/bin/ui/main_window.h
index c817e2b..9c2edfe 100644
--- a/src/bin/ui/main_window.h
+++ b/src/bin/ui/main_window.h
@@ -104,6 +104,13 @@ typedef enum
BG_PREVIEW_BLACK
 } Bg_Preview;
 
+typedef enum
+{
+   FILE_SAVE_ASK = 1,
+   FILE_SAVE_REPLACE,
+   FILE_SAVE_APPEND
+} File_Save;
+
 /**
  * The validation func for popup action.
  *
diff --git a/src/bin/ui/project_common.c b/src/bin/ui/project_common.c
index b1c5b95..00cabd2 100644
--- a/src/bin/ui/project_common.c
+++ b/src/bin/ui/project_common.c
@@ -69,7 +69,7 @@ end:
 
 Eina_Bool
 exist_permission_check(const char *path, const char *name,
-   const char *title, const char *msg, Eina_Bool append,
+   const char *title, const char *msg, File_Save option,
Ecore_Cb func,
const void *data)
 {
@@ -108,15 +108,26 @@ exist_permission_check(const char *path, const char *name,
 eina_strbuf_free(pcd->buf);
 goto exit;
  }
-   if (!append)
+
+   if (option == FILE_SAVE_ASK)
  {
 popup = popup_add(title, msg, BTN_REPLACE | BTN_CANCEL, NULL, NULL);
 evas_object_smart_callback_add(popup, POPUP_CLOSE_CB, 
_exist_permission_popup_close_cb, pcd);
 return ret;
  }
-   else if (pcd->func)
+   else
  {
-pcd->func((void *)pcd->data);
+if (!ecore_file_can_write(eina_strbuf_string_get(pcd->buf)))
+  {
+ ecore_job_add(_permision_popup_job, pcd);
+ ret = false;
+ goto exit;
+  }
+
+if (option == FILE_SAVE_REPLACE)
+ ecore_file_recursive_rm(eina_strbuf_string_get(pcd->buf));
+if (pcd->func)
+  pcd->func((void *)pcd->data);
  }
 
 exit:
diff --git a/src/bin/ui/project_common.h b/src/bin/ui/project_common.h
index a5a115a..bc127c1 100644
--- a/src/bin/ui/project_common.h
+++ b/src/bin/ui/project_common.h
@@ -21,7 +21,7 @@
 #define PROJECT_COMMON_H
 
 Eina_Bool
-exist_permission_check(const char *path, const char *name, const char *title, 
const char *msg, Eina_Bool append, Ecore_Cb func, const void *data);
+exist_permission_check(const char *path, const char *name, const char *title, 
const char *msg, File_Save option, Ecore_Cb func, const void *data);
 
 Eina_Bool
 progress_print(void *data, Eina_Stringshare *progress_string);
diff --git a/src/bin/ui/project_export.c b/src/bin/ui/project_export.c
index 47e0355..d558aef 100644
--- a/src/bin/ui/project_export.c
+++ b/src/bin/ui/project_export.c
@@ -107,7 +107,7 @@ _export_dev(void *data __UNUSED__,
exist_permission_check(dir,
   name,
   _("Export to develop edj-file"),
-  eina_strbuf_string_get(buf), EINA_TRUE, /* check 
this true on upstream I have doubts about that */
+  eina_strbuf_string_get(buf), FILE_SAVE_APPEND,
   _after_export_dev_check, (void 
*)eina_stringshare_add(path));
free(dir);
eina_strbuf_free(buf);
@@ -185,7 +185,7 @@ _export_release(void *data __UNUSED__,
exist_permission_check(elm_fileselector_path_get(obj),
   elm_fileselector_current_name_get(obj),
   _("Export to release edj-file"),
-  eina_strbuf_string_get(buf), EINA_FALSE,
+  eina_strbuf_string_get(buf), FILE_SAVE_ASK,
   _after_export_release_check, (void 
*)eina_stringshare_add(path));
eina_strbuf_free(buf);
 
@@ -264,7 +264,7 @@ _export_source_code(void *data,
exist_permission_check(exdata->path,
   ap.project->name,
   _("Export to develop edj-file"),
-  eina_strbuf_string_get(buf), EINA_FALSE,
+  eina_strbuf_string_get(buf), FILE_SAVE_ASK,
   _after_export_source_code_check, exdata);
eina_strbuf_free(buf);
 
@@ -338,7 +338,7 @@ _export_group_source_code(void *data __UNUSED__,
  path, name);
exist_permission_check(path, name,
   _("Export 

[EGIT] [tools/eflete] master 01/01: group_navigator: fix the segmentation fault about vector

2016-11-23 Thread Jaehwan Kim
jaehwan pushed a commit to branch master.

http://git.enlightenment.org/tools/eflete.git/commit/?id=defc4cd852d3ee0d924eb4a7f228fa70328f3d2b

commit defc4cd852d3ee0d924eb4a7f228fa70328f3d2b
Author: Jaehwan Kim <jae.hwan@samsung.com>
Date:   Wed Nov 23 11:27:52 2016 +0900

group_navigator: fix the segmentation fault about vector
---
 src/bin/common/string_common.c |  5 +++--
 src/bin/ui/workspace/group_navigator.c | 10 ++
 2 files changed, 13 insertions(+), 2 deletions(-)

diff --git a/src/bin/common/string_common.c b/src/bin/common/string_common.c
index 26fb06f..5fd8cf4 100644
--- a/src/bin/common/string_common.c
+++ b/src/bin/common/string_common.c
@@ -118,9 +118,10 @@ static char *part_types[] = {
  "Mesh node",
  "Light",
  "Camera",
- "Snapshot"
+ "Snapshot",
+ "Vector"
 };
-static unsigned int part_types_count = 16;
+static unsigned int part_types_count = 17;
 
 const char *
 part_type_text_get(Edje_Part_Type part_type)
diff --git a/src/bin/ui/workspace/group_navigator.c 
b/src/bin/ui/workspace/group_navigator.c
index 2b7337b..b6e229f 100644
--- a/src/bin/ui/workspace/group_navigator.c
+++ b/src/bin/ui/workspace/group_navigator.c
@@ -98,6 +98,7 @@ static Edje_Part_Type part_types[] = {
  EDJE_PART_TYPE_TABLE,
  EDJE_PART_TYPE_PROXY,
  EDJE_PART_TYPE_SPACER,
+ EDJE_PART_TYPE_VECTOR,
  EDJE_PART_TYPE_NONE
 };
 static const char *program_actions[] = {
@@ -371,6 +372,9 @@ _part_content_get(void *data,
case EDJE_PART_TYPE_EXTERNAL:
   IMAGE_ADD_NEW(obj, content, "icon", "external");
   break;
+   case EDJE_PART_TYPE_VECTOR:
+  IMAGE_ADD_NEW(obj, content, "icon", "vector");
+  break;
   default:
   ERR("Unhandled part type");
   abort();
@@ -414,6 +418,9 @@ _part_content_get(void *data,
case EDJE_PART_TYPE_EXTERNAL:
   IMAGE_ADD_NEW(obj, content, "icon", "external");
   break;
+   case EDJE_PART_TYPE_VECTOR:
+  IMAGE_ADD_NEW(obj, content, "icon", "vector1");
+  break;
   default:
   ERR("Unhandled part type");
   abort();
@@ -456,6 +463,9 @@ _part_content_get(void *data,
case EDJE_PART_TYPE_EXTERNAL:
   IMAGE_ADD_NEW(obj, content, "icon", "external");
   break;
+   case EDJE_PART_TYPE_VECTOR:
+  IMAGE_ADD_NEW(obj, content, "icon", "vector2");
+  break;
   default:
   ERR("Unhandled part type");
   abort();

-- 




[EGIT] [tools/eflete] master 01/01: fix the bin path dynamically to execute eflete_exporter

2016-10-05 Thread Jaehwan Kim
jaehwan pushed a commit to branch master.

http://git.enlightenment.org/tools/eflete.git/commit/?id=19332bdd382f91e600cac03e1b6e366b2b1dfbb6

commit 19332bdd382f91e600cac03e1b6e366b2b1dfbb6
Author: Jaehwan Kim <jae.hwan@samsung.com>
Date:   Thu Oct 6 10:15:27 2016 +0900

fix the bin path dynamically to execute eflete_exporter

@fix
---
 configure.ac   | 2 --
 src/bin/project_manager/project_manager2.c | 8 
 2 files changed, 4 insertions(+), 6 deletions(-)

diff --git a/configure.ac b/configure.ac
index 05e9288..fd3b731 100644
--- a/configure.ac
+++ b/configure.ac
@@ -197,10 +197,8 @@ EFLETE_DEFINE=""
 
#===
 if test "x${prefix}" = "xNONE"; then
LOCALE_DIR="${ac_default_prefix}/share/locale"
-   EFLETE_DEFINE+=" -DEFLETE_BIN_PATH=\\\"\\\" "
 else
LOCALE_DIR="${prefix}/share/locale"
-   EFLETE_DEFINE+=" -DEFLETE_BIN_PATH=\\\"${prefix}/bin/\\\" "
 fi
 AC_SUBST(LOCALE_DIR)
 
#===
diff --git a/src/bin/project_manager/project_manager2.c 
b/src/bin/project_manager/project_manager2.c
index e022a76..92577a6 100644
--- a/src/bin/project_manager/project_manager2.c
+++ b/src/bin/project_manager/project_manager2.c
@@ -730,7 +730,7 @@ _project_open_internal(Project_Process_Data *ppd)
 
/**/
file_dir = ecore_file_dir_get(ppd->path);
snprintf(cmd, sizeof(cmd),
-EFLETE_BIN_PATH"eflete_exporter --edj %s --path %s/develop", 
ppd->project->saved_edj, file_dir);
+"%s/eflete_exporter --edj %s --path %s/develop", 
elm_app_bin_dir_get(), ppd->project->saved_edj, file_dir);
 
ecore_exe_pipe_run(cmd, FLAGS, NULL);
 
@@ -1225,7 +1225,7 @@ pm_group_source_code_export(Project *project,
ppd->data = (void *)data;
 
snprintf(buf, sizeof(buf),
-EFLETE_BIN_PATH"eflete_exporter --edj %s --path %s -g %s -s", 
project->saved_edj, path, group->common.name);
+"%s/eflete_exporter --edj %s --path %s -g %s -s", 
elm_app_bin_dir_get(), project->saved_edj, path, group->common.name);
 
ecore_exe_pipe_run(buf, FLAGS, NULL);
 
@@ -1255,7 +1255,7 @@ pm_project_source_code_export(Project *project,
ppd->data = (void *)data;
 
snprintf(buf, sizeof(buf),
-EFLETE_BIN_PATH"eflete_exporter --edj %s --path %s -s", 
project->saved_edj, path);
+"%s/eflete_exporter --edj %s --path %s -s", elm_app_bin_dir_get(), 
project->saved_edj, path);
 
ecore_exe_pipe_run(buf, FLAGS, NULL);
 
@@ -1418,7 +1418,7 @@ pm_project_release_export(Project *project,
 
eina_file_mkdtemp("eflete_export_XX", >tmp_dirname);
snprintf(buf, sizeof(buf),
-EFLETE_BIN_PATH"eflete_exporter --edj %s --path %s -s", 
ppd->project->saved_edj, ppd->tmp_dirname);
+"%s/eflete_exporter --edj %s --path %s -s", elm_app_bin_dir_get(), 
ppd->project->saved_edj, ppd->tmp_dirname);
ppd->edc = eina_stringshare_printf("%s/generated.edc", ppd->tmp_dirname);
ecore_exe_pipe_run(buf, FLAGS, NULL);
 

-- 




[EGIT] [tools/eflete] master 01/01: Project manager: fix build break in window.

2016-09-30 Thread Jaehwan Kim
jaehwan pushed a commit to branch master.

http://git.enlightenment.org/tools/eflete.git/commit/?id=3fa4b5d75318f4f1a56a5357dcb3dd73e98e2021

commit 3fa4b5d75318f4f1a56a5357dcb3dd73e98e2021
Author: Jaehwan Kim <jae.hwan@samsung.com>
Date:   Fri Sep 30 16:44:38 2016 +0900

Project manager: fix build break in window.

@fix
---
 src/bin/project_manager/project_manager2.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/src/bin/project_manager/project_manager2.c 
b/src/bin/project_manager/project_manager2.c
index 0f7dd7a..7482a32 100644
--- a/src/bin/project_manager/project_manager2.c
+++ b/src/bin/project_manager/project_manager2.c
@@ -627,7 +627,7 @@ _project_open_internal(Project_Process_Data *ppd)
 /* really this case is unlickly, but we need handle it */
 ERR("Project file already locked by another application");
 #ifdef _WIN32
-CloseHandle(fd);
+CloseHandle(pro_fd);
 #else
 if (pro_fd != -1)
   close(pro_fd);

-- 




[EGIT] [tools/eflete] master 01/01: Resource manager: add NULL checking.

2016-09-30 Thread Jaehwan Kim
jaehwan pushed a commit to branch master.

http://git.enlightenment.org/tools/eflete.git/commit/?id=a37124b9548def37f4790a1ca7b09dd88918542f

commit a37124b9548def37f4790a1ca7b09dd88918542f
Author: Jaehwan Kim <jae.hwan@samsung.com>
Date:   Fri Sep 30 14:36:23 2016 +0900

Resource manager: add NULL checking.

@fix
---
 src/bin/resource_manager/resource_manager_build.c | 9 ++---
 1 file changed, 6 insertions(+), 3 deletions(-)

diff --git a/src/bin/resource_manager/resource_manager_build.c 
b/src/bin/resource_manager/resource_manager_build.c
index 19abc66..4753249 100644
--- a/src/bin/resource_manager/resource_manager_build.c
+++ b/src/bin/resource_manager/resource_manager_build.c
@@ -105,7 +105,8 @@ _state_dependency_load(Project *pro, Group2 *group, Part2 
*part, State2 *state)
res = resource_manager_find(pro->RM.image_sets, state->normal);
  else
res = resource_manager_find(pro->RM.images, state->normal);
- _resource_usage_resource_add((Resource2 *)state, res);
+ if (res)
+   _resource_usage_resource_add((Resource2 *)state, res);
   }
 
 EINA_LIST_FOREACH(state->tweens, l2, res)
@@ -292,7 +293,8 @@ _group_dependency_load(Project *pro, Group2 *group)
  {
 main_group_name = edje_edit_group_aliased_get(group->edit_object, 
group->common.name);
 used = resource_manager_find(pro->RM.groups, main_group_name);
-_resource_usage_resource_add((Resource2 *)group, used);
+if (used)
+  _resource_usage_resource_add((Resource2 *)group, used);
 
 edje_edit_string_free(main_group_name);
 
@@ -349,7 +351,8 @@ _resource_dependency_load(Project *pro)
 EINA_LIST_FOREACH(set_images, l2, set_image_name)
   {
  used = resource_manager_find(pro->RM.images, set_image_name);
- _resource_usage_resource_add(res, used);
+ if (used)
+   _resource_usage_resource_add(res, used);
   }
 edje_edit_string_list_free(set_images);
  }

-- 




[EGIT] [tools/eflete] master 01/01: validate: fix NAME_REGEX about the file name.

2016-09-28 Thread Jaehwan Kim
jaehwan pushed a commit to branch master.

http://git.enlightenment.org/tools/eflete.git/commit/?id=89e5d7e468f387188a6a74eda8134499e78e2779

commit 89e5d7e468f387188a6a74eda8134499e78e2779
Author: Jaehwan Kim <jae.hwan@samsung.com>
Date:   Thu Sep 29 11:05:11 2016 +0900

validate: fix NAME_REGEX about the file name.
---
 src/bin/common/string_common.h   | 1 +
 src/bin/ui/tab_home_import_edc.c | 2 +-
 src/bin/ui/tab_home_import_edj.c | 2 +-
 3 files changed, 3 insertions(+), 2 deletions(-)

diff --git a/src/bin/common/string_common.h b/src/bin/common/string_common.h
index 3a4d62e..1cf6751 100644
--- a/src/bin/common/string_common.h
+++ b/src/bin/common/string_common.h
@@ -33,6 +33,7 @@
 
 #define LAYOUT_NAME_REGEX "^[a-zA-Z0-9_\\.\\/-]+$"
 #define NAME_REGEX "^[a-zA-Z0-9_]+$"
+#define FILE_NAME_REGEX "^[a-zA-Z0-9_\\.-]+$"
 #define STATE_VALUE_REGEX "^((0?(\\.[0-9]+)?|1(\\.0+)?))?$"
 #define PART_NAME_REGEX "^[a-zA-Z0-9_\\.]+$"
 #define DATA_NAME_REGEX ".*"
diff --git a/src/bin/ui/tab_home_import_edc.c b/src/bin/ui/tab_home_import_edc.c
index 2c69db6..9817e9a 100644
--- a/src/bin/ui/tab_home_import_edc.c
+++ b/src/bin/ui/tab_home_import_edc.c
@@ -479,7 +479,7 @@ _tab_import_edc_add(void)
Evas_Object *sc, *item, *separ;
Dir_Data *dir_data;
 
-   tab_edc.name_validator = elm_validator_regexp_new(NAME_REGEX, NULL);
+   tab_edc.name_validator = elm_validator_regexp_new(FILE_NAME_REGEX, NULL);
 
tab_edc.layout = elm_layout_add(ap.win);
elm_layout_theme_set(tab_edc.layout, "layout", "tab_home", "import_edc");
diff --git a/src/bin/ui/tab_home_import_edj.c b/src/bin/ui/tab_home_import_edj.c
index 354dcc8..8e80934 100644
--- a/src/bin/ui/tab_home_import_edj.c
+++ b/src/bin/ui/tab_home_import_edj.c
@@ -553,7 +553,7 @@ _tab_import_edj_del(void *data __UNUSED__,
 Evas_Object *
 _tab_import_edj_add(void)
 {
-   tab_edj.name_validator = elm_validator_regexp_new(NAME_REGEX, NULL);
+   tab_edj.name_validator = elm_validator_regexp_new(FILE_NAME_REGEX, NULL);
 
tab_edj.layout = elm_layout_add(ap.win);
elm_layout_theme_set(tab_edj.layout, "layout", "tab_home", "import_edj");

-- 




[EGIT] [tools/eflete] master 02/02: import_edj: add specific item loading option.

2016-09-28 Thread Jaehwan Kim
jaehwan pushed a commit to branch master.

http://git.enlightenment.org/tools/eflete.git/commit/?id=24774dc71fe9d2cbf07724b2720e4b3f644bf533

commit 24774dc71fe9d2cbf07724b2720e4b3f644bf533
Author: Jaehwan Kim <jae.hwan@samsung.com>
Date:   Tue Sep 27 15:34:52 2016 +0900

import_edj: add specific item loading option.

It can make to load specific item style of widget by command.

@feature
---
 src/bin/common/widget_list.c | 146 ++-
 src/bin/common/widget_list.h |   4 +-
 src/bin/main.c   |   2 +-
 src/bin/ui/tab_home_import_edj.c |  90 +++-
 4 files changed, 221 insertions(+), 21 deletions(-)

diff --git a/src/bin/common/widget_list.c b/src/bin/common/widget_list.c
index b84c45b..2d6f3d4 100644
--- a/src/bin/common/widget_list.c
+++ b/src/bin/common/widget_list.c
@@ -41,7 +41,6 @@ static const char *exception[] =
"elm/colorselector/image/colorbar_1/",
"elm/colorselector/image/colorbar_2/",
"elm/colorselector/image/colorbar_3/",
-   "elm/gengrid/item/default/",
"elm/entry/handler/start/",
"elm/entry/handler/end/",
"elm/entry/emoticon/wtf/",
@@ -120,7 +119,8 @@ style_name_get(const Eina_Stringshare *group_name)
   }
 class[i - first] = '\0';
 
-if (!strcmp(widget, "genlist") && strcmp(class, "base")) return NULL;
+if ((!strcmp(widget, "genlist") || !strcmp(widget, "gengrid")) &&
+strcmp(class, "base")) return NULL;
 
 first = i + 1;
 for (i = first; i < len; i++)
@@ -134,6 +134,61 @@ style_name_get(const Eina_Stringshare *group_name)
 }
 
 Eina_Stringshare *
+item_style_name_get(const Eina_Stringshare *group_name, Eina_Stringshare 
*style_name)
+{
+   int len = strlen(group_name);
+   int first, i;
+   Eina_List *l;
+   Eina_Stringshare *style_item;
+   char widget[32], class[32], style[256];
+   const char *str;
+
+   if (group_name[0] != 'e') return NULL;
+   if (group_name[1] != 'l') return NULL;
+   if (group_name[2] != 'm') return NULL;
+   if (group_name[3] != '/') return NULL;
+
+   for (i = 4; i < len; i++)
+ {
+if (group_name[i] == '/') break;
+ }
+
+   first = 4;
+   for (i = first; i < len; i++)
+ {
+if (group_name[i] == '/') break;
+widget[i - first] = group_name[i];
+ }
+   widget[i - first] = '\0';
+
+   first = i + 1;
+   for (i = first; i < len; i++)
+ {
+if (group_name[i] == '/') break;
+class[i - first] = group_name[i];
+ }
+   class[i - first] = '\0';
+
+   if ((strcmp(widget, "genlist") && strcmp(widget, "gengrid")) ||
+   !strcmp(class, "base")) return NULL;
+
+   first = i + 1;
+   for (i = first; i < len; i++)
+ {
+style[i - first] = group_name[i];
+ }
+   style[i - first] = '\0';
+
+   str = string_rstr(style, style_name);
+   if (str)
+ {
+style[strlen(style) - strlen(str) - 1] = '\0';
+ }
+
+   return eina_stringshare_add(style);
+}
+
+Eina_Stringshare *
 option_widget_name_get(const char *str, Eina_List **style_list)
 {
int len = strlen(str);
@@ -188,7 +243,92 @@ option_widget_name_get(const char *str, Eina_List 
**style_list)
 }
 
 Eina_Stringshare *
-option_style_name_get(const char *str, Eina_List **cp_style_list)
+option_style_name_get(const char *str, Eina_List **item_style_list, Eina_List 
**cp_style_list)
+{
+   int len = strlen(str);
+   char style[32], cp_style[256], item_style[256];
+   Eina_List *list = NULL;
+   int i, first = 0;
+   Eina_Bool is_cp_style = EINA_FALSE;
+   Eina_Bool is_item_style = EINA_FALSE;
+
+   *item_style_list = NULL;
+   *cp_style_list = NULL;
+
+   for (i = 0; i < len; i++)
+ {
+if (str[i] == '{')
+  {
+ is_item_style = EINA_TRUE;
+ style[i] = '\0';
+ first = i + 1;
+ continue;
+  }
+else if (str[i] == '}')
+  break;
+
+if (!is_item_style)
+  {
+ if (str[i] == '[')
+   {
+  is_cp_style = EINA_TRUE;
+  style[i] = '\0';
+  first = i + 1;
+  continue;
+   }
+ else if (str[i] == ']')
+   {
+  cp_style[i - first] = '\0';
+  *cp_style_list = eina_list_append(*cp_style_list, 
eina_stringshare_add(cp_style));
+  if (i + 1 < len && str[i + 1] != '{') break;
+   }
+  }
+
+if (!is_item_style)
+  {
+ if (!is_cp_style)
+   {
+  style[i] = str[i];
+   }
+ else
+   {
+  if (str[i] == ',')
+{
+ 

[EGIT] [tools/eflete] master 01/02: widget_list: fix the return type

2016-09-28 Thread Jaehwan Kim
jaehwan pushed a commit to branch master.

http://git.enlightenment.org/tools/eflete.git/commit/?id=02643e9156face98e0e6d97f8d8312578da38908

commit 02643e9156face98e0e6d97f8d8312578da38908
Author: Jaehwan Kim <jae.hwan@samsung.com>
Date:   Thu Sep 22 11:27:48 2016 +0900

widget_list: fix the return type
---
 src/bin/common/widget_list.h | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/src/bin/common/widget_list.h b/src/bin/common/widget_list.h
index b3f93e0..944bfea 100644
--- a/src/bin/common/widget_list.h
+++ b/src/bin/common/widget_list.h
@@ -36,10 +36,10 @@ struct _End_Item_Data
 };
 typedef struct _End_Item_Data End_Item_Data;
 
-const char *widget_name_get(const Eina_Stringshare *group_name);
-const char *style_name_get(const Eina_Stringshare *group_name);
+Eina_Stringshare *widget_name_get(const Eina_Stringshare *group_name);
+Eina_Stringshare *style_name_get(const Eina_Stringshare *group_name);
 Eina_Stringshare *option_widget_name_get(const char *str, Eina_List 
**style_list);
-const char *option_style_name_get(const char *str, Eina_List **cp_style_list);
+Eina_Stringshare *option_style_name_get(const char *str, Eina_List 
**cp_style_list);
 Eina_List *widget_prefix_list_get(Eina_List *collections, const char 
*widget_name, const char *style_name);
 
 /*

-- 




[EGIT] [core/efl] master 01/01: edje_program: add NULL checking

2016-09-27 Thread Jaehwan Kim
jaehwan pushed a commit to branch master.

http://git.enlightenment.org/core/efl.git/commit/?id=e811484ba599b1de885d221efbec7e33ef9da0ae

commit e811484ba599b1de885d221efbec7e33ef9da0ae
Author: Jaehwan Kim <jae.hwan@samsung.com>
Date:   Wed Sep 28 14:47:26 2016 +0900

edje_program: add NULL checking
---
 src/lib/edje/edje_program.c | 9 +
 1 file changed, 5 insertions(+), 4 deletions(-)

diff --git a/src/lib/edje/edje_program.c b/src/lib/edje/edje_program.c
index bb3675d..30cfe44 100644
--- a/src/lib/edje/edje_program.c
+++ b/src/lib/edje/edje_program.c
@@ -231,10 +231,11 @@ edje_object_propagate_callback_add(Evas_Object *obj, void 
(*func)(void *data, Ev
sig = eina_stringshare_add("*");
src = eina_stringshare_add("*");
 
-   _edje_signal_callback_push(ed->callbacks,
-  sig, src,
-  func, data,
-  EINA_TRUE);
+   if (ed->callbacks)
+ _edje_signal_callback_push(ed->callbacks,
+sig, src,
+func, data,
+EINA_TRUE);
 
eina_stringshare_del(sig);
eina_stringshare_del(src);

-- 




[EGIT] [tools/eflete] master 01/01: tab_home: fix a segment fault

2016-09-21 Thread Jaehwan Kim
jaehwan pushed a commit to branch master.

http://git.enlightenment.org/tools/eflete.git/commit/?id=c4b141feff6625c2750ff8943f26b1e42e6c0be6

commit c4b141feff6625c2750ff8943f26b1e42e6c0be6
Author: Jaehwan Kim <jae.hwan@samsung.com>
Date:   Wed Sep 21 17:07:29 2016 +0900

tab_home: fix a segment fault
---
 src/bin/ui/tab_home_import_edj.c | 5 ++---
 1 file changed, 2 insertions(+), 3 deletions(-)

diff --git a/src/bin/ui/tab_home_import_edj.c b/src/bin/ui/tab_home_import_edj.c
index edb5101..4e299fd 100644
--- a/src/bin/ui/tab_home_import_edj.c
+++ b/src/bin/ui/tab_home_import_edj.c
@@ -708,16 +708,15 @@ _tab_import_edj_data_set(const char *name, const char 
*path, const char *edj, co
 if (!item)
   {
  item = elm_genlist_first_item_get(tab_edj.genlist);
- do
+ while (item)
{
   node = elm_object_item_data_get(item);
   if (!strcmp(node->name, "elm/"))
 break;
   item = elm_genlist_item_next_get(item);
}
- while (item);
   }
-if (node->list)
+if (node && node->list)
   {
  EINA_LIST_FOREACH(node->list, l1, sub)
  {

-- 




[EGIT] [core/efl] master 02/02: edje_edit: add null checking

2016-09-19 Thread Jaehwan Kim
jaehwan pushed a commit to branch master.

http://git.enlightenment.org/core/efl.git/commit/?id=3efdd5df54b3fb26b5aaaf7252865d748411188f

commit 3efdd5df54b3fb26b5aaaf7252865d748411188f
Author: Jaehwan Kim <jae.hwan@samsung.com>
Date:   Tue Sep 20 13:46:29 2016 +0900

edje_edit: add null checking
---
 src/lib/edje/edje_edit.c | 2 ++
 1 file changed, 2 insertions(+)

diff --git a/src/lib/edje/edje_edit.c b/src/lib/edje/edje_edit.c
index edbe5cd..f3381fa 100644
--- a/src/lib/edje/edje_edit.c
+++ b/src/lib/edje/edje_edit.c
@@ -2905,6 +2905,7 @@ edje_edit_external_add(Evas_Object *obj, const char 
*external)
 
if (!ed->file->external_dir)
  ed->file->external_dir = _alloc(sizeof(Edje_External_Directory));
+   if (!ed->file->external_dir) return EINA_FALSE;
 
for (i = 0; i < ed->file->external_dir->entries_count; ++i)
  if (!ed->file->external_dir->entries[i].entry)
@@ -12555,6 +12556,7 @@ edje_edit_source_generate(Evas_Object *obj)
   {
  es = eina_hash_find(ed->file->data, entry);
  str = edje_string_get(es);
+ if (!str) break;
  data_len = strlen(str);
  /* In case when data ends with '\n' character, this item recognize
   * as data.file. This data will not generated into the source code

-- 




[EGIT] [core/efl] master 01/02: ecore: fix the parameter of strerror

2016-09-19 Thread Jaehwan Kim
jaehwan pushed a commit to branch master.

http://git.enlightenment.org/core/efl.git/commit/?id=1bfb19b457e6b9eb63064903c853c4a4e823a857

commit 1bfb19b457e6b9eb63064903c853c4a4e823a857
Author: Jaehwan Kim <jae.hwan@samsung.com>
Date:   Tue Sep 20 13:45:36 2016 +0900

ecore: fix the parameter of strerror
---
 src/lib/ecore/ecore_main.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/src/lib/ecore/ecore_main.c b/src/lib/ecore/ecore_main.c
index 19c72a4..6b1ac3e 100644
--- a/src/lib/ecore/ecore_main.c
+++ b/src/lib/ecore/ecore_main.c
@@ -1591,7 +1591,7 @@ ecore_main_fd_handler_active_set(Ecore_Fd_Handler  
*fd_handler,
ret = _ecore_main_fdh_poll_modify(fd_handler);
if (ret < 0)
  {
-ERR("Failed to mod epoll fd %d: %s!", fd_handler->fd, strerror(ret));
+ERR("Failed to mod epoll fd %d: %s!", fd_handler->fd, strerror(errno));
  }
 }
 

-- 




[EGIT] [tools/eflete] master 01/02: export: fix to call the popup dismiss.

2016-09-19 Thread Jaehwan Kim
jaehwan pushed a commit to branch master.

http://git.enlightenment.org/tools/eflete.git/commit/?id=9b71b0c064d086f8678bb5229eeaa1aff8443b8b

commit 9b71b0c064d086f8678bb5229eeaa1aff8443b8b
Author: Jaehwan Kim <jae.hwan@samsung.com>
Date:   Mon Sep 19 17:04:14 2016 +0900

export: fix to call the popup dismiss.

If the export is executed by command option, don't call the function
that is related to popup.
---
 src/bin/ui/project_export.c | 9 ++---
 1 file changed, 6 insertions(+), 3 deletions(-)

diff --git a/src/bin/ui/project_export.c b/src/bin/ui/project_export.c
index 1e44af2..5c9e184 100644
--- a/src/bin/ui/project_export.c
+++ b/src/bin/ui/project_export.c
@@ -46,7 +46,8 @@ _after_export_dev_check(void *data)
ap.splash = splash_add(ap.win, _export_develop_setup, _export_teardown, 
NULL, data);
evas_object_focus_set(ap.splash, true);
evas_object_show(ap.splash);
-   popup_fileselector_helper_dismiss();
+   if (!ap.path.export_edj)
+ popup_fileselector_helper_dismiss();
 }
 
 static Eina_Bool
@@ -122,7 +123,8 @@ _after_export_release_check(void *data)
NULL, data);
evas_object_focus_set(ap.splash, true);
evas_object_show(ap.splash);
-   popup_fileselector_helper_dismiss();
+   if (!ap.path.export_edj)
+ popup_fileselector_helper_dismiss();
 }
 
 static Eina_Bool
@@ -202,7 +204,8 @@ _after_export_source_code_check(void *data)
ap.splash = splash_add(ap.win, _export_source_code_setup, _export_teardown, 
NULL, data);
evas_object_focus_set(ap.splash, true);
evas_object_show(ap.splash);
-   popup_fileselector_helper_dismiss();
+   if (!ap.path.export_edc.path)
+ popup_fileselector_helper_dismiss();
 }
 
 static Eina_Bool

-- 




[EGIT] [tools/eflete] master 02/02: project_close: don't make a project close popup in Tizen

2016-09-19 Thread Jaehwan Kim
jaehwan pushed a commit to branch master.

http://git.enlightenment.org/tools/eflete.git/commit/?id=7e35bd40a8fa31bfa361ddecec1658b90f69d83a

commit 7e35bd40a8fa31bfa361ddecec1658b90f69d83a
Author: Jaehwan Kim <jae.hwan@samsung.com>
Date:   Mon Sep 19 17:49:32 2016 +0900

project_close: don't make a project close popup in Tizen
---
 src/bin/ui/project_close.c | 2 ++
 1 file changed, 2 insertions(+)

diff --git a/src/bin/ui/project_close.c b/src/bin/ui/project_close.c
index 1339e6d..cc83d8e 100644
--- a/src/bin/ui/project_close.c
+++ b/src/bin/ui/project_close.c
@@ -177,6 +177,7 @@ project_close(void)
 
assert(ap.project != NULL);
 
+#ifndef HAVE_TIZEN
if (ap.project->changed)
  {
 title = eina_stringshare_printf(_("Close project %s"), 
ap.project->name);
@@ -189,6 +190,7 @@ project_close(void)
 eina_stringshare_del(title);
 return false;
  }
+#endif
 
ui_menu_items_list_disable_set(ap.menu, MENU_ITEMS_LIST_BASE, true);
ui_menu_items_list_disable_set(ap.menu, MENU_ITEMS_LIST_STYLE_ONLY, true);

-- 




[EGIT] [tools/eflete] master 01/01: Tizen : fix the usage of the spinner in tizen

2016-09-12 Thread Jaehwan Kim
jaehwan pushed a commit to branch master.

http://git.enlightenment.org/tools/eflete.git/commit/?id=c339fb1016af6705e540190e9afc7a6239dc008f

commit c339fb1016af6705e540190e9afc7a6239dc008f
Author: Jaehwan Kim <jae.hwan@samsung.com>
Date:   Tue Sep 13 13:25:18 2016 +0900

Tizen : fix the usage of the spinner in tizen

The work of spinner is different in upstream and tizen.
If the "changed" callback of the spinner is called by api,
just return.
---
 src/bin/ui/property/property_common.c |   4 +
 src/bin/ui/property/property_group.c  | 197 ++
 2 files changed, 108 insertions(+), 93 deletions(-)

diff --git a/src/bin/ui/property/property_common.c 
b/src/bin/ui/property/property_common.c
index 54a97a5..3d45a7e 100644
--- a/src/bin/ui/property/property_common.c
+++ b/src/bin/ui/property/property_common.c
@@ -168,6 +168,10 @@ _start_change_stop_cb(void *data,
   Evas_Object *obj,
   void *event_info __UNUSED__)
 {
+#ifdef HAVE_TIZEN
+   Eina_Bool by_api = evas_object_data_get(obj, "by_api");
+   if (by_api) return;
+#endif
PROPERTY_DATA_GET(obj);
Property_Attribute *pa = data;
 
diff --git a/src/bin/ui/property/property_group.c 
b/src/bin/ui/property/property_group.c
index f43bfab..f9f2a87 100644
--- a/src/bin/ui/property/property_group.c
+++ b/src/bin/ui/property/property_group.c
@@ -205,6 +205,17 @@ static const char *image_border_fill_strings[] = { 
STR_NONE,
"Default",
"Solid",
NULL};
+_spinner_value_set(Evas_Object *obj, double val)
+{
+#ifdef HAVE_TIZEN
+   evas_object_data_set(obj, "by_api", EINA_TRUE);
+#endif
+   elm_spinner_value_set(obj, val);
+#ifdef HAVE_TIZEN
+   evas_object_data_set(obj, "by_api", EINA_FALSE);
+#endif
+}
+
 /* defines for args */
 static inline const char *
 _part_name_get(void)
@@ -1770,19 +1781,19 @@ _update_cb(Property_Attribute *pa, Property_Action 
*action)
  return images_list == NULL;
   case ATTRIBUTE_GROUP_MIN_W:
  int_val1 = edje_edit_group_min_w_get(EDIT_OBJ);
- elm_spinner_value_set(action->control, int_val1);
+ _spinner_value_set(action->control, int_val1);
  return !int_val1;
   case ATTRIBUTE_GROUP_MIN_H:
  int_val1 = edje_edit_group_min_h_get(EDIT_OBJ);
- elm_spinner_value_set(action->control, int_val1);
+ _spinner_value_set(action->control, int_val1);
  return !int_val1;
   case ATTRIBUTE_GROUP_MAX_W:
  int_val1 = edje_edit_group_max_w_get(EDIT_OBJ);
- elm_spinner_value_set(action->control, int_val1);
+ _spinner_value_set(action->control, int_val1);
  return !int_val1;
   case ATTRIBUTE_GROUP_MAX_H:
  int_val1 = edje_edit_group_max_h_get(EDIT_OBJ);
- elm_spinner_value_set(action->control, int_val1);
+ _spinner_value_set(action->control, int_val1);
  return !int_val1;
   case ATTRIBUTE_PART_NAME:
  property_entry_set(action->control, PART_ARGS);
@@ -1854,27 +1865,27 @@ _update_cb(Property_Attribute *pa, Property_Action 
*action)
  return editor_part_text_shadow_direction_default_is(EDIT_OBJ, 
PART_ARGS);
   case ATTRIBUTE_PART_DRAG_X:
  int_val1 = edje_edit_part_drag_x_get(EDIT_OBJ, PART_ARGS);
- elm_spinner_value_set(action->control, int_val1);
+ _spinner_value_set(action->control, int_val1);
  return editor_part_drag_x_default_is(EDIT_OBJ, PART_ARGS);
   case ATTRIBUTE_PART_DRAG_Y:
  int_val1 = edje_edit_part_drag_y_get(EDIT_OBJ, PART_ARGS);
- elm_spinner_value_set(action->control, int_val1);
+ _spinner_value_set(action->control, int_val1);
  return editor_part_drag_y_default_is(EDIT_OBJ, PART_ARGS);
   case ATTRIBUTE_PART_DRAG_STEP_X:
  int_val1 = edje_edit_part_drag_step_x_get(EDIT_OBJ, PART_ARGS);
- elm_spinner_value_set(action->control, int_val1);
+ _spinner_value_set(action->control, int_val1);
  return editor_part_drag_step_x_default_is(EDIT_OBJ, PART_ARGS);
   case ATTRIBUTE_PART_DRAG_STEP_Y:
  int_val1 = edje_edit_part_drag_step_y_get(EDIT_OBJ, PART_ARGS);
- elm_spinner_value_set(action->control, int_val1);
+ _spinner_value_set(action->control, int_val1);
  return editor_part_drag_step_y_default_is(EDIT_OBJ, PART_ARGS);
   case ATTRIBUTE_PART_DRAG_COUNT_X:
  int_val1 = edje_edit_part_drag_count_x_get(EDIT_OBJ, PART_ARGS);
- elm_spinner_value_set(action->control, int_val1);
+ _spinner_value_set(action->control, int_val1);
  return editor_part_drag_count_x_default_is(EDIT_OBJ, PART_ARGS);
   case ATTRIBUTE_PART_DRAG_COUNT_Y:

[EGIT] [core/efl] master 01/01: edje: add missed break in the switch construction.

2016-09-06 Thread Jaehwan Kim
jaehwan pushed a commit to branch master.

http://git.enlightenment.org/core/efl.git/commit/?id=59bdf3461ce18f48bba0d315392a536b3778c368

commit 59bdf3461ce18f48bba0d315392a536b3778c368
Author: Jaehwan Kim <jae.hwan@samsung.com>
Date:   Wed Sep 7 14:01:51 2016 +0900

edje: add missed break in the switch construction.
---
 src/bin/edje/edje_cc_handlers.c | 1 +
 src/bin/edje/edje_svg_loader.c  | 1 +
 2 files changed, 2 insertions(+)

diff --git a/src/bin/edje/edje_cc_handlers.c b/src/bin/edje/edje_cc_handlers.c
index 4c8b26b..1eeb847 100644
--- a/src/bin/edje/edje_cc_handlers.c
+++ b/src/bin/edje/edje_cc_handlers.c
@@ -11279,6 +11279,7 @@ 
st_collections_group_parts_part_description_properties_specular(void)
ed->light.properties.specular.g = parse_int_range(1, 0, 255);
ed->light.properties.specular.b = parse_int_range(2, 0, 255);
ed->light.properties.specular.a = parse_int_range(3, 0, 255);
+   break;
 }
   case EDJE_PART_TYPE_MESH_NODE:
 {
diff --git a/src/bin/edje/edje_svg_loader.c b/src/bin/edje/edje_svg_loader.c
index bf9c37d..63aa4ef 100644
--- a/src/bin/edje/edje_svg_loader.c
+++ b/src/bin/edje/edje_svg_loader.c
@@ -1853,6 +1853,7 @@ _evas_svg_loader_parser(void *data, Eina_Simple_XML_Type 
type,
  break;
   case EINA_SIMPLE_XML_OPEN_EMPTY:
  _evas_svg_loader_xml_open_parser(loader, content, length);
+ break;
   case EINA_SIMPLE_XML_CLOSE:
  _evas_svg_loader_xml_close_parser(loader, content, length);
  break;

-- 




[EGIT] [tools/eflete] master 01/01: export-edc: fix segment fault.

2016-09-01 Thread Jaehwan Kim
jaehwan pushed a commit to branch master.

http://git.enlightenment.org/tools/eflete.git/commit/?id=048844eb8c9a705c8cecb59062f8e4a2fbb6aa85

commit 048844eb8c9a705c8cecb59062f8e4a2fbb6aa85
Author: Jaehwan Kim <jae.hwan@samsung.com>
Date:   Thu Sep 1 18:09:22 2016 +0900

export-edc: fix segment fault.
---
 src/bin/main.c | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/src/bin/main.c b/src/bin/main.c
index c176219..093043e 100644
--- a/src/bin/main.c
+++ b/src/bin/main.c
@@ -349,7 +349,8 @@ elm_main(int argc, char **argv)
 
 run:
 ap.path.export_edj = export_edj;
-_export_edc_path_set(export_edc);
+if (export_edc)
+  _export_edc_path_set(export_edc);
 if (!ui_main_window_add())
   {
  app_shutdown();

-- 




[EGIT] [tools/eflete] master 01/01: export-edc: add the command option to set the export-edc path.

2016-08-31 Thread Jaehwan Kim
jaehwan pushed a commit to branch master.

http://git.enlightenment.org/tools/eflete.git/commit/?id=55d19e1e8cf9a07e9e1c0464284b82fe52b43b5f

commit 55d19e1e8cf9a07e9e1c0464284b82fe52b43b5f
Author: Jaehwan Kim <jae.hwan@samsung.com>
Date:   Thu Sep 1 14:15:33 2016 +0900

export-edc: add the command option to set the export-edc path.

It should set PATH/FOLDER/FILE. If this option is enabled the file
browser is not shown and the edc file is exported in the previously
set path.

@feature
---
 src/bin/eflete.c   |  8 +++
 src/bin/eflete.h   |  5 
 src/bin/main.c | 28 +-
 .../project_manager/project_manager_export_edc.c   | 11 +++--
 src/bin/ui/menu.c  |  5 +++-
 src/bin/ui/project_export.c| 21 
 6 files changed, 70 insertions(+), 8 deletions(-)

diff --git a/src/bin/eflete.c b/src/bin/eflete.c
index fab8db6..9f79e76 100644
--- a/src/bin/eflete.c
+++ b/src/bin/eflete.c
@@ -132,6 +132,14 @@ app_shutdown()
  eina_stringshare_del(ap.path.edj_path);
if (ap.path.image_path)
  eina_stringshare_del(ap.path.image_path);
+   if (ap.path.export_edj)
+ eina_stringshare_del(ap.path.export_edj);
+   if (ap.path.export_edc.path)
+ eina_stringshare_del(ap.path.export_edc.path);
+   if (ap.path.export_edc.folder)
+ eina_stringshare_del(ap.path.export_edc.folder);
+   if (ap.path.export_edc.file)
+ eina_stringshare_del(ap.path.export_edc.file);
 
config_shutdown();
elm_theme_free(ap.theme);
diff --git a/src/bin/eflete.h b/src/bin/eflete.h
index dcaea44..6ada2be 100644
--- a/src/bin/eflete.h
+++ b/src/bin/eflete.h
@@ -135,6 +135,11 @@ struct _App_Data
   Eina_Stringshare *image_path;
   Eina_Stringshare *sound_path;
   Eina_Stringshare *export_edj;
+  struct {
+ Eina_Stringshare *path;
+ Eina_Stringshare *folder;
+ Eina_Stringshare *file;
+  } export_edc;
} path;
Project *project;
Shortcut_Module *shortcuts; /**< Structure with data from shortcuts module 
*/
diff --git a/src/bin/main.c b/src/bin/main.c
index 479cd17..c176219 100644
--- a/src/bin/main.c
+++ b/src/bin/main.c
@@ -32,6 +32,7 @@ static char *file = NULL;
 static char *pro_name = NULL;
 static char *pro_path = NULL;
 static char *export_edj = NULL;
+static char *export_edc = NULL;
 static Eina_List *img_dirs = NULL;
 static Eina_List *snd_dirs = NULL;
 static Eina_List *fnt_dirs = NULL;
@@ -62,7 +63,8 @@ static const Ecore_Getopt options = {
{
   ECORE_GETOPT_STORE_STR(0, "name", N_("Name for new project")),
   ECORE_GETOPT_STORE_STR(0, "path", N_("Path to project directory")),
-  ECORE_GETOPT_STORE_STR(0, "export-edj", N_("Export file path")),
+  ECORE_GETOPT_STORE_STR(0, "export-edj", N_("Export edj file path")),
+  ECORE_GETOPT_STORE_STR(0, "export-edc", N_("Export edc file path. This 
should include the path, folder and edc file name.(PATH/FOLDER/FILE)")),
   ECORE_GETOPT_APPEND_METAVAR('i', "id", "Add image directory for edc 
compilation", "DIR_NAME", ECORE_GETOPT_TYPE_STR),
   ECORE_GETOPT_APPEND_METAVAR('s', "sd", "Add sound directory for edc 
compilation", "DIR_NAME", ECORE_GETOPT_TYPE_STR),
   ECORE_GETOPT_APPEND_METAVAR('f', "fd", "Add font directory for edc 
compilation", "DIR_NAME", ECORE_GETOPT_TYPE_STR),
@@ -171,6 +173,28 @@ _new_project(void *data __UNUSED__)
tabs_home_tab_add(TAB_HOME_NEW_PROJECT);
 }
 
+static void
+_export_edc_path_set(char *export_edc)
+{
+   char tmp[256];
+   int len = 0, rlen = 0;
+
+   strcpy(tmp, export_edc);
+   len = strlen(tmp);
+   rlen = strlen(strrchr(tmp, '/'));
+   if (!rlen) return;
+   ap.path.export_edc.file = eina_stringshare_add(tmp + (len - rlen + 1));
+   tmp[len - rlen] = '\0';
+
+   len = strlen(tmp);
+   rlen = strlen(strrchr(tmp, '/'));
+   if (!rlen) return;
+   ap.path.export_edc.folder = eina_stringshare_add(tmp + (len - rlen + 1));
+   tmp[len - rlen] = '\0';
+
+   ap.path.export_edc.path = eina_stringshare_add(tmp);
+}
+
 EAPI_MAIN int
 elm_main(int argc, char **argv)
 {
@@ -183,6 +207,7 @@ elm_main(int argc, char **argv)
  ECORE_GETOPT_VALUE_STR(pro_name),
  ECORE_GETOPT_VALUE_STR(pro_path),
  ECORE_GETOPT_VALUE_STR(export_edj),
+ ECORE_GETOPT_VALUE_STR(export_edc),
  ECORE_GETOPT_VALUE_LIST(img_dirs),
  ECORE_GETOPT_VALUE_LIST(snd_dirs),
  ECORE_GETOPT_VALUE_LIST(fnt_dirs),
@@ -324,6 +349,7 @@ elm_main(int argc, char **argv)
 
 run:
 ap.path.export_edj = export_edj;
+_export_edc_path_set(export_edc);
 if (!ui_main_window_add())
   {
  app_shutdown();
diff --git a/src/bin/

[EGIT] [tools/eflete] master 03/04: update according the change in efl about eo naming.

2016-08-30 Thread Jaehwan Kim
rimmed pushed a commit to branch master.

http://git.enlightenment.org/tools/eflete.git/commit/?id=d1ce5fa0e2f46fe54d9bbd200289f0341192707e

commit d1ce5fa0e2f46fe54d9bbd200289f0341192707e
Author: Jaehwan Kim <jae.hwan@samsung.com>
Date:   Thu Aug 18 15:59:54 2016 +0900

update according the change in efl about eo naming.
---
 src/bin/ui/editors/animator.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/src/bin/ui/editors/animator.c b/src/bin/ui/editors/animator.c
index 26fd9a5..7670126 100644
--- a/src/bin/ui/editors/animator.c
+++ b/src/bin/ui/editors/animator.c
@@ -364,7 +364,7 @@ _on_bt_prog_add(void *data,
animator->popup.name_validator = elm_validator_regexp_new(NAME_REGEX, NULL);
LAYOUT_PROP_ADD(animator->popup.popup, _("Frequency:"), "property", 
"1swallow")
ENTRY_ADD(item, animator->popup.entry, true)
-   eo_event_callback_add(animator->popup.entry, ELM_ENTRY_EVENT_VALIDATE, 
elm_validator_regexp_helper, animator->popup.name_validator);
+   efl_event_callback_add(animator->popup.entry, ELM_ENTRY_EVENT_VALIDATE, 
elm_validator_regexp_helper, animator->popup.name_validator);
evas_object_smart_callback_add(animator->popup.entry, "changed", 
_validation, animator);
elm_object_part_content_set(item, "elm.swallow.content", 
animator->popup.entry);
 

-- 




[EGIT] [tools/eflete] master 01/01: update according the change in efl about eo naming.

2016-08-18 Thread Jaehwan Kim
jaehwan pushed a commit to branch master.

http://git.enlightenment.org/tools/eflete.git/commit/?id=4f52979de219a77ccc2a07fcf273c1e19819e73e

commit 4f52979de219a77ccc2a07fcf273c1e19819e73e
Author: Jaehwan Kim <jae.hwan@samsung.com>
Date:   Thu Aug 18 15:59:54 2016 +0900

update according the change in efl about eo naming.
---
 src/bin/common/validator.c |  2 +-
 src/bin/ui/colorclass_manager.c|  2 +-
 src/bin/ui/editors/animator.c  |  2 +-
 src/bin/ui/project_navigator.c |  2 +-
 src/bin/ui/property/property_group.c   |  4 ++--
 src/bin/ui/sound_manager.c |  4 ++--
 src/bin/ui/sound_player/sound_player.c | 28 ++--
 src/bin/ui/style_manager.c |  4 ++--
 src/bin/ui/tab_home_import_edc.c   |  2 +-
 src/bin/ui/tab_home_import_edj.c   |  2 +-
 src/bin/ui/tab_home_new.c  |  2 +-
 src/bin/ui/workspace/group_navigator.c | 10 +-
 src/lib/ewe_ruler.c| 20 ++--
 src/lib/ewe_ruler.eo   |  2 +-
 14 files changed, 43 insertions(+), 43 deletions(-)

diff --git a/src/bin/common/validator.c b/src/bin/common/validator.c
index 0b95702..eae52b9 100644
--- a/src/bin/common/validator.c
+++ b/src/bin/common/validator.c
@@ -112,5 +112,5 @@ resource_name_validator_helper(void *data, const Eo_Event 
*event)
  }
vc->signal = validator->signal;
if (validator->status)
- eo_event_callback_stop(event->object);
+ efl_event_callback_stop(event->object);
 }
diff --git a/src/bin/ui/colorclass_manager.c b/src/bin/ui/colorclass_manager.c
index 55bf7fd..ac0721b 100644
--- a/src/bin/ui/colorclass_manager.c
+++ b/src/bin/ui/colorclass_manager.c
@@ -82,7 +82,7 @@ _add_colorclass_content_get(void *data __UNUSED__, 
Evas_Object **to_focus)
 
LAYOUT_PROP_ADD(ap.win, _("Color class name: "), "property", "1swallow")
ENTRY_ADD(item, mng.entry, true);
-   eo_event_callback_add(mng.entry, ELM_ENTRY_EVENT_VALIDATE, 
resource_name_validator_helper, mng.name_validator);
+   efl_event_callback_add(mng.entry, ELM_ENTRY_EVENT_VALIDATE, 
resource_name_validator_helper, mng.name_validator);
evas_object_smart_callback_add(mng.entry, "changed", _validation, NULL);
elm_object_part_text_set(mng.entry, "guide", _("Type new color class name 
here"));
elm_object_part_content_set(item, "elm.swallow.content", mng.entry);
diff --git a/src/bin/ui/editors/animator.c b/src/bin/ui/editors/animator.c
index 26fd9a5..7670126 100644
--- a/src/bin/ui/editors/animator.c
+++ b/src/bin/ui/editors/animator.c
@@ -364,7 +364,7 @@ _on_bt_prog_add(void *data,
animator->popup.name_validator = elm_validator_regexp_new(NAME_REGEX, NULL);
LAYOUT_PROP_ADD(animator->popup.popup, _("Frequency:"), "property", 
"1swallow")
ENTRY_ADD(item, animator->popup.entry, true)
-   eo_event_callback_add(animator->popup.entry, ELM_ENTRY_EVENT_VALIDATE, 
elm_validator_regexp_helper, animator->popup.name_validator);
+   efl_event_callback_add(animator->popup.entry, ELM_ENTRY_EVENT_VALIDATE, 
elm_validator_regexp_helper, animator->popup.name_validator);
evas_object_smart_callback_add(animator->popup.entry, "changed", 
_validation, animator);
elm_object_part_content_set(item, "elm.swallow.content", 
animator->popup.entry);
 
diff --git a/src/bin/ui/project_navigator.c b/src/bin/ui/project_navigator.c
index 2ae3320..71a97c3 100644
--- a/src/bin/ui/project_navigator.c
+++ b/src/bin/ui/project_navigator.c
@@ -400,7 +400,7 @@ _add_group_content_get(void *data __UNUSED__, Evas_Object 
**to_focus)
LAYOUT_PROP_ADD(layout_p.box, _("Name"), "popup", "1swallow")
ENTRY_ADD(layout_p.box, layout_p.entry, true)
evas_object_smart_callback_add(layout_p.entry, "changed", _group_validate, 
NULL);
-   eo_event_callback_add(layout_p.entry, ELM_ENTRY_EVENT_VALIDATE, 
resource_name_validator_helper, validator);
+   efl_event_callback_add(layout_p.entry, ELM_ENTRY_EVENT_VALIDATE, 
resource_name_validator_helper, validator);
elm_layout_content_set(item, NULL, layout_p.entry);
elm_box_pack_end(layout_p.box, item);
glit = elm_genlist_selected_item_get(project_navigator.genlist);
diff --git a/src/bin/ui/property/property_group.c 
b/src/bin/ui/property/property_group.c
index 983d12c..7d97c22 100644
--- a/src/bin/ui/property/property_group.c
+++ b/src/bin/ui/property/property_group.c
@@ -792,10 +792,10 @@ _init_cb(Property_Attribute *pa, Property_Action *action)
  elm_object_disabled_set(action->control, true);
  break;
   case ATTRIBUTE_PART_NAME:
- eo_event_callback_add(action->control, ELM_ENTRY_EVENT_VALIDATE, 
resource_name_validator_helper, group_pd.part_name_validator);
+ efl_event_callback_add(action->control, EL

[EGIT] [tools/eflete] master 01/01: import_edj: fix the style loading method.

2016-08-17 Thread Jaehwan Kim
jaehwan pushed a commit to branch master.

http://git.enlightenment.org/tools/eflete.git/commit/?id=219be7b55cc698af11c3e1a55d50fd4471ea584d

commit 219be7b55cc698af11c3e1a55d50fd4471ea584d
Author: Jaehwan Kim <jae.hwan@samsung.com>
Date:   Wed Aug 17 19:06:39 2016 +0900

import_edj: fix the style loading method.

1. The all group that includes style name is loaded.
2. The style name should be same exactly.
3. When the group is copied, the origin group isn't loaded.

@fix
Fixes T4346
---
 .../project_manager/project_manager_import_edj.c   | 20 +--
 src/bin/ui/tab_home_import_edj.c   | 23 +++---
 2 files changed, 21 insertions(+), 22 deletions(-)

diff --git a/src/bin/project_manager/project_manager_import_edj.c 
b/src/bin/project_manager/project_manager_import_edj.c
index cd39d81..1356063 100644
--- a/src/bin/project_manager/project_manager_import_edj.c
+++ b/src/bin/project_manager/project_manager_import_edj.c
@@ -187,22 +187,22 @@ _project_import_edj(void *data)
 strbuf = eina_strbuf_new();
 eina_strbuf_append_printf(strbuf, "edje_pick -o %s -i %s", edj_out, 
edj_in);
 
-/* load any group for coping */
-if (ptd->widgets)
-  {
- obj = edje_edit_object_add(evas_object_evas_get(ap.win));
- if (!edje_object_file_set(obj, edj_in, 
eina_list_data_get(ptd->widgets)))
-   {
-  CRIT("Can't load object");
-  abort();
-   }
-  }
 EINA_LIST_FOREACH(ptd->widgets, l, group)
   {
  if ((group[0] == 'c') && (group[1] == 'p') && (group[2] == '*') 
&& (group[3] == '*') && (group[4] == '*'))
{
   char **arr = eina_str_split(group, "***", 0);
   you_shall_not_pass_editor_signals(NULL);
+  /* load any group for coping */
+  if (!obj)
+{
+   obj = 
edje_edit_object_add(evas_object_evas_get(ap.win));
+   if (!edje_object_file_set(obj, edj_in, arr[1]))
+ {
+CRIT("Can't load object");
+abort();
+ }
+}
   if (!editor_group_copy(obj, arr[1], arr[2]))
 {
CRIT("Can not copy group %s, to %s", arr[1], arr[2]);
diff --git a/src/bin/ui/tab_home_import_edj.c b/src/bin/ui/tab_home_import_edj.c
index e2c1e27..87a0bd5 100644
--- a/src/bin/ui/tab_home_import_edj.c
+++ b/src/bin/ui/tab_home_import_edj.c
@@ -620,9 +620,9 @@ _genlist_style_selected_set(Node *item, Eina_List *styles, 
Eina_Bool selected)
 {
Eina_List *l, *l1, *cp_style_list;
Node *node;
-   Eina_Stringshare *name, *name1, *style_name, *tmp;
-   const char *pos;
+   Eina_Stringshare *name, *name1, *sname, *style_name, *tmp;
char cp_style[256];
+   int len;
 
assert (item != NULL);
 
@@ -640,22 +640,21 @@ _genlist_style_selected_set(Node *item, Eina_List 
*styles, Eina_Bool selected)
  EINA_LIST_FOREACH(styles, l, name)
{
   style_name = option_style_name_get(name, _style_list);
-  if (!strcmp(style_name, "default"))
-{
-   pos = string_rstr(item->name, "base/default");
-   if (pos) tab_edj.widget_list = 
eina_list_append(tab_edj.widget_list, item->name);
-}
-  else
+  sname = style_name_get(item->name);
+  if (!strcmp(sname, style_name))
 {
-   pos = string_rstr(item->name, style_name);
-   if (pos)
+   if (!cp_style_list)
  {
 item->check = selected;
 tab_edj.widget_list = 
eina_list_append(tab_edj.widget_list, item->name);
+ }
+   else
+ {
 EINA_LIST_FOREACH(cp_style_list, l1, name1)
   {
- strncpy(cp_style, item->name, pos - 
item->name - 1);
- cp_style[pos - item->name] = '\0';
+ len = strlen(item->name) - strlen(sname);
+ strncpy(cp_style, item->name, len - 1);
+ cp_style[len - 1] = '\0';
  tmp = 
eina_stringshare_printf("cp***%s***%s/%s", item->name, cp_style, name1);
  tab_edj.widget_list = 
eina_list_append(tab_edj.widget_list, tmp);
   }

-- 




[EGIT] [tools/eflete] master 02/02: import_edj: compare the widget name exactly.

2016-08-03 Thread Jaehwan Kim
jaehwan pushed a commit to branch master.

http://git.enlightenment.org/tools/eflete.git/commit/?id=ef3d96ec2b967e936f16e019cf267ab172549223

commit ef3d96ec2b967e936f16e019cf267ab172549223
Author: Jaehwan Kim <jae.hwan@samsung.com>
Date:   Wed Aug 3 16:55:13 2016 +0900

import_edj: compare the widget name exactly.

If not, when we want to load button the multibuttonentry is loaded
with button.

@fix
---
 src/bin/ui/tab_home_import_edj.c | 5 -
 1 file changed, 4 insertions(+), 1 deletion(-)

diff --git a/src/bin/ui/tab_home_import_edj.c b/src/bin/ui/tab_home_import_edj.c
index db76b1a..09a5833 100644
--- a/src/bin/ui/tab_home_import_edj.c
+++ b/src/bin/ui/tab_home_import_edj.c
@@ -713,8 +713,11 @@ _tab_import_edj_data_set(const char *name, const char 
*path, const char *edj, co
   {
  EINA_LIST_FOREACH(node->list, l1, sub)
  {
-if (strstr(sub->name, widget_name))
+Eina_Stringshare *wname = widget_name_get(sub->name);
+
+if (!strcmp(wname, widget_name))
   _genlist_style_selected_set(sub, style_list, true);
+eina_stringshare_del(wname);
  }
   }
 else

-- 




[EGIT] [tools/eflete] master 01/02: widget_list: fix the memory leak.

2016-08-03 Thread Jaehwan Kim
jaehwan pushed a commit to branch master.

http://git.enlightenment.org/tools/eflete.git/commit/?id=b827975f8c3e67697279799422759d8edf5dcaf3

commit b827975f8c3e67697279799422759d8edf5dcaf3
Author: Jaehwan Kim <jae.hwan@samsung.com>
Date:   Wed Aug 3 16:54:16 2016 +0900

widget_list: fix the memory leak.

@fix
---
 src/bin/common/widget_list.c | 16 +---
 src/bin/ui/tab_home_common.c |  2 ++
 2 files changed, 11 insertions(+), 7 deletions(-)

diff --git a/src/bin/common/widget_list.c b/src/bin/common/widget_list.c
index e20bbda..b29018a 100644
--- a/src/bin/common/widget_list.c
+++ b/src/bin/common/widget_list.c
@@ -53,7 +53,7 @@ static const char *exception[] =
NULL
 };
 
-const char *
+Eina_Stringshare *
 widget_name_get(const Eina_Stringshare *group_name)
 {
int len = strlen(group_name);
@@ -72,10 +72,10 @@ widget_name_get(const Eina_Stringshare *group_name)
  }
str[i - 4] = '\0';
 
-   return strdup(str);
+   return eina_stringshare_add(str);
 }
 
-const char *
+Eina_Stringshare *
 style_name_get(const Eina_Stringshare *group_name)
 {
int len = strlen(group_name);
@@ -130,7 +130,7 @@ style_name_get(const Eina_Stringshare *group_name)
 style[i - first] = '\0';
  }
 
-   return strdup(style);
+   return eina_stringshare_add(style);
 }
 
 Eina_Stringshare *
@@ -244,8 +244,8 @@ widget_prefix_list_get(Eina_List *collections, const char 
*widget_name, const ch
Eina_List *l, *list = NULL;
Eina_Stringshare *group_name;
char prefix[1024];
-   const char *widget = NULL;
-   const char *style = NULL;
+   Eina_Stringshare *widget = NULL;
+   Eina_Stringshare *style = NULL;
int i, end = 0;
 
EINA_LIST_FOREACH(collections, l, group_name)
@@ -262,9 +262,11 @@ widget_prefix_list_get(Eina_List *collections, const char 
*widget_name, const ch
 prefix[i] = group_name[i];
   prefix[i] = '\0';
 
-  list = eina_list_append(list, strdup(prefix));
+  list = eina_list_append(list, eina_stringshare_add(prefix));
}
+ eina_stringshare_del(style);
   }
+eina_stringshare_del(widget);
  }
return list;
 }
diff --git a/src/bin/ui/tab_home_common.c b/src/bin/ui/tab_home_common.c
index 01bf161..d5001d8 100644
--- a/src/bin/ui/tab_home_common.c
+++ b/src/bin/ui/tab_home_common.c
@@ -120,6 +120,8 @@ _group_copy(Project *pro, Eina_List *widgets)
 gm_group_add(ap.project, cp_group_name, true);
  }
 }
+  EINA_LIST_FREE(prefixs, prefix)
+eina_stringshare_del(prefix);
}
   }
  }

-- 




[EGIT] [tools/eflete] master 01/02: Tizen menu: set only save and quit in file menu

2016-07-27 Thread Jaehwan Kim
jaehwan pushed a commit to branch master.

http://git.enlightenment.org/tools/eflete.git/commit/?id=36b3835097fa2470d5041b4a7e5a2725aff2287a

commit 36b3835097fa2470d5041b4a7e5a2725aff2287a
Author: Jaehwan Kim <jae.hwan@samsung.com>
Date:   Wed Jul 27 10:24:30 2016 +0900

Tizen menu: set only save and quit in file menu

To simplify more, set only save and quit.
If user uses save, it will export edj and edc automatically in Tizen.
---
 src/bin/ui/menu.c | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/src/bin/ui/menu.c b/src/bin/ui/menu.c
index 0824bc9..8eeb0f7 100644
--- a/src/bin/ui/menu.c
+++ b/src/bin/ui/menu.c
@@ -280,16 +280,16 @@ ui_menu_add(void)
   ITEM_MENU_ADD(MENU_FILE, MENU_FILE_IMPORT_EDJ, NULL, _("Import 
edj-file"), NULL)
   ITEM_MENU_ADD(MENU_FILE, MENU_FILE_IMPORT_EDC, NULL, _("Import 
edc-file"), NULL)
   ___(MENU_FILE);
+#endif /* if !HAVE_TIZEN */
   ITEM_MENU_ADD(MENU_FILE, MENU_FILE_SAVE, buf, _("Save"), "Ctrl-S")
+#if !HAVE_TIZEN
   ITEM_MENU_ADD(MENU_FILE, MENU_FILE_EXPORT_EDC, NULL, _("Export as edc"), 
NULL)
  ITEM_MENU_ADD(MENU_FILE_EXPORT_EDC, MENU_FILE_EXPORT_EDC_GROUP, NULL, 
_("Group"), NULL)
  ITEM_MENU_ADD(MENU_FILE_EXPORT_EDC, MENU_FILE_EXPORT_EDC_PROJECT, 
NULL, _("Project"), NULL)
-#endif /* if !HAVE_TIZEN */
   ITEM_MENU_ADD(MENU_FILE, MENU_FILE_EXPORT, NULL, _("Export as edj"), 
NULL)
  ITEM_MENU_ADD(MENU_FILE_EXPORT, MENU_FILE_EXPORT_DEVELOP, NULL, 
_("Develop"), NULL)
  ITEM_MENU_ADD(MENU_FILE_EXPORT, MENU_FILE_EXPORT_RELEASE, NULL, 
_("Release"), NULL)
   ___(MENU_FILE);
-#if !HAVE_TIZEN
   ITEM_MENU_ADD(MENU_FILE, MENU_FILE_CLOSE_PROJECT, NULL, _("Close 
project"), NULL)
   ___(MENU_FILE);
 #endif /* if !HAVE_TIZEN */

-- 




[EGIT] [tools/eflete] master 02/02: main: Add export-edj option in command line support

2016-07-27 Thread Jaehwan Kim
jaehwan pushed a commit to branch master.

http://git.enlightenment.org/tools/eflete.git/commit/?id=8e03989d2c511691ce2ec961b7dc21fe507f1a62

commit 8e03989d2c511691ce2ec961b7dc21fe507f1a62
Author: Jaehwan Kim <jae.hwan@samsung.com>
Date:   Wed Jul 27 15:41:19 2016 +0900

main: Add export-edj option in command line support
---
 src/bin/eflete.h|  1 +
 src/bin/main.c  |  4 
 src/bin/ui/menu.c   |  4 
 src/bin/ui/project_export.c | 13 +++--
 4 files changed, 20 insertions(+), 2 deletions(-)

diff --git a/src/bin/eflete.h b/src/bin/eflete.h
index 5516daf..ced6d0f 100644
--- a/src/bin/eflete.h
+++ b/src/bin/eflete.h
@@ -128,6 +128,7 @@ struct _App_Data
   Eina_Stringshare *layout_edj;
   Eina_Stringshare *edj_path;
   Eina_Stringshare *image_path;
+  Eina_Stringshare *export_edj;
} path;
Project *project;
Shortcut_Module *shortcuts; /**< Structure with data from shortcuts module 
*/
diff --git a/src/bin/main.c b/src/bin/main.c
index b5942f9..fac4a4f 100644
--- a/src/bin/main.c
+++ b/src/bin/main.c
@@ -31,6 +31,7 @@
 static char *file = NULL;
 static char *pro_name = NULL;
 static char *pro_path = NULL;
+static char *export_edj = NULL;
 static Eina_List *img_dirs = NULL;
 static Eina_List *snd_dirs = NULL;
 static Eina_List *fnt_dirs = NULL;
@@ -61,6 +62,7 @@ static const Ecore_Getopt options = {
{
   ECORE_GETOPT_STORE_STR(0, "name", N_("Name for new project")),
   ECORE_GETOPT_STORE_STR(0, "path", N_("Path to project directory")),
+  ECORE_GETOPT_STORE_STR(0, "export-edj", N_("Export file path")),
   ECORE_GETOPT_APPEND_METAVAR('i', "id", "Add image directory for edc 
compilation", "DIR_NAME", ECORE_GETOPT_TYPE_STR),
   ECORE_GETOPT_APPEND_METAVAR('s', "sd", "Add sound directory for edc 
compilation", "DIR_NAME", ECORE_GETOPT_TYPE_STR),
   ECORE_GETOPT_APPEND_METAVAR('f', "fd", "Add font directory for edc 
compilation", "DIR_NAME", ECORE_GETOPT_TYPE_STR),
@@ -181,6 +183,7 @@ elm_main(int argc, char **argv)
Ecore_Getopt_Value values[] = {
  ECORE_GETOPT_VALUE_STR(pro_name),
  ECORE_GETOPT_VALUE_STR(pro_path),
+ ECORE_GETOPT_VALUE_STR(export_edj),
  ECORE_GETOPT_VALUE_LIST(img_dirs),
  ECORE_GETOPT_VALUE_LIST(snd_dirs),
  ECORE_GETOPT_VALUE_LIST(fnt_dirs),
@@ -321,6 +324,7 @@ elm_main(int argc, char **argv)
   }
 
 run:
+ap.path.export_edj = export_edj;
 if (!ui_main_window_add())
   {
  app_shutdown();
diff --git a/src/bin/ui/menu.c b/src/bin/ui/menu.c
index 8eeb0f7..9bc340b 100644
--- a/src/bin/ui/menu.c
+++ b/src/bin/ui/menu.c
@@ -109,6 +109,10 @@ _menu_cb(void *data __UNUSED__,
  break;
   case MENU_FILE_SAVE:
  project_save();
+#if HAVE_TIZEN
+ if (ap.path.export_edj)
+   project_export_develop();
+#endif
  break;
   case MENU_FILE_EXPORT_EDC_GROUP:
  project_export_edc_group();
diff --git a/src/bin/ui/project_export.c b/src/bin/ui/project_export.c
index 8d57cf6..08baa03 100644
--- a/src/bin/ui/project_export.c
+++ b/src/bin/ui/project_export.c
@@ -65,7 +65,7 @@ _export_dev(void *data __UNUSED__,
eina_strbuf_append_printf(buf,
  _("

[EGIT] [tools/eflete] master 01/01: theme: set the edj file path dynamically.

2016-07-20 Thread Jaehwan Kim
jaehwan pushed a commit to branch master.

http://git.enlightenment.org/tools/eflete.git/commit/?id=3a4a7d5cba1f41f20e2a25f7ea0fded665148f85

commit 3a4a7d5cba1f41f20e2a25f7ea0fded665148f85
Author: Jaehwan Kim <jae.hwan@samsung.com>
Date:   Wed Jul 20 20:26:29 2016 +0900

theme: set the edj file path dynamically.

If it is re-located after compilation, the paths should be changed.
---
 configure.ac |  9 +
 src/bin/common/widget_macro.h|  2 +-
 src/bin/eflete.c | 19 +--
 src/bin/eflete.h |  6 ++
 src/bin/external/syntax_color.c  |  2 +-
 src/bin/project_manager/project_manager.c|  4 +++-
 src/bin/ui/colorclass_manager.c  |  2 +-
 src/bin/ui/cursor.c  |  2 +-
 src/bin/ui/editors/animator_program_editor.c |  2 +-
 src/bin/ui/image_manager.c   | 10 ++
 src/bin/ui/menu.c|  5 -
 src/bin/ui/popup.c   |  2 +-
 src/bin/ui/preference/preference.c   |  2 +-
 src/bin/ui/property/property_common.c|  6 +++---
 src/bin/ui/property/property_group.c | 12 ++--
 src/bin/ui/tab_home_import_edj.c |  6 --
 src/bin/ui/tab_home_new.c|  7 +++
 src/bin/ui/workspace/container.c |  8 
 src/bin/ui/workspace/highlight.c |  4 ++--
 19 files changed, 66 insertions(+), 44 deletions(-)

diff --git a/configure.ac b/configure.ac
index 05dfad8..7aa2aad 100644
--- a/configure.ac
+++ b/configure.ac
@@ -205,14 +205,7 @@ AC_SUBST(LOCALE_DIR)
 DEPS_EOLIAN_FLAGS=`${PKG_CONFIG} --variable=eolian_flags eo efl evas edje 
ecore elementary`
 AC_SUBST([DEPS_EOLIAN_FLAGS])
 
-EFLETE_DEFINE=" -DEFLETE_EDJ=\\\"${datadir}/eflete/layouts/eflete.edj\\\" "
-EFLETE_DEFINE+=" 
-DEFLETE_THEME=\\\"${datadir}/eflete/themes/default/eflete_elm.edj\\\" "
-EFLETE_DEFINE+=" -DEFLETE_EDJ_PATH=\\\"${datadir}/eflete/themes/default/\\\" "
-EFLETE_DEFINE+=" -DEFLETE_IMG_PATH=\\\"${datadir}/eflete/images/\\\" "
-EFLETE_DEFINE+=" 
-DEFLETE_TEMPLATE_EDJ_PATH=\\\"${datadir}/eflete/themes/default/template/edj\\\"
 "
-EFLETE_DEFINE+=" 
-DEFLETE_TEMPLATE_EDC_PATH=\\\"${datadir}/eflete/themes/default/template/edc\\\"
 "
-EFLETE_DEFINE+=" 
-DEFLETE_TEMPLATE_IMAGES_PATH=\\\"${datadir}/eflete/themes/default/template/images\\\"
 "
-EFLETE_DEFINE+=" 
-DEFLETE_TEMPLATE_SOUNDS_PATH=\\\"${datadir}/eflete/themes/default/template/sounds\\\"
 "
+EFLETE_DEFINE=" -DEFLETE_EDJ_PATH=\\\"${datadir}/eflete/themes/default/\\\" "
 AC_SUBST([EFLETE_DEFINE])
 
 AM_PROG_CC_C_O
diff --git a/src/bin/common/widget_macro.h b/src/bin/common/widget_macro.h
index 5c121ce..5e1933c 100644
--- a/src/bin/common/widget_macro.h
+++ b/src/bin/common/widget_macro.h
@@ -122,7 +122,7 @@ TODO("see large comment below")
 
 #define IMAGE_ADD_NEW(PARENT, IMAGE, NAME, STYLE) \
IMAGE = elm_image_add(PARENT); \
-   elm_image_file_set(IMAGE, EFLETE_THEME, "elm/image/"NAME"/"STYLE);
+   elm_image_file_set(IMAGE, ap.path.theme_edj, "elm/image/"NAME"/"STYLE);
 
 #define HOVERSEL_ADD(PARENT, HOVERSEL, ISHORIZONTAL) \
HOVERSEL = elm_hoversel_add(PARENT); \
diff --git a/src/bin/eflete.c b/src/bin/eflete.c
index 3dfae53..f498195 100644
--- a/src/bin/eflete.c
+++ b/src/bin/eflete.c
@@ -93,12 +93,19 @@ app_init()
 CRIT("Can't initialize the Ewe library");
 return false;
  }
+   elm_app_info_set(NULL, "eflete", NULL);
+
+   ap.path.theme_edj = 
eina_stringshare_printf("%s/themes/default/eflete_elm.edj", 
elm_app_data_dir_get());
+   ap.path.layout_edj = eina_stringshare_printf("%s/layouts/eflete.edj", 
elm_app_data_dir_get());
+   ap.path.edj_path = eina_stringshare_printf("%s/themes/default/", 
elm_app_data_dir_get());
+   ap.path.image_path = eina_stringshare_printf("%s/images/", 
elm_app_data_dir_get());
 
ap.theme = elm_theme_new();
+
 #ifndef _WIN32
-   char *theme = strdup(EFLETE_THEME);
+   char *theme = strdup(ap.path.theme_edj);
 #else
-   char *theme = escape_colons(EFLETE_THEME);
+   char *theme = escape_colons(ap.path.theme_edj);
 #endif
elm_theme_set(ap.theme, theme);
free(theme);
@@ -116,6 +123,14 @@ app_shutdown()
 {
if (ap.last_path)
  eina_stringshare_del(ap.last_path);
+   if (ap.path.theme_edj)
+ eina_stringshare_del(ap.path.theme_edj);
+   if (ap.path.layout_edj)
+ eina_stringshare_del(ap.path.layout_edj);
+   if (ap.path.edj_path)
+ eina_stringshare_del(ap.path.edj_path);
+   if (ap.path.image_path)
+ eina_stringshare_del(ap.path.image_path);
 
config_shutdown();
   

[EGIT] [tools/eflete] master 01/01: widget_list: fix the function name

2016-07-17 Thread Jaehwan Kim
jaehwan pushed a commit to branch master.

http://git.enlightenment.org/tools/eflete.git/commit/?id=9c53a1b0507e81a1f37de082fbf000ce305884ff

commit 9c53a1b0507e81a1f37de082fbf000ce305884ff
Author: Jaehwan Kim <jae.hwan@samsung.com>
Date:   Mon Jul 18 11:06:06 2016 +0900

widget_list: fix the function name

Window System uses same function name.

@fix
---
 src/bin/common/widget_list.c | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/src/bin/common/widget_list.c b/src/bin/common/widget_list.c
index 46330f4..7eeb548 100644
--- a/src/bin/common/widget_list.c
+++ b/src/bin/common/widget_list.c
@@ -143,7 +143,7 @@ style_name_check(const Eina_Stringshare *group_name, const 
char *style_name)
return !strcmp(style_name, style);
 }
 
-char* strrstr(char* str, const char* ptn)
+char* _strrstr(char* str, const char* ptn)
 {
unsigned int ptnlen = 0;
unsigned int i = 0, j = 0;
@@ -223,7 +223,7 @@ item_style_name_get(const Eina_Stringshare *group_name, 
Eina_List *style_list)
  {
 char *str;
 
-str = strrstr(style, style_item->name);
+str = _strrstr(style, style_item->name);
 if (str)
   {
  style[strlen(style) - strlen(str) - 1] = '\0';

-- 




[EGIT] [tools/eflete] master 14/14: export: export edj with only used groups and add append feature.

2016-07-12 Thread Jaehwan Kim
rimmed pushed a commit to branch master.

http://git.enlightenment.org/tools/eflete.git/commit/?id=fb6e187bfd79587eb6fa789d71102aeba5ce58f9

commit fb6e187bfd79587eb6fa789d71102aeba5ce58f9
Author: Jaehwan Kim <jae.hwan@samsung.com>
Date:   Thu Jul 7 17:36:01 2016 +0900

export: export edj with only used groups and add append feature.

export edj file with only used groups. If any group is not used in
current project, it isn't included in saved edj.
And if we set the exist file name to export, it is possible that
current groups are appended into the edj file.

@feature
---
 src/bin/ui/popup.c | 2 ++
 1 file changed, 2 insertions(+)

diff --git a/src/bin/ui/popup.c b/src/bin/ui/popup.c
index 48a1ca2..aa25bc3 100644
--- a/src/bin/ui/popup.c
+++ b/src/bin/ui/popup.c
@@ -137,6 +137,8 @@ popup_want_action(const char *title,
 BTN_ADD(_("Cancel"), "button3", &_btn_cancel);
 evas_object_smart_callback_add(ap.popup, SIGNAL_SHORTCUT_CANCEL, 
_btn_cb, &_btn_cancel);
  }
+   else if ((popup_btns & BTN_CANCEL) && (popup_btns & BTN_APPEND))
+ BTN_ADD(_("Cancel"), "button3", &_btn_cancel)
else if (popup_btns & BTN_CANCEL)
  {
 BTN_ADD(_("Cancel"), "button2", &_btn_cancel);

-- 




[EGIT] [tools/eflete] master 01/02: menu: change the menu to be shown in Tizen

2016-07-07 Thread Jaehwan Kim
jaehwan pushed a commit to branch master.

http://git.enlightenment.org/tools/eflete.git/commit/?id=c4361ed1ca405e4af907d88533ddd39d2d44bd95

commit c4361ed1ca405e4af907d88533ddd39d2d44bd95
Author: Jaehwan Kim <jae.hwan@samsung.com>
Date:   Thu Jul 7 17:34:10 2016 +0900

menu: change the menu to be shown in Tizen
---
 src/bin/ui/menu.c | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/src/bin/ui/menu.c b/src/bin/ui/menu.c
index c99f0b4..820b638 100644
--- a/src/bin/ui/menu.c
+++ b/src/bin/ui/menu.c
@@ -274,19 +274,19 @@ ui_menu_add(void)
   ITEM_MENU_ADD(MENU_FILE, MENU_FILE_IMPORT_EDJ, NULL, _("Import 
edj-file"), NULL)
   ITEM_MENU_ADD(MENU_FILE, MENU_FILE_IMPORT_EDC, NULL, _("Import 
edc-file"), NULL)
   ___(MENU_FILE);
-#endif /* if !HAVE_TIZEN */
   ITEM_MENU_ADD(MENU_FILE, MENU_FILE_SAVE, EFLETE_IMG_PATH"icon-save.png", 
_("Save"), "Ctrl-S")
   ITEM_MENU_ADD(MENU_FILE, MENU_FILE_EXPORT_EDC, NULL, _("Export as edc"), 
NULL)
  ITEM_MENU_ADD(MENU_FILE_EXPORT_EDC, MENU_FILE_EXPORT_EDC_GROUP, NULL, 
_("Group"), NULL)
  ITEM_MENU_ADD(MENU_FILE_EXPORT_EDC, MENU_FILE_EXPORT_EDC_PROJECT, 
NULL, _("Project"), NULL)
-#if !HAVE_TIZEN
+#endif /* if !HAVE_TIZEN */
   ITEM_MENU_ADD(MENU_FILE, MENU_FILE_EXPORT, NULL, _("Export as edj"), 
NULL)
  ITEM_MENU_ADD(MENU_FILE_EXPORT, MENU_FILE_EXPORT_DEVELOP, NULL, 
_("Develop"), NULL)
  ITEM_MENU_ADD(MENU_FILE_EXPORT, MENU_FILE_EXPORT_RELEASE, NULL, 
_("Release"), NULL)
-#endif /* if !HAVE_TIZEN */
   ___(MENU_FILE);
+#if !HAVE_TIZEN
   ITEM_MENU_ADD(MENU_FILE, MENU_FILE_CLOSE_PROJECT, NULL, _("Close 
project"), NULL)
   ___(MENU_FILE);
+#endif /* if !HAVE_TIZEN */
   ITEM_MENU_ADD(MENU_FILE, MENU_FILE_EXIT, NULL, _("Quit"), "Ctrl-Q")
 
ITEM_MENU_ADD(MENU_NULL, MENU_EDIT, NULL, _("Edit"), NULL)

-- 




[EGIT] [tools/eflete] master 02/02: export: export edj with only used groups and add append feature.

2016-07-07 Thread Jaehwan Kim
jaehwan pushed a commit to branch master.

http://git.enlightenment.org/tools/eflete.git/commit/?id=d67c52be9a51d0736f5f02dd97332b57a15a06ea

commit d67c52be9a51d0736f5f02dd97332b57a15a06ea
Author: Jaehwan Kim <jae.hwan@samsung.com>
Date:   Thu Jul 7 17:36:01 2016 +0900

export: export edj with only used groups and add append feature.

export edj file with only used groups. If any group is not used in
current project, it isn't included in saved edj.
And if we set the exist file name to export, it is possible that
current groups are appended into the edj file.

@feature
---
 src/bin/project_manager/project_manager.c | 64 +--
 src/bin/ui/main_window.h  |  3 +-
 src/bin/ui/popup.c| 13 ++-
 src/bin/ui/project_common.c   | 13 +--
 src/bin/ui/project_common.h   |  2 +-
 src/bin/ui/project_export.c   |  8 ++--
 src/bin/ui/tab_home_import_edc.c  |  2 +-
 src/bin/ui/tab_home_import_edj.c  |  2 +-
 src/bin/ui/tab_home_new.c |  2 +-
 9 files changed, 91 insertions(+), 18 deletions(-)

diff --git a/src/bin/project_manager/project_manager.c 
b/src/bin/project_manager/project_manager.c
index ab86e0d..48d9bfd 100644
--- a/src/bin/project_manager/project_manager.c
+++ b/src/bin/project_manager/project_manager.c
@@ -374,6 +374,7 @@ _project_edj_file_copy(void)
src = eina_stringshare_ref(worker.edj);
dst = eina_stringshare_ref(worker.project->saved_edj);
result = ecore_file_cp(src, dst);
+
DBG("Copy the .edj file to project folder.");
eina_stringshare_del(src);
eina_stringshare_del(dst);
@@ -1658,12 +1659,69 @@ static void *
 _develop_export(void *data __UNUSED__,
 Eina_Thread *thread __UNUSED__)
 {
+   Ecore_Event_Handler *cb_msg_stdout = NULL,
+   *cb_msg_stderr = NULL;
+   Ecore_Exe_Flags flags  = ECORE_EXE_PIPE_READ |
+ECORE_EXE_PIPE_READ_LINE_BUFFERED |
+ECORE_EXE_PIPE_ERROR |
+ECORE_EXE_PIPE_ERROR_LINE_BUFFERED;
+   Eina_Tmpstr *tmp_filename = NULL;
+   Eina_Stringshare *cmd;
+   Eina_List *l;
+   Group *group;
+   Ecore_Exe *exe_cmd;
+   pid_t exe_pid;
+   int edje_pick_res = 0, waitpid_res = 0;
+
PROGRESS_SEND(_("Export project as develop file"));
PROGRESS_SEND(_("Export to file '%s'"), worker.edj);
CRIT_ON_FAIL(editor_save_all(worker.project->global_object));
-   eina_file_copy(worker.project->dev, worker.edj,
-  EINA_FILE_COPY_PERMISSION | EINA_FILE_COPY_XATTR,
-  NULL, NULL);
+
+   if (worker.func_progress)
+ {
+cb_msg_stdout = ecore_event_handler_add(ECORE_EXE_EVENT_DATA, 
_exe_data, NULL);
+cb_msg_stderr = ecore_event_handler_add(ECORE_EXE_EVENT_ERROR, 
_exe_data, NULL);
+ }
+
+   if (!ecore_file_exists(worker.edj))
+ cmd = eina_stringshare_printf("edje_pick -o %s", worker.edj);
+   else
+ {
+eina_file_mkstemp("eflete_export_XX", _filename);
+cmd = eina_stringshare_printf("edje_pick -o %s", tmp_filename);
+cmd = eina_stringshare_printf("%s -a %s", cmd, worker.edj);
+ }
+   cmd = eina_stringshare_printf("%s -i %s", cmd, worker.project->dev);
+
+   EINA_LIST_FOREACH(worker.project->groups, l, group)
+ {
+cmd = eina_stringshare_printf("%s -g %s", cmd, group->name);
+ }
+   DBG("Run command for export: %s", cmd);
+   exe_cmd = ecore_exe_pipe_run(cmd, flags, NULL);
+   exe_pid = ecore_exe_pid_get(exe_cmd);
+   THREAD_TESTCANCEL;
+   waitpid_res = waitpid(exe_pid, _pick_res, 0);
+
+   if (worker.func_progress)
+ {
+ecore_event_handler_del(cb_msg_stdout);
+ecore_event_handler_del(cb_msg_stderr);
+ }
+
+   if ((waitpid_res == -1) ||
+   (WIFEXITED(edje_pick_res) && (WEXITSTATUS(edje_pick_res) != 0 )))
+ {
+END_SEND(PM_PROJECT_ERROR);
+return NULL;
+ }
+
+   if (tmp_filename)
+ {
+ecore_file_recursive_rm(worker.edj);
+ecore_file_mv(tmp_filename, worker.edj);
+ }
+
PROGRESS_SEND("Export done");
 
END_SEND(PM_PROJECT_SUCCESS);
diff --git a/src/bin/ui/main_window.h b/src/bin/ui/main_window.h
index 2c56780..6de173a 100644
--- a/src/bin/ui/main_window.h
+++ b/src/bin/ui/main_window.h
@@ -143,7 +143,8 @@ typedef enum _Popup_Button
BTN_CANCEL = (1 << 1),
BTN_SAVE   = (1 << 2),
BTN_DONT_SAVE  = (1 << 3),
-   BTN_REPLACE= (1 << 4)
+   BTN_REPLACE= (1 << 4),
+   BTN_APPEND = (1 << 5)
 } Popup_Button;
 
 /**
diff --git a/src/bin/ui/popup.c b/src/bin/ui/popup.c
index 39b5ce2..0f8cf8d 100644
--- a/src/bin/ui/popup.c
+++ b/src/bin/ui/popup.c
@@ -31,6 +31,7 @@ static void* func_data;
 
 static const

[EGIT] [core/efl] master 01/01: edje_pick: realloc bug fix

2016-07-07 Thread Jaehwan Kim
jaehwan pushed a commit to branch master.

http://git.enlightenment.org/core/efl.git/commit/?id=0906506470a8f1058dd5840e874f515b8ee8ffc2

commit 0906506470a8f1058dd5840e874f515b8ee8ffc2
Author: Jaehwan Kim <jae.hwan@samsung.com>
Date:   Thu Jul 7 14:30:17 2016 +0900

edje_pick: realloc bug fix

@fix
---
 src/bin/edje/edje_pick.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/src/bin/edje/edje_pick.c b/src/bin/edje/edje_pick.c
index 05528e1..7b5d73d 100644
--- a/src/bin/edje/edje_pick.c
+++ b/src/bin/edje/edje_pick.c
@@ -745,7 +745,7 @@ _edje_pick_images_copy(Edje_File *edf, Edje_File *o)
o->image_dir->entries_count += 1;
 
/* alloc mem first time  or  re-allocate again (bigger 
array) */
-   entries = realloc(entries,
+   entries = realloc(o->image_dir->entries,
  o->image_dir->entries_count *
  sizeof(Edje_Image_Directory_Entry));
if (!entries)

-- 




[EGIT] [core/efl] master 01/01: edje_pick: load just used images.

2016-06-30 Thread Jaehwan Kim
jaehwan pushed a commit to branch master.

http://git.enlightenment.org/core/efl.git/commit/?id=3b349e9d71a51286e9793ec6e1fd3e1f65c38e2e

commit 3b349e9d71a51286e9793ec6e1fd3e1f65c38e2e
Author: Jaehwan Kim <jae.hwan@samsung.com>
Date:   Fri Jul 1 11:18:27 2016 +0900

edje_pick: load just used images.

If the edj is made by partial groups, the images that groups use
should be included.

@fix
---
 src/bin/edje/edje_pick.c | 327 +--
 1 file changed, 201 insertions(+), 126 deletions(-)

diff --git a/src/bin/edje/edje_pick.c b/src/bin/edje/edje_pick.c
index 2c2e6df..dc1a761 100644
--- a/src/bin/edje/edje_pick.c
+++ b/src/bin/edje/edje_pick.c
@@ -661,19 +661,26 @@ _edje_pick_header_make(Edje_File *out_file , Edje_File 
*edf, Eina_List *ifs)
 }
 
 static int
-_id_cmp(const void *d1, const void *d2)
+_old_id_cmp(const void *d1, const void *d2)
 {
/* Find currect ID struct */
return (((Edje_Pick_Data *) d1)->id.old_id - ((intptr_t) d2));
 }
 
 static int
+_new_id_cmp(const void *d1, const void *d2)
+{
+   /* Find currect ID struct */
+   return (((Edje_Pick_Data *) d1)->id.new_id - ((intptr_t) d2));
+}
+
+static int
 _edje_pick_new_id_get(Eina_List *id_list, int id, Eina_Bool set_used)
 {
if (id >= 0)
  {
 Edje_Pick_Data *p_id = eina_list_search_unsorted(id_list,
- _id_cmp,
+ _old_id_cmp,
  (void *) (intptr_t) 
id);
 
 
@@ -690,127 +697,111 @@ _edje_pick_new_id_get(Eina_List *id_list, int id, 
Eina_Bool set_used)
 }
 
 static int
-_edje_pick_images_add(Edje_File *edf, Edje_File *o)
+_edje_pick_image_new_id_get(Eina_List *id_list, int id)
 {
-   char buf[1024];
-   int size;
-   unsigned int k;
-   void *data;
-   Eina_Bool status = EDJE_PICK_NO_ERROR;
-   static int current_img_id = 0;
-
-   if (edf->image_dir)
+   if (id >= 0)
  {
-if (!o->image_dir)  /* First time only */
-  o->image_dir = calloc(1, sizeof(*(o->image_dir)));
-
-for (k = 0; k < edf->image_dir->entries_count; k++)
-  {  /* Copy Images */
- Edje_Image_Directory_Entry *img = >image_dir->entries[k];
+Edje_Pick_Data *p_id = eina_list_search_unsorted(id_list,
+ _old_id_cmp,
+ (void *) (intptr_t) 
id);
+if (p_id) return p_id->id.new_id;
+ }
 
- snprintf(buf, sizeof(buf), "edje/images/%i", img->id);
- VERBOSE(EINA_LOG_INFO("Trying to read <%s>\n", img->entry));
- data = eet_read(edf->ef, buf, );
- if (size)
-   {  /* Advance image ID and register this in imagelist */
-  Edje_Pick_Data *image = malloc(sizeof(*image));
+   return -1;
+}
 
-  image->filename = eina_stringshare_add(img->entry);
-  image->data = data;
-  image->size = size;
-  image->entry = (void *) img;  /* for output file image dir */
-  image->id.old_id = img->id;
-  img->id = image->id.new_id = current_img_id;
-  image->id.used = EINA_FALSE;
+static int
+_edje_pick_image_old_id_get(Eina_List *id_list, int id)
+{
+   if (id >= 0)
+ {
+Edje_Pick_Data *p_id = eina_list_search_unsorted(id_list,
+ _new_id_cmp,
+ (void *) (intptr_t) 
id);
+if (p_id) return p_id->id.old_id;
+ }
 
-  VERBOSE(EINA_LOG_INFO("Read image <%s> data <%p> size 
<%d>\n",
-   buf, image->data, image->size));
+   return -1;
+}
 
-  current_img_id++;
-  context.current_file->imagelist = eina_list_append(
-context.current_file->imagelist, image);
-   }
- else
-   {
-  if (img->entry)
-{
-   EINA_LOG_ERR("Image <%s> was not found in <%s> file.\n",
- img->entry , context.current_file->name);
-   status = EDJE_PICK_IMAGE_NOT_FOUND;
-}
-  else
-{
-   EINA_LOG_ERR("Image entry <%s> was not found in <%s> 
file.\n", buf , context.current_file->name);
-   status = EDJE_PICK_IMAGE_NOT_FOUND;
-}
-  /* Should that really be freed? Or is some other handling 
needed? */
-  free(data);
-   

[EGIT] [tools/eflete] master 01/01: group_navigator: copy the style by command

2016-06-16 Thread Jaehwan Kim
jaehwan pushed a commit to branch master.

http://git.enlightenment.org/tools/eflete.git/commit/?id=5435b55e0e13c64afc0764cd874e88b72a244953

commit 5435b55e0e13c64afc0764cd874e88b72a244953
Author: Jaehwan Kim <jae.hwan@samsung.com>
Date:   Thu Jun 16 15:55:32 2016 +0900

group_navigator: copy the style by command

Use like eflete -w button:default[default2] ~/default.edj
It will copy the default style to default2 style.
group navigator show "default2" that is copied "default" style
---
 src/bin/common/widget_list.c  | 91 ++-
 src/bin/common/widget_list.h  |  3 +
 src/bin/main.c|  2 +-
 src/bin/project_manager/group_manager.c   |  1 +
 src/bin/project_manager/project_manager.c |  4 +-
 src/bin/project_manager/project_manager.h |  2 +-
 src/bin/ui/tab_home_common.c  | 38 -
 src/bin/ui/tab_home_import_edc.c  |  4 +-
 src/bin/ui/tab_home_import_edj.c  | 17 --
 src/bin/ui/tab_home_new.c |  4 +-
 src/bin/ui/tabs_private.h |  2 +-
 11 files changed, 152 insertions(+), 16 deletions(-)

diff --git a/src/bin/common/widget_list.c b/src/bin/common/widget_list.c
index 0e3231f..46330f4 100644
--- a/src/bin/common/widget_list.c
+++ b/src/bin/common/widget_list.c
@@ -250,7 +250,7 @@ option_widget_name_get(const char *str, Eina_List 
**style_list)
char widget[32], style[256];
Eina_List *list = NULL;
int i, first = 0;
-   Eina_Bool is_style = EINA_FALSE;
+   Eina_Bool is_style = EINA_FALSE, copying = EINA_FALSE;
 
for (i = 0; i < len; i++)
  {
@@ -268,7 +268,12 @@ option_widget_name_get(const char *str, Eina_List 
**style_list)
   }
 else
   {
- if (str[i] == ',')
+ if (str[i] == '[')
+   copying = EINA_TRUE;
+ else if (str[i] == ']')
+   copying = EINA_FALSE;
+
+ if (!copying && str[i] == ',')
{
   style[i - first] = '\0';
   list = eina_list_append(list, strdup(style));
@@ -291,3 +296,85 @@ option_widget_name_get(const char *str, Eina_List 
**style_list)
 
return strdup(widget);
 }
+
+const char *
+option_style_name_get(const char *str, Eina_List **cp_style_list)
+{
+   int len = strlen(str);
+   char style[32], cp_style[256];
+   Eina_List *list = NULL;
+   int i, first = 0;
+   Eina_Bool is_cp_style = EINA_FALSE;
+
+   for (i = 0; i < len; i++)
+ {
+if (str[i] == '[')
+  {
+ is_cp_style = EINA_TRUE;
+ style[i] = '\0';
+ first = i + 1;
+ continue;
+  }
+else if (str[i] == ']')
+  break;
+
+if (!is_cp_style)
+  {
+ style[i] = str[i];
+  }
+else
+  {
+ if (str[i] == ',')
+   {
+  cp_style[i - first] = '\0';
+  list = eina_list_append(list, strdup(cp_style));
+  first = i + 1;
+  continue;
+   }
+   cp_style[i - first] = str[i];
+  }
+ }
+
+   if (!is_cp_style)
+  style[i] = '\0';
+   else
+ {
+cp_style[i - first] = '\0';
+list = eina_list_append(list, strdup(cp_style));
+ }
+
+   *cp_style_list = list;
+
+   return strdup(style);
+}
+
+Eina_List *
+widget_prefix_list_get(Eina_List *collections, const char *widget_name, const 
char *style_name)
+{
+   Eina_List *l, *list = NULL;
+   Eina_Stringshare *group_name;
+   char prefix[1024];
+   const char *widget = NULL;
+   const char *style = NULL;
+   int i, end = 0;
+
+   EINA_LIST_FOREACH(collections, l, group_name)
+ {
+widget = widget_name_get(group_name);
+
+if (widget && !strcmp(widget, widget_name))
+  {
+ style = style_name_get(group_name);
+ if (style && !strcmp(style, style_name))
+   {
+  end = strlen(group_name) - strlen(strrchr(group_name, '/')) 
+ 1;
+  for (i = 0; i < end; i++)
+prefix[i] = group_name[i];
+  prefix[i] = '\0';
+
+  list = eina_list_append(list, strdup(prefix));
+   }
+  }
+ }
+   return list;
+}
diff --git a/src/bin/common/widget_list.h b/src/bin/common/widget_list.h
index 35683a4..1a40b87 100644
--- a/src/bin/common/widget_list.h
+++ b/src/bin/common/widget_list.h
@@ -25,6 +25,7 @@ struct _Tree_Item_Data
const char *name;
Eina_Bool check;
Eina_List *list;
+   Eina_List *copy;
 };
 typedef struct _Tree_Item_Data Tree_Item_Data;
 
@@ -41,5 +42,7 @@ const char *item_style_name_get(const Eina_Stringshare 
*group_name, Eina_List *s
 Eina_Bool style_name_check(const Eina_Stringshare *group_name, const char 
*style_name);
 Eina_Bool item_style_name_check(const Eina_Stringshare 

[EGIT] [tools/eflete] master 01/01: Project navigator: change the method to get the text

2016-06-08 Thread Jaehwan Kim
jaehwan pushed a commit to branch master.

http://git.enlightenment.org/tools/eflete.git/commit/?id=f5547763e6689cf60868a1085113f8af2cfedb4c

commit f5547763e6689cf60868a1085113f8af2cfedb4c
Author: Jaehwan Kim <jae.hwan@samsung.com>
Date:   Wed Jun 8 18:25:53 2016 +0900

Project navigator: change the method to get the text

If the genlist item is not realized, it occurs the segfault
since the item can not return the text. So in that case,
genlist should call the get_text function directly.

@fix
---
 src/bin/ui/project_navigator.c | 15 ++-
 1 file changed, 14 insertions(+), 1 deletion(-)

diff --git a/src/bin/ui/project_navigator.c b/src/bin/ui/project_navigator.c
index 0ff96db..e7f1e18 100644
--- a/src/bin/ui/project_navigator.c
+++ b/src/bin/ui/project_navigator.c
@@ -324,9 +324,22 @@ _on_clicked_double(void *data __UNUSED__,
 static Elm_Object_Item *
 _find_item(Elm_Object_Item *item, const char *name)
 {
+   char *item_text = NULL;
+
while (item)
  {
-if (!strcmp(elm_object_item_text_get(item), name)) break;
+if (elm_genlist_item_item_class_get(item) == 
project_navigator.itc_folder)
+  item_text = _folder_item_label_get(elm_object_item_data_get(item), 
NULL, NULL);
+else if (elm_genlist_item_item_class_get(item) == 
project_navigator.itc_group)
+  item_text = _group_item_label_get(elm_object_item_data_get(item), 
NULL, NULL);
+
+if (item_text && !strcmp(item_text, name))
+  {
+ free(item_text);
+ break;
+  }
+if (item_text) free(item_text);
+
 item = elm_genlist_item_next_get(item);
  }
return item;

-- 




[EGIT] [core/efl] master 01/01: examples: elementary: fix the wrong spell in comment.

2016-06-02 Thread Jaehwan Kim
jaehwan pushed a commit to branch master.

http://git.enlightenment.org/core/efl.git/commit/?id=2f75c8b6d9a6d93d6a0940c26dc0808331fb7e3c

commit 2f75c8b6d9a6d93d6a0940c26dc0808331fb7e3c
Author: Jaehwan Kim <jae.hwan@samsung.com>
Date:   Wed Jun 1 13:22:14 2016 +0900

examples: elementary: fix the wrong spell in comment.
---
 src/examples/elementary/theme_example_02.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/src/examples/elementary/theme_example_02.c 
b/src/examples/elementary/theme_example_02.c
index 871d23f..4269fb0 100644
--- a/src/examples/elementary/theme_example_02.c
+++ b/src/examples/elementary/theme_example_02.c
@@ -1,5 +1,5 @@
 /*
- * gcc -o theme_example_02 theme_example_02.c `pkg-config --cflags --libs 
elememntaru`
+ * gcc -o theme_example_02 theme_example_02.c `pkg-config --cflags --libs 
elementary`
  */
 #include 
 

-- 




Re: [E-devel] [EGIT] [core/efl] master 01/01: elm fileselector - make ok/cancel in selector configurable per os

2016-06-02 Thread Jaehwan Kim
Thanks for this commit
I just need this feature.

I have one qeustion.
why the default is not cancel/ok?
Ubuntu and Mac use cancel/ok
I just wonder why don't apply ubuntu rule.
2016. 6. 2. 오후 6:39에 "Carsten Haitzler" 님이 작성:

> raster pushed a commit to branch master.
>
>
> http://git.enlightenment.org/core/efl.git/commit/?id=aec0cb9a67c4f203d70cb0886f859470b7fbdbf3
>
> commit aec0cb9a67c4f203d70cb0886f859470b7fbdbf3
> Author: Carsten Haitzler (Rasterman) 
> Date:   Thu Jun 2 18:37:06 2016 +0900
>
> elm fileselector - make ok/cancel in selector configurable per os
>
> so the theme build can order ok/cancel based on preference for an os,
> so make configure have an option for this and build the theme
> specifically based on that option. enable the option if you want mac
> style cancel, ok or default ok, cancel as is common elsewhere.
>
>   --enable-cancel-ok
>
> is the option
>
> @feature
> ---
>  configure.ac| 11 +++
>  data/elementary/themes/Makefile.am  |  1 +
>  data/elementary/themes/edc/elm/fileselector.edc | 18 +-
>  3 files changed, 29 insertions(+), 1 deletion(-)
>
> diff --git a/configure.ac b/configure.ac
> index 3eef79c..875968d 100644
> --- a/configure.ac
> +++ b/configure.ac
> @@ -5516,6 +5516,17 @@ AC_SUBST([ELEMENTARYJS_CXXFLAGS])
>  EFL_LIB_END_OPTIONAL([ELEMENTARY_JS])
>   End of Efl_Js
>
> +ELM_EDJE_DEFINES=""
> +AC_ARG_ENABLE([cancel-ok],
> +  [AS_HELP_STRING([--enable-cancel-ok],[Enable ordering of
> cancel and ok buttons to be cancel first, then ok instead of ok then
> cancel. @<:@default=disabled@:>@])],
> +  [
> +if test "x${enableval}" = "xyes" ; then
> +ELM_EDJE_DEFINES="$ELM_EDJE_DEFINES -DELM_CANCEL_OK=1"
> +fi
> +  ],[])
> +AC_SUBST(ELM_EDJE_DEFINES)
> +
> +
>  ## Disable warning for OS that have a specifc configuration
>  case "$host_os" in
> mingw*|cygwin*)
> diff --git a/data/elementary/themes/Makefile.am
> b/data/elementary/themes/Makefile.am
> index 40a2000..662bce9 100644
> --- a/data/elementary/themes/Makefile.am
> +++ b/data/elementary/themes/Makefile.am
> @@ -1,4 +1,5 @@
>  EDJE_CC_ELM_FLAGS = \
> +@ELM_EDJE_DEFINES@ \
>  -id $(top_srcdir)/data/elementary/themes/img \
>  -id $(top_srcdir)/data/elementary/themes/fdo \
>  -fd $(top_srcdir)/data/elementary/themes/fnt \
> diff --git a/data/elementary/themes/edc/elm/fileselector.edc
> b/data/elementary/themes/edc/elm/fileselector.edc
> index be2eb00..ac7208b 100644
> --- a/data/elementary/themes/edc/elm/fileselector.edc
> +++ b/data/elementary/themes/edc/elm/fileselector.edc
> @@ -54,8 +54,12 @@ group { name: "elm/fileselector/base/default";
>  }
>   }
>}
> +#ifdef ELM_CANCEL_OK
>swallow { "elm.swallow.ok";
> - description { state: "default" 0.0;
> +#else
> +  swallow { "elm.swallow.cancel";
> +#endif
> + desc { "default";
>  align: 1.0 1.0;
>  fixed: 1 1;
>  rel1.relative: 1.0 1.0;
> @@ -64,17 +68,29 @@ group { name: "elm/fileselector/base/default";
>  rel2.offset: -4 -4;
>   }
>}
> +#ifdef ELM_CANCEL_OK
>swallow { "elm.swallow.cancel";
> +#else
> +  swallow { "elm.swallow.ok";
> +#endif
>   desc { "default";
>  align: 1.0 0.5;
>  fixed: 1 0;
>  rel1 {
> +#ifdef ELM_CANCEL_OK
> to: "elm.swallow.ok";
> +#else
> +   to: "elm.swallow.cancel";
> +#endif
> relative: 0.0 0.0;
> offset: -4 0;
>  }
>  rel2 {
> +#ifdef ELM_CANCEL_OK
> to: "elm.swallow.ok";
> +#else
> +   to: "elm.swallow.cancel";
> +#endif
> relative: 0.0 1.0;
> offset: -4 -1;
>  }
>
> --
>
>
>
--
What NetFlow Analyzer can do for you? Monitors network bandwidth and traffic
patterns at an interface-level. Reveals which users, apps, and protocols are 
consuming the most bandwidth. Provides multi-vendor support for NetFlow, 
J-Flow, sFlow and other flows. Make informed decisions using capacity 
planning reports. https://ad.doubleclick.net/ddm/clk/305295220;132659582;e
___
enlightenment-devel mailing list
enlightenment-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/enlightenment-devel


Re: [E-devel] [EGIT] [core/efl] master 01/01: elm fileselector - make ok/cancel in selector configurable per os

2016-06-02 Thread Jaehwan Kim
Thanks for this commit
I just need this feature.

I have one qeustion.
why the default is not cancel/ok?
Ubuntu and Mac use cancel/ok
I just wonder why don't apply ubuntu rule.
2016. 6. 2. 오후 6:39에 "Carsten Haitzler" 님이 작성:

> raster pushed a commit to branch master.
>
>
> http://git.enlightenment.org/core/efl.git/commit/?id=aec0cb9a67c4f203d70cb0886f859470b7fbdbf3
>
> commit aec0cb9a67c4f203d70cb0886f859470b7fbdbf3
> Author: Carsten Haitzler (Rasterman) 
> Date:   Thu Jun 2 18:37:06 2016 +0900
>
> elm fileselector - make ok/cancel in selector configurable per os
>
> so the theme build can order ok/cancel based on preference for an os,
> so make configure have an option for this and build the theme
> specifically based on that option. enable the option if you want mac
> style cancel, ok or default ok, cancel as is common elsewhere.
>
>   --enable-cancel-ok
>
> is the option
>
> @feature
> ---
>  configure.ac| 11 +++
>  data/elementary/themes/Makefile.am  |  1 +
>  data/elementary/themes/edc/elm/fileselector.edc | 18 +-
>  3 files changed, 29 insertions(+), 1 deletion(-)
>
> diff --git a/configure.ac b/configure.ac
> index 3eef79c..875968d 100644
> --- a/configure.ac
> +++ b/configure.ac
> @@ -5516,6 +5516,17 @@ AC_SUBST([ELEMENTARYJS_CXXFLAGS])
>  EFL_LIB_END_OPTIONAL([ELEMENTARY_JS])
>   End of Efl_Js
>
> +ELM_EDJE_DEFINES=""
> +AC_ARG_ENABLE([cancel-ok],
> +  [AS_HELP_STRING([--enable-cancel-ok],[Enable ordering of
> cancel and ok buttons to be cancel first, then ok instead of ok then
> cancel. @<:@default=disabled@:>@])],
> +  [
> +if test "x${enableval}" = "xyes" ; then
> +ELM_EDJE_DEFINES="$ELM_EDJE_DEFINES -DELM_CANCEL_OK=1"
> +fi
> +  ],[])
> +AC_SUBST(ELM_EDJE_DEFINES)
> +
> +
>  ## Disable warning for OS that have a specifc configuration
>  case "$host_os" in
> mingw*|cygwin*)
> diff --git a/data/elementary/themes/Makefile.am
> b/data/elementary/themes/Makefile.am
> index 40a2000..662bce9 100644
> --- a/data/elementary/themes/Makefile.am
> +++ b/data/elementary/themes/Makefile.am
> @@ -1,4 +1,5 @@
>  EDJE_CC_ELM_FLAGS = \
> +@ELM_EDJE_DEFINES@ \
>  -id $(top_srcdir)/data/elementary/themes/img \
>  -id $(top_srcdir)/data/elementary/themes/fdo \
>  -fd $(top_srcdir)/data/elementary/themes/fnt \
> diff --git a/data/elementary/themes/edc/elm/fileselector.edc
> b/data/elementary/themes/edc/elm/fileselector.edc
> index be2eb00..ac7208b 100644
> --- a/data/elementary/themes/edc/elm/fileselector.edc
> +++ b/data/elementary/themes/edc/elm/fileselector.edc
> @@ -54,8 +54,12 @@ group { name: "elm/fileselector/base/default";
>  }
>   }
>}
> +#ifdef ELM_CANCEL_OK
>swallow { "elm.swallow.ok";
> - description { state: "default" 0.0;
> +#else
> +  swallow { "elm.swallow.cancel";
> +#endif
> + desc { "default";
>  align: 1.0 1.0;
>  fixed: 1 1;
>  rel1.relative: 1.0 1.0;
> @@ -64,17 +68,29 @@ group { name: "elm/fileselector/base/default";
>  rel2.offset: -4 -4;
>   }
>}
> +#ifdef ELM_CANCEL_OK
>swallow { "elm.swallow.cancel";
> +#else
> +  swallow { "elm.swallow.ok";
> +#endif
>   desc { "default";
>  align: 1.0 0.5;
>  fixed: 1 0;
>  rel1 {
> +#ifdef ELM_CANCEL_OK
> to: "elm.swallow.ok";
> +#else
> +   to: "elm.swallow.cancel";
> +#endif
> relative: 0.0 0.0;
> offset: -4 0;
>  }
>  rel2 {
> +#ifdef ELM_CANCEL_OK
> to: "elm.swallow.ok";
> +#else
> +   to: "elm.swallow.cancel";
> +#endif
> relative: 0.0 1.0;
> offset: -4 -1;
>  }
>
> --
>
>
>
--
What NetFlow Analyzer can do for you? Monitors network bandwidth and traffic
patterns at an interface-level. Reveals which users, apps, and protocols are 
consuming the most bandwidth. Provides multi-vendor support for NetFlow, 
J-Flow, sFlow and other flows. Make informed decisions using capacity 
planning reports. https://ad.doubleclick.net/ddm/clk/305295220;132659582;e
___
enlightenment-devel mailing list
enlightenment-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/enlightenment-devel


[EGIT] [tools/eflete] master 01/01: group_manager: add all groups if there's no checked widget

2016-06-01 Thread Jaehwan Kim
jaehwan pushed a commit to branch master.

http://git.enlightenment.org/tools/eflete.git/commit/?id=42b79b625658d1f76f050213d615af8ce954b0d2

commit 42b79b625658d1f76f050213d615af8ce954b0d2
Author: Jaehwan Kim <jae.hwan@samsung.com>
Date:   Wed Jun 1 20:18:46 2016 +0900

group_manager: add all groups if there's no checked widget

@fix
---
 src/bin/project_manager/group_manager.c | 27 +--
 1 file changed, 25 insertions(+), 2 deletions(-)

diff --git a/src/bin/project_manager/group_manager.c 
b/src/bin/project_manager/group_manager.c
index 9179147..6174543 100644
--- a/src/bin/project_manager/group_manager.c
+++ b/src/bin/project_manager/group_manager.c
@@ -421,6 +421,27 @@ gm_group_del(Project *pro, Group *group)
free(group);
 }
 
+Eina_Bool
+_is_checked(Eina_List *widgets)
+{
+   Eina_List *l, *ll, *lll;
+   Tree_Item_Data *widget, *style;
+   End_Item_Data *item_style;
+
+   EINA_LIST_FOREACH(widgets, l, widget)
+ {
+if (widget->check) return EINA_TRUE;
+EINA_LIST_FOREACH(widget->list, ll, style)
+  {
+ if (style->check) return EINA_TRUE;
+ EINA_LIST_FOREACH(style->list, lll, item_style)
+   if (item_style->check) return EINA_TRUE;
+  }
+ }
+
+   return EINA_FALSE;
+}
+
 void
 gm_groups_load(Project *pro)
 {
@@ -430,7 +451,7 @@ gm_groups_load(Project *pro)
Tree_Item_Data *widget, *style;
End_Item_Data *item_style;
Group *group;
-   Eina_Bool check;
+   Eina_Bool check, is_checked;
 
assert(pro != NULL);
assert(pro->dev != NULL);
@@ -440,13 +461,15 @@ gm_groups_load(Project *pro)
 
assert(collections != NULL);
 
+   is_checked = _is_checked(pro->widgets);
+
collections = eina_list_sort(collections, eina_list_count(collections), 
(Eina_Compare_Cb) strcmp);
EINA_LIST_FOREACH(collections, l, group_name)
  {
 check = false;
 if (!strcmp(group_name, EFLETE_INTERNAL_GROUP_NAME)) continue;
 
-if (pro->widgets)
+if (pro->widgets && is_checked)
   {
  widget_name = widget_name_get(group_name);
  if (!widget_name) continue;

-- 




[EGIT] [core/efl] master 01/01: Elementary: fix the indentation

2016-05-29 Thread Jaehwan Kim
jaehwan pushed a commit to branch master.

http://git.enlightenment.org/core/efl.git/commit/?id=945932e1b1c66a2a19f0410c4f95c4449bf767d7

commit 945932e1b1c66a2a19f0410c4f95c4449bf767d7
Author: Jaehwan Kim <jae.hwan@samsung.com>
Date:   Mon May 30 11:36:49 2016 +0900

Elementary: fix the indentation
---
 src/lib/elementary/efl_ui_box.c | 2 +-
 src/lib/elementary/elm_box.c| 4 ++--
 src/lib/elementary/elm_grid.c   | 2 +-
 src/lib/elementary/elm_panel.c  | 2 +-
 src/lib/elementary/elm_widget.h | 2 +-
 5 files changed, 6 insertions(+), 6 deletions(-)

diff --git a/src/lib/elementary/efl_ui_box.c b/src/lib/elementary/efl_ui_box.c
index 0c1f793..9f8291f 100644
--- a/src/lib/elementary/efl_ui_box.c
+++ b/src/lib/elementary/efl_ui_box.c
@@ -310,7 +310,7 @@ _efl_ui_box_efl_pack_unpack_all(Eo *obj, Efl_Ui_Box_Data 
*pd)
pd->delete_me = EINA_TRUE;
bd = evas_object_smart_data_get(wd->resize_obj);
EINA_LIST_FOREACH(bd->children, l, opt)
-  _elm_widget_sub_object_redirect_to_top(obj, opt->obj);
+ _elm_widget_sub_object_redirect_to_top(obj, opt->obj);
pd->delete_me = EINA_FALSE;
 
ret = evas_object_box_remove_all(wd->resize_obj, EINA_FALSE);
diff --git a/src/lib/elementary/elm_box.c b/src/lib/elementary/elm_box.c
index d7262a8..962ebfb 100644
--- a/src/lib/elementary/elm_box.c
+++ b/src/lib/elementary/elm_box.c
@@ -536,7 +536,7 @@ _elm_box_unpack(Eo *obj, Elm_Box_Data *_pd EINA_UNUSED, 
Evas_Object *subobj)
ELM_WIDGET_DATA_GET_OR_RETURN(obj, wd);
 
if (evas_object_box_remove(wd->resize_obj, subobj))
-  _elm_widget_sub_object_redirect_to_top(obj, subobj);
+ _elm_widget_sub_object_redirect_to_top(obj, subobj);
 }
 
 EOLIAN static void
@@ -551,7 +551,7 @@ _elm_box_unpack_all(Eo *obj, Elm_Box_Data *pd)
pd->delete_me = EINA_TRUE;
bd = evas_object_smart_data_get(wd->resize_obj);
EINA_LIST_FOREACH (bd->children, l, opt)
-  _elm_widget_sub_object_redirect_to_top(obj, opt->obj);
+ _elm_widget_sub_object_redirect_to_top(obj, opt->obj);
pd->delete_me = EINA_FALSE;
 
/* EINA_FALSE means do not delete objects */
diff --git a/src/lib/elementary/elm_grid.c b/src/lib/elementary/elm_grid.c
index 7ab8359..f28a161 100644
--- a/src/lib/elementary/elm_grid.c
+++ b/src/lib/elementary/elm_grid.c
@@ -221,7 +221,7 @@ _elm_grid_clear(Eo *obj, void *_pd EINA_UNUSED, Eina_Bool 
clear)
  {
 chld = evas_object_grid_children_get(wd->resize_obj);
 EINA_LIST_FREE(chld, o)
-   _elm_widget_sub_object_redirect_to_top(obj, o);
+  _elm_widget_sub_object_redirect_to_top(obj, o);
  }
 
evas_object_grid_clear(wd->resize_obj, clear);
diff --git a/src/lib/elementary/elm_panel.c b/src/lib/elementary/elm_panel.c
index 406e7d3..5ccfbdd 100644
--- a/src/lib/elementary/elm_panel.c
+++ b/src/lib/elementary/elm_panel.c
@@ -994,7 +994,7 @@ _elm_panel_content_unset(Eo *obj, Elm_Panel_Data *sd, const 
char *part)
 
evas_object_box_remove_all(sd->bx, EINA_FALSE);
if (sd->scrollable)
-  _elm_widget_sub_object_redirect_to_top(sd->scr_ly, sd->content);
+ _elm_widget_sub_object_redirect_to_top(sd->scr_ly, sd->content);
sd->content = NULL;
 
return ret;
diff --git a/src/lib/elementary/elm_widget.h b/src/lib/elementary/elm_widget.h
index e99a643..b0544a5 100644
--- a/src/lib/elementary/elm_widget.h
+++ b/src/lib/elementary/elm_widget.h
@@ -840,7 +840,7 @@ _elm_widget_sub_object_redirect_to_top(Evas_Object *obj, 
Evas_Object *sobj)
 {
Eina_Bool ret = elm_widget_sub_object_del(obj, sobj);
if (ret)
-  ret = elm_widget_sub_object_add(elm_widget_top_get(obj), sobj);
+ ret = elm_widget_sub_object_add(elm_widget_top_get(obj), sobj);
 
return ret;
 }

-- 




[EGIT] [core/efl] master 01/01: widget: set the parent-child relation again, when the widget is unset

2016-05-29 Thread Jaehwan Kim
jaehwan pushed a commit to branch master.

http://git.enlightenment.org/core/efl.git/commit/?id=62cf70034de38b17f2025e08f81b5758b3d6d6e3

commit 62cf70034de38b17f2025e08f81b5758b3d6d6e3
Author: Jaehwan Kim <jae.hwan@samsung.com>
Date:   Mon May 30 09:47:39 2016 +0900

widget: set the parent-child relation again, when the widget is unset

Summary:
When the widget is unset from any container, a parent of the widget
doesn't exist. So we should set its parent to the top object.
But if we just set sd->parent, the parent can not find the widget as a
child. So the container widgets set the parent-child relation when
sub object is unset.
This commit is related to 0822ad2195d335d65208856e6e590ac47691d920.

@fix

Test Plan:
Check this issue.
https://phab.enlightenment.org/D3855
The unset widget don't added any widget as child.
So when it set scale, the widget can not reload the thmeme.

Reviewers: raster, cedric, Hermet, reutskiy.v.v

Reviewed By: Hermet, reutskiy.v.v

Subscribers: cedric, jpeg

Differential Revision: https://phab.enlightenment.org/D3957

Conflicts:
src/lib/elementary/elm_mapbuf.c
---
 src/lib/elementary/efl_ui_box.c   |  4 ++--
 src/lib/elementary/elc_popup.c|  2 +-
 src/lib/elementary/elm_box.c  |  4 ++--
 src/lib/elementary/elm_flip.c |  2 +-
 src/lib/elementary/elm_genlist.c  |  2 +-
 src/lib/elementary/elm_grid.c |  4 ++--
 src/lib/elementary/elm_layout.c   | 24 
 src/lib/elementary/elm_mapbuf.c   |  2 +-
 src/lib/elementary/elm_notify.c   |  2 +-
 src/lib/elementary/elm_panel.c|  2 +-
 src/lib/elementary/elm_scroller.c |  4 ++--
 src/lib/elementary/elm_table.c|  2 +-
 src/lib/elementary/elm_toolbar.c  |  6 +++---
 src/lib/elementary/elm_widget.c   |  2 +-
 src/lib/elementary/elm_widget.h   | 10 ++
 15 files changed, 41 insertions(+), 31 deletions(-)

diff --git a/src/lib/elementary/efl_ui_box.c b/src/lib/elementary/efl_ui_box.c
index 38c3b17..0c1f793 100644
--- a/src/lib/elementary/efl_ui_box.c
+++ b/src/lib/elementary/efl_ui_box.c
@@ -310,7 +310,7 @@ _efl_ui_box_efl_pack_unpack_all(Eo *obj, Efl_Ui_Box_Data 
*pd)
pd->delete_me = EINA_TRUE;
bd = evas_object_smart_data_get(wd->resize_obj);
EINA_LIST_FOREACH(bd->children, l, opt)
- elm_widget_sub_object_del(obj, opt->obj);
+  _elm_widget_sub_object_redirect_to_top(obj, opt->obj);
pd->delete_me = EINA_FALSE;
 
ret = evas_object_box_remove_all(wd->resize_obj, EINA_FALSE);
@@ -327,7 +327,7 @@ _efl_ui_box_efl_pack_unpack(Eo *obj, Efl_Ui_Box_Data *pd, 
Efl_Gfx *subobj)
 
if (evas_object_box_remove(wd->resize_obj, subobj))
  {
-ret = elm_widget_sub_object_del(obj, subobj);
+ret = _elm_widget_sub_object_redirect_to_top(obj, subobj);
 _sizing_eval(obj, pd);
  }
 
diff --git a/src/lib/elementary/elc_popup.c b/src/lib/elementary/elc_popup.c
index 7eaf31c..51a6e68 100644
--- a/src/lib/elementary/elc_popup.c
+++ b/src/lib/elementary/elc_popup.c
@@ -834,7 +834,7 @@ _item_icon_unset(Elm_Popup_Item_Data *it)
Evas_Object *icon = it->icon;
 
if (!it->icon) return NULL;
-   elm_widget_sub_object_del(WIDGET(it), icon);
+   _elm_widget_sub_object_redirect_to_top(WIDGET(it), icon);
evas_object_data_del(icon, "_popup_icon_parent_item");
efl_content_unset(efl_part(VIEW(it), CONTENT_PART));
elm_layout_signal_emit(VIEW(it), "elm,state,item,icon,hidden", "elm");
diff --git a/src/lib/elementary/elm_box.c b/src/lib/elementary/elm_box.c
index 15a1a14..d7262a8 100644
--- a/src/lib/elementary/elm_box.c
+++ b/src/lib/elementary/elm_box.c
@@ -536,7 +536,7 @@ _elm_box_unpack(Eo *obj, Elm_Box_Data *_pd EINA_UNUSED, 
Evas_Object *subobj)
ELM_WIDGET_DATA_GET_OR_RETURN(obj, wd);
 
if (evas_object_box_remove(wd->resize_obj, subobj))
- elm_widget_sub_object_del(obj, subobj);
+  _elm_widget_sub_object_redirect_to_top(obj, subobj);
 }
 
 EOLIAN static void
@@ -551,7 +551,7 @@ _elm_box_unpack_all(Eo *obj, Elm_Box_Data *pd)
pd->delete_me = EINA_TRUE;
bd = evas_object_smart_data_get(wd->resize_obj);
EINA_LIST_FOREACH (bd->children, l, opt)
- elm_widget_sub_object_del(obj, opt->obj);
+  _elm_widget_sub_object_redirect_to_top(obj, opt->obj);
pd->delete_me = EINA_FALSE;
 
/* EINA_FALSE means do not delete objects */
diff --git a/src/lib/elementary/elm_flip.c b/src/lib/elementary/elm_flip.c
index e9b61a1..adeddd5 100644
--- a/src/lib/elementary/elm_flip.c
+++ b/src/lib/elementary/elm_flip.c
@@ -1768,7 +1768,7 @@ _flip_content_unset(Evas_Object *obj,
if (!*cont) return NULL;
 
content = *cont;
-   elm_widget_sub_object_del(obj, content);
+   _elm_widget_sub_object_redirect_to_top(obj, content);
 
return content;
 }
diff --git a/src/lib/elementary/elm_genlist.c b/src/lib/elementary/elm_ge

[EGIT] [tools/eflete] master 02/02: Revert "project_manager: do not try load not selected widget"

2016-05-26 Thread Jaehwan Kim
jaehwan pushed a commit to branch master.

http://git.enlightenment.org/tools/eflete.git/commit/?id=054bc7411232188955a82f0d4acd55106c9a60b1

commit 054bc7411232188955a82f0d4acd55106c9a60b1
Author: Jaehwan Kim <jae.hwan@samsung.com>
Date:   Fri May 27 13:54:32 2016 +0900

Revert "project_manager: do not try load not selected widget"

This reverts commit ce5282f3c7a4e0e4eb1393fcdd10e740e802de2b.
It should load only checked widget. But this commit initialize
the routine.
---
 src/bin/project_manager/project_manager.c | 3 ---
 1 file changed, 3 deletions(-)

diff --git a/src/bin/project_manager/project_manager.c 
b/src/bin/project_manager/project_manager.c
index 9bdeabe..c54a0dc 100644
--- a/src/bin/project_manager/project_manager.c
+++ b/src/bin/project_manager/project_manager.c
@@ -389,9 +389,6 @@ _project_open_internal(Project *project)
project->ecore_evas = ecore_evas_buffer_new(0, 0);
project->global_object = 
edje_edit_object_add(ecore_evas_get(project->ecore_evas));
edje_object_mmap_set(project->global_object, project->mmap_file, 
EFLETE_INTERNAL_GROUP_NAME);
-   /* this member MUST be NULL for opened project. User cann't select the one
-* or more widget from opened project */
-   project->widgets = NULL;
 
_image_resources_load(project);
_sound_resources_load(project);

-- 




[EGIT] [tools/eflete] master 01/02: main_window: change the name to Component Designer in case of tizen

2016-05-26 Thread Jaehwan Kim
jaehwan pushed a commit to branch master.

http://git.enlightenment.org/tools/eflete.git/commit/?id=207d958a11cb95a24de8de342dc30ec5f2ae3c1e

commit 207d958a11cb95a24de8de342dc30ec5f2ae3c1e
Author: Jaehwan Kim <jae.hwan@samsung.com>
Date:   Fri May 27 13:46:10 2016 +0900

main_window: change the name to Component Designer in case of tizen
---
 src/bin/ui/main_window.c | 4 
 1 file changed, 4 insertions(+)

diff --git a/src/bin/ui/main_window.c b/src/bin/ui/main_window.c
index 6f6dff1..acfa6c6 100644
--- a/src/bin/ui/main_window.c
+++ b/src/bin/ui/main_window.c
@@ -84,7 +84,11 @@ ui_main_window_add(void)
evas_object_resize(ap.win, config->window.w, config->window.h);
evas_object_move(ap.win, config->window.x, config->window.y);
 
+#ifdef HAVE_TIZEN
+   elm_win_title_set(ap.win, "Component Designer");
+#else
elm_win_title_set(ap.win, "EFL Edje Theme Editor");
+#endif
 
evas_object_smart_callback_add(ap.win, "delete,request", _close_request, 
NULL);
evas_object_smart_callback_add(ap.win, SIGNAL_SHORTCUT_QUIT, 
_close_request, NULL);

-- 




[EGIT] [admin/devs] master 01/01: jaehwan: remove pub key. It's too short.

2016-05-25 Thread Jaehwan Kim
jaehwan pushed a commit to branch master.

http://git.enlightenment.org/admin/devs.git/commit/?id=d4de0d10615e016f688d6574098d6eb96a807177

commit d4de0d10615e016f688d6574098d6eb96a807177
Author: Jaehwan Kim <jae.hwan@samsung.com>
Date:   Wed May 25 19:50:05 2016 +0900

jaehwan: remove pub key. It's too short.
---
 developers/jaehwan/id_rsa.pub | 1 -
 1 file changed, 1 deletion(-)

diff --git a/developers/jaehwan/id_rsa.pub b/developers/jaehwan/id_rsa.pub
deleted file mode 100755
index b6e8a8a..000
--- a/developers/jaehwan/id_rsa.pub
+++ /dev/null
@@ -1 +0,0 @@
-ssh-rsa 
B3NzaC1yc2EBIwAAAIEAzBIkD+Z6GQu6zaabK7S8Vbev6NV3dDGN1WASrXliy6fZv1XjQJqal/SIeQcnbC+bU4GSQUqFc518OaZ4HNHYM6yzWTAPesMX8ug428/Okkahjbr9conjtBdMm353d8KxJS20YW54OHNRi9u8RNF28T2Ygpl5TKjNeL4uz7rmY/0=
 jae.hwan@samsung.com

-- 




[EGIT] [core/efl] master 01/01: sclae : add the feature for rounding off

2016-05-18 Thread Jaehwan Kim
jaehwan pushed a commit to branch master.

http://git.enlightenment.org/core/efl.git/commit/?id=e0bbc2aceddce568be3d702cd6d8d25ac04a16ea

commit e0bbc2aceddce568be3d702cd6d8d25ac04a16ea
Author: Jaehwan Kim <jae.hwan@samsung.com>
Date:   Thu May 19 11:13:04 2016 +0900

sclae : add the feature for rounding off

Add the feature for rounding off to the nearest in ELM_SCALE_SIZE
macro. It makes to be more close to calculated value.
---
 src/lib/elementary/elm_macros.h | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/src/lib/elementary/elm_macros.h b/src/lib/elementary/elm_macros.h
index 61b3377..0ce9b6c 100644
--- a/src/lib/elementary/elm_macros.h
+++ b/src/lib/elementary/elm_macros.h
@@ -1,7 +1,7 @@
 /* handy macros */
 #define ELM_RECTS_INTERSECT(x, y, w, h, xx, yy, ww, hh) (((x) < ((xx) + (ww))) 
&& ((y) < ((yy) + (hh))) && (((x) + (w)) > (xx)) && (((y) + (h)) > (yy)))
 #define ELM_PI 3.14159265358979323846
-#define ELM_SCALE_SIZE(x) (int)(((double)(x) * elm_config_scale_get()) / 
elm_app_base_scale_get())
+#define ELM_SCALE_SIZE(x) ((int)(((double)(x) * elm_config_scale_get()) / 
elm_app_base_scale_get() + 0.5))
 
 // checks if the point(xx, yy) stays out of the rectangle(x, y, w, h) area.
 #define ELM_RECTS_POINT_OUT(x, y, w, h, xx, yy) (((xx) < (x)) || ((yy) < (y)) 
|| ((xx) > ((x) + (w))) || ((yy) > ((y) + (h

-- 




[EGIT] [tools/eflete] master 06/06: Fix build errors

2016-05-16 Thread Jaehwan Kim
rimmed pushed a commit to branch master.

http://git.enlightenment.org/tools/eflete.git/commit/?id=08616d86527fb831ad5f1b5c2047efa4ba1d38af

commit 08616d86527fb831ad5f1b5c2047efa4ba1d38af
Author: Jaehwan Kim <jae.hwan@samsung.com>
Date:   Fri May 13 16:55:38 2016 +0900

Fix build errors
---
 src/lib/ewe_combobox.eo | 1 +
 src/lib/ewe_ruler.eo| 1 +
 2 files changed, 2 insertions(+)

diff --git a/src/lib/ewe_combobox.eo b/src/lib/ewe_combobox.eo
index 80a37b0..c20ba0e 100644
--- a/src/lib/ewe_combobox.eo
+++ b/src/lib/ewe_combobox.eo
@@ -2,6 +2,7 @@ type Ewe_Combobox_Item: __undefined_type;
 
 class Ewe.Combobox (Elm.Widget)
 {
+   legacy_prefix: ewe_combobox;
eo_prefix: ewe_obj_combobox;
legacy_prefix: ewe_combobox;
data: Ewe_Combobox_Smart_Data;
diff --git a/src/lib/ewe_ruler.eo b/src/lib/ewe_ruler.eo
index bc9dd77..9781cd2 100644
--- a/src/lib/ewe_ruler.eo
+++ b/src/lib/ewe_ruler.eo
@@ -3,6 +3,7 @@ type Ewe_Ruler_Marker: __undefined_type;
 
 class Ewe.Ruler (Elm.Widget)
 {
+   legacy_prefix: ewe_ruler;
eo_prefix: ewe_obj_ruler;
legacy_prefix: ewe_ruler;
data: Ewe_Ruler_Smart_Data;

-- 




[EGIT] [tools/eflete] master 01/01: main: add the style option in widget option.

2016-05-16 Thread Jaehwan Kim
jaehwan pushed a commit to branch master.

http://git.enlightenment.org/tools/eflete.git/commit/?id=0035f313733b0d209e7e6c1a472bfeb0209311cb

commit 0035f313733b0d209e7e6c1a472bfeb0209311cb
Author: Jaehwan Kim <jae.hwan@samsung.com>
Date:   Mon May 16 17:35:10 2016 +0900

main: add the style option in widget option.

When eflete is executed by command, it can use like
eflete -w button:default,anchor ~/default.edj
---
 src/bin/common/widget_list.c | 49 +++
 src/bin/common/widget_list.h |  1 +
 src/bin/main.c   |  2 +-
 src/bin/ui/tab_home_import_edj.c | 50 +++-
 4 files changed, 95 insertions(+), 7 deletions(-)

diff --git a/src/bin/common/widget_list.c b/src/bin/common/widget_list.c
index de8a8e8..d405907 100644
--- a/src/bin/common/widget_list.c
+++ b/src/bin/common/widget_list.c
@@ -242,3 +242,52 @@ item_style_name_check(const Eina_Stringshare *group_name, 
const char *style_name
 
return !strcmp(style_name, style);
 }
+
+const char *
+option_widget_name_get(const char *str, Eina_List **style_list)
+{
+   int len = strlen(str);
+   char widget[32], style[256];
+   Eina_List *list = NULL;
+   int i, first = 0;
+   Eina_Bool is_style = EINA_FALSE;
+
+   for (i = 0; i < len; i++)
+ {
+if (str[i] == ':')
+  {
+ is_style = EINA_TRUE;
+ widget[i] = '\0';
+ first = i + 1;
+ continue;
+  }
+
+if (!is_style)
+  {
+ widget[i] = str[i];
+  }
+else
+  {
+ if (str[i] == ',')
+   {
+  style[i - first] = '\0';
+  list = eina_list_append(list, strdup(style));
+  first = i + 1;
+  continue;
+   }
+   style[i - first] = str[i];
+  }
+ }
+
+   if (!is_style)
+  widget[i] = '\0';
+   else
+ {
+style[i - first] = '\0';
+list = eina_list_append(list, strdup(style));
+ }
+
+   *style_list = list;
+
+   return strdup(widget);
+}
diff --git a/src/bin/common/widget_list.h b/src/bin/common/widget_list.h
index b7db873..35683a4 100644
--- a/src/bin/common/widget_list.h
+++ b/src/bin/common/widget_list.h
@@ -40,5 +40,6 @@ const char *style_name_get(const Eina_Stringshare 
*group_name);
 const char *item_style_name_get(const Eina_Stringshare *group_name, Eina_List 
*style_list);
 Eina_Bool style_name_check(const Eina_Stringshare *group_name, const char 
*style_name);
 Eina_Bool item_style_name_check(const Eina_Stringshare *group_name, const char 
*style_name, Eina_List *style_list);
+const char *option_widget_name_get(const char *str, Eina_List **style_list);
 
 #endif /* WIDGET_LIST_H */
diff --git a/src/bin/main.c b/src/bin/main.c
index b32149b..07109c7 100644
--- a/src/bin/main.c
+++ b/src/bin/main.c
@@ -65,7 +65,7 @@ static const Ecore_Getopt options = {
   ECORE_GETOPT_APPEND_METAVAR('s', "sd", "Add sound directory for edc 
compilation", "DIR_NAME", ECORE_GETOPT_TYPE_STR),
   ECORE_GETOPT_APPEND_METAVAR('f', "fd", "Add font directory for edc 
compilation", "DIR_NAME", ECORE_GETOPT_TYPE_STR),
   ECORE_GETOPT_APPEND_METAVAR('d', "dd", "Add data directory for edc 
compilation", "DIR_NAME", ECORE_GETOPT_TYPE_STR),
-  ECORE_GETOPT_APPEND_METAVAR('w', "widget", "Add widget to new project", 
"WIDGET_NAME", ECORE_GETOPT_TYPE_STR),
+  ECORE_GETOPT_APPEND_METAVAR('w', "widget", "Add widget to new project or 
import edj-file. Add its styles if the style names are added", 
"WIDGET_NAME[:STYLE_NAME, ...]", ECORE_GETOPT_TYPE_STR),
   ECORE_GETOPT_STORE_TRUE('r', "reopen", "reopen last project"),
   ECORE_GETOPT_VERSION  ('v', "version"),
   ECORE_GETOPT_COPYRIGHT('c', "copyright"),
diff --git a/src/bin/ui/tab_home_import_edj.c b/src/bin/ui/tab_home_import_edj.c
index 0099369..7c6abb7 100644
--- a/src/bin/ui/tab_home_import_edj.c
+++ b/src/bin/ui/tab_home_import_edj.c
@@ -645,11 +645,13 @@ _delayed_popup(void *data)
 void
 _tab_import_edj_data_set(const char *name, const char *path, const char *edj, 
const Eina_List *widgets)
 {
-   const Eina_List *l, *wl;
-   const char *str;
+   const Eina_List *l, *wl, *wll, *wlll, *w;
+   Eina_List *style_list = NULL;
+   const char *str, *widget_name, *style_name;
Eina_Strbuf *buf = eina_strbuf_new();
Eina_Bool first_not_found = true;
-   Tree_Item_Data *widget = NULL;
+   Tree_Item_Data *widget = NULL, *style = NULL;
+   End_Item_Data *item_style = NULL;
 
assert(tab_edj.layout != NULL);
 
@@ -663,17 +665,53 @@ _tab_import_edj_data_set(const char *name, const char 
*path, const char *edj, co
 
EINA_LIST_FOREACH(widgets, l, str)
  {
+widget_name = opt

[EGIT] [tools/eflete] master 01/01: Fix build errors

2016-05-13 Thread Jaehwan Kim
jaehwan pushed a commit to branch master.

http://git.enlightenment.org/tools/eflete.git/commit/?id=45cea2a9830da21a332d28fbf04c07fee35c108a

commit 45cea2a9830da21a332d28fbf04c07fee35c108a
Author: Jaehwan Kim <jae.hwan@samsung.com>
Date:   Fri May 13 16:55:38 2016 +0900

Fix build errors
---
 src/lib/ewe_combobox.eo | 13 +++--
 src/lib/ewe_ruler.eo| 15 ---
 2 files changed, 15 insertions(+), 13 deletions(-)

diff --git a/src/lib/ewe_combobox.eo b/src/lib/ewe_combobox.eo
index d08f88e..b91a965 100644
--- a/src/lib/ewe_combobox.eo
+++ b/src/lib/ewe_combobox.eo
@@ -2,6 +2,7 @@ type Ewe_Combobox_Item: __undefined_type;
 
 class Ewe_Combobox (Elm.Widget)
 {
+   legacy_prefix: ewe_combobox;
eo_prefix: ewe_obj_combobox;
data: Ewe_Combobox_Smart_Data;
methods {
@@ -125,12 +126,12 @@ class Ewe_Combobox (Elm.Widget)
implements {
   class.constructor;
   Eo.Base.constructor;
-  Evas.Object_Smart.del;
-  Evas.Object_Smart.add;
-  Evas.Object_Smart.resize;
-  Evas.Object_Smart.move;
-  Evas.Object_Smart.show;
-  Evas.Object_Smart.hide;
+  Evas.Object.Smart.del;
+  Evas.Object.Smart.add;
+  Evas.Object.Smart.resize;
+  Evas.Object.Smart.move;
+  Evas.Object.Smart.show;
+  Evas.Object.Smart.hide;
   Elm.Widget.disable;
}
events {
diff --git a/src/lib/ewe_ruler.eo b/src/lib/ewe_ruler.eo
index 8fc724e..35140f1 100644
--- a/src/lib/ewe_ruler.eo
+++ b/src/lib/ewe_ruler.eo
@@ -3,6 +3,7 @@ type Ewe_Ruler_Marker: __undefined_type;
 
 class Ewe_Ruler (Elm.Widget)
 {
+   legacy_prefix: ewe_ruler;
eo_prefix: ewe_obj_ruler;
data: Ewe_Ruler_Smart_Data;
methods {
@@ -264,13 +265,13 @@ class Ewe_Ruler (Elm.Widget)
implements {
   class.constructor;
   Eo.Base.constructor;
-  Evas.Object_Smart.add;
-  Evas.Object_Smart.del;
-  Evas.Object_Smart.resize;
-  Evas.Object_Smart.calculate;
-  Evas.Object_Smart.move;
-  Evas.Object_Smart.show;
-  Evas.Object_Smart.hide;
+  Evas.Object.Smart.add;
+  Evas.Object.Smart.del;
+  Evas.Object.Smart.resize;
+  Evas.Object.Smart.calculate;
+  Evas.Object.Smart.move;
+  Evas.Object.Smart.show;
+  Evas.Object.Smart.hide;
   Elm.Widget.theme_apply;
}
events {

-- 




[EGIT] [tools/eflete] master 01/01: tab_home_import_edj: add the style list to the widget list

2016-05-12 Thread Jaehwan Kim
jaehwan pushed a commit to branch master.

http://git.enlightenment.org/tools/eflete.git/commit/?id=b006b148b5aa6ccb55bac1aeba8d83112de03b21

commit b006b148b5aa6ccb55bac1aeba8d83112de03b21
Author: Jaehwan Kim <jae.hwan@samsung.com>
Date:   Wed May 11 14:29:13 2016 +0900

tab_home_import_edj: add the style list to the widget list

It can load just specific style instead of whole widget.
---
 src/bin/Makefile.am |   2 +
 src/bin/common/string_common.c  |  55 ---
 src/bin/common/string_common.h  |   3 -
 src/bin/common/widget_list.c| 244 
 src/bin/common/widget_list.h|  44 +
 src/bin/project_manager/group_manager.c |  33 +++-
 src/bin/ui/tab_home_import_edj.c| 273 +---
 7 files changed, 566 insertions(+), 88 deletions(-)

diff --git a/src/bin/Makefile.am b/src/bin/Makefile.am
index 3819702..51aa9e8 100644
--- a/src/bin/Makefile.am
+++ b/src/bin/Makefile.am
@@ -12,6 +12,7 @@ includesub_HEADERS = \
common/string_common.h \
common/validator.h \
common/widget_macro.h \
+   common/widget_list.h \
common/win32.h \
config/config.h \
editor/banned_edje_edit_api.h \
@@ -57,6 +58,7 @@ libete_a_SOURCES = \
 ../../src/bin/eflete.c \
 ../../src/bin/common/string_common.c \
 ../../src/bin/common/validator.c \
+../../src/bin/common/widget_list.c \
 ../../src/bin/project_manager/group_manager.c \
 ../../src/bin/project_manager/project_manager.c \
 ../../src/bin/logger/logger.c \
diff --git a/src/bin/common/string_common.c b/src/bin/common/string_common.c
index ea14527..eeaa0ae 100644
--- a/src/bin/common/string_common.c
+++ b/src/bin/common/string_common.c
@@ -21,6 +21,39 @@
 #include 
 #include 
 
+static const char *exception[] =
+{
+   "elm/map/marker/empty/",
+   "elm/map/marker/radio/",
+   "elm/map/circle/base/",
+   "elm/map/scale/base/",
+   "elm/scroller/panel/top/",
+   "elm/scroller/panel/bottom/",
+   "elm/scroller/panel/left/",
+   "elm/scroller/panel/right/",
+   "elm/index/base/vertical/",
+   "elm/index/item/vertical/",
+   "elm/index/item_odd/vertical/",
+   "elm/index/item/horizontal/",
+   "elm/index/item_odd/horizontal/",
+   "elm/colorselector/picker/base/",
+   "elm/colorselector/item/color/",
+   "elm/colorselector/image/colorbar_0/",
+   "elm/colorselector/image/colorbar_1/",
+   "elm/colorselector/image/colorbar_2/",
+   "elm/colorselector/image/colorbar_3/",
+   "elm/gengrid/item/default/",
+   "elm/entry/handler/start/",
+   "elm/entry/handler/end/",
+   "elm/entry/emoticon/wtf/",
+   "elm/popup/buttons1/popup/",
+   "elm/popup/buttons2/popup/",
+   "elm/popup/buttons3/popup/",
+   "elm/popup/content/popup/",
+   "elm/popup/item/popup/",
+   NULL
+};
+
 int
 sort_cb(const void *data1, const void *data2)
 {
@@ -59,25 +92,3 @@ string_char_replace(char *str, char src, char rep)
 str++;
  }
 }
-
-const char *
-widget_name_get(const Eina_Stringshare *group_name)
-{
-int len = strlen(group_name);
-int i;
-char str[32];
-
-if (group_name[0] != 'e') return NULL;
-if (group_name[1] != 'l') return NULL;
-if (group_name[2] != 'm') return NULL;
-if (group_name[3] != '/') return NULL;
-
-for (i = 4; i < len; i++)
-{
-if (group_name[i] == '/') break;
-str[i - 4] = group_name[i];
-}
-str[i - 4] = '\0';
-
-return strdup(str);
-}
diff --git a/src/bin/common/string_common.h b/src/bin/common/string_common.h
index 47e2058..f49b20b 100644
--- a/src/bin/common/string_common.h
+++ b/src/bin/common/string_common.h
@@ -58,7 +58,4 @@ state_name_split(Eina_Stringshare *name, Eina_Stringshare 
**name_out, double *va
 void
 string_char_replace(char *str, char src, char rep);
 
-const char *
-widget_name_get(const Eina_Stringshare *group_name);
-
 #endif /* STRING_MACRO_H */
diff --git a/src/bin/common/widget_list.c b/src/bin/common/widget_list.c
new file mode 100644
index 000..de8a8e8
--- /dev/null
+++ b/src/bin/common/widget_list.c
@@ -0,0 +1,244 @@
+/*
+ * Edje Theme Editor
+ * Copyright (C) 2013-2016 Samsung Electronics.
+ *
+ * This file is part of Edje Theme Editor.
+ *
+ * This program is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License as published by
+ * the Free Software Foundation.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ * GNU Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU L

Re: [E-devel] [EGIT] [tools/eflete] master 05/06: UTC: fix test after API change

2016-04-04 Thread Jaehwan Kim
Thank you. I missed this tests.
2016. 4. 4. 오후 11:29에 "Vyacheslav Reutskiy" 님이 작성:

> rimmed pushed a commit to branch master.
>
>
> http://git.enlightenment.org/tools/eflete.git/commit/?id=26fcd1e75b140c8d5f8e96f4e26d9abc74f185de
>
> commit 26fcd1e75b140c8d5f8e96f4e26d9abc74f185de
> Author: Vyacheslav Reutskiy 
> Date:   Mon Apr 4 16:53:38 2016 +0300
>
> UTC: fix test after API change
>
> Tests was broken in  514ddf88cce7115b5514543da320b4d9be0d8ca8
>
> Change-Id: I416a9935654366a161ce4a1d073ff1feba7edec6
> ---
>  tests/test_project_manager/pm_project_close.c | 2 +-
>  tests/test_project_manager/pm_project_import_edj.c| 6 +++---
>  tests/test_project_manager/pm_project_meta_data_get.c | 2 +-
>  tests/test_project_manager/pm_project_meta_data_set.c | 2 +-
>  tests/test_project_manager/pm_project_open.c  | 2 +-
>  tests/test_project_manager/pm_project_save.c  | 2 +-
>  tests/test_project_manager/pm_project_thread_cancel.c | 2 +-
>  tests/test_project_manager/pm_project_thread_free.c   | 2 +-
>  8 files changed, 10 insertions(+), 10 deletions(-)
>
> diff --git a/tests/test_project_manager/pm_project_close.c
> b/tests/test_project_manager/pm_project_close.c
> index 8865d3e..0897fa3 100644
> --- a/tests/test_project_manager/pm_project_close.c
> +++ b/tests/test_project_manager/pm_project_close.c
> @@ -69,7 +69,7 @@ EFLETE_TEST (pm_project_close_test_p)
> ecore_file_recursive_rm("./UTC");
>
> pm_project_import_edj("UTC", ".",
> "./edj_build/test_project_manager.edj",
> - NULL, _test_end_cb, NULL);
> + NULL, NULL, _test_end_cb, NULL);
> ecore_main_loop_begin();
>
> pro = pm_project_thread_project_get();
> diff --git a/tests/test_project_manager/pm_project_import_edj.c
> b/tests/test_project_manager/pm_project_import_edj.c
> index a678892..216a412 100644
> --- a/tests/test_project_manager/pm_project_import_edj.c
> +++ b/tests/test_project_manager/pm_project_import_edj.c
> @@ -70,7 +70,7 @@ EFLETE_TEST (pm_project_import_edj_test_p)
> ecore_file_recursive_rm("./UTC");
>
> pm_project_import_edj("UTC", ".",
> "./edj_build/test_project_manager.edj",
> -  NULL, _end_cb, NULL);
> + NULL, NULL, _end_cb, NULL);
> ecore_main_loop_begin();
>
> pro = pm_project_thread_project_get();
> @@ -123,7 +123,7 @@ EFLETE_TEST (pm_project_import_edj_test_p1)
>
> res = EINA_FALSE;
> pm_project_import_edj("UTC", ".",
> "./edj_build/test_project_manager.edj",
> -  _test_progress_cb, _end_cb, NULL);
> + NULL, _test_progress_cb, _end_cb, NULL);
> ecore_main_loop_begin();
> ck_assert_msg(res, "Progress callback did't called!");
>
> @@ -178,7 +178,7 @@ EFLETE_TEST (pm_project_import_edj_test_p2)
>
> res = EINA_FALSE;
> pm_project_import_edj("UTC", ".",
> "./edj_build/test_project_manager.edj",
> - NULL, _test_end_cb, NULL);
> + NULL, NULL, _test_end_cb, NULL);
> ecore_main_loop_begin();
> ck_assert_msg(res, "End callback did't called!");
>
> diff --git a/tests/test_project_manager/pm_project_meta_data_get.c
> b/tests/test_project_manager/pm_project_meta_data_get.c
> index 22502e6..e123b34 100644
> --- a/tests/test_project_manager/pm_project_meta_data_get.c
> +++ b/tests/test_project_manager/pm_project_meta_data_get.c
> @@ -68,7 +68,7 @@ EFLETE_TEST (pm_project_meta_data_get_test_p)
> ecore_file_recursive_rm("./UTC");
>
> pm_project_import_edj("UTC", ".", "./edj_build/radio.edj",
> - NULL, _test_end_cb, NULL);
> + NULL, NULL, _test_end_cb, NULL);
> ecore_main_loop_begin();
>
> pro = pm_project_thread_project_get();
> diff --git a/tests/test_project_manager/pm_project_meta_data_set.c
> b/tests/test_project_manager/pm_project_meta_data_set.c
> index 86dc048..8830305 100644
> --- a/tests/test_project_manager/pm_project_meta_data_set.c
> +++ b/tests/test_project_manager/pm_project_meta_data_set.c
> @@ -69,7 +69,7 @@ EFLETE_TEST (pm_project_meta_data_set_test_p)
> ecore_file_recursive_rm("./UTC");
>
> pm_project_import_edj("UTC", ".",
> "./edj_build/test_project_manager.edj",
> - NULL, _test_end_cb, NULL);
> + NULL, NULL, _test_end_cb, NULL);
> ecore_main_loop_begin();
>
> pro = pm_project_thread_project_get();
> diff --git a/tests/test_project_manager/pm_project_open.c
> b/tests/test_project_manager/pm_project_open.c
> index 5b69c11..6ae6586 100644
> --- a/tests/test_project_manager/pm_project_open.c
> +++ b/tests/test_project_manager/pm_project_open.c
> @@ -67,7 +67,7 @@ EFLETE_TEST (pm_project_open_test_p)
> ecore_file_recursive_rm("./UTC");
>
> pm_project_import_edj("UTC", ".",
> "./edj_build/test_project_manager.edj",
> - NULL, 

Re: [E-devel] [EGIT] [core/efl] master 01/01: edje: add edje signal emit about swallow, text

2015-10-21 Thread Jaehwan Kim
sorry, I forgot about that.
I reverted my commit.
I will push it at the next version.

Thanks.
2015. 10. 22. 오전 12:22에 "Stefan Schmidt" <ste...@osg.samsung.com>님이 작성:

> Hello.
>
> On 21/10/15 14:57, Jaehwan Kim wrote:
> > jaehwan pushed a commit to branch master.
> >
> >
> http://git.enlightenment.org/core/efl.git/commit/?id=b1fa1c5aadc71881cb1e4e264d680ea5efa79a69
> >
> > commit b1fa1c5aadc71881cb1e4e264d680ea5efa79a69
> > Author: Jaehwan Kim <jae.hwan@samsung.com>
> > Date:   Wed Oct 21 21:51:54 2015 +0900
> >
> >  edje: add edje signal emit about swallow, text
> >
> >  Add the edje signal "swallow", "unswallow", "text,set",
> "text,unset".
> >  In edc file, the part name take a role of source.
> >  If the layout should be changed when any object is swallowed or any
> >  text is set, use this signal.
> >
> >  @feature
>
> You realise that we are in feature freeze and stabilization phase right
> now?
>
> This commit is even marked as new feature. Why did you put it in?
>
> regards
> Stefan Schmidt
>
> > ---
> >   src/lib/edje/edje_util.c | 7 +++
> >   1 file changed, 7 insertions(+)
> >
> > diff --git a/src/lib/edje/edje_util.c b/src/lib/edje/edje_util.c
> > index aa77208..6ef5d60 100644
> > --- a/src/lib/edje/edje_util.c
> > +++ b/src/lib/edje/edje_util.c
> > @@ -1442,6 +1442,10 @@ _edje_object_part_text_raw_set(Edje *ed,
> Evas_Object *obj, Edje_Real_Part *rp, c
> >  _edje_recalc(ed);
> >  if (ed->text_change.func)
> >ed->text_change.func(ed->text_change.data, obj, part);
> > +   if (text)
> > + _edje_emit(ed, "text,set", rp->part->name);
> > +   else
> > + _edje_emit(ed, "text,unset", rp->part->name);
> >  return EINA_TRUE;
> >   }
> >
> > @@ -2886,6 +2890,7 @@ _edje_object_part_swallow(Eo *obj EINA_UNUSED,
> Edje *ed, const char *part, Evas_
> >eud->u.swallow.child = obj_swallow;
> > }
> >}
> > +   _edje_emit(ed, "swallow", rp->part->name);
> >
> >  return EINA_TRUE;
> >   }
> > @@ -3162,6 +3167,7 @@ _edje_object_part_unswallow(Eo *obj EINA_UNUSED,
> Edje *ed, Evas_Object *obj_swal
> >   if (eud->type == EDJE_USER_SWALLOW &&
> eud->u.swallow.child == obj_swallow)
> > {
> >_edje_user_definition_free(eud);
> > + _edje_emit(ed, "unswallow", rp->part->name);
> >return;
> > }
> >  }
> > @@ -3182,6 +3188,7 @@ _edje_object_part_unswallow(Eo *obj EINA_UNUSED,
> Edje *ed, Evas_Object *obj_swal
> >* -zmike, 6 April 2015
> >*/
> >   //_edje_recalc_do(ed);
> > +_edje_emit(ed, "unswallow", rp->part->name);
> >   return;
> >}
> >   }
> >
>
>
>
> --
> ___
> enlightenment-devel mailing list
> enlightenment-devel@lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/enlightenment-devel
>
--
___
enlightenment-devel mailing list
enlightenment-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/enlightenment-devel


Re: [E-devel] Add the signal emit about swallow and text

2015-10-19 Thread Jaehwan Kim
I sent two replies about this issue.
But there's no answer.
If there's no objection in my opinion, I will commit it.

Add signal "swallow", "unswallow", "text,set", "text,unset" in edje.
2015. 10. 14. 오후 3:54에 "Jaehwan Kim" <jaehwan.kim@gmail.com>님이 작성:

> genlist/gengrid already send the signal about swallow and text
> from elementary. like "elm,state,xxx,visible".
> So the signal pollution is same in this case.
> If the edc don't use the signal in the program, it isn't big budden.
> Only if it used in program and edje calculation is executed,
> that program can be slow. It just depend on edc file.
> 2015. 10. 14. 오후 3:26에 "Jaehwan Kim" <jaehwan.kim@gmail.com>님이 작성:
>
>> I think the possibility signal has crash is very low.
>> To crash two signal, both of signal name and source should be same.
>> Elementary uses "elm" as a source and an application usually doesn't use
>> source or uses application name. As a result, they don't use the part name
>> as a source name.
>> There's a lot of signals that are sent automatically from edje. "load",
>> "mouse,in", "mouse,out", "drag,set" and so on. But they don't make crash.
>> The new signals should be a similar name rule (since their machanism is
>> similar.)
>> So I think there's no need prefix "edje,xxx".
>> 2015. 10. 14. 오후 12:24에 "Amitesh Singh" <singh.amit...@gmail.com>님이 작성:
>>
>>> On Oct 14, 2015 8:25 AM, "Carsten Haitzler" <ras...@rasterman.com>
>>> wrote:
>>> >
>>> > On Wed, 14 Oct 2015 07:17:03 +0530 Amitesh Singh <
>>> singh.amit...@gmail.com>
>>> said:
>>> >
>>> > > Hello
>>> > >
>>> > > On Oct 13, 2015 10:51 PM, "Davide Andreoli" <d...@gurumeditation.it>
>>> wrote:
>>> > > >
>>> > > > Il 13/ott/2015 12:38 PM, "Jaehwan Kim" <jae.hwan@samsung.com>
>>> ha
>>> > > > scritto:
>>> > > > >
>>> > > > >
>>> > > > >
>>> > > > >I want to add the auto emited signal about "swallow" and
>>> "text"
>>> in
>>> > > > edje like
>>> > > > >"load"
>>> > > > >
>>> > > > >In edc file, any programs need to be called when the object is
>>> > > > swallowed or
>>> > > > >text is set.
>>> > > > >
>>> > > > >There's some case layout should be changed as an object is
>>> swallowed
>>> > > > or text
>>> > > > >is set.
>>> > > > >
>>> > > > >If the signal is emitted at that time, we can change the
>>> layout
>>> or
>>> > > add
>>> > > > >padding.
>>> > > > >
>>> > > > >
>>> > > > >I think the signal like:
>>> > > > >
>>> > > > >"swallow" "unswallow" "text,set" "text,unset"
>>> > > > >
>>> > > > >or
>>> > > > >
>>> > > > >"swallow,set" "swallow,unset" "text,set" "text,unset"
>>> > > > >
>>> > > > >which one is better?
>>> > > >
>>> > > > All of your suggestions have high possibility to clash with user
>>> defined
>>> > > > signal used in existing themes I'm quite sure I used "text,
>>> set"
>>> in my
>>> > > > themes.
>>> > > >
>>> > > > I suggest to at least add the "edje" prefix
>>> > > >
>>> > > > >
>>> > > How about 'edje,action,swallow'  and 'edje,action,unswallow'?
>>> >
>>> > that's sensible.
>>> >
>>> > what worries me is the cost. we swallow and change text a lot and this
>>> adds
>>> > more signal processing cost. it's already high. maybe it's not that
>>> big a
>>> deal,
>>> > but this does worry me.
>>> >
>>> > something to think about with bob.
>>> >
>>> Indeed, elm genlist/gengrid items realizati

Re: [E-devel] Add the signal emit about swallow and text

2015-10-14 Thread Jaehwan Kim
I think the possibility signal has crash is very low.
To crash two signal, both of signal name and source should be same.
Elementary uses "elm" as a source and an application usually doesn't use
source or uses application name. As a result, they don't use the part name
as a source name.
There's a lot of signals that are sent automatically from edje. "load",
"mouse,in", "mouse,out", "drag,set" and so on. But they don't make crash.
The new signals should be a similar name rule (since their machanism is
similar.)
So I think there's no need prefix "edje,xxx".
2015. 10. 14. 오후 12:24에 "Amitesh Singh" <singh.amit...@gmail.com>님이 작성:

> On Oct 14, 2015 8:25 AM, "Carsten Haitzler" <ras...@rasterman.com> wrote:
> >
> > On Wed, 14 Oct 2015 07:17:03 +0530 Amitesh Singh <
> singh.amit...@gmail.com>
> said:
> >
> > > Hello
> > >
> > > On Oct 13, 2015 10:51 PM, "Davide Andreoli" <d...@gurumeditation.it>
> wrote:
> > > >
> > > > Il 13/ott/2015 12:38 PM, "Jaehwan Kim" <jae.hwan@samsung.com> ha
> > > > scritto:
> > > > >
> > > > >
> > > > >
> > > > >I want to add the auto emited signal about "swallow" and "text"
> in
> > > > edje like
> > > > >"load"
> > > > >
> > > > >In edc file, any programs need to be called when the object is
> > > > swallowed or
> > > > >text is set.
> > > > >
> > > > >There's some case layout should be changed as an object is
> swallowed
> > > > or text
> > > > >is set.
> > > > >
> > > > >If the signal is emitted at that time, we can change the layout
> or
> > > add
> > > > >padding.
> > > > >
> > > > >
> > > > >I think the signal like:
> > > > >
> > > > >"swallow" "unswallow" "text,set" "text,unset"
> > > > >
> > > > >or
> > > > >
> > > > >"swallow,set" "swallow,unset" "text,set" "text,unset"
> > > > >
> > > > >which one is better?
> > > >
> > > > All of your suggestions have high possibility to clash with user
> defined
> > > > signal used in existing themes I'm quite sure I used "text, set"
> in my
> > > > themes.
> > > >
> > > > I suggest to at least add the "edje" prefix
> > > >
> > > > >
> > > How about 'edje,action,swallow'  and 'edje,action,unswallow'?
> >
> > that's sensible.
> >
> > what worries me is the cost. we swallow and change text a lot and this
> adds
> > more signal processing cost. it's already high. maybe it's not that big a
> deal,
> > but this does worry me.
> >
> > something to think about with bob.
> >
> Indeed, elm genlist/gengrid items realization/unrealization is one example.
> Signals pollution would be too high in this case.
>
> > > > >
> > > > >[cid:Z5JE7EUABGFC@namo.co.kr]
> > > > >
> > > > >
> > > >
> > >
>
> [SeenTimeChecker?do=cb027b4aba19c2dc2de2e7cee3bc3835166ae5a643f23bd0b9d2a415
> > > > >
> > > >
> > >
>
> 8a55a362ba777c355c197185c465c2cf80a2b7ef9aba4bb3b2b5ca43ddd7e184e0604d958075
> > > > >b6b33f32d245b7f8aafe245478a5f1d21d5ebee74427cf878f9a26ce15a0]
> > > > >
> > > > >
> > > >
> > >
>
> --
> > > > >
> > > > > ___
> > > > > enlightenment-devel mailing list
> > > > > enlightenment-devel@lists.sourceforge.net
> > > > > https://lists.sourceforge.net/lists/listinfo/enlightenment-devel
> > > > >
> > > >
> > >
>
> --
> > > > ___
> > > > enlightenment-devel mailing list
> > > > enlightenment-devel@lists.sourceforge.net
> > > > https://lists.sourceforge.net/lists/listinfo/enlightenment-devel
> > >
>
> --
> > > ___
> > > enlightenment-devel mailing list
> > > enlightenment-devel@lists.sourceforge.net
> > > https://lists.sourceforge.net/lists/listinfo/enlightenment-devel
> > >
> >
> >
> > --
> > - Codito, ergo sum - "I code, therefore I am" --
> > The Rasterman (Carsten Haitzler)ras...@rasterman.com
> >
>
> --
> ___
> enlightenment-devel mailing list
> enlightenment-devel@lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/enlightenment-devel
>
--
___
enlightenment-devel mailing list
enlightenment-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/enlightenment-devel


Re: [E-devel] Add the signal emit about swallow and text

2015-10-14 Thread Jaehwan Kim
genlist/gengrid already send the signal about swallow and text
from elementary. like "elm,state,xxx,visible".
So the signal pollution is same in this case.
If the edc don't use the signal in the program, it isn't big budden.
Only if it used in program and edje calculation is executed,
that program can be slow. It just depend on edc file.
2015. 10. 14. 오후 3:26에 "Jaehwan Kim" <jaehwan.kim@gmail.com>님이 작성:

> I think the possibility signal has crash is very low.
> To crash two signal, both of signal name and source should be same.
> Elementary uses "elm" as a source and an application usually doesn't use
> source or uses application name. As a result, they don't use the part name
> as a source name.
> There's a lot of signals that are sent automatically from edje. "load",
> "mouse,in", "mouse,out", "drag,set" and so on. But they don't make crash.
> The new signals should be a similar name rule (since their machanism is
> similar.)
> So I think there's no need prefix "edje,xxx".
> 2015. 10. 14. 오후 12:24에 "Amitesh Singh" <singh.amit...@gmail.com>님이 작성:
>
>> On Oct 14, 2015 8:25 AM, "Carsten Haitzler" <ras...@rasterman.com> wrote:
>> >
>> > On Wed, 14 Oct 2015 07:17:03 +0530 Amitesh Singh <
>> singh.amit...@gmail.com>
>> said:
>> >
>> > > Hello
>> > >
>> > > On Oct 13, 2015 10:51 PM, "Davide Andreoli" <d...@gurumeditation.it>
>> wrote:
>> > > >
>> > > > Il 13/ott/2015 12:38 PM, "Jaehwan Kim" <jae.hwan@samsung.com>
>> ha
>> > > > scritto:
>> > > > >
>> > > > >
>> > > > >
>> > > > >I want to add the auto emited signal about "swallow" and "text"
>> in
>> > > > edje like
>> > > > >"load"
>> > > > >
>> > > > >In edc file, any programs need to be called when the object is
>> > > > swallowed or
>> > > > >text is set.
>> > > > >
>> > > > >There's some case layout should be changed as an object is
>> swallowed
>> > > > or text
>> > > > >is set.
>> > > > >
>> > > > >If the signal is emitted at that time, we can change the layout
>> or
>> > > add
>> > > > >padding.
>> > > > >
>> > > > >
>> > > > >I think the signal like:
>> > > > >
>> > > > >"swallow" "unswallow" "text,set" "text,unset"
>> > > > >
>> > > > >or
>> > > > >
>> > > > >"swallow,set" "swallow,unset" "text,set" "text,unset"
>> > > > >
>> > > > >which one is better?
>> > > >
>> > > > All of your suggestions have high possibility to clash with user
>> defined
>> > > > signal used in existing themes I'm quite sure I used "text, set"
>> in my
>> > > > themes.
>> > > >
>> > > > I suggest to at least add the "edje" prefix
>> > > >
>> > > > >
>> > > How about 'edje,action,swallow'  and 'edje,action,unswallow'?
>> >
>> > that's sensible.
>> >
>> > what worries me is the cost. we swallow and change text a lot and this
>> adds
>> > more signal processing cost. it's already high. maybe it's not that big
>> a
>> deal,
>> > but this does worry me.
>> >
>> > something to think about with bob.
>> >
>> Indeed, elm genlist/gengrid items realization/unrealization is one
>> example.
>> Signals pollution would be too high in this case.
>>
>> > > > >
>> > > > >[cid:Z5JE7EUABGFC@namo.co.kr]
>> > > > >
>> > > > >
>> > > >
>> > >
>>
>> [SeenTimeChecker?do=cb027b4aba19c2dc2de2e7cee3bc3835166ae5a643f23bd0b9d2a415
>> > > > >
>> > > >
>> > >
>>
>> 8a55a362ba777c355c197185c465c2cf80a2b7ef9aba4bb3b2b5ca43ddd7e184e0604d958075
>> > > > >b6b33f32d245b7f8aafe245478a5f1d21d5ebee74427cf878f9a26ce15a0]
>> > > >

[E-devel] Add the signal emit about swallow and text

2015-10-13 Thread Jaehwan Kim


   I want to add the auto emited signal about "swallow" and "text" in edje like
   "load"

   In edc file, any programs need to be called when the object is swallowed or
   text is set.

   There's some case layout should be changed as an object is swallowed or text
   is set.

   If the signal is emitted at that time, we can change the layout or add
   padding.


   I think the signal like:

   "swallow" "unswallow" "text,set" "text,unset"

   or

   "swallow,set" "swallow,unset" "text,set" "text,unset"

   which one is better?


   [cid:Z5JE7EUABGFC@namo.co.kr]

   [SeenTimeChecker?do=cb027b4aba19c2dc2de2e7cee3bc3835166ae5a643f23bd0b9d2a415
   8a55a362ba777c355c197185c465c2cf80a2b7ef9aba4bb3b2b5ca43ddd7e184e0604d958075
   b6b33f32d245b7f8aafe245478a5f1d21d5ebee74427cf878f9a26ce15a0]
--
___
enlightenment-devel mailing list
enlightenment-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/enlightenment-devel


Re: [E-devel] [EGIT] [core/elementary] master 01/01: scroller: fix the focus move bug in scroller.

2015-08-23 Thread Jaehwan Kim
Hello.

Sorry for late reply.
I fixed the commit.
It was mistake.
Thanks for pointing.
2015. 8. 11. 오후 8:54에 Jaehwan Kim jae.hwan@samsung.com님이 작성:

 jaehwan pushed a commit to branch master.


 http://git.enlightenment.org/core/elementary.git/commit/?id=71bff55b619ec7dfaaf973a091738a2b6a526649

 commit 71bff55b619ec7dfaaf973a091738a2b6a526649
 Author: Jaehwan Kim jae.hwan@samsung.com
 Date:   Tue Aug 11 18:56:52 2015 +0900

 scroller: fix the focus move bug in scroller.

 When the focused object is out of the viewport and the key direction
 is only the direction focus is out, it should find the next focus.

 @fix
 ---
  src/lib/elm_scroller.c | 12 +---
  1 file changed, 9 insertions(+), 3 deletions(-)

 diff --git a/src/lib/elm_scroller.c b/src/lib/elm_scroller.c
 index 31b9191..5243f8a 100644
 --- a/src/lib/elm_scroller.c
 +++ b/src/lib/elm_scroller.c
 @@ -87,6 +87,8 @@ _key_action_move(Evas_Object *obj, const char *params)
 Evas_Coord y = 0;
 Evas_Coord c_x = 0;
 Evas_Coord c_y = 0;
 +   Evas_Coord v_x = 0;
 +   Evas_Coord v_y = 0;
 Evas_Coord v_w = 0;
 Evas_Coord v_h = 0;
 Evas_Coord max_x = 0;
 @@ -108,7 +110,7 @@ _key_action_move(Evas_Object *obj, const char *params)
   elm_interface_scrollable_step_size_get(step_x, step_y),
   elm_interface_scrollable_page_size_get(page_x, page_y),
   elm_interface_scrollable_content_viewport_geometry_get
 - (NULL, NULL, v_w, v_h));
 + (v_x, v_y, v_w, v_h));
 evas_object_geometry_get(sd-content, c_x, c_y, max_x, max_y);

 current_focus = elm_widget_focused_object_get(obj);
 @@ -116,8 +118,12 @@ _key_action_move(Evas_Object *obj, const char *params)
 can_focus_list = elm_widget_can_focus_child_list_get(obj);

 if ((current_focus == obj) ||
 -   (!ELM_RECTS_INTERSECT
 -(x, y, v_w, v_h, (f_x - c_x), (f_y - c_y), f_w, f_h)))
 +   ((!ELM_RECTS_INTERSECT
 + (x, y, v_w, v_h, (f_x - c_x), (f_y - c_y), f_w, f_h)) 
 +(!strcmp(dir, left)  (f_x  v_x)) 
 +(!strcmp(dir, right)  (f_x + f_w  v_x + v_w)) 
 +(!strcmp(dir, up)  (f_y  v_y)) 
 +(!strcmp(dir, down)  (f_y + f_h  v_y + v_h
   {
  Eina_List *l;
  Evas_Object *cur;

 --



--
___
enlightenment-devel mailing list
enlightenment-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/enlightenment-devel


Re: [E-devel] [EGIT] [core/elementary] master 01/01: scroller: fix the misstake. change - ||

2015-08-23 Thread Jaehwan Kim
  
Hello
 
I added two commits about this fixing.
 
Thanks
  
-Original Message-
From: Amitesh Singhlt;singh.amit...@gmail.comgt; 
To: Enlightenment developer 
listlt;enlightenment-devel@lists.sourceforge.netgt;; 
Cc: lt;jae.hwan@samsung.comgt;; lt;amitesh...@samsung.comgt;; 
Sent: 2015-08-24 (월) 13:48:14
Subject: Re: [E-devel] [EGIT] [core/elementary] master 01/01: scroller: fix the 
misstake. change amp;amp; -gt; ||
 
Hello

Please port this patch to elementary - 1.15 branch too.

Thanks
Amitesh
On Aug 24, 2015 10:14 AM, Jaehwan Kim lt;jae.hwan@samsung.comgt; wrote:

gt; jaehwan pushed a commit to branch master.
gt;
gt;
gt; 
http://git.enlightenment.org/core/elementary.git/commit/?id=a920d06b7813a6eb0fc93a39cd9471eb9cbfa70e
gt;
gt; commit a920d06b7813a6eb0fc93a39cd9471eb9cbfa70e
gt; Author: Jaehwan Kim lt;jae.hwan@samsung.comgt;
gt; Date:   Mon Aug 24 13:38:08 2015 +0900
gt;
gt; scroller: fix the misstake. change amp;amp; -gt; ||
gt;
gt; @fix
gt; ---
gt;  src/lib/elm_scroller.c | 8 
gt;  1 file changed, 4 insertions(+), 4 deletions(-)
gt;
gt; diff --git a/src/lib/elm_scroller.c b/src/lib/elm_scroller.c
gt; index 5243f8a..4d45fd4 100644
gt; --- a/src/lib/elm_scroller.c
gt; +++ b/src/lib/elm_scroller.c
gt; @@ -120,10 +120,10 @@ _key_action_move(Evas_Object *obj, const char
gt; *params)
gt; if ((current_focus == obj) ||
gt; ((!ELM_RECTS_INTERSECT
gt;   (x, y, v_w, v_h, (f_x - c_x), (f_y - c_y), f_w, f_h)) amp;amp;
gt; -(!strcmp(dir, left) amp;amp; (f_x gt; v_x)) amp;amp;
gt; -(!strcmp(dir, right) amp;amp; (f_x + f_w lt; v_x + v_w)) 
amp;amp;
gt; -(!strcmp(dir, up) amp;amp; (f_y gt; v_y)) amp;amp;
gt; -(!strcmp(dir, down) amp;amp; (f_y + f_h lt; v_y + v_h
gt; +((!strcmp(dir, left) amp;amp; (f_x gt; v_x)) ||
gt; +(!strcmp(dir, right) amp;amp; (f_x + f_w lt; v_x + v_w)) ||
gt; +(!strcmp(dir, up) amp;amp; (f_y gt; v_y)) ||
gt; +(!strcmp(dir, down) amp;amp; (f_y + f_h lt; v_y + v_h)
gt;   {
gt;  Eina_List *l;
gt;  Evas_Object *cur;
gt;
gt; --
gt;
gt;
gt;
--
___
enlightenment-devel mailing list
enlightenment-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/enlightenment-devel
--
___
enlightenment-devel mailing list
enlightenment-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/enlightenment-devel


Re: [E-devel] Commit access

2015-06-25 Thread Jaehwan Kim
 
I agree.
He has a great knowledge about genlist, gengrid.
+1


블로그서명greensun00님의 블로그
안녕하세요.
-Original Message-
From: ChunEon Parklt;her...@naver.comgt; 
To: Enlightenment developer 
listlt;enlightenment-devel@lists.sourceforge.netgt;; 
lt;dltkdgus1...@gmail.comgt;; 
Cc: 
Sent: 2015-06-26 (금) 12:02:52
Subject: Re: [E-devel] Commit access
 
+1


-Regards, Hermet-

-Original Message-
From: Cedric BAILlt;cedric.b...@free.frgt; 
To: e-devellt;enlightenment-devel@lists.sourceforge.netgt;; 
lt;dltkdgus1...@gmail.comgt;; 
Cc: 
Sent: 2015-06-26 (금) 01:45:49
Subject: [E-devel] Commit access
 
Hello,

I would like to propose Sanghyeon Lee to receive commit access. He has
been doing some great work on reviewing incoming patch on genlist and
gengrid. You can look at his work on phab. He is the closest we have
from an elementary genlist maintainer at this stage and we seriously
need someone to take a good care of his patch. I am relying on him
already to do the review on genlist/gengrid related patch on phab and
trust his opinion.
  Does anyone have a different opinion ?

Have fun,
-- 
Cedric BAIL

--
Monitor 25 network devices or servers for free with OpManager!
OpManager is web-based network management software that monitors 
network devices and physical amp; virtual servers, alerts via email amp; sms 
for fault. Monitor 25 devices for free with no restriction. Download now
http://ad.doubleclick.net/ddm/clk/292181274;119417398;o
___
enlightenment-devel mailing list
enlightenment-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/enlightenment-devel
--
Monitor 25 network devices or servers for free with OpManager!
OpManager is web-based network management software that monitors 
network devices and physical amp; virtual servers, alerts via email amp; sms 
for fault. Monitor 25 devices for free with no restriction. Download now
http://ad.doubleclick.net/ddm/clk/292181274;119417398;o
___
enlightenment-devel mailing list
enlightenment-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/enlightenment-devel
--
Monitor 25 network devices or servers for free with OpManager!
OpManager is web-based network management software that monitors 
network devices and physical  virtual servers, alerts via email  sms 
for fault. Monitor 25 devices for free with no restriction. Download now
http://ad.doubleclick.net/ddm/clk/292181274;119417398;o
___
enlightenment-devel mailing list
enlightenment-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/enlightenment-devel


Re: [E-devel] ecore_event_handler_add works differently in X and Wayland

2015-05-20 Thread Jaehwan Kim
 
This is Jaehwan Kim.

I used another email because of sending email problem.
 
-Original Message-
From: 김재환lt;greensu...@naver.comgt; 
To: lt;enlightenment-devel@lists.sourceforge.netgt;; 
Cc: 
Sent: 2015-05-21 (목) 10:19:02
Subject: [E-devel]  ecore_event_handler_add works differently in X and Wayland
 
 
ecore_event_handler_add works differently.
 
In X, ecore_event_handler_add and elm_win_add works well. elm_win_add and 
ecore_event_handler_add works well,too.
The ecore_event_handler_add works well regardless of creating window(or 
ecore_evas).
 
But In Wayland, if we uses ecore_event_handler_add before elm_win_add, it fails.
The reason is ecore_event_init is not called at that time.
In X, ecore_event_init is called by ecore_x_init(this is called 
_elm_config_sub_init) before creating window. 
 
It means the API operation is different as a display server. 
So we should make them work same.
 
To make ecore_event_handler_add works well before creating window, I added 
ecore_wl_init in _elm_config_sub_init.
Then It works well.
Is this change right?
Or is there any other solution?
 
블로그서명greensun00님의 블로그
안녕하세요.
--
One dashboard for servers and applications across Physical-Virtual-Cloud 
Widest out-of-the-box monitoring support with 50+ applications
Performance metrics, stats and reports that give you Actionable Insights
Deep dive visibility with transaction tracing using APM Insight.
http://ad.doubleclick.net/ddm/clk/290420510;117567292;y
___
enlightenment-devel mailing list
enlightenment-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/enlightenment-devel
--
One dashboard for servers and applications across Physical-Virtual-Cloud 
Widest out-of-the-box monitoring support with 50+ applications
Performance metrics, stats and reports that give you Actionable Insights
Deep dive visibility with transaction tracing using APM Insight.
http://ad.doubleclick.net/ddm/clk/290420510;117567292;y
___
enlightenment-devel mailing list
enlightenment-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/enlightenment-devel


[EGIT] [core/elementary] master 01/01: Gengrid: Modified to handle the focus highlight on unrealized items

2015-03-30 Thread Jaehwan Kim
jaehwan pushed a commit to branch master.

http://git.enlightenment.org/core/elementary.git/commit/?id=cb5ca38f15189c02de60e9569591756268ba9976

commit cb5ca38f15189c02de60e9569591756268ba9976
Author: Jaehwan Kim jae.hwan@samsung.com
Date:   Mon Mar 30 15:57:36 2015 +0900

Gengrid: Modified to handle the focus highlight on unrealized items

This commit is related to 260cdd6150d567fcee8d1afaf690e4b90cd16a2b.

When unrealized item is focused, edje object is not exist,
so genlist cannot read the focus highlight information from edje object.
Therefore, when the item is realized, check the item is focused or not and
need to update focus highlight.
---
 src/lib/elm_gengrid.c | 11 +++
 1 file changed, 11 insertions(+)

diff --git a/src/lib/elm_gengrid.c b/src/lib/elm_gengrid.c
index 35cb007..b3b7449 100644
--- a/src/lib/elm_gengrid.c
+++ b/src/lib/elm_gengrid.c
@@ -1016,6 +1016,17 @@ _item_realize(Elm_Gen_Item *it)
 
if (eo_it == sd-focused_item)
  {
+const char *focus_raise;
+if (elm_widget_focus_highlight_enabled_get(WIDGET(it)))
+  {
+ edje_object_signal_emit
+(VIEW(it), elm,state,focused, elm);
+  }
+
+focus_raise = edje_object_data_get(VIEW(it), focusraise);
+if ((focus_raise)  (!strcmp(focus_raise, on)))
+  evas_object_raise(VIEW(it));
+
 _elm_widget_item_highlight_in_theme(WIDGET(it), EO_OBJ(it));
 _elm_widget_highlight_in_theme_update(WIDGET(it));
 _elm_widget_focus_highlight_start(WIDGET(it));

-- 




[EGIT] [core/elementary] master 01/01: scroller: add loop feature.

2015-03-23 Thread Jaehwan Kim
jaehwan pushed a commit to branch master.

http://git.enlightenment.org/core/elementary.git/commit/?id=63e7f8b8a48b3762daba54d180d151932b849504

commit 63e7f8b8a48b3762daba54d180d151932b849504
Author: Jaehwan Kim jae.hwan@samsung.com
Date:   Sat Jan 24 12:01:03 2015 +0900

scroller: add loop feature.

This feature works the infinite loop horizontally or vertically.
If the content is set, it will be shown repeatedly.
@feature

Change-Id: I1f20b794ae44bc8e5d120901222c7cccadca96b7

Conflicts:
src/lib/elm_scroller.c
src/lib/elm_scroller_legacy.h
---
 data/themes/edc/elm/scroller.edc|  52 
 src/bin/test_scroller.c |  36 +++-
 src/lib/elm_interface_scrollable.c  | 118 ++
 src/lib/elm_interface_scrollable.eo |  26 ++
 src/lib/elm_interface_scrollable.h  |   2 +
 src/lib/elm_scroller.c  | 159 +++-
 src/lib/elm_scroller_legacy.h   |  31 +++
 src/lib/elm_widget_scroller.h   |   4 +
 8 files changed, 394 insertions(+), 34 deletions(-)

diff --git a/data/themes/edc/elm/scroller.edc b/data/themes/edc/elm/scroller.edc
index a2c397e..d70be40 100644
--- a/data/themes/edc/elm/scroller.edc
+++ b/data/themes/edc/elm/scroller.edc
@@ -1252,3 +1252,55 @@ group { name: elm/scroller/base/noclip;
   }
}
 }
+
+group { name: elm/scroller/contents/default;
+   parts {
+  part { name: elm.swallow.content;
+ type: SWALLOW;
+ description { state: default 0.0;
+ }
+  }
+  part { name: elm.swallow.content_r;
+ type: SWALLOW;
+ description { state: default 0.0;
+fixed: 1 1;
+rel1 {
+relative: 1.0 0.0;
+to: elm.swallow.content;
+}
+rel2 {
+relative: 2.0 1.0;
+to: elm.swallow.content;
+}
+ }
+  }
+  part { name: elm.swallow.content_b;
+ type: SWALLOW;
+ description { state: default 0.0;
+fixed: 1 1;
+rel1 {
+relative: 0.0 1.0;
+to: elm.swallow.content;
+}
+rel2 {
+relative: 1.0 2.0;
+to: elm.swallow.content;
+}
+ }
+  }
+  part { name: elm.swallow.content_rb;
+ type: SWALLOW;
+ description { state: default 0.0;
+fixed: 1 1;
+rel1 {
+relative: 1.0 1.0;
+to: elm.swallow.content;
+}
+rel2 {
+relative: 2.0 2.0;
+to: elm.swallow.content;
+}
+ }
+  }
+   }
+}
diff --git a/src/bin/test_scroller.c b/src/bin/test_scroller.c
index 8628ca2..8457e92 100644
--- a/src/bin/test_scroller.c
+++ b/src/bin/test_scroller.c
@@ -113,6 +113,28 @@ my_bt_block_movements_y_axis(void *data, Evas_Object *obj,
 }
 
 void
+my_bt_loop_x_axis(void *data, Evas_Object *obj EINA_UNUSED,
+  void *event_info EINA_UNUSED)
+{
+   Eina_Bool loop_h, loop_v;
+   Evas_Object *scroller = (Evas_Object *)data;
+
+   elm_scroller_loop_get(scroller, loop_h, loop_v);
+   elm_scroller_loop_set(scroller, !loop_h, loop_v);
+}
+
+void
+my_bt_loop_y_axis(void *data, Evas_Object *obj EINA_UNUSED,
+  void *event_info EINA_UNUSED)
+{
+   Eina_Bool loop_h, loop_v;
+   Evas_Object *scroller = (Evas_Object *)data;
+
+   elm_scroller_loop_get(scroller, loop_h, loop_v);
+   elm_scroller_loop_set(scroller, loop_h, !loop_v);
+}
+
+void
 page_change_cb(void *data EINA_UNUSED,
Evas_Object *obj,
void *event_info EINA_UNUSED)
@@ -152,7 +174,7 @@ void
 test_scroller(void *data EINA_UNUSED, Evas_Object *obj EINA_UNUSED, void 
*event_info EINA_UNUSED)
 {
Evas_Object *win, *bg2, *tb, *tb2, *sc, *bt, *ck1, *ck2, *bx, *bx2, *fr,
-   *ck3, *ck4, *ck5;
+   *ck3, *ck4, *ck5, *ck6, *ck7;
int i, j, n;
char buf[PATH_MAX];
Evas_Coord x = 0, y = 0, w = 0, h = 0;
@@ -214,6 +236,16 @@ test_scroller(void *data EINA_UNUSED, Evas_Object *obj 
EINA_UNUSED, void *event_
elm_box_pack_end(bx2, ck5);
evas_object_show(ck5);
 
+   ck6 = elm_check_add(win);
+   elm_object_text_set(ck6, Loop in X axis);
+   elm_box_pack_end(bx2, ck6);
+   evas_object_show(ck6);
+
+   ck7 = elm_check_add(win);
+   elm_object_text_set(ck7, Loop in Y axis);
+   elm_box_pack_end(bx2, ck7);
+   evas_object_show(ck7);
+
sc = elm_scroller_add(win);
evas_object_size_hint_weight_set(sc, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
evas_object_size_hint_align_set(sc, EVAS_HINT_FILL, EVAS_HINT_FILL);
@@ -256,6 +288,8 @@ test_scroller(void *data EINA_UNUSED, Evas_Object *obj 
EINA_UNUSED, void *event_
evas_object_smart_callback_add(ck4, changed, my_bt_block_movements_y_axis,
   sc);
evas_object_smart_callback_add(ck5, changed, my_bt_snap_to_pages, sc

[EGIT] [core/elementary] master 01/01: elm_widget: fix wrong parmeter.

2015-03-19 Thread Jaehwan Kim
jaehwan pushed a commit to branch master.

http://git.enlightenment.org/core/elementary.git/commit/?id=f425f4d381eee14e6dddb13d341b26f3eb0854f5

commit f425f4d381eee14e6dddb13d341b26f3eb0854f5
Author: Jaehwan Kim jae.hwan@samsung.com
Date:   Thu Mar 19 16:40:18 2015 +0900

elm_widget: fix wrong parmeter.

The parameter what the application gets should Elm_Object_Item.

@fix
---
 src/lib/elm_widget.c | 4 ++--
 src/lib/elm_widget.h | 4 ++--
 2 files changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/lib/elm_widget.c b/src/lib/elm_widget.c
index 39e3c32..974677e 100644
--- a/src/lib/elm_widget.c
+++ b/src/lib/elm_widget.c
@@ -5119,7 +5119,7 @@ _elm_widget_item_signal_emit(Eo *eo_item EINA_UNUSED,
 }
 
 EOLIAN static void
-_elm_widget_item_signal_callback_add(Eo *eo_item EINA_UNUSED,
+_elm_widget_item_signal_callback_add(Eo *eo_item,
  Elm_Widget_Item_Data *item,
  const char *emission,
  const char *source,
@@ -5135,7 +5135,7 @@ _elm_widget_item_signal_callback_add(Eo *eo_item 
EINA_UNUSED,
wisd = malloc(sizeof(Elm_Widget_Item_Signal_Data));
if (!wisd) return;
 
-   wisd-item = item;
+   wisd-item = eo_item;
wisd-func = (Elm_Widget_Item_Signal_Cb)func;
wisd-data = data;
wisd-emission = eina_stringshare_add(emission);
diff --git a/src/lib/elm_widget.h b/src/lib/elm_widget.h
index 96a9444..a789e2a 100644
--- a/src/lib/elm_widget.h
+++ b/src/lib/elm_widget.h
@@ -466,7 +466,7 @@ typedef Evas_Object  
*(*Elm_Widget_Content_Unset_Cb)(const void *data, c
 typedef void  (*Elm_Widget_Signal_Emit_Cb)(void *data, const 
char *emission, const char *source);
 typedef void  (*Elm_Widget_Disable_Cb)(void *data);
 typedef Eina_Bool (*Elm_Widget_Del_Pre_Cb)(void *data);
-typedef void  (*Elm_Widget_Item_Signal_Cb)(void *data, 
Elm_Widget_Item_Data *item, const char *emission, const char *source);
+typedef void  (*Elm_Widget_Item_Signal_Cb)(void *data, 
Elm_Object_Item *item, const char *emission, const char *source);
 typedef void  (*Elm_Widget_Style_Set_Cb)(void *data, const 
char *style);
 typedef const char   *(*Elm_Widget_Style_Get_Cb)(const void *data);
 typedef void  (*Elm_Widget_Focus_Set_Cb)(void *data, Eina_Bool 
focused);
@@ -569,7 +569,7 @@ EINA_DEPRECATED EAPI Elm_Access_Info 
*_elm_access_object_get(const Evas_Object *
 
 struct _Elm_Widget_Item_Signal_Data
 {
-   Elm_Widget_Item_Data *item;
+   Elm_Object_Item *item;
Elm_Widget_Item_Signal_Cb func;
const char *emission;
const char *source;

-- 




[EGIT] [core/elementary] elementary-1.13 01/01: elm_widget: fix wrong parmeter.

2015-03-19 Thread Jaehwan Kim
jaehwan pushed a commit to branch elementary-1.13.

http://git.enlightenment.org/core/elementary.git/commit/?id=582ad05fff54c6634eb0eaabb0855323e1e3c106

commit 582ad05fff54c6634eb0eaabb0855323e1e3c106
Author: Jaehwan Kim jae.hwan@samsung.com
Date:   Thu Mar 19 16:40:18 2015 +0900

elm_widget: fix wrong parmeter.

The parameter what the application gets should Elm_Object_Item.

@fix
---
 src/lib/elm_widget.c | 4 ++--
 src/lib/elm_widget.h | 4 ++--
 2 files changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/lib/elm_widget.c b/src/lib/elm_widget.c
index c4d2d69..a465e17 100644
--- a/src/lib/elm_widget.c
+++ b/src/lib/elm_widget.c
@@ -5115,7 +5115,7 @@ _elm_widget_item_signal_emit(Eo *eo_item EINA_UNUSED,
 }
 
 EOLIAN static void
-_elm_widget_item_signal_callback_add(Eo *eo_item EINA_UNUSED,
+_elm_widget_item_signal_callback_add(Eo *eo_item,
  Elm_Widget_Item_Data *item,
  const char *emission,
  const char *source,
@@ -5131,7 +5131,7 @@ _elm_widget_item_signal_callback_add(Eo *eo_item 
EINA_UNUSED,
wisd = malloc(sizeof(Elm_Widget_Item_Signal_Data));
if (!wisd) return;
 
-   wisd-item = item;
+   wisd-item = eo_item;
wisd-func = (Elm_Widget_Item_Signal_Cb)func;
wisd-data = data;
wisd-emission = eina_stringshare_add(emission);
diff --git a/src/lib/elm_widget.h b/src/lib/elm_widget.h
index 55673d8..e7b91ed 100644
--- a/src/lib/elm_widget.h
+++ b/src/lib/elm_widget.h
@@ -466,7 +466,7 @@ typedef Evas_Object  
*(*Elm_Widget_Content_Unset_Cb)(const void *data, c
 typedef void  (*Elm_Widget_Signal_Emit_Cb)(void *data, const 
char *emission, const char *source);
 typedef void  (*Elm_Widget_Disable_Cb)(void *data);
 typedef Eina_Bool (*Elm_Widget_Del_Pre_Cb)(void *data);
-typedef void  (*Elm_Widget_Item_Signal_Cb)(void *data, 
Elm_Widget_Item_Data *item, const char *emission, const char *source);
+typedef void  (*Elm_Widget_Item_Signal_Cb)(void *data, 
Elm_Object_Item *item, const char *emission, const char *source);
 typedef void  (*Elm_Widget_Style_Set_Cb)(void *data, const 
char *style);
 typedef const char   *(*Elm_Widget_Style_Get_Cb)(const void *data);
 typedef void  (*Elm_Widget_Focus_Set_Cb)(void *data, Eina_Bool 
focused);
@@ -567,7 +567,7 @@ EINA_DEPRECATED EAPI Elm_Access_Info 
*_elm_access_object_get(const Evas_Object *
 
 struct _Elm_Widget_Item_Signal_Data
 {
-   Elm_Widget_Item_Data *item;
+   Elm_Object_Item *item;
Elm_Widget_Item_Signal_Cb func;
const char *emission;
const char *source;

-- 




[EGIT] [core/elementary] master 01/01: datetime_module: Fix build warning.

2015-02-04 Thread Jaehwan Kim
jaehwan pushed a commit to branch master.

http://git.enlightenment.org/core/elementary.git/commit/?id=674d944c7d4bb683746ad4d82004d825be80b484

commit 674d944c7d4bb683746ad4d82004d825be80b484
Author: Jaehwan Kim jae.hwan@samsung.com
Date:   Wed Feb 4 19:19:45 2015 +0900

datetime_module: Fix build warning.

Include the elm_widget.h
---
 src/modules/datetime_input_ctxpopup/datetime_input_ctxpopup.c | 1 +
 1 file changed, 1 insertion(+)

diff --git a/src/modules/datetime_input_ctxpopup/datetime_input_ctxpopup.c 
b/src/modules/datetime_input_ctxpopup/datetime_input_ctxpopup.c
index 4405e11..dafb8d7 100644
--- a/src/modules/datetime_input_ctxpopup/datetime_input_ctxpopup.c
+++ b/src/modules/datetime_input_ctxpopup/datetime_input_ctxpopup.c
@@ -3,6 +3,7 @@
 #endif
 
 #include Elementary.h
+#include elm_widget.h
 #include elm_widget_datetime.h
 
 #define DATETIME_FIELD_COUNT6

-- 




  1   2   3   >