[EGIT] [bindings/cxx/eflxx] master 265/314: due to elm_genlist_item_object_get() is deprecated, I made a patch to replace them to adequate apis. most of case is sending signal.

2013-12-30 Thread Hyoyoung Chang
tasn pushed a commit to branch master.

http://git.enlightenment.org/bindings/cxx/eflxx.git/commit/?id=74cda7c273bdc6ba9fb3cc09513f8c8d4c5ead00

commit 74cda7c273bdc6ba9fb3cc09513f8c8d4c5ead00
Author: Hyoyoung Chang hyoyo...@gmail.com
Date:   Wed Mar 14 05:04:32 2012 +

due to elm_genlist_item_object_get() is deprecated, I made a patch to
replace them to adequate apis.
most of case is sending signal.

Signed-off-by: Hyoyoung Chang hyoyo...@gmail.com



SVN revision: 69314
---
 elementaryxx/include/elementaryxx/GenList.h | 2 +-
 elementaryxx/include/elementaryxx/GenListItem.h | 2 --
 elementaryxx/src/GenListItem.cpp| 6 --
 3 files changed, 1 insertion(+), 9 deletions(-)

diff --git a/elementaryxx/include/elementaryxx/GenList.h 
b/elementaryxx/include/elementaryxx/GenList.h
index 98a2ac0..7e18375 100644
--- a/elementaryxx/include/elementaryxx/GenList.h
+++ b/elementaryxx/include/elementaryxx/GenList.h
@@ -66,7 +66,7 @@ class GenListColumnSelector;
  * realized - This is called when the item in the list is created as a real
  * evas object. event_info parameter is the genlist item that was created.
  * The object may be deleted at any time, so it is up to the caller to
- * not use the object pointer from elm_genlist_item_object_get() in a way
+ * not use the object pointer from elm_object_item_part_content_get() in a way
  * where it may point to freed objects.
  *
  * drag,start,up - This is called when the item in the list has been dragged
diff --git a/elementaryxx/include/elementaryxx/GenListItem.h 
b/elementaryxx/include/elementaryxx/GenListItem.h
index acf4e1a..0c1e289 100644
--- a/elementaryxx/include/elementaryxx/GenListItem.h
+++ b/elementaryxx/include/elementaryxx/GenListItem.h
@@ -36,8 +36,6 @@ public:
   void bringIn (Elm_Genlist_Item_Scrollto_Type type);
   void update ();
 
-  const Evasxx::Object *getEvasObject ();
-
   static GenListItem *wrap (Elm_Object_Item item, GenDataModel model);
 
   static GenListItem *objectLink (const Elm_Object_Item *item);
diff --git a/elementaryxx/src/GenListItem.cpp b/elementaryxx/src/GenListItem.cpp
index 3ca0850..19ea490 100644
--- a/elementaryxx/src/GenListItem.cpp
+++ b/elementaryxx/src/GenListItem.cpp
@@ -87,12 +87,6 @@ void GenListItem::update ()
   elm_genlist_item_update (mItem);
 }
 
-const Evasxx::Object *GenListItem::getEvasObject ()
-{
-  const Evas_Object *obj = elm_genlist_item_object_get (mItem);
-  return Evasxx::Object::objectLink (obj);
-}
-
 GenListItem *GenListItem::wrap (Elm_Object_Item item, GenDataModel model)
 {
   GenListItem *genItem = new GenListItem (item);

-- 




[EGIT] [bindings/cxx/eflxx] master 264/314: After elm radically changed, some compilation errors are not fixed. I changed for this.

2013-12-30 Thread Hyoyoung Chang
tasn pushed a commit to branch master.

http://git.enlightenment.org/bindings/cxx/eflxx.git/commit/?id=ae12d9c09a0f0e28af83878e243bfaeb6dfb45dc

commit ae12d9c09a0f0e28af83878e243bfaeb6dfb45dc
Author: Hyoyoung Chang hyoyo...@gmail.com
Date:   Tue Mar 13 06:22:39 2012 +

 After elm radically changed, some compilation errors are not fixed.
 I changed for this.

 1. add a parameter for item_bring_in
 -elm_genlist_item_bring_in(it);
 +elm_genlist_item_bring_in(it, ELM_GENLIST_ITEM_SCROLLTO_IN);

 2. change a enum type name
 -   Elm_Genlist_Item_Flags
 +   Elm_Genlist_Item_Type

 3. change a enum name
 -   if (!parent) flags = ELM_GENLIST_ITEM_SUBITEMS;
 +   if (!parent) flags = ELM_GENLIST_ITEM_TREE;

 Signed-off-by: Hyoyoung Chang hyoyo...@gmail.com



SVN revision: 69283
---
 eflxx_examples/src/elementaryxx/full/test_genlist.cpp |  2 +-
 eflxx_examples/src/elementaryxx/full/test_panel.cpp   |  2 +-
 elementaryxx/include/elementaryxx/GenList.h   | 10 +-
 3 files changed, 7 insertions(+), 7 deletions(-)

diff --git a/eflxx_examples/src/elementaryxx/full/test_genlist.cpp 
b/eflxx_examples/src/elementaryxx/full/test_genlist.cpp
index 410a8e3..05bc586 100644
--- a/eflxx_examples/src/elementaryxx/full/test_genlist.cpp
+++ b/eflxx_examples/src/elementaryxx/full/test_genlist.cpp
@@ -1113,7 +1113,7 @@ static void gl4_exp (Evasxx::Object obj, void 
*event_info, GenList *gl)
   (void *)(val + 2)/* item data */, glit/* parent */, 
ELM_GENLIST_ITEM_NONE, gl4_sel/* func */,
   NULL/* func data */);
elm_genlist_item_append(gl, itc4,
-  (void *)(val + 3)/* item data */, glit/* parent */, 
ELM_GENLIST_ITEM_SUBITEMS, gl4_sel/* func */,
+  (void *)(val + 3)/* item data */, glit/* parent */, 
ELM_GENLIST_ITEM_TREE, gl4_sel/* func */,
   NULL/* func data */);
 #endif
 }
diff --git a/eflxx_examples/src/elementaryxx/full/test_panel.cpp 
b/eflxx_examples/src/elementaryxx/full/test_panel.cpp
index 046dd5b..e9e5c88 100644
--- a/eflxx_examples/src/elementaryxx/full/test_panel.cpp
+++ b/eflxx_examples/src/elementaryxx/full/test_panel.cpp
@@ -157,7 +157,7 @@ static void _fill_list (Evasxx::Object *obj)
   NULL, ELM_GENLIST_ITEM_NONE, NULL, NULL);
 else
   elm_genlist_item_append(obj, itc, eina_stringshare_add(real),
-  NULL, ELM_GENLIST_ITEM_SUBITEMS,
+  NULL, ELM_GENLIST_ITEM_TREE,
   NULL, NULL);
 free(real);
  }
diff --git a/elementaryxx/include/elementaryxx/GenList.h 
b/elementaryxx/include/elementaryxx/GenList.h
index 0e59dc7..98a2ac0 100644
--- a/elementaryxx/include/elementaryxx/GenList.h
+++ b/elementaryxx/include/elementaryxx/GenList.h
@@ -177,8 +177,8 @@ class GenListColumnSelector;
  * internal data (eg the struct with the original item data). The parent
  * parameter is the parent genlist item this belongs to if it is a tree, and
  * NULL if there is no parent. The flags can be a bitmask of
- * ELM_GENLIST_ITEM_NONE and ELM_GENLIST_ITEM_SUBITEMS. If
- * ELM_GENLIST_ITEM_SUBITEMS is set then this item is displayed as a item
+ * ELM_GENLIST_ITEM_NONE and ELM_GENLIST_ITEM_TREE. If
+ * ELM_GENLIST_ITEM_TREE is set then this item is displayed as a item
  * that is able to expand and have child items. The func parameter is a
  * convenience callback that is called when the item is selected and the data
  * parameter will be the func_data parameter, obj be the genlist object and
@@ -371,9 +371,9 @@ private:
 
 #if 0
/* operations to add items */
-   EAPI Elm_Object_Item *elm_genlist_item_prepend(Evas_Object *obj, const 
Elm_Genlist_Item_Class *itc, const void *data, Elm_Object_Item *parent, 
Elm_Genlist_Item_Flags flags, Evas_Smart_Cb func, const void *func_data);
-   EAPI Elm_Object_Item *elm_genlist_item_insert_before(Evas_Object *obj, 
const Elm_Genlist_Item_Class *itc, const void *data, Elm_Object_Item *parent, 
Elm_Genlist_Item *before, Elm_Genlist_Item_Flags flags, Evas_Smart_Cb func, 
const void *func_data);
-   EAPI Elm_Object_Item *elm_genlist_item_insert_after(Evas_Object *obj, const 
Elm_Genlist_Item_Class *itc, const void *data, Elm_Object_Item *parent, 
Elm_Genlist_Item *after, Elm_Genlist_Item_Flags flags, Evas_Smart_Cb func, 
const void *func_data);
+   EAPI Elm_Object_Item *elm_genlist_item_prepend(Evas_Object *obj, const 
Elm_Genlist_Item_Class *itc, const void *data, Elm_Object_Item *parent, 
Elm_Genlist_Item_Type flags, Evas_Smart_Cb func, const void *func_data);
+   EAPI Elm_Object_Item *elm_genlist_item_insert_before(Evas_Object *obj, 
const Elm_Genlist_Item_Class *itc, const void *data, Elm_Object_Item *parent, 
Elm_Genlist_Item *before, Elm_Genlist_Item_Type flags, Evas_Smart_Cb func, 
const void *func_data);
+   EAPI

Re: [E-devel] [Patch] fixed Ctxpopup _arrow_update

2013-01-30 Thread Hyoyoung Chang
Hello, your patch is nice to apply. but indent isn't
why you change indent heavily? i think it's better to customize your editor.


On Wed, Jan 30, 2013 at 1:17 PM, Bora Hwang bora1.hw...@samsung.com wrote:

 Dear all,

 In elc_ctxpopup.c, there's something wrong when calculating the position
 of arrow.
 According to the previous code, arrow cannot be shown in the right position
 when it should not be displayed in the middle of the ctxpopup.

 After the value and condition of the calculation are changed,
 user can put the arrow where he or she wants easily.
 (As far as the position has appropriate value in the window)

 Thanks.

 --
 Everyone hates slow websites. So do we.
 Make your web apps faster with AppDynamics
 Download AppDynamics Lite for free today:
 http://p.sf.net/sfu/appdyn_d2d_jan
 ___
 enlightenment-devel mailing list
 enlightenment-devel@lists.sourceforge.net
 https://lists.sourceforge.net/lists/listinfo/enlightenment-devel


--
Everyone hates slow websites. So do we.
Make your web apps faster with AppDynamics
Download AppDynamics Lite for free today:
http://p.sf.net/sfu/appdyn_d2d_jan
___
enlightenment-devel mailing list
enlightenment-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/enlightenment-devel


Re: [E-devel] can't focus to windows

2012-08-27 Thread Hyoyoung Chang
After remove ~/.e directory, i can reproduce this bug.

reproduce step
1. go to focus setting
2. move radio button from Most recent Window under the Mouse
   to Click Window to Focus
3. press Advanced button
4. go to Miscellaneous tab
5. unset Always pass click events to programs
6. check Click raises the window
   check Click focuses the window

is there anyone who gets this bug? is it just me or?

On Sun, Aug 26, 2012 at 10:19 PM, Carsten Haitzler ras...@rasterman.com wrote:
 On Sun, 26 Aug 2012 22:11:50 +0900 Hyoyoung Chang hyoyo...@gmail.com said:

 set click to focus here. i'm clicking things and focus is going there. i don't
 know what's wrong on your end, but it's working find here.

 it also happened at r75711

 I think i found root causes.

 In focus settings, removing Raise windows on mouse over
 and set Click Window to Focus
 In other setting tab, set only two and remove other things
 Refocus last window on desktop switch, Revert focus when it is lost

 some below my explanation is wrong about overrided redirected
 but you can see that focus isn't moving to clicked window.

 On Sun, Aug 26, 2012 at 8:48 PM, Rui Miguel Silva Seabra r...@1407.org 
 wrote:
  Since your fixes, I can alt+tab to illume-home however much I can, but
  it never gets selected.
 
  It shouldn't even appear, though :)
 
  Rui
 
  On Sun, 26 Aug 2012 20:07:27 +0900
  Carsten Haitzler (The Rasterman) ras...@rasterman.com wrote:
 
  On Sun, 26 Aug 2012 19:46:06 +0900 Hyoyoung Chang
  hyoyo...@gmail.com said:
 
   Dear all,
  
   After I updated recent e, i found that i can't click any border
   windows. And I can't touch at all firefox or chome(which are using
   override redirected window)
  
   I think it's caused by r75540
 
  focus is looking just fine to me. click to focus as wellas pointer. i
  can focus everything - this patch included. this only affects clicks
  being passed onto the app on the first click that focuses it. and
  no... firefox and chrome dont use override-redirect windows... as
  those dont get borders (titles) or get focused by the wm - they
  bypass the wm entirely.
 
   --- a/trunk/e/src/bin/e_border.c
   +++ b/trunk/e/src/bin/e_border.c
   @@ -6512,8 +6512,10 @@ _e_border_cb_grab_replay(void *data
   __UNUSED__,
  
   if (type != ECORE_EVENT_MOUSE_BUTTON_DOWN) return
   ECORE_CALLBACK_DONE; ev = event;
   -   if ((e_config-pass_click_on) ||
   (e_config-always_click_to_raise) ||
   -   (e_config-always_click_to_focus))
   +   if ((e_config-pass_click_on)
   +//   || (e_config-always_click_to_raise)
   +//   || (e_config-always_click_to_focus)
   +  )
  
  
   I changed focus setting as like below
   1. click raises the window
   2. click focuses the window
  
   Is it a bug or should I change focus setting?
  
   Thanks
  
   --
   Live Security Virtual Conference
   Exclusive live event will cover all the ways today's security and
   threat landscape has changed and how IT managers can respond.
   Discussions will include endpoint security, mobile security and the
   latest in malware threats.
   http://www.accelacomm.com/jaw/sfrnl04242012/114/50122263/
   ___ enlightenment-devel
   mailing list enlightenment-devel@lists.sourceforge.net
   https://lists.sourceforge.net/lists/listinfo/enlightenment-devel
  
 
 
 
 
  --
  Live Security Virtual Conference
  Exclusive live event will cover all the ways today's security and
  threat landscape has changed and how IT managers can respond. Discussions
  will include endpoint security, mobile security and the latest in malware
  threats. http://www.accelacomm.com/jaw/sfrnl04242012/114/50122263/
  ___
  enlightenment-devel mailing list
  enlightenment-devel@lists.sourceforge.net
  https://lists.sourceforge.net/lists/listinfo/enlightenment-devel

 --
 Live Security Virtual Conference
 Exclusive live event will cover all the ways today's security and
 threat landscape has changed and how IT managers can respond. Discussions
 will include endpoint security, mobile security and the latest in malware
 threats. http://www.accelacomm.com/jaw/sfrnl04242012/114/50122263/
 ___
 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


--
Live Security Virtual Conference
Exclusive live event will cover all the ways today's security and 
threat landscape has changed and how IT managers can respond

[E-devel] can't focus to windows

2012-08-26 Thread Hyoyoung Chang
Dear all,

After I updated recent e, i found that i can't click any border windows.
And I can't touch at all firefox or chome(which are using override
redirected window)

I think it's caused by r75540

--- a/trunk/e/src/bin/e_border.c
+++ b/trunk/e/src/bin/e_border.c
@@ -6512,8 +6512,10 @@ _e_border_cb_grab_replay(void *data __UNUSED__,

if (type != ECORE_EVENT_MOUSE_BUTTON_DOWN) return ECORE_CALLBACK_DONE;
ev = event;
-   if ((e_config-pass_click_on) || (e_config-always_click_to_raise) ||
-   (e_config-always_click_to_focus))
+   if ((e_config-pass_click_on)
+//   || (e_config-always_click_to_raise)
+//   || (e_config-always_click_to_focus)
+  )


I changed focus setting as like below
1. click raises the window
2. click focuses the window

Is it a bug or should I change focus setting?

Thanks

--
Live Security Virtual Conference
Exclusive live event will cover all the ways today's security and 
threat landscape has changed and how IT managers can respond. Discussions 
will include endpoint security, mobile security and the latest in malware 
threats. http://www.accelacomm.com/jaw/sfrnl04242012/114/50122263/
___
enlightenment-devel mailing list
enlightenment-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/enlightenment-devel


Re: [E-devel] can't focus to windows

2012-08-26 Thread Hyoyoung Chang
it also happened at r75711

I think i found root causes.

In focus settings, removing Raise windows on mouse over
and set Click Window to Focus
In other setting tab, set only two and remove other things
Refocus last window on desktop switch, Revert focus when it is lost

some below my explanation is wrong about overrided redirected
but you can see that focus isn't moving to clicked window.

On Sun, Aug 26, 2012 at 8:48 PM, Rui Miguel Silva Seabra r...@1407.org wrote:
 Since your fixes, I can alt+tab to illume-home however much I can, but
 it never gets selected.

 It shouldn't even appear, though :)

 Rui

 On Sun, 26 Aug 2012 20:07:27 +0900
 Carsten Haitzler (The Rasterman) ras...@rasterman.com wrote:

 On Sun, 26 Aug 2012 19:46:06 +0900 Hyoyoung Chang
 hyoyo...@gmail.com said:

  Dear all,
 
  After I updated recent e, i found that i can't click any border
  windows. And I can't touch at all firefox or chome(which are using
  override redirected window)
 
  I think it's caused by r75540

 focus is looking just fine to me. click to focus as wellas pointer. i
 can focus everything - this patch included. this only affects clicks
 being passed onto the app on the first click that focuses it. and
 no... firefox and chrome dont use override-redirect windows... as
 those dont get borders (titles) or get focused by the wm - they
 bypass the wm entirely.

  --- a/trunk/e/src/bin/e_border.c
  +++ b/trunk/e/src/bin/e_border.c
  @@ -6512,8 +6512,10 @@ _e_border_cb_grab_replay(void *data
  __UNUSED__,
 
  if (type != ECORE_EVENT_MOUSE_BUTTON_DOWN) return
  ECORE_CALLBACK_DONE; ev = event;
  -   if ((e_config-pass_click_on) ||
  (e_config-always_click_to_raise) ||
  -   (e_config-always_click_to_focus))
  +   if ((e_config-pass_click_on)
  +//   || (e_config-always_click_to_raise)
  +//   || (e_config-always_click_to_focus)
  +  )
 
 
  I changed focus setting as like below
  1. click raises the window
  2. click focuses the window
 
  Is it a bug or should I change focus setting?
 
  Thanks
 
  --
  Live Security Virtual Conference
  Exclusive live event will cover all the ways today's security and
  threat landscape has changed and how IT managers can respond.
  Discussions will include endpoint security, mobile security and the
  latest in malware threats.
  http://www.accelacomm.com/jaw/sfrnl04242012/114/50122263/
  ___ enlightenment-devel
  mailing list enlightenment-devel@lists.sourceforge.net
  https://lists.sourceforge.net/lists/listinfo/enlightenment-devel
 




 --
 Live Security Virtual Conference
 Exclusive live event will cover all the ways today's security and
 threat landscape has changed and how IT managers can respond. Discussions
 will include endpoint security, mobile security and the latest in malware
 threats. http://www.accelacomm.com/jaw/sfrnl04242012/114/50122263/
 ___
 enlightenment-devel mailing list
 enlightenment-devel@lists.sourceforge.net
 https://lists.sourceforge.net/lists/listinfo/enlightenment-devel

--
Live Security Virtual Conference
Exclusive live event will cover all the ways today's security and 
threat landscape has changed and how IT managers can respond. Discussions 
will include endpoint security, mobile security and the latest in malware 
threats. http://www.accelacomm.com/jaw/sfrnl04242012/114/50122263/
___
enlightenment-devel mailing list
enlightenment-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/enlightenment-devel


Re: [E-devel] E17 Korea meeting, round 2

2012-07-09 Thread Hyoyoung Chang
Itaewon again? OK, i'll like to join. yay

On Mon, Jul 9, 2012 at 7:21 PM, Cedric BAIL cedric.b...@free.fr wrote:
 On Mon, Jul 9, 2012 at 7:14 PM, Carsten Haitzler ras...@rasterman.com wrote:
 On Mon, 9 Jul 2012 19:11:03 +0900 (KST) ChunEon Park her...@naver.com said:
 Everywhere, I'm ok.

 So Saturday Seoul then ! So Itaewon for a Bulgar restaurant ?

 But I'd like to visit the nest of the hidden ninja. :)

 ninjas have nests? awesome! :) i love that word. :) perfect. it's hidden
 ninja's nest from now on. :)

 I like that idea to !
 --
 Cedric BAIL

 --
 Live Security Virtual Conference
 Exclusive live event will cover all the ways today's security and
 threat landscape has changed and how IT managers can respond. Discussions
 will include endpoint security, mobile security and the latest in malware
 threats. http://www.accelacomm.com/jaw/sfrnl04242012/114/50122263/
 ___
 enlightenment-devel mailing list
 enlightenment-devel@lists.sourceforge.net
 https://lists.sourceforge.net/lists/listinfo/enlightenment-devel

--
Live Security Virtual Conference
Exclusive live event will cover all the ways today's security and 
threat landscape has changed and how IT managers can respond. Discussions 
will include endpoint security, mobile security and the latest in malware 
threats. http://www.accelacomm.com/jaw/sfrnl04242012/114/50122263/
___
enlightenment-devel mailing list
enlightenment-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/enlightenment-devel


Re: [E-devel] [Patch] Fixed multibuttonentry`s bugs

2012-06-19 Thread Hyoyoung Chang
In svn r72484. thanks.

On Tue, Jun 19, 2012 at 2:23 PM, Minseok Kim minseok3@samsung.com wrote:
 Dear all,

 I've added patches for fixing bugs in multibuttonentry.

 First, elm_multibuttonentry_1.patch
 When multibuttonentry is clicked, it shows entry input panel.
 but at this time, there's no code for setting focus on entry.
 because of that, sometimes it cause a problem when moving focus.

 Second, elm_multibuttonentry_2.patch
 When item is added, multibuttonentry's internal entry is relocated and
 resized.
 At this time, there was an issue about setting coordinates.
 When multibuttonentry is scrolled in other widget, it sets wrong
 coordinates.
 So I've fixed.

 Please review these patches.
 Thank you.

 --
 Live Security Virtual Conference
 Exclusive live event will cover all the ways today's security and
 threat landscape has changed and how IT managers can respond. Discussions
 will include endpoint security, mobile security and the latest in malware
 threats. http://www.accelacomm.com/jaw/sfrnl04242012/114/50122263/
 ___
 enlightenment-devel mailing list
 enlightenment-devel@lists.sourceforge.net
 https://lists.sourceforge.net/lists/listinfo/enlightenment-devel


--
Live Security Virtual Conference
Exclusive live event will cover all the ways today's security and 
threat landscape has changed and how IT managers can respond. Discussions 
will include endpoint security, mobile security and the latest in malware 
threats. http://www.accelacomm.com/jaw/sfrnl04242012/114/50122263/
___
enlightenment-devel mailing list
enlightenment-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/enlightenment-devel


Re: [E-devel] [e-users] Terminology - time to talk.

2012-06-17 Thread Hyoyoung Chang
frankly speaking, there's not many candidates of terminal emulator.
most of times, i used gnome-terminal but it sometimes makes annoying
w/o gnome-setting-daemons.
so i'm used xfce4-terminal.
now i'm very happy to use terminology. that means i don't need to
install other libs.
and i can contribute e terminal emulator. yay
it's very nice.

On Sun, Jun 17, 2012 at 7:50 PM, Carsten Haitzler ras...@rasterman.com wrote:
 On Sun, 17 Jun 2012 12:35:29 +0200 Vincent Torri vincent.to...@gmail.com 
 said:

 hey

 what about separate the app into lib + app, to have a terminal in an
 elm object ? It was a remark of Puppet. I don't know if it is useful
 or not. Just a note.

 its on the TODO list. when its more settled and mature. as such we have 
 already
 done half the job of splitting out by having textgrid at all. that;s often 
 half
 the reason for people waning a terminal emulator lib/widget.

 --
 - Codito, ergo sum - I code, therefore I am --
 The Rasterman (Carsten Haitzler)    ras...@rasterman.com


 --
 Live Security Virtual Conference
 Exclusive live event will cover all the ways today's security and
 threat landscape has changed and how IT managers can respond. Discussions
 will include endpoint security, mobile security and the latest in malware
 threats. http://www.accelacomm.com/jaw/sfrnl04242012/114/50122263/
 ___
 enlightenment-devel mailing list
 enlightenment-devel@lists.sourceforge.net
 https://lists.sourceforge.net/lists/listinfo/enlightenment-devel

--
Live Security Virtual Conference
Exclusive live event will cover all the ways today's security and 
threat landscape has changed and how IT managers can respond. Discussions 
will include endpoint security, mobile security and the latest in malware 
threats. http://www.accelacomm.com/jaw/sfrnl04242012/114/50122263/
___
enlightenment-devel mailing list
enlightenment-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/enlightenment-devel


Re: [E-devel] E SVN: hyoyoung trunk/elementary/src/lib

2012-05-24 Thread Hyoyoung Chang
i removed casting at r71412
thanks guys.

On Fri, May 25, 2012 at 10:28 AM, Daniel Juyung Seo
seojuyu...@gmail.com wrote:
 1. do not cast in this case
 2. no space for casting
 yes we have some wrong formatted codes, just fix them when we find them.
 On May 25, 2012 12:21 AM, Carsten Haitzler ras...@rasterman.com wrote:

 On Thu, 24 May 2012 11:12:31 -0300 Gustavo Sverzut Barbieri
 barbi...@profusion.mobi said:

  On Thu, May 24, 2012 at 11:09 AM, Carsten Haitzler ras...@rasterman.com
 
  wrote:
   On Thu, 24 May 2012 16:51:07 +0300 Tom Hacohen 
 tom.haco...@samsung.com
   said:
  
   On 24/05/12 16:46, Gustavo Sverzut Barbieri wrote:
On Wed, May 23, 2012 at 11:38 PM, Enlightenment SVN
no-re...@enlightenment.org  wrote:
   
Log:
elementary/hoversel: fix indent
   
   
Author:       hyoyoung
Date:         2012-05-23 19:38:59 -0700 (Wed, 23 May 2012)
New Revision: 71377
Trac:         http://trac.enlightenment.org/e/changeset/71377
   
Modified:
  trunk/elementary/src/lib/elc_hoversel.c
   
Modified: trunk/elementary/src/lib/elc_hoversel.c
===
--- trunk/elementary/src/lib/elc_hoversel.c     2012-05-24
 02:26:55 UTC
(rev 71376) +++ trunk/elementary/src/lib/elc_hoversel.c
 2012-05-24
02:38:59 UTC (rev 71377) @@ -230,7 +230,7 @@
                Evas_Object *obj __UNUSED__,
                void *event_info __UNUSED__)
  {
-   elm_hoversel_hover_parent_set((Evas_Object*)data, NULL);
+   elm_hoversel_hover_parent_set((Evas_Object *)data, NULL);
  }
   
If you're fixing indent, then remove this ugly (Evas_Object*) cast.
It's not required in C.
  
   Or if you keep it, at least add a space before the data i.e
   (Evas_Object *) data.
  
   we've never added spaces after casts before... historically.
 
  no casts, they are bad... bad ;-)

 i know in this case we dont need a cast. in fact in many cases we don't. c
 auto-casts many things for us where its safe. just talking about the
 formatting only.

 --
 - Codito, ergo sum - I code, therefore I am --
 The Rasterman (Carsten Haitzler)    ras...@rasterman.com



 --
 Live Security Virtual Conference
 Exclusive live event will cover all the ways today's security and
 threat landscape has changed and how IT managers can respond. Discussions
 will include endpoint security, mobile security and the latest in malware
 threats. http://www.accelacomm.com/jaw/sfrnl04242012/114/50122263/
 ___
 enlightenment-devel mailing list
 enlightenment-devel@lists.sourceforge.net
 https://lists.sourceforge.net/lists/listinfo/enlightenment-devel

 --
 Live Security Virtual Conference
 Exclusive live event will cover all the ways today's security and
 threat landscape has changed and how IT managers can respond. Discussions
 will include endpoint security, mobile security and the latest in malware
 threats. http://www.accelacomm.com/jaw/sfrnl04242012/114/50122263/
 ___
 enlightenment-devel mailing list
 enlightenment-devel@lists.sourceforge.net
 https://lists.sourceforge.net/lists/listinfo/enlightenment-devel

--
Live Security Virtual Conference
Exclusive live event will cover all the ways today's security and 
threat landscape has changed and how IT managers can respond. Discussions 
will include endpoint security, mobile security and the latest in malware 
threats. http://www.accelacomm.com/jaw/sfrnl04242012/114/50122263/
___
enlightenment-devel mailing list
enlightenment-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/enlightenment-devel


Re: [E-devel] E SVN: hyoyoung trunk/elementary/src/lib

2012-05-23 Thread Hyoyoung Chang
On Wed, May 23, 2012 at 6:59 PM, Daniel Juyung Seo seojuyu...@gmail.com wrote:
 Do we really need go to here?
 It looks clean but I want to avoid using goto too many places without 
 necessity.

In this case, i think so.
I don't like to use jump either.
But if jump makes clear code, there's no need to avoid


 Daniel Juyung Seo (SeoZ)

 On Wed, May 23, 2012 at 4:31 PM, Enlightenment SVN
 no-re...@enlightenment.org wrote:
 Log:
 elementary/genlist: add short cut in item bring in calc.
  fix compress_mode documentation.


 Author:       hyoyoung
 Date:         2012-05-23 00:31:03 -0700 (Wed, 23 May 2012)
 New Revision: 71349
 Trac:         http://trac.enlightenment.org/e/changeset/71349

 Modified:
  trunk/elementary/src/lib/elm_genlist.c 
 trunk/elementary/src/lib/elm_genlist.h

 Modified: trunk/elementary/src/lib/elm_genlist.c
 ===
 --- trunk/elementary/src/lib/elm_genlist.c      2012-05-23 04:32:00 UTC (rev 
 71348)
 +++ trunk/elementary/src/lib/elm_genlist.c      2012-05-23 07:31:03 UTC (rev 
 71349)
 @@ -4955,6 +4955,9 @@
    Elm_Gen_Item *_it = (Elm_Gen_Item *)it;
    Evas_Coord gith = 0;
    if (_it-generation  _it-wd-generation) return EINA_FALSE;
 +   if ((_it-wd-homogeneous) 
 +       (_it-wd-mode == ELM_LIST_COMPRESS))
 +     goto hm_shortcut;  /* homogenous genlist shortcut */
    if ((_it-item-queued) || (!_it-item-mincalcd))
      {
         _it-wd-show_item = _it;
 @@ -4963,6 +4966,7 @@
         _it-item-showme = EINA_TRUE;
         return EINA_FALSE;
      }
 +hm_shortcut:
    if (_it-wd-show_item)
      {
         _it-wd-show_item-item-showme = EINA_FALSE;

 Modified: trunk/elementary/src/lib/elm_genlist.h
 ===
 --- trunk/elementary/src/lib/elm_genlist.h      2012-05-23 04:32:00 UTC (rev 
 71348)
 +++ trunk/elementary/src/lib/elm_genlist.h      2012-05-23 07:31:03 UTC (rev 
 71349)
 @@ -516,9 +516,11 @@
  * @note ELM_LIST_COMPRESS will make list resize slower as it will have to
  *       recalculate every item height again whenever the list width
  *       changes!
 - * @note When ELM_LIST_COMPRESS mode is enabled, it also enables
 - *       compress mode (see elm_genlist_mode_set()) and
 - *       disables homogeneous (see elm_genlist_homogeneous_set()).
 + * @note Homogeneous mode is for that all items in the genlist same
 + *       width/height. With ELM_LIST_COMPRESS, it makes genlist items to 
 fast
 + *       initializing. However there's no sub-objects in genlist which can 
 be
 + *       on the flying resizable (such as TEXTBLOCK). If then, some dynamic
 + *       resizable objects in genlist would not diplayed properly.
  *
  * @see elm_genlist_mode_get()
  *
 @@ -1326,8 +1328,7 @@
  *
  * This will enable the homogeneous mode where items are of the same
  * height and width so that genlist may do the lazy-loading at its
 - * maximum (which increases the performance for scrolling the list). This
 - * implies 'compressed' mode.
 + * maximum (which increases the performance for scrolling the list).
  *
  * @see elm_genlist_mode_set()
  * @see elm_genlist_homogeneous_get()


 --
 Live Security Virtual Conference
 Exclusive live event will cover all the ways today's security and
 threat landscape has changed and how IT managers can respond. Discussions
 will include endpoint security, mobile security and the latest in malware
 threats. http://www.accelacomm.com/jaw/sfrnl04242012/114/50122263/
 ___
 enlightenment-svn mailing list
 enlightenment-...@lists.sourceforge.net
 https://lists.sourceforge.net/lists/listinfo/enlightenment-svn

 --
 Live Security Virtual Conference
 Exclusive live event will cover all the ways today's security and
 threat landscape has changed and how IT managers can respond. Discussions
 will include endpoint security, mobile security and the latest in malware
 threats. http://www.accelacomm.com/jaw/sfrnl04242012/114/50122263/
 ___
 enlightenment-devel mailing list
 enlightenment-devel@lists.sourceforge.net
 https://lists.sourceforge.net/lists/listinfo/enlightenment-devel

--
Live Security Virtual Conference
Exclusive live event will cover all the ways today's security and 
threat landscape has changed and how IT managers can respond. Discussions 
will include endpoint security, mobile security and the latest in malware 
threats. http://www.accelacomm.com/jaw/sfrnl04242012/114/50122263/
___
enlightenment-devel mailing list
enlightenment-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/enlightenment-devel


Re: [E-devel] E SVN: hyoyoung trunk/elementary/src/lib

2012-05-23 Thread Hyoyoung Chang
It's a good information thread but off topic :P
raster said, in e coding style, do not need to check sizeof(char).
thanks guys.

On Wed, May 23, 2012 at 7:57 PM, Vincent Torri vincent.to...@gmail.com wrote:
 On Wed, May 23, 2012 at 12:50 PM, Bluezery ohpo...@gmail.com wrote:
 2012/5/23 Joerg Sonnenberger jo...@britannica.bec.de:
 On Wed, May 23, 2012 at 05:56:10PM +0900, Bluezery wrote:
 2012/5/23 Hyoyoung Chang hyoyo...@gmail.com:
  Maybe it's best time to talk about sizeof(char)
 
  Do we need to sizeof(char)? I just that is problem of coding convention.
  such as (a == 0) and (!a).
  Is there any predefined convention about this case?

 sizeof(char) may be larger (in the future if we use unicode :p) than
 1.  but I haven't seen yet. :)

 The C standard explicitly defines it as one. Are you thinking about
 wchar_t?
 Joerg

 How about c++??

 same (of course), as any C prog must be run without differences when
 compiled with a c++ compiler.

 Nevertheless, look at this:

 http://www.parashift.com/c++-faq-lite/new/sizeof-char.html

 Vincent

 --
 Live Security Virtual Conference
 Exclusive live event will cover all the ways today's security and
 threat landscape has changed and how IT managers can respond. Discussions
 will include endpoint security, mobile security and the latest in malware
 threats. http://www.accelacomm.com/jaw/sfrnl04242012/114/50122263/
 ___
 enlightenment-devel mailing list
 enlightenment-devel@lists.sourceforge.net
 https://lists.sourceforge.net/lists/listinfo/enlightenment-devel

--
Live Security Virtual Conference
Exclusive live event will cover all the ways today's security and 
threat landscape has changed and how IT managers can respond. Discussions 
will include endpoint security, mobile security and the latest in malware 
threats. http://www.accelacomm.com/jaw/sfrnl04242012/114/50122263/
___
enlightenment-devel mailing list
enlightenment-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/enlightenment-devel


Re: [E-devel] E SVN: hyoyoung trunk/elementary/src/lib

2012-05-22 Thread Hyoyoung Chang
Maybe it's best time to talk about sizeof(char)

Do we need to sizeof(char)? I just that is problem of coding convention.
such as (a == 0) and (!a).
Is there any predefined convention about this case?

On Wed, May 23, 2012 at 10:52 AM, ChunEon Park her...@naver.com wrote:
 FYI, sizeof will be computed at the compile time.


 -Original Message-
 From: ChunEon Parklt;her...@naver.comgt;
 To: lt;enlightenment-devel@lists.sourceforge.netgt;; 
 lt;enlightenment-...@lists.sourceforge.netgt;;
 Cc:
 Sent: 2012-05-23 (수) 10:49:24
 Subject: Re: [E-devel] E SVN: hyoyoung trunk/elementary/src/lib


 The most I prefer is to use sizeof( variable );


 No harmful for performance and would be better if the buffer type is changed.




 -Original Message-
 From: Enlightenment SVNlt;no-replygt;@enlightenment.orggt;
 To: lt;enlightenment-svngt;@lists.sourceforge.netgt;;
 Cc:
 Sent: 2012-05-23 (수) 09:53:08
 Subject: E SVN: hyoyoung trunk/elementary/src/lib


 Log:
 elementary/cnp: don't calc sizeof char at buffer malloc



 Author:       hyoyoung
 Date:         2012-05-22 17:53:07 -0700 (Tue, 22 May 2012)
 New Revision: 71337
 Trac:         http://trac.enlightenment.org/e/changeset/71337


 Modified:
  trunk/elementary/src/lib/elm_cnp.c


 Modified: trunk/elementary/src/lib/elm_cnp.c
 ===
 --- trunk/elementary/src/lib/elm_cnp.c2012-05-23 00:51:11 UTC (rev 71336)
 +++ trunk/elementary/src/lib/elm_cnp.c2012-05-23 00:53:07 UTC (rev 71337)
 @@ -785,7 +785,7 @@
    char *mkupstr;


    data = notify-gt;data;
 -   str = malloc(sizeof(char) * (data-gt;length + 1));
 +   str = malloc((data-gt;length + 1));
    if (!str) return 0;
    strncpy(str, (char *)data-gt;data, data-gt;length);
    str[data-gt;length] = '\0';
 @@ -840,7 +840,7 @@
      }
    else
      {
 -        stripstr = p = malloc(data-gt;length * sizeof(char) + 1);
 +        stripstr = p = malloc(data-gt;length + 1);
         if (!stripstr) return 0;
         memcpy(stripstr, data-gt;data, data-gt;length);
         stripstr[data-gt;length] = 0;
 @@ -985,7 +985,7 @@


    cnp_debug(Got some HTML: Checking encoding is useful\n);
    data = notify-gt;data;
 -   char *stripstr = malloc(sizeof(char) * (data-gt;length + 1));
 +   char *stripstr = malloc(data-gt;length + 1);
    if (!stripstr) return 0;
    strncpy(stripstr, (char *)data-gt;data, data-gt;length);
    stripstr[data-gt;length] = '\0';




 --
 Live Security Virtual Conference
 Exclusive live event will cover all the ways today's security and
 threat landscape has changed and how IT managers can respond. Discussions
 will include endpoint security, mobile security and the latest in malware
 threats. http://www.accelacomm.com/jaw/sfrnl04242012/114/50122263/
 ___
 enlightenment-svn mailing list
 enlightenment-...@lists.sourceforge.net
 https://lists.sourceforge.net/lists/listinfo/enlightenment-svn
 --
 Live Security Virtual Conference
 Exclusive live event will cover all the ways today's security and
 threat landscape has changed and how IT managers can respond. Discussions
 will include endpoint security, mobile security and the latest in malware
 threats. http://www.accelacomm.com/jaw/sfrnl04242012/114/50122263/
 ___
 enlightenment-devel mailing list
 enlightenment-devel@lists.sourceforge.net
 https://lists.sourceforge.net/lists/listinfo/enlightenment-devel
 --
 Live Security Virtual Conference
 Exclusive live event will cover all the ways today's security and
 threat landscape has changed and how IT managers can respond. Discussions
 will include endpoint security, mobile security and the latest in malware
 threats. http://www.accelacomm.com/jaw/sfrnl04242012/114/50122263/
 ___
 enlightenment-devel mailing list
 enlightenment-devel@lists.sourceforge.net
 https://lists.sourceforge.net/lists/listinfo/enlightenment-devel

--
Live Security Virtual Conference
Exclusive live event will cover all the ways today's security and 
threat landscape has changed and how IT managers can respond. Discussions 
will include endpoint security, mobile security and the latest in malware 
threats. http://www.accelacomm.com/jaw/sfrnl04242012/114/50122263/
___
enlightenment-devel mailing list
enlightenment-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/enlightenment-devel


Re: [E-devel] [Patch][elm_datetime] Fix documentation

2012-05-21 Thread Hyoyoung Chang
in svn, thanks.

On Mon, May 21, 2012 at 3:33 PM, Bluezery ohpo...@gmail.com wrote:
 Hello,

 I fixed documentation typos.
 elm_datetime_value_get() returns EINA_BOOL, not integer.

 --
 BRs,
 Kim.

 --
 Live Security Virtual Conference
 Exclusive live event will cover all the ways today's security and
 threat landscape has changed and how IT managers can respond. Discussions
 will include endpoint security, mobile security and the latest in malware
 threats. http://www.accelacomm.com/jaw/sfrnl04242012/114/50122263/
 ___
 enlightenment-devel mailing list
 enlightenment-devel@lists.sourceforge.net
 https://lists.sourceforge.net/lists/listinfo/enlightenment-devel


--
Live Security Virtual Conference
Exclusive live event will cover all the ways today's security and 
threat landscape has changed and how IT managers can respond. Discussions 
will include endpoint security, mobile security and the latest in malware 
threats. http://www.accelacomm.com/jaw/sfrnl04242012/114/50122263/
___
enlightenment-devel mailing list
enlightenment-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/enlightenment-devel


Re: [E-devel] fix non-NULL-terminated string bug when performing copy/paste using ELM_SEL_FORMAT_HTML

2012-05-21 Thread Hyoyoung Chang
in svn, thanks

On Tue, May 22, 2012 at 12:30 AM, Michal Pakula vel Rutka
m.pak...@samsung.com wrote:
 Dear EFL Developers,

 I have found a bug which occurs when using elm_selection_set and 
 elm_selection_get with ELM_SEL_FORMAT_HTML for non elm-entry. If copied 
 string has i.e. 4 character (TEST) Elm_Selection_Data returns 4 instead of 
 returning 5 in case of using ELM_SEL_FORMAT_TEXT, and pasted string includes 
 some garbage, which obviously is the lack of \0 at the end.
 My patch moves existing code adding \0 to the string to the begging of the 
 function so it can be used also when callback is passed (for non-elm_entry 
 objects).

 BR,
 Michal

 
 The above message is intended solely for the named addressee and may contain 
 trade secret, industrial technology or privileged and confidential 
 information otherwise protected under applicable law. Any unauthorized 
 dissemination, distribution, copying or use of the information contained in 
 this communication is strictly prohibited. If you have received this 
 communication in error, please notify sender by email and delete this 
 communication immediately.


 Powy?sza wiadomo?? przeznaczona jest wy??cznie dla adresata niniejszej 
 wiadomo?ci i mo?e zawiera? informacje b?d?ce tajemnic? handlow?, tajemnic? 
 przedsi?biorstwa oraz informacje o charakterze poufnym chronione 
 obowi?zuj?cymi przepisami prawa. Jakiekolwiek nieuprawnione ich 
 rozpowszechnianie, dystrybucja, kopiowanie lub u?ycie informacji zawartych w 
 powy?szej wiadomo?ci jest zabronione. Je?li otrzyma?e? powy?sz? wiadomo?? 
 omy?kowo, uprzejmie prosz? poinformuj o tym fakcie drog? mailow? nadawc? tej 
 wiadomo?ci oraz niezw?ocznie usu? powy?sz? wiadomo?? ze swojego komputera.

 --
 Live Security Virtual Conference
 Exclusive live event will cover all the ways today's security and
 threat landscape has changed and how IT managers can respond. Discussions
 will include endpoint security, mobile security and the latest in malware
 threats. http://www.accelacomm.com/jaw/sfrnl04242012/114/50122263/
 ___
 enlightenment-devel mailing list
 enlightenment-devel@lists.sourceforge.net
 https://lists.sourceforge.net/lists/listinfo/enlightenment-devel


--
Live Security Virtual Conference
Exclusive live event will cover all the ways today's security and 
threat landscape has changed and how IT managers can respond. Discussions 
will include endpoint security, mobile security and the latest in malware 
threats. http://www.accelacomm.com/jaw/sfrnl04242012/114/50122263/
___
enlightenment-devel mailing list
enlightenment-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/enlightenment-devel


Re: [E-devel] E SVN: hyoyoung trunk/elementary/src/lib

2012-05-21 Thread Hyoyoung Chang
Yeah. u'r right.
I added some checking routines. thanks

PS: could you change your default mail mode to txt? or just set to not
convert  as gt?

On Tue, May 22, 2012 at 1:22 PM, ChunEon Park her...@naver.com wrote:
 It missed simple null checking after malloc.


 + char *stripstr = malloc(sizeof(char) * (data-gt;length + 1));+ 
 strncpy(stripstr, (char *)data-gt;data, data-gt;length);


 

 -Regards, Hermet-


 -Original Message-
 From: Enlightenment SVNlt;no-re...@enlightenment.orggt;
 To: lt;enlightenment-...@lists.sourceforge.netgt;;
 Cc:
 Sent: 2012-05-22 (화) 10:35:13
 Subject: E SVN: hyoyoung trunk/elementary/src/lib

 Log:
 elementary/cnp: add null terminating at handling html type

  Signed-off-by: Michal Pakula vel Rutka lt;m.pakulagt;@samsung.comgt;


 Author:       hyoyoung
 Date:         2012-05-21 18:35:12 -0700 (Mon, 21 May 2012)
 New Revision: 71291
 Trac:         http://trac.enlightenment.org/e/changeset/71291

 Modified:
  trunk/elementary/src/lib/elm_cnp.c

 Modified: trunk/elementary/src/lib/elm_cnp.c
 ===
 --- trunk/elementary/src/lib/elm_cnp.c  2012-05-21 16:55:29 UTC (rev 71290)
 +++ trunk/elementary/src/lib/elm_cnp.c  2012-05-22 01:35:12 UTC (rev 71291)
 @@ -978,21 +978,21 @@

    cnp_debug(Got some HTML: Checking encoding is useful\n);
    data = notify-gt;data;
 +   char *stripstr = malloc(sizeof(char) * (data-gt;length + 1));
 +   strncpy(stripstr, (char *)data-gt;data, data-gt;length);
 +   stripstr[data-gt;length] = '\0';

    if (sel-gt;datacb)
      {
         Elm_Selection_Data ddata;
         ddata.x = ddata.y = 0;
         ddata.format = ELM_SEL_FORMAT_HTML;
 -        ddata.data = data-gt;data;
 +        ddata.data = stripstr;
         ddata.len = data-gt;length;
         sel-gt;datacb(sel-gt;udata, sel-gt;widget, amp;ddata);
         return 0;
      }

 -   char *stripstr = malloc(sizeof(char) * (data-gt;length + 1));
 -   strncpy(stripstr, (char *)data-gt;data, data-gt;length);
 -   stripstr[data-gt;length] = '\0';
    cnp_debug(String is %s (%d bytes)\n, stripstr, data-gt;length);
    _elm_entry_entry_paste(sel-gt;requestwidget, stripstr);
    free(stripstr);


 --
 Live Security Virtual Conference
 Exclusive live event will cover all the ways today's security and
 threat landscape has changed and how IT managers can respond. Discussions
 will include endpoint security, mobile security and the latest in malware
 threats. http://www.accelacomm.com/jaw/sfrnl04242012/114/50122263/
 ___
 enlightenment-svn mailing list
 enlightenment-...@lists.sourceforge.net
 https://lists.sourceforge.net/lists/listinfo/enlightenment-svn



 --
 Live Security Virtual Conference
 Exclusive live event will cover all the ways today's security and
 threat landscape has changed and how IT managers can respond. Discussions
 will include endpoint security, mobile security and the latest in malware
 threats. http://www.accelacomm.com/jaw/sfrnl04242012/114/50122263/
 ___
 enlightenment-devel mailing list
 enlightenment-devel@lists.sourceforge.net
 https://lists.sourceforge.net/lists/listinfo/enlightenment-devel

--
Live Security Virtual Conference
Exclusive live event will cover all the ways today's security and 
threat landscape has changed and how IT managers can respond. Discussions 
will include endpoint security, mobile security and the latest in malware 
threats. http://www.accelacomm.com/jaw/sfrnl04242012/114/50122263/
___
enlightenment-devel mailing list
enlightenment-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/enlightenment-devel


Re: [E-devel] E SVN: hyoyoung trunk/elementary/src/lib

2012-05-17 Thread Hyoyoung Chang
On Thu, May 17, 2012 at 4:02 PM, ChunEon Park her...@naver.com wrote:
 I wonder why st is NULL.


 I think we need to prevent to not go that function in advance, if the st was 
 invalid.
Yeah, u'r right.
btw, below code is to check about st-l, because if st-l is NULL, it
can be return with EINA_TRUE.
!st is just precondition. i think it can be removed.
but it's convenient. isn't it?


 
 -Regards, Hermet-


 -Original Message-
 From: Hyoyoung Changlt;hyoyo...@gmail.comgt;
 To: lt;enlightenment-devel@lists.sourceforge.netgt;;
 Cc:
 Sent: 2012-05-17 (목) 13:44:26
 Subject: Re: [E-devel] E SVN: hyoyoung trunk/elementary/src/lib

 Thanks, in svn - r71187

 On Thu, May 17, 2012 at 1:39 PM, Enlightenment SVN
 lt;no-replygt;@enlightenment.orggt; wrote:
 gt; Log:
 gt; elementary/gesture_layer: add to null check at _tap_gesture_check_finish
 gt;
 gt;  Signed-off-by: Kim Shinwoo lt;kimcinoo.eflgt;@gmail.comgt;
 gt;
 gt;
 gt; Author:       hyoyoung
 gt; Date:         2012-05-16 21:39:40 -0700 (Wed, 16 May 2012)
 gt; New Revision: 71187
 gt; Trac:         http://trac.enlightenment.org/e/changeset/71187
 gt;
 gt; Modified:
 gt;  trunk/elementary/src/lib/elm_gesture_layer.c
 gt;
 gt; Modified: trunk/elementary/src/lib/elm_gesture_layer.c
 gt; ===
 gt; --- trunk/elementary/src/lib/elm_gesture_layer.c        2012-05-17 
 04:05:26 UTC (rev 71186)
 gt; +++ trunk/elementary/src/lib/elm_gesture_layer.c        2012-05-17 
 04:39:40 UTC (rev 71187)
 gt; @@ -1185,6 +1185,7 @@
 gt;    Taps_Type *st = gesture-gt;data;
 gt;    Eina_List *l;
 gt;    Eina_List *pe_list;
 gt; +   if (!st || !st-gt;l) return EINA_FALSE;
 gt;    EINA_LIST_FOREACH(st-gt;l, l, pe_list)
 gt;      {
 gt;         if (eina_list_count(pe_list) != st-gt;n_taps_needed)
 gt;
 gt;
 gt; 
 --
 gt; Live Security Virtual Conference
 gt; Exclusive live event will cover all the ways today's security and
 gt; threat landscape has changed and how IT managers can respond. Discussions
 gt; will include endpoint security, mobile security and the latest in malware
 gt; threats. http://www.accelacomm.com/jaw/sfrnl04242012/114/50122263/
 gt; ___
 gt; enlightenment-svn mailing list
 gt; enlightenment-...@lists.sourceforge.net
 gt; https://lists.sourceforge.net/lists/listinfo/enlightenment-svn

 --
 Live Security Virtual Conference
 Exclusive live event will cover all the ways today's security and
 threat landscape has changed and how IT managers can respond. Discussions
 will include endpoint security, mobile security and the latest in malware
 threats. http://www.accelacomm.com/jaw/sfrnl04242012/114/50122263/
 ___
 enlightenment-devel mailing list
 enlightenment-devel@lists.sourceforge.net
 https://lists.sourceforge.net/lists/listinfo/enlightenment-devel


 --
 Live Security Virtual Conference
 Exclusive live event will cover all the ways today's security and
 threat landscape has changed and how IT managers can respond. Discussions
 will include endpoint security, mobile security and the latest in malware
 threats. http://www.accelacomm.com/jaw/sfrnl04242012/114/50122263/
 ___
 enlightenment-devel mailing list
 enlightenment-devel@lists.sourceforge.net
 https://lists.sourceforge.net/lists/listinfo/enlightenment-devel

--
Live Security Virtual Conference
Exclusive live event will cover all the ways today's security and 
threat landscape has changed and how IT managers can respond. Discussions 
will include endpoint security, mobile security and the latest in malware 
threats. http://www.accelacomm.com/jaw/sfrnl04242012/114/50122263/
___
enlightenment-devel mailing list
enlightenment-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/enlightenment-devel


Re: [E-devel] E SVN: hyoyoung trunk/elementary/src/lib

2012-05-17 Thread Hyoyoung Chang
well, !st checking is obvious redundancy.
anyway i applied your patch.
it's better to make segfault at near of fault.

thanks. in svn.

On Thu, May 17, 2012 at 7:49 PM, Kim Shinwoo kimcinoo@gmail.com wrote:
 Hey here it is... Thanks again.

 2012/5/17 Kim Shinwoo kimcinoo@gmail.com:
 um.. If the st is NULL, then st-l in EINA_LIST_FOREACH occurs
 segmentation fault..
 so.. checking NULL without return statement.. is meaningless..
 ok.. then I will send a patch again.

 Thanks for your response.

 2012/5/17 Kim Shinwoo kimcinoo@gmail.com:
 Actually, only st-l would be NULL not st.

 So,

  +   if (!st-l) return EINA_FALSE;

 is enough to me.

 Even though I'm not sure when the st is NULL, I cannot guarantee the
 st is always not NULL



 2012/5/17 ChunEon Park her...@naver.com:
 I wonder why st is NULL.


 I think we need to prevent to not go that function in advance, if the st 
 was invalid.


 
 -Regards, Hermet-


 -Original Message-
 From: Hyoyoung Changlt;hyoyo...@gmail.comgt;
 To: lt;enlightenment-devel@lists.sourceforge.netgt;;
 Cc:
 Sent: 2012-05-17 (목) 13:44:26
 Subject: Re: [E-devel] E SVN: hyoyoung trunk/elementary/src/lib

 Thanks, in svn - r71187

 On Thu, May 17, 2012 at 1:39 PM, Enlightenment SVN
 lt;no-replygt;@enlightenment.orggt; wrote:
 gt; Log:
 gt; elementary/gesture_layer: add to null check at 
 _tap_gesture_check_finish
 gt;
 gt;  Signed-off-by: Kim Shinwoo lt;kimcinoo.eflgt;@gmail.comgt;
 gt;
 gt;
 gt; Author:       hyoyoung
 gt; Date:         2012-05-16 21:39:40 -0700 (Wed, 16 May 2012)
 gt; New Revision: 71187
 gt; Trac:         http://trac.enlightenment.org/e/changeset/71187
 gt;
 gt; Modified:
 gt;  trunk/elementary/src/lib/elm_gesture_layer.c
 gt;
 gt; Modified: trunk/elementary/src/lib/elm_gesture_layer.c
 gt; ===
 gt; --- trunk/elementary/src/lib/elm_gesture_layer.c        2012-05-17 
 04:05:26 UTC (rev 71186)
 gt; +++ trunk/elementary/src/lib/elm_gesture_layer.c        2012-05-17 
 04:39:40 UTC (rev 71187)
 gt; @@ -1185,6 +1185,7 @@
 gt;    Taps_Type *st = gesture-gt;data;
 gt;    Eina_List *l;
 gt;    Eina_List *pe_list;
 gt; +   if (!st || !st-gt;l) return EINA_FALSE;
 gt;    EINA_LIST_FOREACH(st-gt;l, l, pe_list)
 gt;      {
 gt;         if (eina_list_count(pe_list) != st-gt;n_taps_needed)
 gt;
 gt;
 gt; 
 --
 gt; Live Security Virtual Conference
 gt; Exclusive live event will cover all the ways today's security and
 gt; threat landscape has changed and how IT managers can respond. 
 Discussions
 gt; will include endpoint security, mobile security and the latest in 
 malware
 gt; threats. http://www.accelacomm.com/jaw/sfrnl04242012/114/50122263/
 gt; ___
 gt; enlightenment-svn mailing list
 gt; enlightenment-...@lists.sourceforge.net
 gt; https://lists.sourceforge.net/lists/listinfo/enlightenment-svn

 --
 Live Security Virtual Conference
 Exclusive live event will cover all the ways today's security and
 threat landscape has changed and how IT managers can respond. Discussions
 will include endpoint security, mobile security and the latest in malware
 threats. http://www.accelacomm.com/jaw/sfrnl04242012/114/50122263/
 ___
 enlightenment-devel mailing list
 enlightenment-devel@lists.sourceforge.net
 https://lists.sourceforge.net/lists/listinfo/enlightenment-devel


 --
 Live Security Virtual Conference
 Exclusive live event will cover all the ways today's security and
 threat landscape has changed and how IT managers can respond. Discussions
 will include endpoint security, mobile security and the latest in malware
 threats. http://www.accelacomm.com/jaw/sfrnl04242012/114/50122263/
 ___
 enlightenment-devel mailing list
 enlightenment-devel@lists.sourceforge.net
 https://lists.sourceforge.net/lists/listinfo/enlightenment-devel

 --
 Live Security Virtual Conference
 Exclusive live event will cover all the ways today's security and
 threat landscape has changed and how IT managers can respond. Discussions
 will include endpoint security, mobile security and the latest in malware
 threats. http://www.accelacomm.com/jaw/sfrnl04242012/114/50122263/
 ___
 enlightenment-devel mailing list
 enlightenment-devel@lists.sourceforge.net
 https://lists.sourceforge.net/lists/listinfo/enlightenment-devel


--
Live Security Virtual Conference
Exclusive live event will cover all the ways today's security and 
threat landscape 

Re: [E-devel] E SVN: hyoyoung trunk/elementary/src/lib

2012-05-16 Thread Hyoyoung Chang
Thanks, in svn - r71187

On Thu, May 17, 2012 at 1:39 PM, Enlightenment SVN
no-re...@enlightenment.org wrote:
 Log:
 elementary/gesture_layer: add to null check at _tap_gesture_check_finish

  Signed-off-by: Kim Shinwoo kimcinoo@gmail.com


 Author:       hyoyoung
 Date:         2012-05-16 21:39:40 -0700 (Wed, 16 May 2012)
 New Revision: 71187
 Trac:         http://trac.enlightenment.org/e/changeset/71187

 Modified:
  trunk/elementary/src/lib/elm_gesture_layer.c

 Modified: trunk/elementary/src/lib/elm_gesture_layer.c
 ===
 --- trunk/elementary/src/lib/elm_gesture_layer.c        2012-05-17 04:05:26 
 UTC (rev 71186)
 +++ trunk/elementary/src/lib/elm_gesture_layer.c        2012-05-17 04:39:40 
 UTC (rev 71187)
 @@ -1185,6 +1185,7 @@
    Taps_Type *st = gesture-data;
    Eina_List *l;
    Eina_List *pe_list;
 +   if (!st || !st-l) return EINA_FALSE;
    EINA_LIST_FOREACH(st-l, l, pe_list)
      {
         if (eina_list_count(pe_list) != st-n_taps_needed)


 --
 Live Security Virtual Conference
 Exclusive live event will cover all the ways today's security and
 threat landscape has changed and how IT managers can respond. Discussions
 will include endpoint security, mobile security and the latest in malware
 threats. http://www.accelacomm.com/jaw/sfrnl04242012/114/50122263/
 ___
 enlightenment-svn mailing list
 enlightenment-...@lists.sourceforge.net
 https://lists.sourceforge.net/lists/listinfo/enlightenment-svn

--
Live Security Virtual Conference
Exclusive live event will cover all the ways today's security and 
threat landscape has changed and how IT managers can respond. Discussions 
will include endpoint security, mobile security and the latest in malware 
threats. http://www.accelacomm.com/jaw/sfrnl04242012/114/50122263/
___
enlightenment-devel mailing list
enlightenment-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/enlightenment-devel


Re: [E-devel] [Patch][elm_gesture_layer] handling NULL in _tap_gesture_check_finish()

2012-05-16 Thread Hyoyoung Chang
Thanks, in svn - r71187.

On Thu, May 17, 2012 at 10:14 AM, Kim Shinwoo kimcinoo@gmail.com wrote:
 Dear All, Hello.

 There is a case that the Eina_List l; of Taps_Type would be NULL in
 _tap_gesture_check_finish().
 If the below calls in the callback of gesture layer for
 ELM_GESTURE_N_DOUBLE_TAPS with ELM_GESTURE_STATE_END,
 then the callback for ELM_GESTURE_N_DOUBLE_TAPS with
 ELM_GESTURE_STATE_END is called once more because of the NULL.

 - below -
 static Evas_Event_Flags
 double_tap_end_cb(void *data, void *event_info)
 {
   ...
   evas_event_feed_mouse_move();
   evas_event_feed_mouse_down();
   evas_event_feed_mouse_up();
   ...
 }

 static void register_cbs()
 {
   ...
   elm_gesture_layer_cb_set(gesture, ELM_GESTURE_N_DOUBLE_TAPS,
 ELM_GESTURE_STATE_END, double_tap_end_cb, NULL);
   ...
 }

 Then, please review the patch and give any feedbacks. Thanks.

 Sincerely,
 Shinwoo Kim.

 --
 Live Security Virtual Conference
 Exclusive live event will cover all the ways today's security and
 threat landscape has changed and how IT managers can respond. Discussions
 will include endpoint security, mobile security and the latest in malware
 threats. http://www.accelacomm.com/jaw/sfrnl04242012/114/50122263/
 ___
 enlightenment-devel mailing list
 enlightenment-devel@lists.sourceforge.net
 https://lists.sourceforge.net/lists/listinfo/enlightenment-devel


--
Live Security Virtual Conference
Exclusive live event will cover all the ways today's security and 
threat landscape has changed and how IT managers can respond. Discussions 
will include endpoint security, mobile security and the latest in malware 
threats. http://www.accelacomm.com/jaw/sfrnl04242012/114/50122263/
___
enlightenment-devel mailing list
enlightenment-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/enlightenment-devel


Re: [E-devel] [Patch][elm_map] Add elm_map_overlays_get elm_map_overlay_visible_get

2012-05-14 Thread Hyoyoung Chang
It works well, and pretty nice feature.
diffs are good to me.

In _overlay_show(Elm_Map_Overlay *overlay),
there's many if statements. how about to change switch/case?

On Fri, May 4, 2012 at 2:29 PM, Bluezery ohpo...@gmail.com wrote:
 Dear EFL developers,

 I want to add 2 new APIs (elm_map_overlays_get  elm_map_overlay_visible_get).

 There are no way to get the group overlays because group overlay,
 something like virtual overlay, is created and deleted dynamically.
 So elm_map_overlays_get returns total overlay's list and user can get
 any type of overlays including group overlays.
 Overlays which is grouped can not be visible. Because overlay grouping
 is performed by elm_map, user do not know whether overlays are visible
 or not. So elm_map_overlay_visible_get is added for this reason.

 Thanks

 --
 BRs,
 Kim.

 --
 Live Security Virtual Conference
 Exclusive live event will cover all the ways today's security and
 threat landscape has changed and how IT managers can respond. Discussions
 will include endpoint security, mobile security and the latest in malware
 threats. http://www.accelacomm.com/jaw/sfrnl04242012/114/50122263/
 ___
 enlightenment-devel mailing list
 enlightenment-devel@lists.sourceforge.net
 https://lists.sourceforge.net/lists/listinfo/enlightenment-devel


--
Live Security Virtual Conference
Exclusive live event will cover all the ways today's security and 
threat landscape has changed and how IT managers can respond. Discussions 
will include endpoint security, mobile security and the latest in malware 
threats. http://www.accelacomm.com/jaw/sfrnl04242012/114/50122263/
___
enlightenment-devel mailing list
enlightenment-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/enlightenment-devel


Re: [E-devel] Celebrating elementary 1.0

2012-05-01 Thread Hyoyoung Chang
On Wed, May 2, 2012 at 1:39 PM, Jérôme Pinot ngc...@gmail.com wrote:
 On 04/20/12 20:11, Carsten Haitzler wrote:
 On Fri, 20 Apr 2012 20:05:19 +0900 Daniel Juyung Seo seojuyu...@gmail.com
 said:

  On Apr 20, 2012 7:46 PM, Jérôme Pinot ngc...@gmail.com wrote:
  
   On 04/20/12 13:57, Daniel Juyung Seo wrote:
Wow.. 10 years in Korea! That's great.
I've tried ePeriodique before :) But I didn't notice it supports Korean
  though.
Interesting. Did you translate that by yourself?
  
   Yes, but this was mostly lonely words, so it was not a big challenge :-)
 
  still great! ifound a typo about halogen though.

 :) my korean *IS* just typos. 치발! :)

Btw, the Korean User Group is not limited to foreigners.
It is just a blob of links about EFL information written in Korean.
We may open up a forum later but as of now we have links only.
   
Anyhow, it's great to know that you lived in Korean for 10 years.
  
   And I'm still here, mostly in Daejeon, sometimes in Seoul.
  
  wow that's a news! what do you do there?
  come to suwon and spank raster when you have time :)

 or come to seoul. i live in yongsan. maybe we should have regular monthly 
 e/efl
 dinners now we have more people spread out? if you're in seoul sometimes... 
 we
 might be able to arrange something.

 What about celebrating elementary 1.0.0 next sunday in Seoul?
 Who might be interested by drinking some beer after all the effort?
Great idea! i would like to join celebrating elm 1.0.0.
Also OpenBSD 5.1 released. :P

 I'll be in Seoul for some irrelevant french presidential election...

 --
 Jérôme Pinot
 http://ngc891.blogdns.net/

 --
 Live Security Virtual Conference
 Exclusive live event will cover all the ways today's security and
 threat landscape has changed and how IT managers can respond. Discussions
 will include endpoint security, mobile security and the latest in malware
 threats. http://www.accelacomm.com/jaw/sfrnl04242012/114/50122263/
 ___
 enlightenment-devel mailing list
 enlightenment-devel@lists.sourceforge.net
 https://lists.sourceforge.net/lists/listinfo/enlightenment-devel


--
Live Security Virtual Conference
Exclusive live event will cover all the ways today's security and 
threat landscape has changed and how IT managers can respond. Discussions 
will include endpoint security, mobile security and the latest in malware 
threats. http://www.accelacomm.com/jaw/sfrnl04242012/114/50122263/
___
enlightenment-devel mailing list
enlightenment-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/enlightenment-devel


Re: [E-devel] [Patch] elm_diskselector, set icon to added item

2012-04-27 Thread Hyoyoung Chang
On Fri, Apr 27, 2012 at 3:55 PM, cnook kimci...@gmail.com wrote:
 Dear all, hello.

 I have tried to use the map with the diskselector.
 The attached patch is just draft version for using map.

Is it really draft version? imho, it's too good to be initial version.
i just found few points which can be improved.

1.
 + if (map == NULL) return EINA_FALSE
  -   if (!map)

2. indentation near about evas_map_smooth_set()

3. as you said, effects can be more tailored.


 BUT.. just remind the Raster's comment at least it can retain its api...
 I removed number of letters feature.. when I had changed the diskselector...
 So.. even though an item of diskselector moves right or left side.. the
 item will keep its number of letters..
 means... elm_diskselector_side_text_max_length_set does not work..
 anyhow.. this is the draft version.. I would like to check that the map is
 used properly..  as the Raster's recommends it really needs to use map


 Please review the attached patch. Thanks.

 Sincerely,
 Shinwoo Kim.


 2011/10/10 Carsten Haitzler ras...@rasterman.com

 On Mon, 10 Oct 2011 22:45:56 +0900 Daniel Juyung Seo seojuyu...@gmail.com
 
 said:

 at least it can retain its api. :)

  Wow this sounds like diskselector needs to be rewritten a lot.
 
  Daniel Juyung Seo (SeoZ)
 
  On Mon, Oct 10, 2011 at 6:45 PM, Carsten Haitzler ras...@rasterman.com
  wrote:
   On Thu, 22 Sep 2011 18:39:53 +0900 cnook kimci...@gmail.com said:
  
   Dear All, Hello!
  
   If the diskselector is round mode, the scroller of diskselector has
   additional items for its rounding(carousel) effect.
   Previously, elm_diskselector_item_icon_set(); did not care about
   theses additional items.
   Please review the attached patch that will care. Thanks.
  
   hmm ok - in svn. not giving this a lot of review. i was reviewing
   diskselector about a week ago or so and realized.. this widget needs a
   major overhaul in internal design and implementation. to implement a
   rounded disk - it really needs to use map, and even then the amount of
   rounding or if any at all should be configurable. it should almost
   definitely implement this with a pan smart like genlist does to allow
 for a
   virtual pan area (we can make it almost infinite - well make it just
 very
   very very very large) and based on position int he virtual pan,
 position
   children (really just use a box with map used to duplicate it on the
 curved
   or visibile area).
  
   --
   - Codito, ergo sum - I code, therefore I am
 --
   The Rasterman (Carsten Haitzler)    ras...@rasterman.com
  
  
  
 --
   All the data continuously generated in your IT infrastructure contains
 a
   definitive record of customers, application performance, security
   threats, fraudulent activity and more. Splunk takes this data and makes
   sense of it. Business sense. IT sense. Common sense.
   http://p.sf.net/sfu/splunk-d2dcopy1
   ___
   enlightenment-devel mailing list
   enlightenment-devel@lists.sourceforge.net
   https://lists.sourceforge.net/lists/listinfo/enlightenment-devel
  
 
 
 --
  All the data continuously generated in your IT infrastructure contains a
  definitive record of customers, application performance, security
  threats, fraudulent activity and more. Splunk takes this data and makes
  sense of it. Business sense. IT sense. Common sense.
  http://p.sf.net/sfu/splunk-d2dcopy1
  ___
  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



 --
 Live Security Virtual Conference
 Exclusive live event will cover all the ways today's security and
 threat landscape has changed and how IT managers can respond. Discussions
 will include endpoint security, mobile security and the latest in malware
 threats. http://www.accelacomm.com/jaw/sfrnl04242012/114/50122263/
 ___
 enlightenment-devel mailing list
 enlightenment-devel@lists.sourceforge.net
 https://lists.sourceforge.net/lists/listinfo/enlightenment-devel


--
Live Security Virtual Conference
Exclusive live event will cover all the ways today's security and 
threat landscape has changed and how IT managers can respond. Discussions 
will include endpoint security, mobile security and the latest in malware 
threats. http://www.accelacomm.com/jaw/sfrnl04242012/114/50122263/
___

Re: [E-devel] [e-users] New EFL release cycle 1.0/1.2/1.6

2012-04-25 Thread Hyoyoung Chang
On Thu, Apr 26, 2012 at 2:07 PM, Michael Blumenkrantz
michael.blumenkra...@gmail.com wrote:
 On Thu, 26 Apr 2012 14:04:37 +0900
 Carsten Haitzler (The Rasterman) ras...@rasterman.com wrote:

 On Thu, 26 Apr 2012 14:02:26 +0900 Daniel Juyung Seo seojuyu...@gmail.com
 said:

  yay! keep rocking.
  this is gonna be a memorial dot in the history :)

 a small dot... we need to do e17 now... :) bigger dot! :)

  On Apr 26, 2012 1:53 PM, Carsten Haitzler ras...@rasterman.com wrote:
 
   We'd like to announce a new release of several Enlightenment components.
   This round we have added Eio, Ethumb, Emotion and Elementary. Please
   read the NEWS and README files in each release tarball for information
   on what has changed, fixed or added. This release also corresponds with
   SVN revision number 70490.
  
   Emotion is a library to handle video playback using Gstreamer, Xine or
   other
   external plugins (VLC) and display video in Evas as a standard object. It
   also
   can handle audio playback too. Eio is here to support Emotion with async
   IO API's.
  
   Ethumb is a thumbnail generator library that supports the freedesktop.org
   thumbnailing standards, and is implemented as a dbus service and a
   client-side
   library that handles dealing with that service for you.
  
   Elementary is our new widget set, built on top of the rest of EFL, to
   provide
   you with standard widgets and behaviour to make it easy to write GUI
   applications.
  
   Eina 1.2.0 -
   http://download.enlightenment.org/releases/eina-1.2.0.tar.gz
   http://download.enlightenment.org/releases/eina-1.2.0.tar.bz2
  
   Eet 1.6.0 -
   http://download.enlightenment.org/releases/eet-1.6.0.tar.gz
   http://download.enlightenment.org/releases/eet-1.6.0.tar.bz2
  
   Evas 1.2.0 -
   http://download.enlightenment.org/releases/evas-1.2.0.tar.gz
   http://download.enlightenment.org/releases/evas-1.2.0.tar.bz2
  
   Ecore 1.2.0 -
   http://download.enlightenment.org/releases/ecore-1.2.0.tar.gz
   http://download.enlightenment.org/releases/ecore-1.2.0.tar.bz2
  
   Embryo 1.2.0 -
   http://download.enlightenment.org/releases/embryo-1.2.0.tar.gz
   http://download.enlightenment.org/releases/embryo-1.2.0.tar.bz2
  
   Edje 1.2.0 -
   http://download.enlightenment.org/releases/edje-1.2.0.tar.gz
   http://download.enlightenment.org/releases/edje-1.2.0.tar.bz2
  
   Efreet 1.2.0 -
   http://download.enlightenment.org/releases/efreet-1.2.0.tar.gz
   http://download.enlightenment.org/releases/efreet-1.2.0.tar.bz2
  
   E_dbus 1.2.0 -
   http://download.enlightenment.org/releases/e_dbus-1.2.0.tar.gz
   http://download.enlightenment.org/releases/e_dbus-1.2.0.tar.bz2
  
   Eeze 1.2.0 -
   http://download.enlightenment.org/releases/eeze-1.2.0.tar.gz
   http://download.enlightenment.org/releases/eeze-1.2.0.tar.bz2
  
   Expedite 1.2.0 -
   http://download.enlightenment.org/releases/expedite-1.2.0.tar.gz
   http://download.enlightenment.org/releases/expedite-1.2.0.tar.bz2
  
   Evas Generic Loaders 1.2.0 -
  
   http://download.enlightenment.org/releases/evas_generic_loaders-1.2.0.tar.gz
  
   http://download.enlightenment.org/releases/evas_generic_loaders-1.2.0.tar.bz2
  
   Eio 1.0.0 -
   http://download.enlightenment.org/releases/eio-1.0.0.tar.gz
   http://download.enlightenment.org/releases/eio-1.0.0.tar.bz2
  
   Emotion 1.0.0 -
   http://download.enlightenment.org/releases/emotion-1.0.0.tar.gz
   http://download.enlightenment.org/releases/emotion-1.0.0.tar.bz2
  
   Ethumb 1.0.0 -
   http://download.enlightenment.org/releases/ethumb-1.0.0.tar.gz
   http://download.enlightenment.org/releases/ethumb-1.0.0.tar.bz2
  
   Elementary 1.0.0 -
   http://download.enlightenment.org/releases/elementary-1.0.0.tar.gz
   http://download.enlightenment.org/releases/elementary-1.0.0.tar.bz2
  
  
   --
   - Codito, ergo sum - I code, therefore I am --
   The Rasterman (Carsten Haitzler)    ras...@rasterman.com
  
  


 oh goody, now we can break things again.

 BLUE BORKER REPORTING FOR DUTY

yay. go for bigger dot.
and it's good time to break. ;)


 --
 Live Security Virtual Conference
 Exclusive live event will cover all the ways today's security and
 threat landscape has changed and how IT managers can respond. Discussions
 will include endpoint security, mobile security and the latest in malware
 threats. http://www.accelacomm.com/jaw/sfrnl04242012/114/50122263/
 ___
 enlightenment-devel mailing list
 enlightenment-devel@lists.sourceforge.net
 https://lists.sourceforge.net/lists/listinfo/enlightenment-devel

--
Live Security Virtual Conference
Exclusive live event will cover all the ways today's security and 
threat landscape has changed and how IT managers can respond. Discussions 
will include endpoint security, mobile security and the 

Re: [E-devel] efl release 24hr countdown

2012-04-24 Thread Hyoyoung Chang
Pass me elm bugs, I'll keep it for the next commiter :P
anyway i'll check elm bugs in trac.
i think it's better to clean trac issues in 24 hours.

On Tue, Apr 24, 2012 at 4:01 PM, Daniel Juyung Seo seojuyu...@gmail.com wrote:
 Report the bugs
 Hyoyoung, a new commiter, will fix them :)

 Daniel Juyung Seo (SeoZ)

 On Tue, Apr 24, 2012 at 3:56 PM, Michael Blumenkrantz
 michael.blumenkra...@gmail.com wrote:
 On Tue, 24 Apr 2012 15:47:11 +0900
 Carsten Haitzler (The Rasterman) ras...@rasterman.com wrote:

 ok - my plans are to push out a release about 24hrs from now... anyone got
 bugs.. report.. and FIX!. :)


 http://30.media.tumblr.com/tumblr_m1dah4cJBT1rrju89o1_500.jpg

 --
 Live Security Virtual Conference
 Exclusive live event will cover all the ways today's security and
 threat landscape has changed and how IT managers can respond. Discussions
 will include endpoint security, mobile security and the latest in malware
 threats. http://www.accelacomm.com/jaw/sfrnl04242012/114/50122263/
 ___
 enlightenment-devel mailing list
 enlightenment-devel@lists.sourceforge.net
 https://lists.sourceforge.net/lists/listinfo/enlightenment-devel

 --
 Live Security Virtual Conference
 Exclusive live event will cover all the ways today's security and
 threat landscape has changed and how IT managers can respond. Discussions
 will include endpoint security, mobile security and the latest in malware
 threats. http://www.accelacomm.com/jaw/sfrnl04242012/114/50122263/
 ___
 enlightenment-devel mailing list
 enlightenment-devel@lists.sourceforge.net
 https://lists.sourceforge.net/lists/listinfo/enlightenment-devel

--
Live Security Virtual Conference
Exclusive live event will cover all the ways today's security and 
threat landscape has changed and how IT managers can respond. Discussions 
will include endpoint security, mobile security and the latest in malware 
threats. http://www.accelacomm.com/jaw/sfrnl04242012/114/50122263/
___
enlightenment-devel mailing list
enlightenment-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/enlightenment-devel


Re: [E-devel] SVN access recommendation for Hyoyoung Chang

2012-04-23 Thread Hyoyoung Chang
Thanks for recommendation.
It's honor to me. ;P
I have been benefited from E and other open sources.
I'm happy to contribute.

Thank you guys.

On Tue, Apr 24, 2012 at 11:30 AM, woohyun woo_hyun0...@naver.com wrote:
 Oh! hyyoung ~ welcome !!
 amp; Congratulation ~~~ !!!
 :)




 -Original Message-
 From: Daniel Juyung Seolt;seojuyu...@gmail.comgt;
 To: Carsten Haitzlerlt;ras...@rasterman.comgt;;
 Cc: Enlightenment developer 
 listlt;enlightenment-devel@lists.sourceforge.netgt;;
 Sent: 2012-04-24 (화) 11:25:27
 Subject: Re: [E-devel] SVN access recommendation for Hyoyoung Chang

 In SVN!
 I've seen many people left the community after becoming committers. So
 only for those who have been working over  some period is worthy of
 svn access. I think hyoyoung has enough reason.
 Anyhow hyoyoung, please keep in mind I mentioned in the previous email.
 Waiting for your good commits :)
 Thanks.


 Daniel Juyung Seo (SeoZ)

 On Fri, Apr 20, 2012 at 9:55 PM, Carsten Haitzler 
 lt;rastergt;@rasterman.comgt; wrote:
 gt; On Fri, 20 Apr 2012 17:39:45 +0900 Daniel Juyung Seo 
 lt;seojuyung2gt;@gmail.comgt;
 gt; said:
 gt;
 gt; i would agree with all the below. just one added note. NEVER commit 
 unless u
 gt; will stay around for the next 2-3 hrs after it and be around online. no
 gt; committing friday night and then immediately and then going and getting 
 drunk :)
 gt;
 gt;gt; Dear all, this is Daniel Juyung Seo.
 gt;gt;
 gt;gt; I recommend Hyoyoung to have a SVN commit access.
 gt;gt; As many of you know, he has been heavily working for elementary so 
 far.
 gt;gt; If I remember correctly, he has been sent over a hundred patches.
 gt;gt; And because I think he did enough contribution and it's ok to give 
 him
 gt;gt; svn access, I recommend him as a committer.
 gt;gt; If there is no super big objection, I'll add his account in a couple 
 of days.
 gt;gt; But Hyoyoung, remember once you have svn access you need to be more
 gt;gt; careful about your code.
 gt;gt;
 gt;gt; Thanks.
 gt;gt;
 gt;gt; Daniel Juyung Seo (SeoZ)
 gt;gt;
 gt;gt; 
 --
 gt;gt; For Developers, A Lot Can Happen In A Second.
 gt;gt; Boundary is the first to Know...and Tell You.
 gt;gt; Monitor Your Applications in Ultra-Fine Resolution. Try it FREE!
 gt;gt; http://p.sf.net/sfu/Boundary-d2dvs2
 gt;gt; ___
 gt;gt; enlightenment-devel mailing list
 gt;gt; enlightenment-devel@lists.sourceforge.net
 gt;gt; https://lists.sourceforge.net/lists/listinfo/enlightenment-devel
 gt;gt;
 gt;
 gt;
 gt; --
 gt; - Codito, ergo sum - I code, therefore I am --
 gt; The Rasterman (Carsten Haitzler)    ras...@rasterman.com
 gt;

 --
 Live Security Virtual Conference
 Exclusive live event will cover all the ways today's security and
 threat landscape has changed and how IT managers can respond. Discussions
 will include endpoint security, mobile security and the latest in malware
 threats. http://www.accelacomm.com/jaw/sfrnl04242012/114/50122263/
 ___
 enlightenment-devel mailing list
 enlightenment-devel@lists.sourceforge.net
 https://lists.sourceforge.net/lists/listinfo/enlightenment-devel


 --
 Live Security Virtual Conference
 Exclusive live event will cover all the ways today's security and
 threat landscape has changed and how IT managers can respond. Discussions
 will include endpoint security, mobile security and the latest in malware
 threats. http://www.accelacomm.com/jaw/sfrnl04242012/114/50122263/
 ___
 enlightenment-devel mailing list
 enlightenment-devel@lists.sourceforge.net
 https://lists.sourceforge.net/lists/listinfo/enlightenment-devel

--
Live Security Virtual Conference
Exclusive live event will cover all the ways today's security and 
threat landscape has changed and how IT managers can respond. Discussions 
will include endpoint security, mobile security and the latest in malware 
threats. http://www.accelacomm.com/jaw/sfrnl04242012/114/50122263/
___
enlightenment-devel mailing list
enlightenment-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/enlightenment-devel


[E-devel] [patch] elm_genlist - bugfix remained selection in decorate all mode

2012-04-20 Thread Hyoyoung Chang
Dear all,

I made a small patch to fix remained selection bug.
In decorate all mode, some item selection is not cleared after unset
decorate all mode.
I added to fix it.
And make unselecting common routine to a internal function.

Thanks.
Index: elementary/src/lib/elm_genlist.c
===
--- elementary/src/lib/elm_genlist.c(리비전 70346)
+++ elementary/src/lib/elm_genlist.c(작업 사본)
@@ -4208,6 +4208,27 @@
evas_object_smart_callback_call(WIDGET(it), SIG_MOVED_BEFORE, it);
 }
 
+static void
+_unselect_previous_selected_items(Widget_Data *wd)
+{
+   if (!wd) return;
+
+   Eina_List *l;
+   Elm_Object_Item *it;
+   if (wd-multi)
+ {
+EINA_LIST_FOREACH(wd-selected, l, it)
+  if (((Elm_Gen_Item *)it)-realized)
+elm_genlist_item_selected_set(it, EINA_FALSE);
+ }
+   else
+ {
+it = elm_genlist_selected_item_get(wd-obj);
+if ((it)  (((Elm_Gen_Item *)it)-realized))
+  elm_genlist_item_selected_set(it, EINA_FALSE);
+ }
+}
+
 EAPI unsigned int
 elm_genlist_items_count(const Evas_Object *obj)
 {
@@ -5458,8 +5479,6 @@
Elm_Gen_Item *_it = (Elm_Gen_Item *)it;
 
Widget_Data *wd = _it-wd;
-   Eina_List *l;
-   Elm_Object_Item *it2;
 
if (!wd) return;
if (!decorate_it_type) return;
@@ -5474,18 +5493,7 @@
if (!_it-itc-decorate_item_style) return;
_it-decorate_it_set = decorate_it_set;
 
-   if (wd-multi)
- {
-EINA_LIST_FOREACH(wd-selected, l, it2)
-  if (((Elm_Gen_Item *)it2)-realized)
-elm_genlist_item_selected_set(it2, EINA_FALSE);
- }
-   else
- {
-it2 = elm_genlist_selected_item_get(wd-obj);
-if ((it2)  (((Elm_Gen_Item *)it2)-realized))
-  elm_genlist_item_selected_set(it2, EINA_FALSE);
- }
+   _unselect_previous_selected_items(wd);
 
if (((wd-decorate_it_type)  (strcmp(decorate_it_type, 
wd-decorate_it_type))) ||
(decorate_it_set) || ((_it == wd-mode_item)  (!decorate_it_set)))
@@ -5538,6 +5546,7 @@
list = elm_genlist_realized_items_get(obj);
if (!wd-decorate_all_mode)
  {
+_unselect_previous_selected_items(wd);
 EINA_LIST_FOREACH(list, l, it)
   {
  if (it-item-type != ELM_GENLIST_ITEM_GROUP)
@@ -5551,7 +5560,6 @@
   {
  if (it-item-type != ELM_GENLIST_ITEM_GROUP)
{
-  if (it-selected) _item_unselect(it);
   if (it-itc-decorate_all_item_style)
  _decorate_all_item_realize(it, EINA_TRUE);
}
--
For Developers, A Lot Can Happen In A Second.
Boundary is the first to Know...and Tell You.
Monitor Your Applications in Ultra-Fine Resolution. Try it FREE!
http://p.sf.net/sfu/Boundary-d2dvs2___
enlightenment-devel mailing list
enlightenment-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/enlightenment-devel


[E-devel] [patch] elm_genlist - bugfix abnormal exit in gengrid

2012-04-20 Thread Hyoyoung Chang
Dear all,

After introduced flipped mode to genlist, some clearing process is
added to _elm_genlist_item_unrealize.
In item _elm_genlist_item_unrealize, item is casting to gengrid item
or genlist item.
segfault is occurred in _elm_genlist_item_unrealize at using gengrid.
this patch moves flipped mode clearing process to _item_realize_cb.

Thanks.
Index: elementary/src/lib/elm_genlist.c
===
--- elementary/src/lib/elm_genlist.c(리비전 70346)
+++ elementary/src/lib/elm_genlist.c(작업 사본)
@@ -2253,6 +2253,12 @@ _item_realize(Elm_Gen_Item *it,
 static void
 _item_unrealize_cb(Elm_Gen_Item *it)
 {
+   Evas_Object *content;
+   elm_widget_stringlist_free(it-item-flip_contents);
+   it-item-flip_contents = NULL;
+   EINA_LIST_FREE(it-item-flip_content_objs, content)
+ evas_object_del(content);
+
if (it-item-nocache_once || it-item-nocache)
  {
 evas_object_del(VIEW(it));
@@ -5877,11 +5883,6 @@ _elm_genlist_item_unrealize(Elm_Gen_Item *it,
EINA_LIST_FREE(it-content_objs, content)
  evas_object_del(content);
 
-   elm_widget_stringlist_free(it-item-flip_contents);
-   it-item-flip_contents = NULL;
-   EINA_LIST_FREE(it-item-flip_content_objs, content)
- evas_object_del(content);
-
it-unrealize_cb(it);
 
it-realized = EINA_FALSE;
--
For Developers, A Lot Can Happen In A Second.
Boundary is the first to Know...and Tell You.
Monitor Your Applications in Ultra-Fine Resolution. Try it FREE!
http://p.sf.net/sfu/Boundary-d2dvs2___
enlightenment-devel mailing list
enlightenment-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/enlightenment-devel


Re: [E-devel] [patch] elm_genlist - bugfix remained selection in decorate all mode

2012-04-20 Thread Hyoyoung Chang
After discuss with seoz, i changed to not clean selections also i
removed the new added internal func.

Thanks

On Fri, Apr 20, 2012 at 4:00 PM, Hyoyoung Chang hyoyo...@gmail.com wrote:
 Dear all,

 I made a small patch to fix remained selection bug.
 In decorate all mode, some item selection is not cleared after unset
 decorate all mode.
 I added to fix it.
 And make unselecting common routine to a internal function.

 Thanks.
Index: elementary/src/lib/elm_genlist.c
===
--- elementary/src/lib/elm_genlist.c(리비전 70351)
+++ elementary/src/lib/elm_genlist.c(작업 사본)
@@ -3437,6 +3437,8 @@ _decorate_all_item_realize(Elm_Gen_Item *it, Eina_
_decorate_all_item_position(it, it-item-scrl_x, it-item-scrl_y);
evas_object_show(it-deco_all_view);
 
+   if (it-selected) edje_object_signal_emit(it-deco_all_view, 
elm,state,selected, elm);
+
it-item-decorate_all_item_realized = EINA_TRUE;
it-want_unrealize = EINA_FALSE;
 }
@@ -5551,7 +5553,6 @@ elm_genlist_decorate_mode_set(Evas_Object *obj, Ei
   {
  if (it-item-type != ELM_GENLIST_ITEM_GROUP)
{
-  if (it-selected) _item_unselect(it);
   if (it-itc-decorate_all_item_style)
  _decorate_all_item_realize(it, EINA_TRUE);
}
--
For Developers, A Lot Can Happen In A Second.
Boundary is the first to Know...and Tell You.
Monitor Your Applications in Ultra-Fine Resolution. Try it FREE!
http://p.sf.net/sfu/Boundary-d2dvs2___
enlightenment-devel mailing list
enlightenment-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/enlightenment-devel


Re: [E-devel] Introducing EFL Korean User Group

2012-04-19 Thread Hyoyoung Chang
I think it's not about nationality. just language. isn't it, guys?

On Fri, Apr 20, 2012 at 11:29 AM, Jérôme Pinot ngc...@gmail.com wrote:
 On 04/19/12 16:21, Daniel Juyung Seo wrote:
 Dear all, this is Daniel Juyung Seo.
 I introduce EFL Korean User Group,
 http://efl.or.kr

 This group is not a big community or whatever as of now. It's a place
 to hold all Korean EFL materials together.
 The reason why we created this is that it is very hard to find Korean
 information for EFL and all the information is spread.
 And I've been asked about Korean EFL material from many people.

 I and Hermet created this group and Woohyun will join us soon :)
 \I encourage any Korean to join this group and share your EFL blog
 posts with us.
 Basically many of the contents are linked to my blog now and Hermet's
 blog is also linked.

 Thank you very much.

 Is this group only for korean people?
 I'm not korean but after 10 years living in South Korea, maybe a little
 bit :-)
 BTW, one of my efl project, ePeriodique, is translated into korean.

 --
 Jérôme Pinot
 http://ngc891.blogdns.net/

 --
 For Developers, A Lot Can Happen In A Second.
 Boundary is the first to Know...and Tell You.
 Monitor Your Applications in Ultra-Fine Resolution. Try it FREE!
 http://p.sf.net/sfu/Boundary-d2dvs2
 ___
 enlightenment-devel mailing list
 enlightenment-devel@lists.sourceforge.net
 https://lists.sourceforge.net/lists/listinfo/enlightenment-devel


--
For Developers, A Lot Can Happen In A Second.
Boundary is the first to Know...and Tell You.
Monitor Your Applications in Ultra-Fine Resolution. Try it FREE!
http://p.sf.net/sfu/Boundary-d2dvs2
___
enlightenment-devel mailing list
enlightenment-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/enlightenment-devel


[E-devel] [patch] elm_genlist - bugfix at item flipped

2012-04-18 Thread Hyoyoung Chang
Dear all

I made a small patch about item flipped.
It resolves two bugs

1. flip_set and unset is called quickly, sometimes genlist can't free
flipped data.
it fixed to remove checking flipped status in item unrealize

2. add item unhighlight at flip_job

Thanks.


gl_flip_bugfix.txt.diff
Description: Binary data
--
Better than sec? Nothing is better than sec when it comes to
monitoring Big Data applications. Try Boundary one-second 
resolution app monitoring today. Free.
http://p.sf.net/sfu/Boundary-dev2dev___
enlightenment-devel mailing list
enlightenment-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/enlightenment-devel


Re: [E-devel] question about elm_cnp_selection_set in elm_cnp

2012-04-13 Thread Hyoyoung Chang
On Fri, Apr 13, 2012 at 5:53 PM, ChunEon Park her...@naver.com wrote:
 Ah! yes. it's for image format.
 But if it is a buffer for image then why does it have one more space?
 just curious.

It's not really needed. just addition 1. i think it can be removed




 

 -Regards, Hermet-




 -Original Message-
 From: Hyoyoung Changlt;hyoyo...@gmail.comgt;
 To: Enlightenment developer 
 listlt;enlightenment-devel@lists.sourceforge.netgt;;
 Cc:
 Sent: 2012-04-13 (금) 14:51:33
 Subject: Re: [E-devel] question about elm_cnp_selection_set in elm_cnp

 it's image type. that means some null char can be contained in the buffer.
 it's not char string so its not need to null terminated.

 On Fri, Apr 13, 2012 at 2:01 PM, Minseok Kim 
 lt;minseok3.kimgt;@samsung.comgt; wrote:
 gt; I have a question.
 gt;
 gt; elm_cnp.c : 418
 gt; 
 
 gt; ---
 gt;
 gt;        if (format == ELM_SEL_FORMAT_IMAGE)
 gt;          {
 gt;             sel-gt;selbuf = malloc(buflen+1);
 gt;             memcpy(sel-gt;selbuf, selbuf, buflen);
 gt;          }
 gt;
 gt; 
 
 gt; ---
 gt;
 gt; This code allocates buffer with 'buflen+1' and copy.
 gt; But there is no code to add last '\0' character.
 gt;
 gt; Is there no problem?
 gt; I think it need to set last '\0' character(or need to use calloc)
 gt;
 gt; Please answer me.
 gt;
 gt; Thanks.
 gt;
 gt;
 gt; 
 --
 gt; For Developers, A Lot Can Happen In A Second.
 gt; Boundary is the first to Know...and Tell You.
 gt; Monitor Your Applications in Ultra-Fine Resolution. Try it FREE!
 gt; http://p.sf.net/sfu/Boundary-d2dvs2
 gt; ___
 gt; enlightenment-devel mailing list
 gt; enlightenment-devel@lists.sourceforge.net
 gt; https://lists.sourceforge.net/lists/listinfo/enlightenment-devel

 --
 For Developers, A Lot Can Happen In A Second.
 Boundary is the first to Know...and Tell You.
 Monitor Your Applications in Ultra-Fine Resolution. Try it FREE!
 http://p.sf.net/sfu/Boundary-d2dvs2
 ___
 enlightenment-devel mailing list
 enlightenment-devel@lists.sourceforge.net
 https://lists.sourceforge.net/lists/listinfo/enlightenment-devel


 --
 For Developers, A Lot Can Happen In A Second.
 Boundary is the first to Know...and Tell You.
 Monitor Your Applications in Ultra-Fine Resolution. Try it FREE!
 http://p.sf.net/sfu/Boundary-d2dvs2
 ___
 enlightenment-devel mailing list
 enlightenment-devel@lists.sourceforge.net
 https://lists.sourceforge.net/lists/listinfo/enlightenment-devel

--
For Developers, A Lot Can Happen In A Second.
Boundary is the first to Know...and Tell You.
Monitor Your Applications in Ultra-Fine Resolution. Try it FREE!
http://p.sf.net/sfu/Boundary-d2dvs2
___
enlightenment-devel mailing list
enlightenment-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/enlightenment-devel


Re: [E-devel] [Patch][Ecore][Win32] Checking control character

2012-04-13 Thread Hyoyoung Chang
I have a question.
is there any need to double check to VK_CONTROL?

On Fri, Apr 13, 2012 at 6:15 PM, cnook kimci...@gmail.com wrote:
 Dear All, Hello.

 The control characters are generated by holding down the Control key while
 you strike another letter or symbol key.
 Because of this reason, The Evas_Event_Key_Down in the
 EVAS_CALLBACK_KEY_DOWN callback does not have proper keyname.
 So I have shifted the control character to printing character. Please
 review the patch and give any feedbacks. Thanks.

 Sincerely,
 Shinwoo Kim.

 --
 For Developers, A Lot Can Happen In A Second.
 Boundary is the first to Know...and Tell You.
 Monitor Your Applications in Ultra-Fine Resolution. Try it FREE!
 http://p.sf.net/sfu/Boundary-d2dvs2
 ___
 enlightenment-devel mailing list
 enlightenment-devel@lists.sourceforge.net
 https://lists.sourceforge.net/lists/listinfo/enlightenment-devel


--
For Developers, A Lot Can Happen In A Second.
Boundary is the first to Know...and Tell You.
Monitor Your Applications in Ultra-Fine Resolution. Try it FREE!
http://p.sf.net/sfu/Boundary-d2dvs2
___
enlightenment-devel mailing list
enlightenment-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/enlightenment-devel


Re: [E-devel] E SVN: seoz trunk/elementary/src/lib

2012-04-12 Thread Hyoyoung Chang
How about to add that printing warning in elm_widget?

On Thu, Apr 12, 2012 at 9:11 PM, Daniel Juyung Seo seojuyu...@gmail.com wrote:
 You are right. We need to document this.
 But this is also a notice for the e-dev. If there is no sign like this
 someone will add setter again some time later without noticing why it
 does not exist.
 Anyhow, I will document this.
 Thanks!

 Daniel Juyung Seo (SeoZ)

 On Thu, Apr 12, 2012 at 8:29 PM, ChunEon Park her...@naver.com wrote:


 If you does not support those callbacks, then they does not need to be 
 registered.
 I think it's enough to update the document only.



 

 -Regards, Hermet-



 -Original Message-
 From: Enlightenment SVNlt;no-re...@enlightenment.orggt;
 To: lt;enlightenment-...@lists.sourceforge.netgt;;
 Cc:
 Sent: 2012-04-12 (목) 16:14:21
 Subject: E SVN: seoz trunk/elementary/src/lib

 Log:
 elm genlist: genlist/gengrid do not support 
 elm_object_item_part_text/content_set/unset. Use normal callback systems.

 Author:       seoz
 Date:         2012-04-12 00:14:21 -0700 (Thu, 12 Apr 2012)
 New Revision: 70122
 Trac:         http://trac.enlightenment.org/e/changeset/70122

 Modified:
  trunk/elementary/src/lib/elm_genlist.c

 Modified: trunk/elementary/src/lib/elm_genlist.c
 ===
 --- trunk/elementary/src/lib/elm_genlist.c      2012-04-12 07:14:15 UTC (rev 
 70121)
 +++ trunk/elementary/src/lib/elm_genlist.c      2012-04-12 07:14:21 UTC (rev 
 70122)
 @@ -3638,29 +3638,21 @@
  }

  static void
 -_item_content_set_hook(Elm_Gen_Item *it, const char *part, Evas_Object 
 *content)
 +_item_content_set_hook(Elm_Gen_Item *it __UNUSED__,
 +                       const char   *part __UNUSED__,
 +                       Evas_Object  *content __UNUSED__)
  {
 -   Evas_Object *prev_obj;
 -
 -   if (content amp;amp; part)
 -     {
 -        if (eina_list_data_find(it-gt;content_objs, content)) return;
 -        prev_obj = _item_content_unset_hook(it, part);
 -        if (prev_obj) evas_object_del(prev_obj);
 -        it-gt;content_objs = eina_list_append(it-gt;content_objs, 
 content);
 -        edje_object_part_swallow(VIEW(it), part, content);
 -     }
 +   WRN(genlist/gengrid do not support elm_object_item_part_content_set.\n
 +       Use normal genlist/gengrid content_get callback model.);
  }

  static Evas_Object *
 -_item_content_unset_hook(Elm_Gen_Item *it, const char *part)
 +_item_content_unset_hook(Elm_Gen_Item *it __UNUSED__,
 +                         const char   *part __UNUSED__)
  {
 -   Evas_Object *obj;
 -   obj = edje_object_part_swallow_get(VIEW(it), part);
 -   if (!obj) return NULL;
 -   it-gt;content_objs = eina_list_remove(it-gt;content_objs, obj);
 -   edje_object_part_unswallow(VIEW(it), obj);
 -   return obj;
 +   WRN(genlist/gengrid do not support elm_object_item_part_content_set.\n
 +       Use normal genlist/gengrid content_get callback model.);
 +   return NULL;
  }

  static const char *
 @@ -3671,6 +3663,15 @@
  }

  static void
 +_item_text_set_hook(Elm_Object_Item *it __UNUSED__,
 +                    const char      *part __UNUSED__,
 +                    const char      *text __UNUSED__)
 +{
 +   WRN(genlist/gengrid do not support elm_object_item_part_text_set.\n
 +       Use normal genlist/gengrid text_get callback model.);
 +}
 +
 +static void
  _item_disable_hook(Elm_Object_Item *it)
  {
    Eina_List *l;
 @@ -3762,6 +3763,7 @@
    elm_widget_item_content_set_hook_set(it, _item_content_set_hook);
    elm_widget_item_content_unset_hook_set(it, _item_content_unset_hook);
    elm_widget_item_text_get_hook_set(it, _item_text_get_hook);
 +   elm_widget_item_text_set_hook_set(it, _item_text_set_hook);
    elm_widget_item_disable_hook_set(it, _item_disable_hook);
    elm_widget_item_del_pre_hook_set(it, _item_del_pre_hook);
    elm_widget_item_signal_emit_hook_set(it, _item_signal_emit_hook);


 --
 For Developers, A Lot Can Happen In A Second.
 Boundary is the first to Know...and Tell You.
 Monitor Your Applications in Ultra-Fine Resolution. Try it FREE!
 http://p.sf.net/sfu/Boundary-d2dvs2
 ___
 enlightenment-svn mailing list
 enlightenment-...@lists.sourceforge.net
 https://lists.sourceforge.net/lists/listinfo/enlightenment-svn


 --
 For Developers, A Lot Can Happen In A Second.
 Boundary is the first to Know...and Tell You.
 Monitor Your Applications in Ultra-Fine Resolution. Try it FREE!
 http://p.sf.net/sfu/Boundary-d2dvs2
 ___
 enlightenment-devel mailing list
 enlightenment-devel@lists.sourceforge.net
 https://lists.sourceforge.net/lists/listinfo/enlightenment-devel

 --
 For Developers, A Lot Can Happen In 

Re: [E-devel] question about elm_cnp_selection_set in elm_cnp

2012-04-12 Thread Hyoyoung Chang
it's image type. that means some null char can be contained in the buffer.
it's not char string so its not need to null terminated.

On Fri, Apr 13, 2012 at 2:01 PM, Minseok Kim minseok3@samsung.com wrote:
 I have a question.

 elm_cnp.c : 418
 
 ---

        if (format == ELM_SEL_FORMAT_IMAGE)
          {
             sel-selbuf = malloc(buflen+1);
             memcpy(sel-selbuf, selbuf, buflen);
          }

 
 ---

 This code allocates buffer with 'buflen+1' and copy.
 But there is no code to add last '\0' character.

 Is there no problem?
 I think it need to set last '\0' character(or need to use calloc)

 Please answer me.

 Thanks.


 --
 For Developers, A Lot Can Happen In A Second.
 Boundary is the first to Know...and Tell You.
 Monitor Your Applications in Ultra-Fine Resolution. Try it FREE!
 http://p.sf.net/sfu/Boundary-d2dvs2
 ___
 enlightenment-devel mailing list
 enlightenment-devel@lists.sourceforge.net
 https://lists.sourceforge.net/lists/listinfo/enlightenment-devel

--
For Developers, A Lot Can Happen In A Second.
Boundary is the first to Know...and Tell You.
Monitor Your Applications in Ultra-Fine Resolution. Try it FREE!
http://p.sf.net/sfu/Boundary-d2dvs2
___
enlightenment-devel mailing list
enlightenment-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/enlightenment-devel


Re: [E-devel] E SVN: seoz trunk/elementary/src/lib

2012-04-06 Thread Hyoyoung Chang
On Fri, Apr 6, 2012 at 4:10 PM, Enlightenment SVN
no-re...@enlightenment.org wrote:
 Log:
 elm genlist: Get the stringlist only when it does not exist. Free the 
 stringlist when we change the item class.

 Author:       seoz
 Date:         2012-04-06 00:10:29 -0700 (Fri, 06 Apr 2012)
 New Revision: 69946
 Trac:         http://trac.enlightenment.org/e/changeset/69946

 Modified:
  trunk/elementary/src/lib/elm_genlist.c

 Modified: trunk/elementary/src/lib/elm_genlist.c
 ===
 --- trunk/elementary/src/lib/elm_genlist.c      2012-04-06 07:10:26 UTC (rev 
 69945)
 +++ trunk/elementary/src/lib/elm_genlist.c      2012-04-06 07:10:29 UTC (rev 
 69946)
 @@ -1904,7 +1904,8 @@
         const Eina_List *l;
         const char *key;

 -        *source = elm_widget_stringlist_get(edje_object_data_get(target, 
 texts));
 +        if (!(*source))
 +          *source = elm_widget_stringlist_get(edje_object_data_get(target, 
 texts));
         EINA_LIST_FOREACH(*source, l, key)
           {
              if (parts  fnmatch(parts, key, FNM_PERIOD))
 @@ -2010,7 +2011,8 @@
         const char *key;
         char buf[4096];

 -        *source = elm_widget_stringlist_get(edje_object_data_get(target, 
 states));
 +        if (!(*source))
 +          *source = elm_widget_stringlist_get(edje_object_data_get(target, 
 states));
         EINA_LIST_FOREACH(*source, l, key)
           {
              if (parts  fnmatch(parts, key, FNM_PERIOD))
 @@ -2171,8 +2173,9 @@
         if (it-flipped)
           {
              edje_object_signal_emit(VIEW(it), elm,state,flip,enabled, 
 elm);
 -             it-item-flip_contents =
 -               elm_widget_stringlist_get(edje_object_data_get(VIEW(it), 
 flips));
 +             if (!(it-item-flip_contents))
 +               it-item-flip_contents =
 +                  elm_widget_stringlist_get(edje_object_data_get(VIEW(it), 
 flips));
              it-item-flip_content_objs =
                _item_mode_content_realize(it, VIEW(it),
                                           it-item-flip_contents, NULL,
 @@ -3271,8 +3274,9 @@
    assert(eina_list_count(it-item-deco_it_content_objs) == 0);

    _item_text_realize(it, it-item-deco_it_view, it-item-deco_it_texts, 
 NULL);
 -   it-item-deco_it_contents =
 -     elm_widget_stringlist_get(edje_object_data_get(it-item-deco_it_view, 
 contents));
 +   if (!it-item-deco_it_contents)
 +     it-item-deco_it_contents =
 +        
 elm_widget_stringlist_get(edje_object_data_get(it-item-deco_it_view, 
 contents));
    it-item-deco_it_content_objs =
      _item_mode_content_realize(it, it-item-deco_it_view,
                                 it-item-deco_it_contents, NULL,
 @@ -3425,8 +3429,9 @@

    _item_text_realize(it, it-deco_all_view, it-item-deco_all_texts, NULL);
    if (it-flipped) edje_object_signal_emit(it-deco_all_view, 
 elm,state,flip,enabled, elm);
 -   it-item-deco_all_contents =
 -     elm_widget_stringlist_get(edje_object_data_get(it-deco_all_view, 
 contents));
 +   if (!it-item-deco_all_contents)
 +     it-item-deco_all_contents =
 +        elm_widget_stringlist_get(edje_object_data_get(it-deco_all_view, 
 contents));
    it-item-deco_all_content_objs =
      _item_mode_content_realize(it, it-deco_all_view,
                                 it-item-deco_all_contents, NULL,
 @@ -5100,6 +5105,34 @@
    if (_it-generation  _it-wd-generation) return;
    _it-itc = itc;
    _it-item-nocache_once = EINA_TRUE;
 +
 +   elm_widget_stringlist_free(_it-texts);
 +   _it-texts = NULL;
 +   elm_widget_stringlist_free(_it-contents);
 +   _it-contents = NULL;
 +   elm_widget_stringlist_free(_it-states);
 +   _it-states = NULL;
 +
 +   if (_it-flipped)
 +     {
 +        elm_widget_stringlist_free(_it-item-flip_contents);
 +        _it-item-flip_contents = NULL;
 +     }
 +   if (_it-item-deco_it_view)
 +     {
 +        elm_widget_stringlist_free(_it-item-deco_it_texts);
 +        _it-item-deco_it_texts = NULL;
 +        elm_widget_stringlist_free(_it-item-deco_it_contents);
 +        _it-item-deco_it_contents = NULL;
 +     }
 +   if (_it-wd-decorate_all_mode)
 +     {
 +        elm_widget_stringlist_free(_it-item-deco_all_texts);
 +        _it-item-deco_all_texts = NULL;
 +        elm_widget_stringlist_free(_it-item-deco_all_contents);
 +        _it-item-deco_all_contents = NULL;
 +     }
 +
    elm_genlist_item_update(it);
  }

elm_genlist_item_item_class_update() calls _update_job()
_update_job() calls item unrealizing.
how about to move freeing widget string routine to item_unrealize?




 --
 For Developers, A Lot Can Happen In A Second.
 Boundary is the first to Know...and Tell You.
 Monitor Your Applications in Ultra-Fine Resolution. Try it FREE!
 http://p.sf.net/sfu/Boundary-d2dvs2
 ___
 enlightenment-svn mailing list
 enlightenment-...@lists.sourceforge.net
 

[E-devel] [patch] elm_genlist - add functionality to elm_genlist_fields_update (1/2)

2012-04-05 Thread Hyoyoung Chang
Dear all,

I made a patch for elm_genlist_fields_update to selective content update.
a genlist item can update any content regardless of its mode.

Thanks.

PS: It assumed my previous patch is applied ([patch] elm_genlist -
split flip content from item's content)


0001-add-_item_mode_content_realize-unrealize-funcs.patch
Description: Binary data
--
Better than sec? Nothing is better than sec when it comes to
monitoring Big Data applications. Try Boundary one-second 
resolution app monitoring today. Free.
http://p.sf.net/sfu/Boundary-dev2dev___
enlightenment-devel mailing list
enlightenment-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/enlightenment-devel


Re: [E-devel] [Patch] elm_cnp notify_handler patch

2012-04-05 Thread Hyoyoung Chang
On Tue, Apr 3, 2012 at 6:37 PM, Minseok Kim minseok3@samsung.com wrote:
 When pasting data to entry, notify_handler_text sent incorrect string.
 Because notify_handler_text received string including garbage value.
 Thus I cut string as its data length.
It's caused from inconsistent by X11 and ecore_x.
X11 api, sometimes, makes 8-bit chars null-terminiated.
but ecore_x don't handle 8-bit chars specially.

It seems a good patch.

 --
 Better than sec? Nothing is better than sec when it comes to
 monitoring Big Data applications. Try Boundary one-second
 resolution app monitoring today. Free.
 http://p.sf.net/sfu/Boundary-dev2dev
 ___
 enlightenment-devel mailing list
 enlightenment-devel@lists.sourceforge.net
 https://lists.sourceforge.net/lists/listinfo/enlightenment-devel


--
For Developers, A Lot Can Happen In A Second.
Boundary is the first to Know...and Tell You.
Monitor Your Applications in Ultra-Fine Resolution. Try it FREE!
http://p.sf.net/sfu/Boundary-d2dvs2
___
enlightenment-devel mailing list
enlightenment-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/enlightenment-devel


[E-devel] [patch] elm_genlist - split flip content from item's content

2012-04-04 Thread Hyoyoung Chang
Dear all,

in genlist flip mode, a item shares its content and flip content.
it's split flip content patch.

Thanks.


0001-split-flip-objects-from-item-s-contents.patch
Description: Binary data
--
Better than sec? Nothing is better than sec when it comes to
monitoring Big Data applications. Try Boundary one-second 
resolution app monitoring today. Free.
http://p.sf.net/sfu/Boundary-dev2dev___
enlightenment-devel mailing list
enlightenment-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/enlightenment-devel


Re: [E-devel] Elm_list_go - why does it exist? + Do we really need elm_list?

2012-04-04 Thread Hyoyoung Chang
On Wed, Apr 4, 2012 at 9:46 PM, Tom Hacohen tom.haco...@samsung.com wrote:
 Hey,

 I think I've already asked those questions before, but the release is a
 good time to review them again and make sure we like everything.

 First and foremost, why do we have elm_list_go, or more correctly, why
 do we only have it in elm_list and not in genlist? if it's needed, it
 should be in both, if not, it should be removed from elm_list. What is
 it's purpose?

It seems like to sacrifice convenience to get performance.
maybe we can remove elm_list_go() with some performance penalty.


 Second question: Do we really need elm_list? I believe that with a good
 enough default genlist item and some macros/function wrappers, we can
 just ditch elm_list and have only elm_genlist... Why does it exist?

 I assume it's faster than elm_genlist, but is it really *that* faster?
 Or *that* useful?

elm_list is quick and easy way to make simple list.
without genlist complex callbacks, and item classes.
IMHO, it's better to use elm_list at simple selection such as choosing
items in popup.


 --
 Tom.

 --
 Better than sec? Nothing is better than sec when it comes to
 monitoring Big Data applications. Try Boundary one-second
 resolution app monitoring today. Free.
 http://p.sf.net/sfu/Boundary-dev2dev
 ___
 enlightenment-devel mailing list
 enlightenment-devel@lists.sourceforge.net
 https://lists.sourceforge.net/lists/listinfo/enlightenment-devel

--
Better than sec? Nothing is better than sec when it comes to
monitoring Big Data applications. Try Boundary one-second 
resolution app monitoring today. Free.
http://p.sf.net/sfu/Boundary-dev2dev
___
enlightenment-devel mailing list
enlightenment-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/enlightenment-devel


[E-devel] [patch] elm_genlist - renaming vars - mode_view - deco_it_view (1/3)

2012-04-02 Thread Hyoyoung Chang
Dear all

it renames genlist internal variables.

mode_view -deco_it_view
decorate_mode_item_realized-decorate_all_item_realized

thanks.

--
This SF email is sponsosred by:
Try Windows Azure free for 90 days Click Here 
http://p.sf.net/sfu/sfd2d-msazure
___
enlightenment-devel mailing list
enlightenment-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/enlightenment-devel


[E-devel] [patch] elm_genlist - renaming _decorate_mode to _decorate_all_mode (2/3)

2012-04-02 Thread Hyoyoung Chang
Dear all

It renames genlist internal variables/functions.

decorate_mode-decorate_all_mode
_decorate_mode_item_*-_decorate_all_item_*

thanks.


0002-rename-_decorate_mode-to-_decorate_all_mode.patch
Description: Binary data
--
This SF email is sponsosred by:
Try Windows Azure free for 90 days Click Here 
http://p.sf.net/sfu/sfd2d-msazure___
enlightenment-devel mailing list
enlightenment-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/enlightenment-devel


Re: [E-devel] [patch] elm_genlist - renaming vars - mode_view - deco_it_view (1/3)

2012-04-02 Thread Hyoyoung Chang
Oops sorry.
Adding attachment patch file.

On Mon, Apr 2, 2012 at 8:36 PM, Hyoyoung Chang hyoyo...@gmail.com wrote:
 Dear all

 it renames genlist internal variables.

 mode_view -deco_it_view
 decorate_mode_item_realized-decorate_all_item_realized

 thanks.


0001-renaming-vars-mode_view-deco_it_view.patch
Description: Binary data
--
This SF email is sponsosred by:
Try Windows Azure free for 90 days Click Here 
http://p.sf.net/sfu/sfd2d-msazure___
enlightenment-devel mailing list
enlightenment-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/enlightenment-devel


[E-devel] [patch] elm_genlist - renaming internal variables from edit_ to deco_

2012-03-30 Thread Hyoyoung Chang
Dear all,

After edit mode naming is changed, some legacy naming is remained.
I changed naming to follow API naming changes.

edit_ - deco_
and also some explicit edc part names are changed.

Some naming are remained as is, I'll fix at next patches.

Thanks.
Index: elementary/src/lib/elm_genlist.c
===
--- elementary/src/lib/elm_genlist.c(리비전 69780)
+++ elementary/src/lib/elm_genlist.c(작업 사본)
@@ -53,7 +53,7 @@ struct Elm_Gen_Item_Type
Elm_Gen_Item *group_item;
Elm_Genlist_Item_Typetype;
Eina_List*mode_texts, *mode_contents, *mode_states, 
*mode_content_objs;
-   Eina_List*edit_texts, *edit_contents, *edit_states, 
*edit_content_objs;
+   Eina_List*deco_texts, *deco_contents, *deco_states, 
*deco_content_objs;
Ecore_Timer  *swipe_timer;
Evas_Coordscrl_x, scrl_y, old_scrl_y;
 
@@ -700,11 +700,11 @@ _item_highlight(Elm_Gen_Item *it)
(it-select_mode == ELM_OBJECT_SELECT_MODE_DISPLAY_ONLY))
  return;
edje_object_signal_emit(VIEW(it), elm,state,selected, elm);
-   if (it-edit_obj) edje_object_signal_emit(it-edit_obj, 
elm,state,selected, elm);
+   if (it-deco_obj) edje_object_signal_emit(it-deco_obj, 
elm,state,selected, elm);
selectraise = edje_object_data_get(VIEW(it), selectraise);
if ((selectraise)  (!strcmp(selectraise, on)))
  {
-if (it-edit_obj) evas_object_raise(it-edit_obj);
+if (it-deco_obj) evas_object_raise(it-deco_obj);
 else evas_object_raise(VIEW(it));
 if ((it-item-group_item)  (it-item-group_item-realized))
   evas_object_raise(it-item-VIEW(group_item));
@@ -717,17 +717,17 @@ _item_unhighlight(Elm_Gen_Item *it)
 {
if ((it-generation  it-wd-generation) || (!it-highlighted)) return;
edje_object_signal_emit(VIEW(it), elm,state,unselected, elm);
-   if (it-edit_obj) edje_object_signal_emit(it-edit_obj, 
elm,state,unselected, elm);
+   if (it-deco_obj) edje_object_signal_emit(it-deco_obj, 
elm,state,unselected, elm);
if (!it-item-nostacking)
  {
if ((it-item-order_num_in  0x1) ^ it-item-stacking_even)
  {
- if (it-edit_obj) evas_object_lower(it-edit_obj);
+ if (it-deco_obj) evas_object_lower(it-deco_obj);
  else evas_object_lower(VIEW(it));
  }
else
  {
- if (it-edit_obj) evas_object_raise(it-edit_obj);
+ if (it-deco_obj) evas_object_raise(it-deco_obj);
  else evas_object_raise(VIEW(it));
  }
  }
@@ -987,8 +987,8 @@ _mouse_move(void*data,
  else
y_pos = it_scrl_y;
 
- if (it-edit_obj)
-   _item_position(it, it-edit_obj, it-item-scrl_x, y_pos);
+ if (it-deco_obj)
+   _item_position(it, it-deco_obj, it-item-scrl_x, y_pos);
  else
  _item_position(it, VIEW(it), it-item-scrl_x, y_pos);
 
@@ -1072,8 +1072,8 @@ _long_press(void *data)
  {
 it-wd-reorder_it = it;
 it-wd-reorder_start_y = 0;
-if (it-edit_obj)
-  evas_object_raise(it-edit_obj);
+if (it-deco_obj)
+  evas_object_raise(it-deco_obj);
 else
   evas_object_raise(VIEW(it));
 
@@ -1718,12 +1718,12 @@ _elm_genlist_item_odd_even_update(Elm_Gen_Item *it
  {
 if ((it-item-order_num_in  0x1) ^ it-item-stacking_even)
   {
- if (it-edit_obj) evas_object_lower(it-edit_obj);
+ if (it-deco_obj) evas_object_lower(it-deco_obj);
  else evas_object_lower(VIEW(it));
   }
 else
   {
- if (it-edit_obj) evas_object_raise(it-edit_obj);
+ if (it-deco_obj) evas_object_raise(it-deco_obj);
  else evas_object_raise(VIEW(it));
   }
  }
@@ -1731,12 +1731,12 @@ _elm_genlist_item_odd_even_update(Elm_Gen_Item *it
if (it-item-order_num_in  0x1)
  {
 edje_object_signal_emit(VIEW(it), elm,state,odd, elm);
-if (it-edit_obj) edje_object_signal_emit(it-edit_obj, 
elm,state,odd, elm);
+if (it-deco_obj) edje_object_signal_emit(it-deco_obj, 
elm,state,odd, elm);
  }
else
  {
 edje_object_signal_emit(VIEW(it), elm,state,even, elm);
-if (it-edit_obj) edje_object_signal_emit(it-edit_obj, 
elm,state,even, elm);
+if (it-deco_obj) edje_object_signal_emit(it-deco_obj, 
elm,state,even, elm);
  }
 }
 
@@ -1752,8 +1752,8 @@ _elm_genlist_item_state_update(Elm_Gen_Item *it, I
   edje_object_signal_emit(VIEW(it),
   elm,state,selected, elm);
 
-  if (it-edit_obj)
-edje_object_signal_emit(it-edit_obj,
+  if (it-deco_obj)
+edje_object_signal_emit(it-deco_obj,
  

Re: [E-devel] Infinite loop ...

2012-03-30 Thread Hyoyoung Chang
nice catch.
maybe we should care about elm_widget_item_free(it);
anyway good job \0/

On Fri, Mar 30, 2012 at 4:51 PM, Daniel Juyung Seo seojuyu...@gmail.com wrote:
 Fixed it!
 In SVN!
 http://trac.enlightenment.org/e/changeset/69785

 Thanks for reporting!

 Daniel Juyung Seo (SeoZ)

 On Fri, Mar 30, 2012 at 10:49 AM, Hyoyoung Chang hyoyo...@gmail.com wrote:
 I checked this issue.
 In evas_free(), infinite loop is occurred

   while (del)
     {
        del = 0;
        EINA_INLIST_FOREACH(e-layers, lay)
          {
             Evas_Object *o;

             evas_layer_pre_free(lay);

             EINA_INLIST_FOREACH(lay-objects, o)
               {
                  if ((o-callbacks)  (o-callbacks-walking_list))
                    {
                       /* Defer free */
                       e-delete_me = 1;
                       e-walking_list--;
                       return;
                    }
                  if (!o-delete_me)
                    del = 1;
               }
          }
     }

 it seems to iterate layers and objects.
 is it need to iterate again same layer?


 On Fri, Mar 30, 2012 at 8:55 AM, michael bouchaud
 michael.bouch...@gmail.com wrote:
 Hi,
 we have a bug in the genlist widget, or ...
 If you want delete an item from an genlist when the user select it. You
 have
 some complaints from valgrind and if you close the window, the process never
 end. See attachment

 Best regards

 --
 Michaël Bouchaud

 --
 This SF email is sponsosred by:
 Try Windows Azure free for 90 days Click Here
 http://p.sf.net/sfu/sfd2d-msazure
 ___
 enlightenment-devel mailing list
 enlightenment-devel@lists.sourceforge.net
 https://lists.sourceforge.net/lists/listinfo/enlightenment-devel


 --
 This SF email is sponsosred by:
 Try Windows Azure free for 90 days Click Here
 http://p.sf.net/sfu/sfd2d-msazure
 ___
 enlightenment-devel mailing list
 enlightenment-devel@lists.sourceforge.net
 https://lists.sourceforge.net/lists/listinfo/enlightenment-devel

 --
 This SF email is sponsosred by:
 Try Windows Azure free for 90 days Click Here
 http://p.sf.net/sfu/sfd2d-msazure
 ___
 enlightenment-devel mailing list
 enlightenment-devel@lists.sourceforge.net
 https://lists.sourceforge.net/lists/listinfo/enlightenment-devel

--
This SF email is sponsosred by:
Try Windows Azure free for 90 days Click Here 
http://p.sf.net/sfu/sfd2d-msazure
___
enlightenment-devel mailing list
enlightenment-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/enlightenment-devel


Re: [E-devel] [patch] elm_genlist - renaming internal variables from edit_ to deco_

2012-03-30 Thread Hyoyoung Chang
I talked with seoz. and agreed with previous naming changing is insufficient.

so changed like this
mode_ - deco_it_
edit_ - deco_all_

Thanks

On Fri, Mar 30, 2012 at 3:33 PM, Hyoyoung Chang hyoyo...@gmail.com wrote:
 Dear all,

 After edit mode naming is changed, some legacy naming is remained.
 I changed naming to follow API naming changes.

 edit_ - deco_
 and also some explicit edc part names are changed.

 Some naming are remained as is, I'll fix at next patches.

 Thanks.
Index: elementary/src/lib/elm_genlist.c
===
--- elementary/src/lib/elm_genlist.c(리비전 69785)
+++ elementary/src/lib/elm_genlist.c(작업 사본)
@@ -52,8 +52,8 @@ struct Elm_Gen_Item_Type
Evas_Coordw, h, minw, minh;
Elm_Gen_Item *group_item;
Elm_Genlist_Item_Typetype;
-   Eina_List*mode_texts, *mode_contents, *mode_states, 
*mode_content_objs;
-   Eina_List*edit_texts, *edit_contents, *edit_states, 
*edit_content_objs;
+   Eina_List*deco_it_texts, *deco_it_contents, 
*deco_it_states, *deco_it_content_objs;
+   Eina_List*deco_all_textss, *deco_all_contents, 
*deco_all_states, *deco_all_content_objs;
Ecore_Timer  *swipe_timer;
Evas_Coordscrl_x, scrl_y, old_scrl_y;
 
@@ -700,11 +700,11 @@ _item_highlight(Elm_Gen_Item *it)
(it-select_mode == ELM_OBJECT_SELECT_MODE_DISPLAY_ONLY))
  return;
edje_object_signal_emit(VIEW(it), elm,state,selected, elm);
-   if (it-edit_obj) edje_object_signal_emit(it-edit_obj, 
elm,state,selected, elm);
+   if (it-deco_all_obj) edje_object_signal_emit(it-deco_all_obj, 
elm,state,selected, elm);
selectraise = edje_object_data_get(VIEW(it), selectraise);
if ((selectraise)  (!strcmp(selectraise, on)))
  {
-if (it-edit_obj) evas_object_raise(it-edit_obj);
+if (it-deco_all_obj) evas_object_raise(it-deco_all_obj);
 else evas_object_raise(VIEW(it));
 if ((it-item-group_item)  (it-item-group_item-realized))
   evas_object_raise(it-item-VIEW(group_item));
@@ -717,17 +717,17 @@ _item_unhighlight(Elm_Gen_Item *it)
 {
if ((it-generation  it-wd-generation) || (!it-highlighted)) return;
edje_object_signal_emit(VIEW(it), elm,state,unselected, elm);
-   if (it-edit_obj) edje_object_signal_emit(it-edit_obj, 
elm,state,unselected, elm);
+   if (it-deco_all_obj) edje_object_signal_emit(it-deco_all_obj, 
elm,state,unselected, elm);
if (!it-item-nostacking)
  {
if ((it-item-order_num_in  0x1) ^ it-item-stacking_even)
  {
- if (it-edit_obj) evas_object_lower(it-edit_obj);
+ if (it-deco_all_obj) evas_object_lower(it-deco_all_obj);
  else evas_object_lower(VIEW(it));
  }
else
  {
- if (it-edit_obj) evas_object_raise(it-edit_obj);
+ if (it-deco_all_obj) evas_object_raise(it-deco_all_obj);
  else evas_object_raise(VIEW(it));
  }
  }
@@ -987,8 +987,8 @@ _mouse_move(void*data,
  else
y_pos = it_scrl_y;
 
- if (it-edit_obj)
-   _item_position(it, it-edit_obj, it-item-scrl_x, y_pos);
+ if (it-deco_all_obj)
+   _item_position(it, it-deco_all_obj, it-item-scrl_x, y_pos);
  else
  _item_position(it, VIEW(it), it-item-scrl_x, y_pos);
 
@@ -1072,8 +1072,8 @@ _long_press(void *data)
  {
 it-wd-reorder_it = it;
 it-wd-reorder_start_y = 0;
-if (it-edit_obj)
-  evas_object_raise(it-edit_obj);
+if (it-deco_all_obj)
+  evas_object_raise(it-deco_all_obj);
 else
   evas_object_raise(VIEW(it));
 
@@ -1718,12 +1718,12 @@ _elm_genlist_item_odd_even_update(Elm_Gen_Item *it
  {
 if ((it-item-order_num_in  0x1) ^ it-item-stacking_even)
   {
- if (it-edit_obj) evas_object_lower(it-edit_obj);
+ if (it-deco_all_obj) evas_object_lower(it-deco_all_obj);
  else evas_object_lower(VIEW(it));
   }
 else
   {
- if (it-edit_obj) evas_object_raise(it-edit_obj);
+ if (it-deco_all_obj) evas_object_raise(it-deco_all_obj);
  else evas_object_raise(VIEW(it));
   }
  }
@@ -1731,12 +1731,12 @@ _elm_genlist_item_odd_even_update(Elm_Gen_Item *it
if (it-item-order_num_in  0x1)
  {
 edje_object_signal_emit(VIEW(it), elm,state,odd, elm);
-if (it-edit_obj) edje_object_signal_emit(it-edit_obj, 
elm,state,odd, elm);
+if (it-deco_all_obj) edje_object_signal_emit(it-deco_all_obj, 
elm,state,odd, elm);
  }
else
  {
 edje_object_signal_emit(VIEW(it), elm,state,even, elm);
-if (it-edit_obj) edje_object_signal_emit(it-edit_obj, 
elm,state,even, elm);
+if (it-deco_all_obj

[E-devel] [patch] elm_genlist - bugfix losting content_objs at flip_realize

2012-03-29 Thread Hyoyoung Chang
Dear all

I made a patch about flip_realize.
Currently flip feature uses content_objs, so it should keep its content_objs.
However it's lost at _item_flips_realize().
So i fixed to initialize with its content_objs.

Thanks
Index: elementary/src/lib/elm_genlist.c
===
--- elementary/src/lib/elm_genlist.c(리비전 69721)
+++ elementary/src/lib/elm_genlist.c(작업 사본)
@@ -1963,7 +1963,7 @@ _item_flips_realize(Elm_Gen_Item *it,
 Evas_Object *target,
 Eina_List **source)
 {
-   Eina_List *res = NULL;
+   Eina_List *res = it-content_objs;
 
if (it-itc-func.content_get)
  {
--
This SF email is sponsosred by:
Try Windows Azure free for 90 days Click Here 
http://p.sf.net/sfu/sfd2d-msazure___
enlightenment-devel mailing list
enlightenment-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/enlightenment-devel


Re: [E-devel] Infinite loop ...

2012-03-29 Thread Hyoyoung Chang
I checked this issue.
In evas_free(), infinite loop is occurred

   while (del)
 {
del = 0;
EINA_INLIST_FOREACH(e-layers, lay)
  {
 Evas_Object *o;

 evas_layer_pre_free(lay);

 EINA_INLIST_FOREACH(lay-objects, o)
   {
  if ((o-callbacks)  (o-callbacks-walking_list))
{
   /* Defer free */
   e-delete_me = 1;
   e-walking_list--;
   return;
}
  if (!o-delete_me)
del = 1;
   }
  }
 }

it seems to iterate layers and objects.
is it need to iterate again same layer?


On Fri, Mar 30, 2012 at 8:55 AM, michael bouchaud
michael.bouch...@gmail.com wrote:
 Hi,
 we have a bug in the genlist widget, or ...
 If you want delete an item from an genlist when the user select it. You
 have
 some complaints from valgrind and if you close the window, the process never
 end. See attachment

 Best regards

 --
 Michaël Bouchaud

 --
 This SF email is sponsosred by:
 Try Windows Azure free for 90 days Click Here
 http://p.sf.net/sfu/sfd2d-msazure
 ___
 enlightenment-devel mailing list
 enlightenment-devel@lists.sourceforge.net
 https://lists.sourceforge.net/lists/listinfo/enlightenment-devel


--
This SF email is sponsosred by:
Try Windows Azure free for 90 days Click Here 
http://p.sf.net/sfu/sfd2d-msazure
___
enlightenment-devel mailing list
enlightenment-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/enlightenment-devel


[E-devel] [patch] bugfix infinite loop in _elm_win_obj_callback_del

2012-03-28 Thread Hyoyoung Chang
Dear all,

SeungGyun and I found infinite loop in _elm_win_obj_callback_del.
It calls evas_object_del() to remove evas objects in evas.
However sometimes, there're several objects (which its reference count
is greater than 1) that aren't deleted.

To fix that, I added two evas apis, and changed some logic in elm_win.c

+EAPI Evas_Object *
+evas_object_hier_above_get(const Evas_Object *obj);
+EAPI Evas_Object *
+evas_object_hier_below_get(const Evas_Object *obj);

In evas, evas_object_{above,below}_get() are existed.
But i'm not sure that.
In object deletion, we need to consider smart parent relation?
If it shouldn't be, i think my approach is right way.
Otherwise, the two apis aren't needed to apply. then just replace to
evas_object_{above,below}_get() in elm_win.c

Most of analysis is done by SeungGyun Kim. And I coded to resolve it.

Thanks.
Index: evas/src/lib/Evas.h
===
--- evas/src/lib/Evas.h (리비전 69696)
+++ evas/src/lib/Evas.h (작업 사본)
@@ -5986,6 +5986,47 @@ EAPI Evas_Object  *evas_object_bottom_get
 EAPI Evas_Object  *evas_object_top_get   (const Evas *e) 
EINA_WARN_UNUSED_RESULT EINA_ARG_NONNULL(1);
 
 /**
+ * Get the Evas object hierarchically right above @p obj
+ *
+ * @param obj an #Evas_Object
+ * @return the #Evas_Object directly above @p obj, if any, or @c NULL,
+ * if none
+ *
+ * This function will traverse layers in its search, if there are
+ * objects on layers above the one @p obj is placed at.
+ * It doesn't consider about smart attributes. Most of cases, you need to use
+ * evas_object_above_get().
+ *
+ * @see evas_object_below_get()
+ * @see evas_object_above_get()
+ * @see evas_object_hier_below_get()
+ *
+ */
+
+EAPI Evas_Object *
+evas_object_hier_above_get(const Evas_Object *obj);
+
+/**
+ * Get the Evas object hierarchically right below @p obj
+ *
+ * @param obj an #Evas_Object
+ * @return the #Evas_Object directly below @p obj, if any, or @c NULL,
+ * if none
+ *
+ * This function will traverse layers in its search, if there are
+ * objects on layers below the one @p obj is placed at.
+ * It doesn't consider about smart attributes. Most of cases, you need to use
+ * evas_object_below_get().
+ *
+ * @see evas_object_below_get()
+ * @see evas_object_above_get()
+ * @see evas_object_hier_above_get()
+ */
+
+EAPI Evas_Object *
+evas_object_hier_below_get(const Evas_Object *obj);
+
+/**
  * @}
  */
 
Index: evas/src/lib/canvas/evas_stack.c
===
--- evas/src/lib/canvas/evas_stack.c(리비전 69696)
+++ evas/src/lib/canvas/evas_stack.c(작업 사본)
@@ -336,7 +336,35 @@ evas_object_below_get(const Evas_Object *obj)
return NULL;
 }
 
+EAPI Evas_Object *
+evas_object_hier_above_get(const Evas_Object *obj)
+{
+   MAGIC_CHECK(obj, Evas_Object, MAGIC_OBJ);
+   return NULL;
+   MAGIC_CHECK_END();
+   obj = evas_object_above_get_internal(obj);
+   while (obj)
+ {
+if (!obj-delete_me) return (Evas_Object *)obj;
+obj = evas_object_above_get_internal(obj);
+ }
+   return NULL;
+}
 
+EAPI Evas_Object *
+evas_object_hier_below_get(const Evas_Object *obj)
+{
+   MAGIC_CHECK(obj, Evas_Object, MAGIC_OBJ);
+   return NULL;
+   MAGIC_CHECK_END();
+   obj = evas_object_below_get_internal(obj);
+   while (obj)
+ {
+if (!obj-delete_me) return (Evas_Object *)obj;
+obj = evas_object_below_get_internal(obj);
+ }
+   return NULL;
+}
 
 EAPI Evas_Object *
 evas_object_bottom_get(const Evas *e)
Index: elementary/src/lib/elm_win.c
===
--- elementary/src/lib/elm_win.c(리비전 69696)
+++ elementary/src/lib/elm_win.c(작업 사본)
@@ -613,6 +613,7 @@ _elm_win_obj_callback_del(void *data, Evas *e, Eva
 {
Elm_Win *win = data;
Evas_Object *child;
+   Evas_Object *delobj;
 
if (win-parent)
  {
@@ -634,15 +635,19 @@ _elm_win_obj_callback_del(void *data, Evas *e, Eva
if (win-shot.timer) ecore_timer_del(win-shot.timer);
evas_object_event_callback_del_full(win-win_obj, EVAS_CALLBACK_DEL,
_elm_win_obj_callback_del, win);
-   while (((child = evas_object_bottom_get(win-evas))) 
-  (child != obj))
+   child = evas_object_bottom_get(win-evas);
+   while (child  child != obj)
  {
-evas_object_del(child);
+delobj = child;
+child = evas_object_hier_above_get(child);
+evas_object_del(delobj);
  }
-   while (((child = evas_object_top_get(win-evas))) 
-  (child != obj))
+   child = evas_object_top_get(win-evas);
+   while (child  child != obj)
  {
-evas_object_del(child);
+delobj = child;
+child = evas_object_hier_below_get(child);
+evas_object_del(delobj);
  }
 #ifdef HAVE_ELEMENTARY_X
if (win-client_message_handler)

Re: [E-devel] [patch] elm_genlist - add merging edc strings list

2012-03-25 Thread Hyoyoung Chang
in most of cases, Daniel is right.
But i added this for item_fields_update

   if ((!itf) || (itf  ELM_GENLIST_ITEM_FIELD_CONTENT))
 {
_it-content_objs = _item_content_unrealize(_it, VIEW(_it),
   _it-contents, parts);
_it-content_objs = _item_content_realize(_it, VIEW(_it),
 _it-contents, parts);
 }

as you know, in the field_update, individual items can be updated.

Also, i think it can be used at merging item_content_realize with
item_flip_realize in future.

On Sun, Mar 25, 2012 at 3:57 PM, Carsten Haitzler ras...@rasterman.com wrote:
 On Sun, 25 Mar 2012 15:45:21 +0900 Daniel Juyung Seo seojuyu...@gmail.com
 said:

 Question in  _item_content_realize().

 I don't see a point to merge the list here.
  +        *source = eina_list_merge(*source, cons);

 *source must be NULL when you run _item_content_realize().
 If it's not NULL, that's a huge problem.
 Creating another list pointer(cons) and merging it with NULL is
 unnecessary extra job.
 We do not need to merge source(which is NULL) and cons here. Just use source.

 Daniel Juyung Seo (SeoZ)

 ti looks cleaner though imho. :)

 On Sat, Mar 24, 2012 at 8:15 PM, Carsten Haitzler ras...@rasterman.com
 wrote:
  On Fri, 23 Mar 2012 19:19:55 +0900 Hyoyoung Chang hyoyo...@gmail.com 
  said:
 
  tnx! looked at it - in svn! :)
 
  Dear all
 
  I add like a routine in previous patch.
  It add merging routines to realize functions.
  also i removed elm_widget_stringlist_free(cons)
  because all of it is freed at item_unrealize.
 
  Thanks
 
 
  --
  - Codito, ergo sum - I code, therefore I am --
  The Rasterman (Carsten Haitzler)    ras...@rasterman.com
 
 
  --
  This SF email is sponsosred by:
  Try Windows Azure free for 90 days Click Here
  http://p.sf.net/sfu/sfd2d-msazure
  ___
  enlightenment-devel mailing list
  enlightenment-devel@lists.sourceforge.net
  https://lists.sourceforge.net/lists/listinfo/enlightenment-devel

 --
 This SF email is sponsosred by:
 Try Windows Azure free for 90 days Click Here
 http://p.sf.net/sfu/sfd2d-msazure
 ___
 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


 --
 This SF email is sponsosred by:
 Try Windows Azure free for 90 days Click Here
 http://p.sf.net/sfu/sfd2d-msazure
 ___
 enlightenment-devel mailing list
 enlightenment-devel@lists.sourceforge.net
 https://lists.sourceforge.net/lists/listinfo/enlightenment-devel

--
This SF email is sponsosred by:
Try Windows Azure free for 90 days Click Here 
http://p.sf.net/sfu/sfd2d-msazure
___
enlightenment-devel mailing list
enlightenment-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/enlightenment-devel


Re: [E-devel] [patch] elm_genlist - add merging edc strings list

2012-03-25 Thread Hyoyoung Chang
On Sun, Mar 25, 2012 at 5:19 PM, Daniel Juyung Seo seojuyu...@gmail.com wrote:
 Hello,

 On Sun, Mar 25, 2012 at 4:42 PM, Hyoyoung Chang hyoyo...@gmail.com wrote:
 in most of cases, Daniel is right.
 But i added this for item_fields_update

   if ((!itf) || (itf  ELM_GENLIST_ITEM_FIELD_CONTENT))
     {
        _it-content_objs = _item_content_unrealize(_it, VIEW(_it),
                                                   _it-contents, parts);
        _it-content_objs = _item_content_realize(_it, VIEW(_it),
                                                 _it-contents, parts);
     }

 as you know, in the field_update, individual items can be updated.

 Then it introduces a bigger problem. Whenever you call
 elm_genlist_item_fields_update(), _it-contents will grow.
 Anyhow this is an apparent bug. Please fix this.

Oh, it needs to fix. you're right.


 Also, i think it can be used at merging item_content_realize with
 item_flip_realize in future.

 If this is the reason, it's acceptable but you can make the code
 cleaner by separating the list for flips from normal contents.
 Instead of using it-contents for many cases, just use a separate list
 for each feature.
 ex) mode_contents, edit_contents
 You can create it-flips_contents or whatever. This will make code
 cleaner/shorter and easier to understand/maintain.
ok. i'll consider it. i think your suggestion is more clear way.


 Thanks.

 Daniel Juyung Seo (Seoz)


 On Sun, Mar 25, 2012 at 3:57 PM, Carsten Haitzler ras...@rasterman.com 
 wrote:
 On Sun, 25 Mar 2012 15:45:21 +0900 Daniel Juyung Seo seojuyu...@gmail.com
 said:

 Question in  _item_content_realize().

 I don't see a point to merge the list here.
  +        *source = eina_list_merge(*source, cons);

 *source must be NULL when you run _item_content_realize().
 If it's not NULL, that's a huge problem.
 Creating another list pointer(cons) and merging it with NULL is
 unnecessary extra job.
 We do not need to merge source(which is NULL) and cons here. Just use 
 source.

 Daniel Juyung Seo (SeoZ)

 ti looks cleaner though imho. :)

 On Sat, Mar 24, 2012 at 8:15 PM, Carsten Haitzler ras...@rasterman.com
 wrote:
  On Fri, 23 Mar 2012 19:19:55 +0900 Hyoyoung Chang hyoyo...@gmail.com 
  said:
 
  tnx! looked at it - in svn! :)
 
  Dear all
 
  I add like a routine in previous patch.
  It add merging routines to realize functions.
  also i removed elm_widget_stringlist_free(cons)
  because all of it is freed at item_unrealize.
 
  Thanks
 
 
  --
  - Codito, ergo sum - I code, therefore I am --
  The Rasterman (Carsten Haitzler)    ras...@rasterman.com
 
 
  --
  This SF email is sponsosred by:
  Try Windows Azure free for 90 days Click Here
  http://p.sf.net/sfu/sfd2d-msazure
  ___
  enlightenment-devel mailing list
  enlightenment-devel@lists.sourceforge.net
  https://lists.sourceforge.net/lists/listinfo/enlightenment-devel

 --
 This SF email is sponsosred by:
 Try Windows Azure free for 90 days Click Here
 http://p.sf.net/sfu/sfd2d-msazure
 ___
 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


 --
 This SF email is sponsosred by:
 Try Windows Azure free for 90 days Click Here
 http://p.sf.net/sfu/sfd2d-msazure
 ___
 enlightenment-devel mailing list
 enlightenment-devel@lists.sourceforge.net
 https://lists.sourceforge.net/lists/listinfo/enlightenment-devel

 --
 This SF email is sponsosred by:
 Try Windows Azure free for 90 days Click Here
 http://p.sf.net/sfu/sfd2d-msazure
 ___
 enlightenment-devel mailing list
 enlightenment-devel@lists.sourceforge.net
 https://lists.sourceforge.net/lists/listinfo/enlightenment-devel

 --
 This SF email is sponsosred by:
 Try Windows Azure free for 90 days Click Here
 http://p.sf.net/sfu/sfd2d-msazure
 ___
 enlightenment-devel mailing list
 enlightenment-devel@lists.sourceforge.net
 https://lists.sourceforge.net/lists/listinfo/enlightenment-devel

--
This SF email is sponsosred by:
Try Windows Azure free for 90 days Click Here 
http://p.sf.net/sfu/sfd2d-msazure
___
enlightenment-devel mailing list

Re: [E-devel] E SVN: raster trunk/elementary

2012-03-24 Thread Hyoyoung Chang
hooray 1.0
\0/

On Sat, Mar 24, 2012 at 8:14 PM, Enlightenment SVN
no-re...@enlightenment.org wrote:
 Log:
 update configure/readme for 1.0 alpha



 Author:       raster
 Date:         2012-03-24 04:14:41 -0700 (Sat, 24 Mar 2012)
 New Revision: 69599
 Trac:         http://trac.enlightenment.org/e/changeset/69599

 Modified:
  trunk/elementary/README trunk/elementary/configure.ac

 Modified: trunk/elementary/README
 ===
 --- trunk/elementary/README     2012-03-24 11:14:20 UTC (rev 69598)
 +++ trunk/elementary/README     2012-03-24 11:14:41 UTC (rev 69599)
 @@ -1,4 +1,4 @@
 -Elementary 0.9.0
 +Elementary 1.0.0

  **


 Modified: trunk/elementary/configure.ac
 ===
 --- trunk/elementary/configure.ac       2012-03-24 11:14:20 UTC (rev 69598)
 +++ trunk/elementary/configure.ac       2012-03-24 11:14:41 UTC (rev 69599)
 @@ -1,12 +1,12 @@
  ##--##--##--##--##--##--##--##--##--##--##--##--##--##--##--##--##
  ##--##--##--##--##--##--##--##--##--##--##--##--##--##--##--##--##
 -m4_define([v_maj], [0])
 -m4_define([v_min], [9])
 +m4_define([v_maj], [1])
 +m4_define([v_min], [0])
  m4_define([v_mic], [0])
  m4_define([v_rev], m4_esyscmd([(svnversion ${SVN_REPO_PATH:-.} | grep -v 
 '\(export\|Unversioned directory\)' || echo 0) | awk -F : '{printf(%s\n, 
 $1);}' | tr -d ' :MSP\n']))
  m4_if(v_rev, [0], [m4_define([v_rev], m4_esyscmd([git log 2 /dev/null | 
 (grep -m1 git-svn-id || echo 0) | sed -e 's/.*@\([0-9]*\).*/\1/' | tr -d 
 '\n']))])
  ##--   When released, remove the dnl on the below line
 -dnl m4_undefine([v_rev])
 +m4_undefine([v_rev])
  ##--   When doing snapshots - change soname. remove dnl on below line
  dnl m4_define([relname], [ver-pre-svn-09])
  dnl m4_define([v_rel], [-release relname])
 @@ -19,7 +19,7 @@
  ##--##--##--##--##--##--##--##--##--##--##--##--##--##--##--##--##
  ##--##--##--##--##--##--##--##--##--##--##--##--##--##--##--##--##

 -AC_INIT([elementary], [v_ver], [enlightenment-devel@lists.sourceforge.net])
 +AC_INIT([elementary], [v_ver]-alpha, 
 [enlightenment-devel@lists.sourceforge.net])
  AC_PREREQ(2.52)
  AC_CONFIG_SRCDIR([configure.ac])
  AC_CONFIG_MACRO_DIR([m4])


 --
 This SF email is sponsosred by:
 Try Windows Azure free for 90 days Click Here
 http://p.sf.net/sfu/sfd2d-msazure
 ___
 enlightenment-svn mailing list
 enlightenment-...@lists.sourceforge.net
 https://lists.sourceforge.net/lists/listinfo/enlightenment-svn

--
This SF email is sponsosred by:
Try Windows Azure free for 90 days Click Here 
http://p.sf.net/sfu/sfd2d-msazure
___
enlightenment-devel mailing list
enlightenment-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/enlightenment-devel


[E-devel] [patch] elm_genlist - add merging edc strings list

2012-03-23 Thread Hyoyoung Chang
Dear all

I add like a routine in previous patch.
It add merging routines to realize functions.
also i removed elm_widget_stringlist_free(cons)
because all of it is freed at item_unrealize.

Thanks
Index: elementary/src/lib/elm_genlist.c
===
--- elementary/src/lib/elm_genlist.c(리비전 69587)
+++ elementary/src/lib/elm_genlist.c(작업 사본)
@@ -1890,13 +1890,14 @@ _item_content_realize(Elm_Gen_Item *it,
 const Eina_List *l;
 const char *key;
 Evas_Object *ic = NULL;
+Eina_List *cons = NULL;
 
-*source = elm_widget_stringlist_get(edje_object_data_get(target, 
contents));
+cons = elm_widget_stringlist_get(edje_object_data_get(target, 
contents));
 
 if (parts  (eina_list_count(*source) != 
eina_list_count(it-content_objs)))
   res = it-content_objs;
 
-EINA_LIST_FOREACH(*source, l, key)
+EINA_LIST_FOREACH(cons, l, key)
   {
  if (parts  fnmatch(parts, key, FNM_PERIOD))
continue;
@@ -1914,6 +1915,7 @@ _item_content_realize(Elm_Gen_Item *it,
 elm_widget_disabled_set(ic, EINA_TRUE);
}
   }
+*source = eina_list_merge(*source, cons);
  }
 
return res;
@@ -1967,6 +1969,7 @@ _item_flips_realize(Elm_Gen_Item *it,
 const char *key;
 Evas_Object *ic = NULL;
 Eina_List *cons = NULL;
+
 cons = elm_widget_stringlist_get(edje_object_data_get(target, 
flips));
 
 EINA_LIST_FOREACH(cons, l, key)
@@ -1985,7 +1988,6 @@ _item_flips_realize(Elm_Gen_Item *it,
}
   }
 *source = eina_list_merge(*source, cons);
-elm_widget_stringlist_free(cons);
  }
 
return res;
--
This SF email is sponsosred by:
Try Windows Azure free for 90 days Click Here 
http://p.sf.net/sfu/sfd2d-msazure___
enlightenment-devel mailing list
enlightenment-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/enlightenment-devel


Re: [E-devel] [Patch][elm_list] bug fix: crash occurs when container which contains the elm_list is deleted on the elm_list item clicked callback

2012-03-21 Thread Hyoyoung Chang
I think previous your mail is in another your mail account :P
btw, i have a question.

+if (it-icon)
+   evas_object_event_callback_del(it-icon,
+  EVAS_CALLBACK_CHANGED_SIZE_HINTS,
+  _changed_size_hints);
+if (it-end)
+   evas_object_event_callback_del(it-icon,
+  EVAS_CALLBACK_CHANGED_SIZE_HINTS,
+  _changed_size_hints);

in second callback_del, it-icon should be it-end?

On Wed, Mar 21, 2012 at 5:53 PM, cnook kimci...@gmail.com wrote:
 Dear All, Hello.

 I have resolved the elm_list issue(goto ELM_LIST_CRASH_ISSUE_MAIL below, I
 sent mail but I cannot find the previous mail -_-;).
 It would be related with double free issue. In the sub-obejct-del
 callback which name is _sub_del() sets item-icon to NULL.
 And in the EVAS_CALLBACK_MOUSE_UP callback funtion which name is
 _mouse_up() calls evas_object_unref();
 It would try to free the item-icon but the item-icon is already set to
 NULL. So.. the crash would occur..

 Anyhow my solutiion is the following.

 static void
 _del_pre_hook(Evas_Object *obj)
 {
  Widget_Data *wd = elm_widget_data_get(obj);
  const Eina_List *l;
  Elm_List_Item *it;

  evas_object_smart_callback_del(obj, sub-object-del, _sub_del);

  if (!wd) return;

  EINA_LIST_FOREACH(wd-items, l, it)
    {
       if (it-icon)
          evas_object_event_callback_del(it-icon,
                                         EVAS_CALLBACK_CHANGED_SIZE_HINTS,
                                         _changed_size_hints);
       if (it-end)
          evas_object_event_callback_del(it-icon,
                                         EVAS_CALLBACK_CHANGED_SIZE_HINTS,
                                         _changed_size_hints);
    }

  evas_object_event_callback_del(wd-scr,
                                 EVAS_CALLBACK_CHANGED_SIZE_HINTS,
                                 _changed_size_hints);
  evas_object_event_callback_del(wd-box,
                                 EVAS_CALLBACK_CHANGED_SIZE_HINTS,
                                 _changed_size_hints);
 }

 I'm not sure this is the best way to resolve the issue. Anyhow the crash
 does not occur.
 I have checked this issue on the popup, ctxpopup and box already.
 Please let me know, if you have any other proper ideas to reslove below
 issue.. Thanks.




 ELM_LIST_CRASH_ISSUE_MAIL:

 Dear All, Hello.

 If the elm_list is contained in the container - can be whatever containers
 such as box, popup, ctxpopup and so on -
 which has item with icon object such as a elm_radio and evas_object_del()
 is called in the item select callback, the application is crashed.
 If there is no icon on the elm_list item, the crash does not occur. The
 example to occur the crash as the following.


 {{{
 static void _filter_all_cb(void *data, Evas_Object *obj,
              void *event_info)
 {
   Evas_Object *popup = (Evas_Object *)data;
   evas_object_del(popup);
 }

 static void
 _popup_center_text_cb(void *data, Evas_Object *obj __UNUSED__,
                     void *event_info __UNUSED__)
 {
  Evas_Object *popup, *btn1,*list, *radio;

  popup = elm_popup_add(data);
  evas_object_size_hint_weight_set(popup, EVAS_HINT_EXPAND,
 EVAS_HINT_EXPAND);

   btn1 = elm_button_add(popup);
   elm_object_text_set(btn1, OK);
   elm_object_part_content_set(popup, button1, btn1);
   evas_object_smart_callback_add(btn1, clicked, NULL, NULL);

   list = elm_list_add(popup);
   evas_object_size_hint_weight_set(list, EVAS_HINT_EXPAND,
           EVAS_HINT_EXPAND);
   evas_object_size_hint_align_set(list, EVAS_HINT_FILL, EVAS_HINT_FILL);
   elm_list_mode_set(list, ELM_LIST_EXPAND);
   evas_object_show(list);

   Evas_Object *group;
   group = radio = elm_radio_add(list);
   evas_object_size_hint_weight_set(radio, EVAS_HINT_EXPAND,
           EVAS_HINT_EXPAND);
   elm_list_item_append(list, Radio, radio, NULL, _filter_all_cb, popup);
   evas_object_show(radio);

   elm_object_content_set(popup, list);
  evas_object_show(popup);
 }

 }}}

 I will check this issue also, but your help will be pretty good to  me.
 Thanks.

 --
 This SF email is sponsosred by:
 Try Windows Azure free for 90 days Click Here
 http://p.sf.net/sfu/sfd2d-msazure
 ___
 enlightenment-devel mailing list
 enlightenment-devel@lists.sourceforge.net
 https://lists.sourceforge.net/lists/listinfo/enlightenment-devel


--
This SF email is sponsosred by:
Try Windows Azure free for 90 days Click Here 
http://p.sf.net/sfu/sfd2d-msazure
___
enlightenment-devel mailing list
enlightenment-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/enlightenment-devel


Re: [E-devel] [Patch][elementary] elc_ctxpopup using elm_list internally.

2012-03-21 Thread Hyoyoung Chang
yeap, it seems nice.
btw, i have a question.

-   if (eina_list_count(wd-items)  1)
+   list = elm_object_item_widget_get(ctxpopup_it-list_item);
+
+   if (eina_list_count(elm_list_items_get(list))  2)
  {
+elm_object_item_del(ctxpopup_it-list_item);
 evas_object_hide(WIDGET(ctxpopup_it));
 return EINA_TRUE;
  }

is there any special reason to check '2' case?

On Wed, Mar 21, 2012 at 6:19 PM, cnook kimci...@gmail.com wrote:
 Dear All, Hello.

 The patch is for using elm_list as a item controller of elc_ctxpopup.
 I have learned that there was an opinion to change the internal structure
 of ctxpopup using the list.
 It would be able to match up to your expectation. but it is just a draft
 version of using list in ctxpopup.
 So, It would be pretty good to me if you give any feedback on this. Thanks.

 Sincerely,
 Shinwoo Kim.

 --
 This SF email is sponsosred by:
 Try Windows Azure free for 90 days Click Here
 http://p.sf.net/sfu/sfd2d-msazure
 ___
 enlightenment-devel mailing list
 enlightenment-devel@lists.sourceforge.net
 https://lists.sourceforge.net/lists/listinfo/enlightenment-devel


--
This SF email is sponsosred by:
Try Windows Azure free for 90 days Click Here 
http://p.sf.net/sfu/sfd2d-msazure
___
enlightenment-devel mailing list
enlightenment-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/enlightenment-devel


[E-devel] [patch] elm_genlist - bugfix at flip_realize

2012-03-20 Thread Hyoyoung Chang
Dear all,

I found a bug in _item_flip_realize.
It replaces previous string list without free.
this patch fixed for it.

Thanks
Index: elementary/src/lib/elm_genlist.c
===
--- elementary/src/lib/elm_genlist.c(리비전 69518)
+++ elementary/src/lib/elm_genlist.c(작업 사본)
@@ -1935,9 +1935,9 @@ _item_flips_realize(Elm_Gen_Item *it,
 const Eina_List *l;
 const char *key;
 Evas_Object *ic = NULL;
+Eina_List *cons = NULL;
+cons = elm_widget_stringlist_get(edje_object_data_get(target, 
flips));
 
-*source = elm_widget_stringlist_get(edje_object_data_get(target, 
flips));
-
 EINA_LIST_FOREACH(*source, l, key)
   {
  if (it-itc-func.content_get)
@@ -1953,6 +1953,8 @@ _item_flips_realize(Elm_Gen_Item *it,
 elm_widget_disabled_set(ic, EINA_TRUE);
}
   }
+*source = eina_list_merge(*source, cons);
+elm_widget_stringlist_free(cons);
  }
 
return res;
--
This SF email is sponsosred by:
Try Windows Azure free for 90 days Click Here 
http://p.sf.net/sfu/sfd2d-msazure___
enlightenment-devel mailing list
enlightenment-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/enlightenment-devel


Re: [E-devel] [patch] elm_genlist - bugfix at flip_realize

2012-03-20 Thread Hyoyoung Chang
oops sorry.
in diff, i did a mistakes
it's refined version.

On Tue, Mar 20, 2012 at 4:43 PM, Sanjeev BA eflel...@gmail.com wrote:
 how does EINA_LIST_FOREACH(*source, l, key) work without initializing
 *source ?

 On Tue, Mar 20, 2012 at 4:31 PM, Hyoyoung Chang hyoyo...@gmail.com wrote:

 Dear all,

 I found a bug in _item_flip_realize.
 It replaces previous string list without free.
 this patch fixed for it.

 Thanks


 --
 This SF email is sponsosred by:
 Try Windows Azure free for 90 days Click Here
 http://p.sf.net/sfu/sfd2d-msazure
 ___
 enlightenment-devel mailing list
 enlightenment-devel@lists.sourceforge.net
 https://lists.sourceforge.net/lists/listinfo/enlightenment-devel


 --
 This SF email is sponsosred by:
 Try Windows Azure free for 90 days Click Here
 http://p.sf.net/sfu/sfd2d-msazure
 ___
 enlightenment-devel mailing list
 enlightenment-devel@lists.sourceforge.net
 https://lists.sourceforge.net/lists/listinfo/enlightenment-devel
Index: elementary/src/lib/elm_genlist.c
===
--- elementary/src/lib/elm_genlist.c(리비전 69519)
+++ elementary/src/lib/elm_genlist.c(작업 사본)
@@ -1935,10 +1935,10 @@ _item_flips_realize(Elm_Gen_Item *it,
 const Eina_List *l;
 const char *key;
 Evas_Object *ic = NULL;
+Eina_List *cons = NULL;
+cons = elm_widget_stringlist_get(edje_object_data_get(target, 
flips));
 
-*source = elm_widget_stringlist_get(edje_object_data_get(target, 
flips));
-
-EINA_LIST_FOREACH(*source, l, key)
+EINA_LIST_FOREACH(cons, l, key)
   {
  if (it-itc-func.content_get)
ic = it-itc-func.content_get
@@ -1953,6 +1953,8 @@ _item_flips_realize(Elm_Gen_Item *it,
 elm_widget_disabled_set(ic, EINA_TRUE);
}
   }
+*source = eina_list_merge(*source, cons);
+elm_widget_stringlist_free(cons);
  }
 
return res;
--
This SF email is sponsosred by:
Try Windows Azure free for 90 days Click Here 
http://p.sf.net/sfu/sfd2d-msazure___
enlightenment-devel mailing list
enlightenment-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/enlightenment-devel


[E-devel] [patch] els_scroller

2012-03-20 Thread Hyoyoung Chang
Dear all,

At early calling gravity_set in els_scroller, segfault can be occurred.
because in smart_add, there's no gravity_set/get func ptr set.
This patch resolves the bug.

Thanks
Index: elementary/src/lib/els_scroller.c
===
--- elementary/src/lib/els_scroller.c   (리비전 69522)
+++ elementary/src/lib/els_scroller.c   (작업 사본)
@@ -2861,6 +2861,8 @@ _smart_add(Evas_Object *obj)
sd-pan_func.max_get = _elm_smart_pan_max_get;
sd-pan_func.min_get = _elm_smart_pan_min_get;
sd-pan_func.child_size_get = _elm_smart_pan_child_size_get;
+   sd-pan_func.gravity_set = _elm_smart_pan_gravity_set;
+   sd-pan_func.gravity_get = _elm_smart_pan_gravity_get;
 
_smart_scrollbar_reset(sd);
 }
--
This SF email is sponsosred by:
Try Windows Azure free for 90 days Click Here 
http://p.sf.net/sfu/sfd2d-msazure___
enlightenment-devel mailing list
enlightenment-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/enlightenment-devel


[E-devel] [patch] elm_genlist - bugfix at item_state_update

2012-03-19 Thread Hyoyoung Chang
Dear all,

I fixed minor error in _elm_genlist_item_state_update.
If item is selected, it sends signal to item and edit_obj.
But edit_obj is not checked by if statement.
I added a parenthesis for it.

Thanks
Index: elementary/src/lib/elm_genlist.c
===
--- elementary/src/lib/elm_genlist.c(리비전 69506)
+++ elementary/src/lib/elm_genlist.c(작업 사본)
@@ -1713,12 +1713,14 @@ _elm_genlist_item_state_update(Elm_Gen_Item *it, I
 if (it-selected != itc-selected)
   {
  if (it-selected)
-   edje_object_signal_emit(VIEW(it),
-   elm,state,selected, elm);
+   {
+  edje_object_signal_emit(VIEW(it),
+  elm,state,selected, elm);
 
- if (it-edit_obj)
-   edje_object_signal_emit(it-edit_obj,
-   elm,state,selected, elm);
+  if (it-edit_obj)
+edje_object_signal_emit(it-edit_obj,
+elm,state,selected, elm);
+   }
   }
 if (elm_widget_item_disabled_get(it) != itc-disabled)
   {
--
This SF email is sponsosred by:
Try Windows Azure free for 90 days Click Here 
http://p.sf.net/sfu/sfd2d-msazure___
enlightenment-devel mailing list
enlightenment-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/enlightenment-devel


Re: [E-devel] elm_scroller_gravity weirdness

2012-03-19 Thread Hyoyoung Chang
On Mon, Mar 19, 2012 at 8:07 PM, Leif Middelschulte
leif.middelschu...@gmail.com wrote:
 2012/3/19 Hyoyoung Chang hyoyo...@gmail.com:
 On Mon, Mar 19, 2012 at 1:20 AM, Leif Middelschulte
 leif.middelschu...@gmail.com wrote:
 2012/3/18 Hyoyoung Chang hyoyo...@gmail.com:
 Hello

 I think the behavior of scroller gravity is similar with edje.
 If y is set as 1.0, then scroller sticks bottom of its parent.
 Parent? I guess the common perception of a scroller is that it has a
 child (the content/stuff you want to navigate in) instead of a
 parent. Also you use elm_object_content_set with it.
 So either we should rename it to parent_gravity or y == 1.0 should
 keep it scrolling down, since y==1.0 is the bottom most region in
 edje.

 Ah sorry, I mean child. i don't know why i write as parent. maybe my
 sleep head makes a mistake :P
 so do you think y == 1.0 is scrolling down?
 yes, since 1.0 usually references the bottom most position in edje's
 relative coordinate system.
gravity set is order to keep scroller current position.
if you set as y(1.0) and prepending item to its child,
scroller will show you current bottom area.
so i think it has similar semantics of edje. doesn't it?
maybe it's clear to rename to elm_scroller_pan_gravity_set.
but i think current name is a not bad.


 At the document of api, yes i agree. it's ambiguous what's doing.
 Maybe the comment should be updated clearly. It's better to more be
 elaborate with examples.

 On Mon, Mar 19, 2012 at 12:47 AM, Leif Middelschulte
 leif.middelschu...@gmail.com wrote:
 Hey all,

 playing with scroller, I noticed - for my perception - some weird value 
 meaning.

 y gravity == 0.0 means bottom most, while 1.0 means topmost. This is
 contrary to edje's style of y == 1.0 means bottom.

 Or am I misunderstanding this?

 --
 Leif

 --
 This SF email is sponsosred by:
 Try Windows Azure free for 90 days Click Here
 http://p.sf.net/sfu/sfd2d-msazure
 ___
 enlightenment-devel mailing list
 enlightenment-devel@lists.sourceforge.net
 https://lists.sourceforge.net/lists/listinfo/enlightenment-devel

 --
 This SF email is sponsosred by:
 Try Windows Azure free for 90 days Click Here
 http://p.sf.net/sfu/sfd2d-msazure
 ___
 enlightenment-devel mailing list
 enlightenment-devel@lists.sourceforge.net
 https://lists.sourceforge.net/lists/listinfo/enlightenment-devel



 --
 Leif

 --
 This SF email is sponsosred by:
 Try Windows Azure free for 90 days Click Here
 http://p.sf.net/sfu/sfd2d-msazure
 ___
 enlightenment-devel mailing list
 enlightenment-devel@lists.sourceforge.net
 https://lists.sourceforge.net/lists/listinfo/enlightenment-devel

 --
 This SF email is sponsosred by:
 Try Windows Azure free for 90 days Click Here
 http://p.sf.net/sfu/sfd2d-msazure
 ___
 enlightenment-devel mailing list
 enlightenment-devel@lists.sourceforge.net
 https://lists.sourceforge.net/lists/listinfo/enlightenment-devel



 --
 Leif

 --
 This SF email is sponsosred by:
 Try Windows Azure free for 90 days Click Here
 http://p.sf.net/sfu/sfd2d-msazure
 ___
 enlightenment-devel mailing list
 enlightenment-devel@lists.sourceforge.net
 https://lists.sourceforge.net/lists/listinfo/enlightenment-devel

--
This SF email is sponsosred by:
Try Windows Azure free for 90 days Click Here 
http://p.sf.net/sfu/sfd2d-msazure
___
enlightenment-devel mailing list
enlightenment-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/enlightenment-devel


Re: [E-devel] [Patch][Genlist] Add the moved.after/before signal instead of moved

2012-03-19 Thread Hyoyoung Chang
It seems nice except signal separator is .
How about change to , from .? other genlist signals uses , as a
naming separator.
Also I think it's better gengrid also changed like this patch in next time :D

On Tue, Mar 20, 2012 at 2:46 PM, chanwook jung jchanw...@gmail.com wrote:
 Dear all,

 Some applications want to know moved.after or before and relative item
 because of updating their own list.
 So I separated moved into moved.after and move.before.

 Thanks,
 Joey

 --
 This SF email is sponsosred by:
 Try Windows Azure free for 90 days Click Here
 http://p.sf.net/sfu/sfd2d-msazure
 ___
 enlightenment-devel mailing list
 enlightenment-devel@lists.sourceforge.net
 https://lists.sourceforge.net/lists/listinfo/enlightenment-devel


--
This SF email is sponsosred by:
Try Windows Azure free for 90 days Click Here 
http://p.sf.net/sfu/sfd2d-msazure
___
enlightenment-devel mailing list
enlightenment-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/enlightenment-devel


Re: [E-devel] elm_scroller_gravity weirdness

2012-03-18 Thread Hyoyoung Chang
Hello

I think the behavior of scroller gravity is similar with edje.
If y is set as 1.0, then scroller sticks bottom of its parent.

At the document of api, yes i agree. it's ambiguous what's doing.
Maybe the comment should be updated clearly. It's better to more be
elaborate with examples.

On Mon, Mar 19, 2012 at 12:47 AM, Leif Middelschulte
leif.middelschu...@gmail.com wrote:
 Hey all,

 playing with scroller, I noticed - for my perception - some weird value 
 meaning.

 y gravity == 0.0 means bottom most, while 1.0 means topmost. This is
 contrary to edje's style of y == 1.0 means bottom.

 Or am I misunderstanding this?

 --
 Leif

 --
 This SF email is sponsosred by:
 Try Windows Azure free for 90 days Click Here
 http://p.sf.net/sfu/sfd2d-msazure
 ___
 enlightenment-devel mailing list
 enlightenment-devel@lists.sourceforge.net
 https://lists.sourceforge.net/lists/listinfo/enlightenment-devel

--
This SF email is sponsosred by:
Try Windows Azure free for 90 days Click Here 
http://p.sf.net/sfu/sfd2d-msazure
___
enlightenment-devel mailing list
enlightenment-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/enlightenment-devel


Re: [E-devel] elm_scroller_gravity weirdness

2012-03-18 Thread Hyoyoung Chang
On Mon, Mar 19, 2012 at 1:20 AM, Leif Middelschulte
leif.middelschu...@gmail.com wrote:
 2012/3/18 Hyoyoung Chang hyoyo...@gmail.com:
 Hello

 I think the behavior of scroller gravity is similar with edje.
 If y is set as 1.0, then scroller sticks bottom of its parent.
 Parent? I guess the common perception of a scroller is that it has a
 child (the content/stuff you want to navigate in) instead of a
 parent. Also you use elm_object_content_set with it.
 So either we should rename it to parent_gravity or y == 1.0 should
 keep it scrolling down, since y==1.0 is the bottom most region in
 edje.

Ah sorry, I mean child. i don't know why i write as parent. maybe my
sleep head makes a mistake :P
so do you think y == 1.0 is scrolling down?


 At the document of api, yes i agree. it's ambiguous what's doing.
 Maybe the comment should be updated clearly. It's better to more be
 elaborate with examples.

 On Mon, Mar 19, 2012 at 12:47 AM, Leif Middelschulte
 leif.middelschu...@gmail.com wrote:
 Hey all,

 playing with scroller, I noticed - for my perception - some weird value 
 meaning.

 y gravity == 0.0 means bottom most, while 1.0 means topmost. This is
 contrary to edje's style of y == 1.0 means bottom.

 Or am I misunderstanding this?

 --
 Leif

 --
 This SF email is sponsosred by:
 Try Windows Azure free for 90 days Click Here
 http://p.sf.net/sfu/sfd2d-msazure
 ___
 enlightenment-devel mailing list
 enlightenment-devel@lists.sourceforge.net
 https://lists.sourceforge.net/lists/listinfo/enlightenment-devel

 --
 This SF email is sponsosred by:
 Try Windows Azure free for 90 days Click Here
 http://p.sf.net/sfu/sfd2d-msazure
 ___
 enlightenment-devel mailing list
 enlightenment-devel@lists.sourceforge.net
 https://lists.sourceforge.net/lists/listinfo/enlightenment-devel



 --
 Leif

 --
 This SF email is sponsosred by:
 Try Windows Azure free for 90 days Click Here
 http://p.sf.net/sfu/sfd2d-msazure
 ___
 enlightenment-devel mailing list
 enlightenment-devel@lists.sourceforge.net
 https://lists.sourceforge.net/lists/listinfo/enlightenment-devel

--
This SF email is sponsosred by:
Try Windows Azure free for 90 days Click Here 
http://p.sf.net/sfu/sfd2d-msazure
___
enlightenment-devel mailing list
enlightenment-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/enlightenment-devel


[E-devel] [patch] elm_genlist - bugfix at decorate mode

2012-03-18 Thread Hyoyoung Chang
Dear all,

I found a bug in decorate mode that selection callback is called twice.
Because two _mouse_down callbacks are added to a genlist item.
I'm fixing this bug and some refactoring.

Thanks.
Index: elementary/src/lib/elm_genlist.c
===
--- elementary/src/lib/elm_genlist.c(리비전 69494)
+++ elementary/src/lib/elm_genlist.c(작업 사본)
@@ -1465,6 +1465,40 @@ _mouse_up(void*data,
 }
 
 static void
+_item_mouse_common_callbacks_add(Elm_Gen_Item *it, Evas_Object *view)
+{
+   evas_object_event_callback_add(view, EVAS_CALLBACK_MOUSE_DOWN,
+  _mouse_down, it);
+   evas_object_event_callback_add(view, EVAS_CALLBACK_MOUSE_UP,
+  _mouse_up, it);
+   evas_object_event_callback_add(view, EVAS_CALLBACK_MOUSE_MOVE,
+  _mouse_move, it);
+   evas_object_event_callback_add(view, EVAS_CALLBACK_MULTI_DOWN,
+  _multi_down, it);
+   evas_object_event_callback_add(view, EVAS_CALLBACK_MULTI_UP,
+  _multi_up, it);
+   evas_object_event_callback_add(view, EVAS_CALLBACK_MULTI_MOVE,
+  _multi_move, it);
+}
+
+static void
+_item_mouse_common_callbacks_del(Elm_Gen_Item *it, Evas_Object *view)
+{
+   evas_object_event_callback_del_full(view, EVAS_CALLBACK_MOUSE_DOWN,
+   _mouse_down, it);
+   evas_object_event_callback_del_full(view, EVAS_CALLBACK_MOUSE_UP,
+   _mouse_up, it);
+   evas_object_event_callback_del_full(view, EVAS_CALLBACK_MOUSE_MOVE,
+   _mouse_move, it);
+   evas_object_event_callback_del_full(view, EVAS_CALLBACK_MULTI_DOWN,
+   _multi_down, it);
+   evas_object_event_callback_del_full(view, EVAS_CALLBACK_MULTI_UP,
+   _multi_up, it);
+   evas_object_event_callback_del_full(view, EVAS_CALLBACK_MULTI_MOVE,
+   _multi_move, it);
+}
+
+static void
 _signal_expand_toggle(void*data,
   Evas_Object *obj __UNUSED__,
   const char  *emission __UNUSED__,
@@ -1624,18 +1658,7 @@ _item_cache_add(Elm_Gen_Item *it)
 _signal_expand, it);
edje_object_signal_callback_del_full(itc-base_view, elm,action,contract,
 elm, _signal_contract, it);
-   evas_object_event_callback_del_full(itc-base_view, 
EVAS_CALLBACK_MOUSE_DOWN,
-   _mouse_down, it);
-   evas_object_event_callback_del_full(itc-base_view, EVAS_CALLBACK_MOUSE_UP,
-   _mouse_up, it);
-   evas_object_event_callback_del_full(itc-base_view, 
EVAS_CALLBACK_MOUSE_MOVE,
-   _mouse_move, it);
-   evas_object_event_callback_del_full(itc-base_view, 
EVAS_CALLBACK_MULTI_DOWN,
-   _multi_down, it);
-   evas_object_event_callback_del_full(itc-base_view, EVAS_CALLBACK_MULTI_UP,
-   _multi_up, it);
-   evas_object_event_callback_del_full(itc-base_view, 
EVAS_CALLBACK_MULTI_MOVE,
-   _multi_move, it);
+   _item_mouse_common_callbacks_del(it, itc-base_view);
_item_cache_clean(it-wd);
evas_event_thaw(evas_object_evas_get(it-wd-obj));
evas_event_thaw_eval(evas_object_evas_get(it-wd-obj));
@@ -2045,18 +2068,7 @@ _item_realize(Elm_Gen_Item *it,
 elm, _signal_expand, it);
 edje_object_signal_callback_add(VIEW(it), elm,action,contract,
 elm, _signal_contract, it);
-evas_object_event_callback_add(VIEW(it), EVAS_CALLBACK_MOUSE_DOWN,
-   _mouse_down, it);
-evas_object_event_callback_add(VIEW(it), EVAS_CALLBACK_MOUSE_UP,
-   _mouse_up, it);
-evas_object_event_callback_add(VIEW(it), EVAS_CALLBACK_MOUSE_MOVE,
-   _mouse_move, it);
-evas_object_event_callback_add(VIEW(it), EVAS_CALLBACK_MULTI_DOWN,
-   _multi_down, it);
-evas_object_event_callback_add(VIEW(it), EVAS_CALLBACK_MULTI_UP,
-   _multi_up, it);
-evas_object_event_callback_add(VIEW(it), EVAS_CALLBACK_MULTI_MOVE,
-   _multi_move, it);
+_item_mouse_common_callbacks_add(it, VIEW(it));
 
 if ((it-wd-decorate_mode)  (!it-edit_obj) 
 (it-item-type != ELM_GENLIST_ITEM_GROUP)  
(it-itc-decorate_all_item_style))
@@ -3327,18 +3339,8 @@ _decorate_mode_item_realize(Elm_Gen_Item *it, Eina
if (effect_on) edje_object_signal_emit(it-edit_obj, 

[E-devel] [patch] elm_genlist - add checking at show_item and widget type at calc_job

2012-03-14 Thread Hyoyoung Chang
Dear all.

This patch include two changes

1. at _scroll_item, added to check show_item is null or not.
2. at _calc_job, added to check genlist type
   because calc_job is added anytime, but some genlist clearing is can
be done before doing calc_job.

Thanks.
Index: elementary/src/lib/elm_genlist.c
===
--- elementary/src/lib/elm_genlist.c(리비전 69314)
+++ elementary/src/lib/elm_genlist.c(작업 사본)
@@ -2524,6 +2524,7 @@ _scroll_item(Widget_Data *wd)
Elm_Gen_Item *it = NULL;
Evas_Coord gith = 0;
Evas_Coord ow, oh, dx = 0, dy = 0, dw = 0, dh = 0;
+   if (!wd-show_item) return;
 
evas_object_geometry_get(wd-pan_smart, NULL, NULL, ow, oh);
it = wd-show_item;
@@ -2583,6 +2584,7 @@ _calc_job(void *data)
Eina_Bool minw_change = EINA_FALSE;
Eina_Bool did_must_recalc = EINA_FALSE;
if (!wd) return;
+   ELM_CHECK_WIDTYPE(wd-obj,widtype);
 
evas_object_geometry_get(wd-pan_smart, NULL, NULL, ow, wd-h);
elm_smart_scroller_child_viewport_size_get(wd-scr, vw, NULL);
@@ -2698,10 +2700,13 @@ _calc_job(void *data)
   dy = 0;
   break;
   }
-if ((pan_w  (wd-show_item-x + wd-show_item-item-block-x)) 
-(pan_h  (wd-show_item-y + wd-show_item-item-block-y + dy)))
+if (wd-show_item)
   {
- _scroll_item(wd);
+ if ((pan_w  (wd-show_item-x + wd-show_item-item-block-x)) 

+ (pan_h  (wd-show_item-y + wd-show_item-item-block-y + 
dy)))
+   {
+  _scroll_item(wd);
+   }
   }
  }
wd-calc_job = NULL;
--
Virtualization  Cloud Management Using Capacity Planning
Cloud computing makes use of virtualization - but cloud computing 
also focuses on allowing computing to be delivered as a service.
http://www.accelacomm.com/jaw/sfnl/114/51521223/___
enlightenment-devel mailing list
enlightenment-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/enlightenment-devel


Re: [E-devel] [patch] elm_genlist - add checking at show_item and widget type at calc_job

2012-03-14 Thread Hyoyoung Chang
Hi
I'm tried several times to reproduce. but i can't.
so i remove checking in _calc_job.
review this patch, please
thanks.

On Wed, Mar 14, 2012 at 4:40 PM, Daniel Juyung Seo seojuyu...@gmail.com wrote:
 Hello,
 widget type check should be done in EAPI and obj in internal function
 must be valid at any time.
 If the obj is NULL in _calc_job, somewhere else must be wrong.
 Can you check that point again?

 Daniel Juyung Seo (SeoZ)


 On Wed, Mar 14, 2012 at 3:09 PM, Hyoyoung Chang hyoyo...@gmail.com wrote:
 Dear all.

 This patch include two changes

 1. at _scroll_item, added to check show_item is null or not.
 2. at _calc_job, added to check genlist type
   because calc_job is added anytime, but some genlist clearing is can
 be done before doing calc_job.

 Thanks.

 --
 Virtualization  Cloud Management Using Capacity Planning
 Cloud computing makes use of virtualization - but cloud computing
 also focuses on allowing computing to be delivered as a service.
 http://www.accelacomm.com/jaw/sfnl/114/51521223/
 ___
 enlightenment-devel mailing list
 enlightenment-devel@lists.sourceforge.net
 https://lists.sourceforge.net/lists/listinfo/enlightenment-devel


 --
 Virtualization  Cloud Management Using Capacity Planning
 Cloud computing makes use of virtualization - but cloud computing
 also focuses on allowing computing to be delivered as a service.
 http://www.accelacomm.com/jaw/sfnl/114/51521223/
 ___
 enlightenment-devel mailing list
 enlightenment-devel@lists.sourceforge.net
 https://lists.sourceforge.net/lists/listinfo/enlightenment-devel
Index: elementary/src/lib/elm_genlist.c
===
--- elementary/src/lib/elm_genlist.c(리비전 69314)
+++ elementary/src/lib/elm_genlist.c(작업 사본)
@@ -2524,6 +2524,7 @@ _scroll_item(Widget_Data *wd)
Elm_Gen_Item *it = NULL;
Evas_Coord gith = 0;
Evas_Coord ow, oh, dx = 0, dy = 0, dw = 0, dh = 0;
+   if (!wd-show_item) return;
 
evas_object_geometry_get(wd-pan_smart, NULL, NULL, ow, oh);
it = wd-show_item;
@@ -2583,6 +2584,7 @@ _calc_job(void *data)
Eina_Bool minw_change = EINA_FALSE;
Eina_Bool did_must_recalc = EINA_FALSE;
if (!wd) return;
+   ELM_CHECK_WIDTYPE(wd-obj,widtype);
 
evas_object_geometry_get(wd-pan_smart, NULL, NULL, ow, wd-h);
elm_smart_scroller_child_viewport_size_get(wd-scr, vw, NULL);
@@ -2698,10 +2700,13 @@ _calc_job(void *data)
   dy = 0;
   break;
   }
-if ((pan_w  (wd-show_item-x + wd-show_item-item-block-x)) 
-(pan_h  (wd-show_item-y + wd-show_item-item-block-y + dy)))
+if (wd-show_item)
   {
- _scroll_item(wd);
+ if ((pan_w  (wd-show_item-x + wd-show_item-item-block-x)) 

+ (pan_h  (wd-show_item-y + wd-show_item-item-block-y + 
dy)))
+   {
+  _scroll_item(wd);
+   }
   }
  }
wd-calc_job = NULL;
--
This SF email is sponsosred by:
Try Windows Azure free for 90 days Click Here 
http://p.sf.net/sfu/sfd2d-msazure___
enlightenment-devel mailing list
enlightenment-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/enlightenment-devel


[E-devel] [patch] elm_genlist - bugfix at genlist _item_select

2012-03-13 Thread Hyoyoung Chang
Dear all,

In _item_select, some if conditional is not working as user intention.
always_select mode checking is reversed and no-select mode is not checked.
I add and fix it.
Thanks
Index: elementary/src/lib/elm_genlist.c
===
--- elementary/src/lib/elm_genlist.c(리비전 69290)
+++ elementary/src/lib/elm_genlist.c(작업 사본)
@@ -3509,6 +3509,7 @@
 _item_select(Elm_Gen_Item *it)
 {
if ((it-generation  it-wd-generation) || (it-mode_set) ||
+   (it-select_mode == ELM_OBJECT_SELECT_MODE_NONE) ||
(it-wd-select_mode == ELM_OBJECT_SELECT_MODE_NONE))
  return;
if (!it-selected)
@@ -3516,7 +3517,7 @@
 it-selected = EINA_TRUE;
 it-wd-selected = eina_list_append(it-wd-selected, it);
  }
-   else if (it-wd-select_mode == ELM_OBJECT_SELECT_MODE_ALWAYS) return;
+   else if (it-wd-select_mode != ELM_OBJECT_SELECT_MODE_ALWAYS) return;
 
evas_object_ref(WIDGET(it));
it-walking++;
--
Keep Your Developer Skills Current with LearnDevNow!
The most comprehensive online learning library for Microsoft developers
is just $99.99! Visual Studio, SharePoint, SQL - plus HTML5, CSS3, MVC3,
Metro Style Apps, more. Free future releases when you subscribe now!
http://p.sf.net/sfu/learndevnow-d2d___
enlightenment-devel mailing list
enlightenment-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/enlightenment-devel


[E-devel] [patch] replace elm_genlist_item_object_get api

2012-03-13 Thread Hyoyoung Chang
Dear all.

due to elm_genlist_item_object_get() is deprecated, I made a patch to
replace them to adequate apis.
most of case is sending signal.

Thanks.
Index: eve/src/bin/chrome.c
===
--- eve/src/bin/chrome.c(리비전 69309)
+++ eve/src/bin/chrome.c(작업 사본)
@@ -1912,7 +1912,7 @@ on_more_item_click(void *data, Evas_Object *obj,
  conf = mmi-next;
  if (conf-type == CONFIG_TYPE_CHECKBOX)
  {
- Evas_Object *end = 
edje_object_part_swallow_get(elm_genlist_item_object_get(event_info), 
elm.swallow.end);
+ Evas_Object *end = elm_object_item_part_content_get(event_info, 
elm.swallow.end);
  if (end) elm_check_state_set(end, !elm_check_state_get(end));
  elm_genlist_item_selected_set(event_info, EINA_FALSE);
  return;
Index: BINDINGS/cxx/elementaryxx/include/elementaryxx/GenList.h
===
--- BINDINGS/cxx/elementaryxx/include/elementaryxx/GenList.h(리비전 69309)
+++ BINDINGS/cxx/elementaryxx/include/elementaryxx/GenList.h(작업 사본)
@@ -66,7 +66,7 @@ class GenListColumnSelector;
  * realized - This is called when the item in the list is created as a real
  * evas object. event_info parameter is the genlist item that was created.
  * The object may be deleted at any time, so it is up to the caller to
- * not use the object pointer from elm_genlist_item_object_get() in a way
+ * not use the object pointer from elm_object_item_part_content_get() in a way
  * where it may point to freed objects.
  *
  * drag,start,up - This is called when the item in the list has been dragged
Index: BINDINGS/cxx/elementaryxx/include/elementaryxx/GenListItem.h
===
--- BINDINGS/cxx/elementaryxx/include/elementaryxx/GenListItem.h(리비전 
69309)
+++ BINDINGS/cxx/elementaryxx/include/elementaryxx/GenListItem.h(작업 사본)
@@ -36,8 +36,6 @@ class GenListItem : public GenItem
   void bringIn (Elm_Genlist_Item_Scrollto_Type type);
   void update ();
 
-  const Evasxx::Object *getEvasObject ();
-
   static GenListItem *wrap (Elm_Object_Item item, GenDataModel model);
 
   static GenListItem *objectLink (const Elm_Object_Item *item);
Index: BINDINGS/cxx/elementaryxx/src/GenListItem.cpp
===
--- BINDINGS/cxx/elementaryxx/src/GenListItem.cpp   (리비전 69309)
+++ BINDINGS/cxx/elementaryxx/src/GenListItem.cpp   (작업 사본)
@@ -87,12 +87,6 @@ void GenListItem::update ()
   elm_genlist_item_update (mItem);
 }
 
-const Evasxx::Object *GenListItem::getEvasObject ()
-{
-  const Evas_Object *obj = elm_genlist_item_object_get (mItem);
-  return Evasxx::Object::objectLink (obj);
-}
-
 GenListItem *GenListItem::wrap (Elm_Object_Item item, GenDataModel model)
 {
   GenListItem *genItem = new GenListItem (item);
Index: BINDINGS/perl/Elementary/Elementary.xs
===
--- BINDINGS/perl/Elementary/Elementary.xs  (리비전 69309)
+++ BINDINGS/perl/Elementary/Elementary.xs  (작업 사본)
@@ -1173,9 +1173,6 @@ elm_genlist_item_show(Elm_Object_Item *item, Elm_G
 void
 elm_genlist_item_bring_in(Elm_Object_Item *item, 
Elm_Genlist_Item_Scrollto_Type type)
 
-Evas_Object *
-elm_genlist_item_object_get(Elm_Object_Item *it)
-
 void
 elm_genlist_item_update(Elm_Object_Item *item)
 
Index: BINDINGS/perl/lib/EFL/Elementary.pm
===
--- BINDINGS/perl/lib/EFL/Elementary.pm (리비전 69309)
+++ BINDINGS/perl/lib/EFL/Elementary.pm (작업 사본)
@@ -651,7 +651,6 @@ my @__todo = qw(
   elm_genlist_item_insert_after
   elm_genlist_item_insert_before
   elm_genlist_item_next_get
-  elm_genlist_item_object_get
   elm_genlist_item_parent_get
   elm_genlist_item_prepend
   elm_genlist_item_prev_get
Index: enki/src/bin/list_left.c
===
--- enki/src/bin/list_left.c(리비전 69309)
+++ enki/src/bin/list_left.c(작업 사본)
@@ -340,10 +340,8 @@ _gl_text_get(void *data, Evas_Object *obj, const c
 
if (album_data-list_album_item)
{
-  const Evas_Object *o =
-   elm_genlist_item_object_get(album_data-list_album_item);
-  evas_object_event_callback_add((Evas_Object *) o, EVAS_CALLBACK_MOUSE_UP,
- _right_click_cb, album);
+  elm_object_item_smart_callback_add(album_data-list_album_item,
+ EVAS_CALLBACK_MOUSE_UP, 
_right_click_cb, album);
}
 
return strdup(enlil_album_name_get(album));
@@ -437,9 +435,9 @@ _gl_col_text_get(void *data, Evas_Object *obj, con
const Enlil_Collection *col = data;
Enlil_Collection_Data *col_data = enlil_collection_user_data_get(col);
 
-   const Evas_Object *o = elm_genlist_item_object_get(col_data-list_col_item);
-   

[E-devel] [patch] elm_genlist - add item signal emit hook

2012-03-09 Thread Hyoyoung Chang
Dear all.

This is a patch about genlist to add item signal emit hook.
due to elm_genlist_item_object_get is deprecated,
item sinal emit hook should be supported.
So it's added.

+   elm_widget_item_signal_emit_hook_set(it, _item_signal_emit_hook);

Thanks
Index: elementary/src/lib/elm_genlist.c
===
--- elementary/src/lib/elm_genlist.c(리비전 69071)
+++ elementary/src/lib/elm_genlist.c(작업 사본)
@@ -3638,6 +3638,14 @@ _item_del_pre_hook(Elm_Object_Item *it)
return EINA_TRUE;
 }
 
+static void
+_item_signal_emit_hook(Elm_Object_Item *it,
+   const char *emission,
+   const char *source)
+{
+   elm_object_signal_emit(VIEW(it), emission, source);
+}
+
 Elm_Gen_Item *
 _elm_genlist_item_new(Widget_Data  *wd,
   const Elm_Gen_Item_Class *itc,
@@ -3664,6 +3672,8 @@ _elm_genlist_item_new(Widget_Data  *wd
elm_widget_item_text_get_hook_set(it, _item_text_hook);
elm_widget_item_disable_hook_set(it, _item_disable_hook);
elm_widget_item_del_pre_hook_set(it, _item_del_pre_hook);
+   elm_widget_item_signal_emit_hook_set(it, _item_signal_emit_hook);
+
/* TEMPORARY */
it-sel_cb = (Ecore_Cb)_item_select;
 
Index: elementary/src/lib/elm_genlist.h
===
--- elementary/src/lib/elm_genlist.h(리비전 69071)
+++ elementary/src/lib/elm_genlist.h(작업 사본)
@@ -329,6 +329,7 @@
  * @li elm_object_item_part_text_get()
  * @li elm_object_item_disabled_set()
  * @li elm_object_item_disabled_get()
+ * @li elm_object_item_signal_emit()
  *
  * @section Genlist_Examples Examples
  *
--
Virtualization  Cloud Management Using Capacity Planning
Cloud computing makes use of virtualization - but cloud computing 
also focuses on allowing computing to be delivered as a service.
http://www.accelacomm.com/jaw/sfnl/114/51521223/___
enlightenment-devel mailing list
enlightenment-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/enlightenment-devel


Re: [E-devel] ephoto fail

2012-03-08 Thread Hyoyoung Chang
Yeah you're right.

elm_gengrid_item_bring_in's parameters is changed.
added one more parameter to call bring_in to dest.
I'll send a patch for this

Thanks

On Fri, Mar 9, 2012 at 1:15 AM, Dave Ray cl...@jonive.com wrote:
 Hi,
 I am guessing that ephoto is now out if sync with all the elm changes 
 yesterday. I am getting the following build error for ephoto:

 Making all in bin
 make  all-am
  CC     ephoto_ql_la-ephoto.lo
  CC     ephoto_ql_la-ephoto_main.lo
 ephoto_main.c: In function '_ephoto_thumb_browser_show':
 ephoto_main.c:29: warning: 'elm_pager_content_promote' is deprecated 
 (declared at /usr/local/include/elementary-0/elm_deprecated.h:5017)
 ephoto_main.c:33: error: too few arguments to function 
 'elm_gengrid_item_bring_in'

 FYI, all e17 libs compile and run fine on OSX currently, as does elm. I don't 
 think the OS matters with this error.

 -Dave



 --
 Virtualization  Cloud Management Using Capacity Planning
 Cloud computing makes use of virtualization - but cloud computing
 also focuses on allowing computing to be delivered as a service.
 http://www.accelacomm.com/jaw/sfnl/114/51521223/
 ___
 enlightenment-devel mailing list
 enlightenment-devel@lists.sourceforge.net
 https://lists.sourceforge.net/lists/listinfo/enlightenment-devel

--
Virtualization  Cloud Management Using Capacity Planning
Cloud computing makes use of virtualization - but cloud computing 
also focuses on allowing computing to be delivered as a service.
http://www.accelacomm.com/jaw/sfnl/114/51521223/
___
enlightenment-devel mailing list
enlightenment-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/enlightenment-devel


[E-devel] [patch] ephoto - resolve build errors

2012-03-08 Thread Hyoyoung Chang
Dear all

In ephoto, elm_gengrid_item_bring_in is used.
However some days ago, many changes was committed to elm. Also it's
parameters are changed.
It's patch for this.

Thanks
Index: ephoto/src/bin/ephoto_main.c
===
--- ephoto/src/bin/ephoto_main.c(리비전 69073)
+++ ephoto/src/bin/ephoto_main.c(작업 사본)
@@ -28,9 +28,10 @@ _ephoto_thumb_browser_show(Ephoto *ephoto, Ephoto_
ephoto_slideshow_entry_set(ephoto-slideshow, NULL);
elm_pager_content_promote(ephoto-pager, ephoto-thumb_browser);
_ephoto_state_set(ephoto, EPHOTO_STATE_THUMB);
-   ephoto_title_set(ephoto, ephoto-config-directory); 
+   ephoto_title_set(ephoto, ephoto-config-directory);
 
-   if ((entry)  (entry-item)) elm_gengrid_item_bring_in(entry-item);
+   if ((entry)  (entry-item))
+ elm_gengrid_item_bring_in(entry-item, ELM_GENGRID_ITEM_SCROLLTO_IN);
 }
 
 static void
--
Virtualization  Cloud Management Using Capacity Planning
Cloud computing makes use of virtualization - but cloud computing 
also focuses on allowing computing to be delivered as a service.
http://www.accelacomm.com/jaw/sfnl/114/51521223/___
enlightenment-devel mailing list
enlightenment-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/enlightenment-devel


[E-devel] [patch] building error fix at using gen{list, grid} functions

2012-03-08 Thread Hyoyoung Chang
Dear all,

After elm radically changed, some compilation errors are not fixed.
I changed for this.

1. add a parameter for item_bring_in
-elm_genlist_item_bring_in(it);
+elm_genlist_item_bring_in(it, ELM_GENLIST_ITEM_SCROLLTO_IN);

2. change a enum type name
-   Elm_Genlist_Item_Flags
+   Elm_Genlist_Item_Type

3. change a enum name
-   if (!parent) flags = ELM_GENLIST_ITEM_SUBITEMS;
+   if (!parent) flags = ELM_GENLIST_ITEM_TREE;

affected file list:
PROTO/enna-explorer/src/bin/shortcut.c
PROTO/ev/ev.c
editje/editje/filewizard.py
envision/src/bin/main.c
BINDINGS/python/python-elementary/elementary/__init__.py
BINDINGS/cxx/eflxx_examples/src/elementaryxx/full/test_panel.cpp
BINDINGS/cxx/eflxx_examples/src/elementaryxx/full/test_genlist.cpp
BINDINGS/cxx/elementaryxx/include/elementaryxx/GenList.h
BINDINGS/cxx/elementaryxx/src/GenList.cpp
BINDINGS/cxx/elementaryxx/src/GenListItem.cpp
BINDINGS/perl/t/elementary_test.t
BINDINGS/perl/Elementary/Makefile.PL
BINDINGS/perl/Elementary/Elementary.xs
BINDINGS/perl/lib/EFL/Elementary.pm
ensure/src/errors.c
ensure/src/entree.c
ensure/src/enconfig.c
clouseau/src/lib/libclouseau.c
clouseau/src/lib/ui/obj_information.c
enki/src/bin/evas_object/enki_elm_genlist_tree.c

Thanks.
Index: PROTO/enna-explorer/src/bin/shortcut.c
===
--- PROTO/enna-explorer/src/bin/shortcut.c  (리비전 69071)
+++ PROTO/enna-explorer/src/bin/shortcut.c  (작업 사본)
@@ -564,7 +564,7 @@ enna_shortcut_add(Evas_Object *parent)
 
 
egi = elm_genlist_item_append(list, itc_favorite_group, DEVICES, NULL,
- ELM_GENLIST_ITEM_SUBITEMS, NULL, NULL);
+ ELM_GENLIST_ITEM_TREE, NULL, NULL);
 
evas_object_data_set(list, devices/item, egi);
evas_object_data_set(list, items, egi);
@@ -600,10 +600,10 @@ enna_shortcut_add(Evas_Object *parent)
 
 
egi = elm_genlist_item_append(list, itc_favorite_group, NETWORK, NULL,
- ELM_GENLIST_ITEM_SUBITEMS, NULL, NULL);
+ ELM_GENLIST_ITEM_TREE, NULL, NULL);
 
egi = elm_genlist_item_append(list, itc_favorite_group, PLACES, NULL,
- ELM_GENLIST_ITEM_SUBITEMS, NULL, NULL);
+ ELM_GENLIST_ITEM_TREE, NULL, NULL);
 
gtk_bookmarks = _enna_shortcut_parse_gtk_bookmarks();
EINA_LIST_FREE(gtk_bookmarks, file)
Index: PROTO/ev/ev.c
===
--- PROTO/ev/ev.c   (리비전 69071)
+++ PROTO/ev/ev.c   (작업 사본)
@@ -103,7 +103,7 @@ _key(void *data __UNUSED__, Evas *e __UNUSED__, Ev
 if (!it) it = elm_genlist_first_item_get(list);
 DBG(next: %p, it);
 elm_genlist_item_selected_set(it, EINA_TRUE);
-elm_genlist_item_bring_in(it);
+elm_genlist_item_bring_in(it, ELM_GENLIST_ITEM_SCROLLTO_IN);
 _pick(NULL, NULL, it);
  }
else if ((!strcmp(key-keyname, Return)) || (!strcmp(key-keyname, 
KP_Enter)))
@@ -111,7 +111,7 @@ _key(void *data __UNUSED__, Evas *e __UNUSED__, Ev
 if (obj == elm_object_parent_widget_get(img)) return;
 it = elm_genlist_selected_item_get(list);
 if (!it) return;
-elm_genlist_item_bring_in(it);
+elm_genlist_item_bring_in(it, ELM_GENLIST_ITEM_SCROLLTO_IN);
 _pick(NULL, NULL, it);
  }
else if (key-keyname[0] == 'q')
Index: editje/editje/filewizard.py
===
--- editje/editje/filewizard.py (리비전 69071)
+++ editje/editje/filewizard.py (작업 사본)
@@ -297,7 +297,7 @@ class FontSelectionWizard(FileSelectionWizard):
 self._files += self._system_fonts
 
 self._file_list.item_append(itc, message, None,
-   elementary.ELM_GENLIST_ITEM_SUBITEMS, self._expand_cb)
+   elementary.ELM_GENLIST_ITEM_TREE, self._expand_cb)
 
 def _expand_cb(self, obj, part, item_data):
 if obj.expanded:
Index: envision/src/bin/main.c
===
--- envision/src/bin/main.c (리비전 69071)
+++ envision/src/bin/main.c (작업 사본)
@@ -241,7 +241,7 @@ grid_changed(void*data,
App *app = data;
if (!app-bring_in_cur_page) return;
app-bring_in_cur_page = EINA_FALSE;
-   elm_gengrid_item_bring_in(app-current_item_page);
+   elm_gengrid_item_bring_in(app-current_item_page, 
ELM_GENGRID_ITEM_SCROLLTO_IN);
 }
 
 /*-CONTENT GET - RENDER PDF-*/
@@ -340,7 +340,7 @@ grid_item_db_double_clicked(void*data,
app-current_item_page = event_info;
app-bring_in_cur_page = EINA_TRUE;
page_view_mode_set((App *)data, WINDOW_WIDTH);
-   elm_gengrid_item_bring_in(app-current_item_page);
+   elm_gengrid_item_bring_in(app-current_item_page, 
ELM_GENGRID_ITEM_SCROLLTO_IN);
 }
 
 /*--ZOOM IN 

[E-devel] [patch] gengrid - Some missing APIs is added

2012-03-07 Thread Hyoyoung Chang
Dear all.

After api reivew, some api is missed in gengrid.
So I add this apis to gengrid.

patch file - 0001
+EAPI Eina_List
*elm_gengrid_realized_items_get(const Evas_Object *obj);
+EAPI void
elm_gengrid_realized_items_update(Evas_Object *obj);

patch file - 0002
+EAPI void
elm_gengrid_scroller_policy_set(Evas_Object *obj, Elm_Scroller_Policy
policy_h, Elm_Scroller_Policy policy_v);
+EAPI void
elm_gengrid_scroller_policy_get(const Evas_Object *obj,
Elm_Scroller_Policy *policy_h, Elm_Scroller_Policy *policy_v);

patch file - 0003
+EAPI unsigned int elm_gengrid_items_count(const Evas_Object *obj);

Thanks
From 5eb24212f94c5441209ab0bb936f6dd002c23e6e Mon Sep 17 00:00:00 2001
From: Hyoyoung Chang hyoyoung.ch...@samsung.com
Date: Wed, 7 Mar 2012 17:58:19 +0900
Subject: [PATCH 2/3] [gengrid] add scroller_policy_set/get

---
 src/lib/elm_gengrid.c |   28 
 src/lib/elm_gengrid.h |   36 
 2 files changed, 60 insertions(+), 4 deletions(-)

diff --git a/src/lib/elm_gengrid.c b/src/lib/elm_gengrid.c
index a01763b..0a1cfc9 100644
--- a/src/lib/elm_gengrid.c
+++ b/src/lib/elm_gengrid.c
@@ -2714,6 +2714,34 @@ elm_gengrid_page_bring_in(const Evas_Object *obj, int h_pagenumber, int v_pagenu
_elm_genlist_page_bring_in(obj, h_pagenumber, v_pagenumber);
 }
 
+EAPI void
+elm_gengrid_scroller_policy_set(Evas_Object*obj,
+Elm_Scroller_Policy policy_h,
+Elm_Scroller_Policy policy_v)
+{
+   ELM_CHECK_WIDTYPE(obj, widtype);
+   Widget_Data *wd = elm_widget_data_get(obj);
+   if ((!wd) || (!wd-scr)) return;
+   if ((policy_h = ELM_SCROLLER_POLICY_LAST) ||
+   (policy_v = ELM_SCROLLER_POLICY_LAST))
+ return;
+   elm_smart_scroller_policy_set(wd-scr, policy_h, policy_v);
+}
+
+EAPI void
+elm_gengrid_scroller_policy_get(const Evas_Object   *obj,
+Elm_Scroller_Policy *policy_h,
+Elm_Scroller_Policy *policy_v)
+{
+   ELM_CHECK_WIDTYPE(obj, widtype);
+   Widget_Data *wd = elm_widget_data_get(obj);
+   Elm_Smart_Scroller_Policy s_policy_h, s_policy_v;
+   if ((!wd) || (!wd-scr)) return;
+   elm_smart_scroller_policy_get(wd-scr, s_policy_h, s_policy_v);
+   if (policy_h) *policy_h = (Elm_Scroller_Policy)s_policy_h;
+   if (policy_v) *policy_v = (Elm_Scroller_Policy)s_policy_v;
+}
+
 EAPI Elm_Object_Item *
 elm_gengrid_first_item_get(const Evas_Object *obj)
 {
diff --git a/src/lib/elm_gengrid.h b/src/lib/elm_gengrid.h
index 02f8796..054dff3 100644
--- a/src/lib/elm_gengrid.h
+++ b/src/lib/elm_gengrid.h
@@ -613,11 +613,39 @@ EAPI Elm_Object_Item *elm_gengrid_first_item_get(const Evas_Object *
  */
 EAPI Elm_Object_Item *elm_gengrid_last_item_get(const Evas_Object *obj);
 
-//XXX: let's add
-//EAPI void  elm_gengrid_scroller_policy_set(Evas_Object *obj, Elm_Scroller_Policy policy_h, Elm_Scroller_Policy policy_v);
+/**
+ * Set the scrollbar policy
+ *
+ * @param obj The gengrid object
+ * @param policy_h Horizontal scrollbar policy.
+ * @param policy_v Vertical scrollbar policy.
+ *
+ * This sets the scrollbar visibility policy for the given gengrid
+ * scroller. #ELM_SMART_SCROLLER_POLICY_AUTO means the scrollbar is
+ * made visible if it is needed, and otherwise kept hidden.
+ * #ELM_SMART_SCROLLER_POLICY_ON turns it on all the time, and
+ * #ELM_SMART_SCROLLER_POLICY_OFF always keeps it off. This applies
+ * respectively for the horizontal and vertical scrollbars. Default is
+ * #ELM_SMART_SCROLLER_POLICY_AUTO
+ *
+ * @see elm_gengrid_scroller_policy_get()
+ *
+ * @ingroup Gengrid
+ */
+EAPI void  elm_gengrid_scroller_policy_set(Evas_Object *obj, Elm_Scroller_Policy policy_h, Elm_Scroller_Policy policy_v);
 
-//XXX: lets' add
-//EAPI void  elm_gengrid_scroller_policy_get(const Evas_Object *obj, Elm_Scroller_Policy *policy_h, Elm_Scroller_Policy *policy_v);
+/**
+ * Get the scrollbar policy
+ *
+ * @param obj The gengrid object
+ * @param policy_h Pointer to store the horizontal scrollbar policy.
+ * @param policy_v Pointer to store the vertical scrollbar policy.
+ *
+ * @see elm_gengrid_scroller_policy_set()
+ *
+ * @ingroup Gengrid
+ */
+EAPI void  elm_gengrid_scroller_policy_get(const Evas_Object *obj, Elm_Scroller_Policy *policy_h, Elm_Scroller_Policy *policy_v);
 
 /**
  * Get the @b next item in a gengrid widget's internal list of items,
-- 
1.7.5.4

From 49447da8519415b6eec81a57c0265aff2e5870dd Mon Sep 17 00:00:00 2001
From: Hyoyoung Chang hyoyoung.ch...@samsung.com
Date: Wed, 7 Mar 2012 18:07:16 +0900
Subject: [PATCH 3/3] [gengrid] add elm_gengrid_items_count

---
 src/lib/elm_gengrid.c |9 +
 src/lib/elm_gengrid.h |   13 -
 2 files changed, 21 insertions(+), 1 deletions(-)

diff --git a/src/lib/elm_gengrid.c b/src/lib/elm_gengrid.c
index 0a1cfc9..c0c2807 100644
--- a/src/lib

[E-devel] [patch] elm_gengrid - add item_index_get func

2012-03-07 Thread Hyoyoung Chang
Dear all.

I made a patch that's adding elm_gengrid_item_index_get function.

+EAPI int
+elm_gengrid_item_index_get(const Elm_Object_Item *it)

It works like elm_genlist_item_index_get()

Thanks
From 0d4e445288c21768541cffae58ad40af2e319c09 Mon Sep 17 00:00:00 2001
From: Hyoyoung Chang hyoyoung.ch...@samsung.com
Date: Wed, 7 Mar 2012 22:11:18 +0900
Subject: [PATCH] [elm_gengrid] add elm_gengrid_item_index_get

---
 src/lib/elm_gengrid.c |   45 +
 src/lib/elm_gengrid.h |   11 +--
 2 files changed, 54 insertions(+), 2 deletions(-)

diff --git a/src/lib/elm_gengrid.c b/src/lib/elm_gengrid.c
index c0c2807..4a71cf9 100644
--- a/src/lib/elm_gengrid.c
+++ b/src/lib/elm_gengrid.c
@@ -130,6 +130,7 @@ static const char SIG_EDGE_BOTTOM[] = edge,bottom;
 static const char SIG_EDGE_LEFT[] = edge,left;
 static const char SIG_EDGE_RIGHT[] = edge,right;
 static const char SIG_MOVED[] = moved;
+static const char SIG_INDEX_UPDATE[] = index,update;
 
 static const Evas_Smart_Cb_Description _signals[] = {
{SIG_ACTIVATED, },
@@ -924,6 +925,16 @@ _item_highlight(Elm_Gen_Item *it)
 }
 
 static void
+_elm_gengrid_item_index_update(Elm_Gen_Item *it)
+{
+   if (it-position_update)
+ {
+evas_object_smart_callback_call(WIDGET(it), SIG_INDEX_UPDATE, it);
+it-position_update = EINA_FALSE;
+ }
+}
+
+static void
 _item_realize(Elm_Gen_Item *it)
 {
char buf[1024];
@@ -1042,6 +1053,8 @@ _item_realize(Elm_Gen_Item *it)
 evas_object_event_callback_add(VIEW(it), EVAS_CALLBACK_MOUSE_MOVE,
_mouse_move, it);
 
+_elm_gengrid_item_index_update(it);
+
 if (it-selected)
   edje_object_signal_emit(VIEW(it), elm,state,selected, elm);
 if (elm_widget_item_disabled_get(it))
@@ -1443,6 +1456,18 @@ _item_place(Elm_Gen_Item *it,
 }
 
 static void
+_item_position_update(Eina_Inlist *list, int idx)
+{
+   Elm_Gen_Item *it;
+
+   EINA_INLIST_FOREACH(list, it)
+ {
+it-position = idx++;
+it-position_update = EINA_TRUE;
+ }
+}
+
+static void
 _item_del(Elm_Gen_Item *it)
 {
Evas_Object *obj = WIDGET(it);
@@ -2093,6 +2118,8 @@ elm_gengrid_item_append(Evas_Object  *obj,
it = _item_new(wd, itc, data, func, func_data);
if (!it) return NULL;
wd-items = eina_inlist_append(wd-items, EINA_INLIST_GET(it));
+   it-position = eina_inlist_count(wd-items);
+   it-position_update = EINA_TRUE;
 
if (it-group)
  wd-group_items = eina_list_prepend(wd-group_items, it);
@@ -2118,6 +2145,8 @@ elm_gengrid_item_prepend(Evas_Object  *obj,
it = _item_new(wd, itc, data, func, func_data);
if (!it) return NULL;
wd-items = eina_inlist_prepend(wd-items, EINA_INLIST_GET(it));
+   _item_position_update(wd-items, 0);
+
if (it-group)
  wd-group_items = eina_list_append(wd-group_items, it);
 
@@ -2145,6 +2174,9 @@ elm_gengrid_item_insert_before(Evas_Object  *obj,
if (!it) return NULL;
wd-items = eina_inlist_prepend_relative
   (wd-items, EINA_INLIST_GET(it), EINA_INLIST_GET((Elm_Gen_Item *) relative));
+   Eina_Inlist *tmp = eina_inlist_find(wd-items, EINA_INLIST_GET(it));
+   _item_position_update(tmp, ((Elm_Gen_Item *)relative)-position);
+
if (it-group)
  wd-group_items = eina_list_append_relative(wd-group_items, it, ((Elm_Gen_Item *) relative)-parent);
 
@@ -2172,6 +2204,9 @@ elm_gengrid_item_insert_after(Evas_Object  *obj,
if (!it) return NULL;
wd-items = eina_inlist_append_relative
   (wd-items, EINA_INLIST_GET(it), EINA_INLIST_GET((Elm_Gen_Item *) relative));
+   Eina_Inlist *tmp = eina_inlist_find(wd-items, EINA_INLIST_GET(it));
+   _item_position_update(tmp, ((Elm_Gen_Item *)relative)-position+1);
+
if (it-group)
  wd-group_items = eina_list_prepend_relative(wd-group_items, it, ((Elm_Gen_Item *) relative)-parent);
 
@@ -2203,6 +2238,8 @@ elm_gengrid_item_sorted_insert(Evas_Object  *obj,
wd-item_compare_cb = comp;
wd-items = eina_inlist_sorted_state_insert(wd-items, EINA_INLIST_GET(it),
  _elm_gengrid_item_compare, wd-state);
+   _item_position_update(wd-items, 0);
+
if (wd-calc_job) ecore_job_del(wd-calc_job);
wd-calc_job = ecore_job_add(_calc_job, wd);
 
@@ -2928,3 +2965,11 @@ elm_gengrid_no_highlight_mode_get(const Evas_Object *obj)
return elm_genlist_no_highlight_mode_get(obj);
 }
 
+EAPI int
+elm_gengrid_item_index_get(const Elm_Object_Item *it)
+{
+   ELM_OBJ_ITEM_CHECK_OR_RETURN(it, -1);
+   Elm_Gen_Item *_it = (Elm_Gen_Item *)it;
+
+   return _it-position;
+}
diff --git a/src/lib/elm_gengrid.h b/src/lib/elm_gengrid.h
index 4a4f450..005e62c 100644
--- a/src/lib/elm_gengrid.h
+++ b/src/lib/elm_gengrid.h
@@ -791,8 +791,15 @@ EAPI void  elm_gengrid_item_item_class_update(Elm_Object
  */
 EAPI const Elm_Gengrid_Item_Class *elm_gengrid_item_item_class_get

[E-devel] [patch] elm_list - add select_mode_set and some remove deprecated apis in examples

2012-03-07 Thread Hyoyoung Chang
Dear all.

Like other widget (genlist, gengrid...), I add select_mode to elm_list.

+elm_list_select_mode_set(Evas_Object *obj, Elm_Object_Select_Mode_Type mode)

+EAPI Elm_Object_Select_Mode_Type
+elm_list_select_mode_get(const Evas_Object *obj)

And I removed deprecated apis (no_select, always_select) in examples
and edje_externals.

Thanks.
Index: elementary/src/lib/elm_list.c
===
--- elementary/src/lib/elm_list.c   (리비전 68967)
+++ elementary/src/lib/elm_list.c   (작업 사본)
@@ -15,18 +15,18 @@ struct _Widget_Data
Elm_List_Mode mode;
Elm_List_Mode h_mode;
Evas_Coord minw[2], minh[2];
-   Eina_Bool scr_minw : 1;
-   Eina_Bool scr_minh : 1;
+   Elm_Object_Select_Mode_Type select_mode;
int walking;
int movements;
struct {
 Evas_Coord x, y;
} history[SWIPE_MOVES];
+   Eina_Bool scr_minw : 1;
+   Eina_Bool scr_minh : 1;
Eina_Bool swipe : 1;
Eina_Bool fix_pending : 1;
Eina_Bool on_hold : 1;
Eina_Bool multi : 1;
-   Eina_Bool always_select : 1;
Eina_Bool longpressed : 1;
Eina_Bool wasselected : 1;
 };
@@ -702,7 +702,8 @@ _item_highlight(Elm_List_Item *it)
 
if (!wd) return;
ELM_LIST_ITEM_CHECK_DELETED_RETURN(it);
-   if ((it-highlighted) || (it-base.disabled)) return;
+   if ((it-highlighted) || (it-base.disabled) ||
+   (wd-select_mode == ELM_OBJECT_NO_SELECT)) return;
 
evas_object_ref(obj);
_elm_list_walk(wd);
@@ -725,10 +726,10 @@ _item_select(Elm_List_Item *it)
 
if (!wd) return;
ELM_LIST_ITEM_CHECK_DELETED_RETURN(it);
-   if (it-base.disabled) return;
+   if (it-base.disabled || (wd-select_mode == ELM_OBJECT_NO_SELECT)) return;
if (it-selected)
  {
-if (wd-always_select) goto call;
+if (wd-select_mode == ELM_OBJECT_ALWAYS_SELECT) goto call;
 return;
  }
it-selected = EINA_TRUE;
@@ -1622,21 +1623,53 @@ elm_list_horizontal_get(const Evas_Object *obj)
 }
 
 EAPI void
-elm_list_always_select_mode_set(Evas_Object *obj, Eina_Bool always_select)
+elm_list_select_mode_set(Evas_Object *obj, Elm_Object_Select_Mode_Type mode)
 {
ELM_CHECK_WIDTYPE(obj, widtype);
Widget_Data *wd = elm_widget_data_get(obj);
if (!wd) return;
-   wd-always_select = always_select;
+   if (mode = ELM_OBJECT_SELECT_MODE_MAX)
+ return;
+   if (wd-select_mode != mode)
+ wd-select_mode = mode;
 }
 
-EAPI Eina_Bool
+EAPI Elm_Object_Select_Mode_Type
+elm_list_select_mode_get(const Evas_Object *obj)
+{
+   ELM_CHECK_WIDTYPE(obj, widtype) ELM_OBJECT_SELECT_MODE_MAX;
+   Widget_Data *wd = elm_widget_data_get(obj);
+   if (!wd) return ELM_OBJECT_SELECT_MODE_MAX;
+   return wd-select_mode;
+}
+
+EINA_DEPRECATED EAPI void
+elm_list_always_select_mode_set(Evas_Object *obj,
+Eina_Boolalways_select)
+{
+   ELM_CHECK_WIDTYPE(obj, widtype);
+   Widget_Data *wd = elm_widget_data_get(obj);
+   if (!wd) return;
+   if (always_select)
+ elm_list_select_mode_set(obj, ELM_OBJECT_ALWAYS_SELECT);
+   else
+ {
+Elm_Object_Select_Mode_Type oldmode = elm_list_select_mode_get(obj);
+if (oldmode == ELM_OBJECT_ALWAYS_SELECT)
+  elm_list_select_mode_set(obj, ELM_OBJECT_NORMAL_SELECT);
+ }
+}
+
+EINA_DEPRECATED EAPI Eina_Bool
 elm_list_always_select_mode_get(const Evas_Object *obj)
 {
ELM_CHECK_WIDTYPE(obj, widtype) EINA_FALSE;
Widget_Data *wd = elm_widget_data_get(obj);
if (!wd) return EINA_FALSE;
-   return wd-always_select;
+   Elm_Object_Select_Mode_Type oldmode = elm_list_select_mode_get(obj);
+   if (oldmode == ELM_OBJECT_ALWAYS_SELECT)
+ return EINA_TRUE;
+   return EINA_FALSE;
 }
 
 EAPI void
Index: elementary/src/lib/elm_list.h
===
--- elementary/src/lib/elm_list.h   (리비전 68967)
+++ elementary/src/lib/elm_list.h   (작업 사본)
@@ -221,44 +221,41 @@ EAPI void elm_list_horizon
 EAPI Eina_Boolelm_list_horizontal_get(const Evas_Object 
*obj);
 
 /**
- * Enable or disable always select mode on the list object.
+ * Set the list select mode.
  *
  * @param obj The list object
- * @param always_select @c EINA_TRUE to enable always select mode or
- * @c EINA_FALSE to disable it.
+ * @param mode The select mode
  *
- * @note Always select mode is disabled by default.
+ * elm_list_select_mode_set() changes item select mode in the list widget.
+ * - ELM_OBJECT_NORMAL_SELECT : Items will only call their selection func and
+ *  callback when first becoming selected. Any further clicks will
+ *  do nothing, unless you set always select mode.
+ * - ELM_OBJECT_ALWAYS_SELECT :  This means that, even if selected,
+ *  every click will make the selected callbacks be called.
+ * - ELM_OBJECT_NO_SELECT : This will turn off the ability to select items
+ *  entirely and they will neither appear selected nor call selected
+ *  callback functions.
  *
- * 

[E-devel] [patch] elm_genlist - add item_select_mode_set/get

2012-03-07 Thread Hyoyoung Chang
Dear all

I added two apis for item selecting mode.
It almost same with elm_genlist_select_mode.


+EAPI void
+elm_genlist_item_select_mode_set(Elm_Object_Item *it,
+ Elm_Object_Select_Mode_Type mode)
+EAPI Elm_Object_Select_Mode_Type
+elm_genlist_item_select_mode_get(const Elm_Object_Item *it)

And display_only apis is unfied with item_select_mode.

+EINA_DEPRECATED EAPI void
elm_genlist_item_display_only_set(Elm_Object_Item *it, Eina_Bool
display_only);
+EINA_DEPRECATED EAPI Eina_Bool
elm_genlist_item_display_only_get(const Elm_Object_Item *it);

Thanks.
Index: elementary/src/lib/elm_genlist.c
===
--- elementary/src/lib/elm_genlist.c(리비전 68973)
+++ elementary/src/lib/elm_genlist.c(작업 사본)
@@ -692,7 +692,8 @@ _item_highlight(Elm_Gen_Item *it)
(it-wd-no_highlight) ||
(it-generation  it-wd-generation) ||
(it-highlighted) || elm_widget_item_disabled_get(it) ||
-   (it-display_only) || (it-item-mode_view))
+   (it-select_mode == ELM_OBJECT_NO_SELECT) || (it-item-mode_view) ||
+   (it-select_mode == ELM_OBJECT_DISPLAY_ONLY_SELECT))
  return;
edje_object_signal_emit(VIEW(it), elm,state,selected, elm);
if (it-edit_obj) edje_object_signal_emit(it-edit_obj, 
elm,state,selected, elm);
@@ -991,7 +992,7 @@ _mouse_move(void*data,
   }
 return;
  }
-   if (!it-display_only)
+   if (it-select_mode != ELM_OBJECT_DISPLAY_ONLY_SELECT)
  elm_coords_finger_size_adjust(1, minw, 1, minh);
evas_object_geometry_get(obj, x, y, NULL, NULL);
x = ev-cur.canvas.x - x;
@@ -1057,7 +1058,8 @@ _long_press(void *data)
Eina_List *list, *l;
 
it-long_timer = NULL;
-   if (elm_widget_item_disabled_get(it) || (it-dragging) || 
(it-display_only))
+   if (elm_widget_item_disabled_get(it) || (it-dragging) ||
+   (it-select_mode == ELM_OBJECT_DISPLAY_ONLY_SELECT))
  return ECORE_CALLBACK_CANCEL;
it-wd-longpressed = EINA_TRUE;
evas_object_smart_callback_call(WIDGET(it), SIG_LONGPRESSED, it);
@@ -1096,7 +1098,8 @@ _swipe(Elm_Gen_Item *it)
int i, sum = 0;
 
if (!it) return;
-   if ((it-display_only) || elm_widget_item_disabled_get(it)) return;
+   if ((it-select_mode == ELM_OBJECT_DISPLAY_ONLY_SELECT) ||
+   elm_widget_item_disabled_get(it)) return;
it-wd-swipe = EINA_FALSE;
for (i = 0; i  it-wd-movements; i++)
  {
@@ -1304,7 +1307,8 @@ _mouse_down(void*data,
it-wd-wasselected = it-selected;
_item_highlight(it);
if (ev-flags  EVAS_BUTTON_DOUBLE_CLICK)
- if ((!elm_widget_item_disabled_get(it))  (!it-display_only))
+ if ((!elm_widget_item_disabled_get(it)) 
+ (it-select_mode != ELM_OBJECT_DISPLAY_ONLY_SELECT))
{
   evas_object_smart_callback_call(WIDGET(it), SIG_CLICKED_DOUBLE, it);
   evas_object_smart_callback_call(WIDGET(it), SIG_ACTIVATED, it);
@@ -1413,7 +1417,8 @@ _mouse_up(void*data,
_item_block_unrealize(it-item-block);
   }
  }
-   if (elm_widget_item_disabled_get(it) || (dragged) || (it-display_only))
+   if (elm_widget_item_disabled_get(it) || (dragged) ||
+   (it-select_mode == ELM_OBJECT_DISPLAY_ONLY_SELECT))
  return;
if (ev-event_flags  EVAS_EVENT_FLAG_ON_HOLD) return;
if (it-wd-multi)
@@ -2105,12 +2110,12 @@ _item_realize(Elm_Gen_Item *it,
   {
  Evas_Coord mw = -1, mh = -1;
 
- if (!it-display_only)
+ if (it-select_mode != ELM_OBJECT_DISPLAY_ONLY_SELECT)
elm_coords_finger_size_adjust(1, mw, 1, mh);
  if (it-wd-height_for_width) mw = it-wd-prev_viewport_w;
  edje_object_size_min_restricted_calc(VIEW(it), mw, mh, mw,
   mh);
- if (!it-display_only)
+ if (it-select_mode != ELM_OBJECT_DISPLAY_ONLY_SELECT)
elm_coords_finger_size_adjust(1, mw, 1, mh);
  it-item-w = it-item-minw = mw;
  it-item-h = it-item-minh = mh;
@@ -4804,30 +4809,33 @@ elm_genlist_item_expanded_depth_get(const Elm_Obje
return ((Elm_Gen_Item *)it)-item-expanded_depth;
 }
 
-EAPI void
+EINA_DEPRECATED EAPI void
 elm_genlist_item_display_only_set(Elm_Object_Item  *it,
   Eina_Bool display_only)
 {
ELM_OBJ_ITEM_CHECK_OR_RETURN(it);
-   Elm_Gen_Item *_it = (Elm_Gen_Item *)it;
display_only = !!display_only;
-   if (_it-display_only == display_only) return;
-   if (_it-generation  _it-wd-generation) return;
-   _it-display_only = display_only;
-   _it-item-mincalcd = EINA_FALSE;
-   _it-item-updateme = EINA_TRUE;
-   if (_it-item-block) _it-item-block-updateme = EINA_TRUE;
-   if (_it-wd-update_job) ecore_job_del(_it-wd-update_job);
-   _it-wd-update_job = ecore_job_add(_update_job, _it-wd);
+
+   if (display_only)
+ elm_genlist_item_select_mode_set(it, 

[E-devel] [patch] elm_genlist - fix typos and remove display_only variable

2012-03-07 Thread Hyoyoung Chang
Dear all.

I found a mistake in example. and display_only value is remained.
It's fixed some trivial errors.

Thanks.
Index: elementary/src/lib/elm_gen_common.h
===
--- elementary/src/lib/elm_gen_common.h (리비전 68995)
+++ elementary/src/lib/elm_gen_common.h (작업 사본)
@@ -55,7 +55,6 @@ struct Elm_Gen_Item
 
Eina_Bool position_update : 1;
Eina_Bool want_unrealize : 1;
-   Eina_Bool display_only : 1;
Eina_Bool realized : 1;
Eina_Bool selected : 1;
Eina_Bool highlighted : 1;
Index: elementary/src/lib/elm_gengrid.c
===
--- elementary/src/lib/elm_gengrid.c(리비전 68995)
+++ elementary/src/lib/elm_gengrid.c(작업 사본)
@@ -708,7 +708,7 @@ _mouse_move(void*data,
   }
 return;
  }
-   if (!it-display_only)
+   if (it-select_mode != ELM_OBJECT_SELECT_MODE_DISPLAY_ONLY)
  elm_coords_finger_size_adjust(1, minw, 1, minh);
evas_object_geometry_get(obj, x, y, NULL, NULL);
x = ev-cur.canvas.x - x;
Index: elementary/src/examples/genlist_example_04.c
===
--- elementary/src/examples/genlist_example_04.c(리비전 68995)
+++ elementary/src/examples/genlist_example_04.c(작업 사본)
@@ -282,7 +282,6 @@ elm_main(int argc __UNUSED__, char **argv __UNUSED
 _itc_group-func.state_get = NULL;
 _itc_group-func.del = NULL;
  }
-   
list = elm_genlist_add(win);
 
evas_object_size_hint_weight_set(list, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
@@ -322,7 +321,7 @@ elm_main(int argc __UNUSED__, char **argv __UNUSED
  (void *)(long)nitems++, NULL,
  ELM_GENLIST_ITEM_GROUP,
  _item_sel_cb, NULL);
- elm_genlist_item_select_mode_set(git, 
ELM_OBJECT_DISPLAY_ONLY_SELECT);
+ elm_genlist_item_select_mode_set(glg, 
ELM_OBJECT_DISPLAY_ONLY_SELECT);
   }
 else
   {
--
Virtualization  Cloud Management Using Capacity Planning
Cloud computing makes use of virtualization - but cloud computing 
also focuses on allowing computing to be delivered as a service.
http://www.accelacomm.com/jaw/sfnl/114/51521223/___
enlightenment-devel mailing list
enlightenment-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/enlightenment-devel


[E-devel] [patch] elm_web - using elm_list_select_mode

2012-03-07 Thread Hyoyoung Chang
Dear all

it's one line patch about elm_web to use select_mode.


-   elm_list_always_select_mode_set(list, EINA_TRUE);
+   elm_list_select_mode_set(data, ELM_OBJECT_SELECT_MODE_ALWAYS);
Index: elementary/src/lib/elm_web.c
===
--- elementary/src/lib/elm_web.c(리비전 68995)
+++ elementary/src/lib/elm_web.c(작업 사본)
@@ -922,7 +922,7 @@ _ewk_view_popup_create_cb(void *data, Evas_Object
elm_notify_orient_set(notify, ELM_NOTIFY_ORIENT_BOTTOM);
 
list = elm_list_add(obj);
-   elm_list_always_select_mode_set(list, EINA_TRUE);
+   elm_list_select_mode_set(data, ELM_OBJECT_SELECT_MODE_ALWAYS);
elm_list_bounce_set(list, EINA_FALSE, EINA_FALSE);
elm_list_mode_set(list, ELM_LIST_EXPAND);
evas_object_size_hint_weight_set(list, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
--
Virtualization  Cloud Management Using Capacity Planning
Cloud computing makes use of virtualization - but cloud computing 
also focuses on allowing computing to be delivered as a service.
http://www.accelacomm.com/jaw/sfnl/114/51521223/___
enlightenment-devel mailing list
enlightenment-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/enlightenment-devel


[E-devel] [patch] elm_genlist - fix display_only_set comment

2012-03-07 Thread Hyoyoung Chang
Dear all

I fixed some typos in comments about display_only_set mode.

Thanks.
Index: elementary/src/lib/elm_genlist.h
===
--- elementary/src/lib/elm_genlist.h(리비전 69006)
+++ elementary/src/lib/elm_genlist.h(작업 사본)
@@ -1830,11 +1830,11 @@ EAPI Eina_Bool  elm_genlist_highlight_mode
  * - ELM_OBJECT_NO_SELECT : This will turn off the ability to select the item
  *  entirely and they will neither appear selected nor call selected
  *  callback functions.
- * - ELM_OBJECT_DISPLAY_ONLY_SELECT : This will apply no-finger-size rule with
+ * - ELM_OBJECT_DISPLAY_ONLY_SELECT : This will apply no-finger-size rule
  *  with ELM_OBJECT_NO_SELECT. No-finger-size rule makes an item can be
- *  smaller than lower limit. In some touch or small screen devices,
- *  clickable objects should be bigger than human touch point device
- *  (your finger). So it is enabled, the item can be smaller than
+ *  smaller than lower limit. Clickable objects should be bigger than
+ *  human touch point device (your finger) for some touch or
+ *  small screen devices. So it is enabled, the item can be shrink than
  *  predefined finger-size value. And the item will be updated.
  *
  * @see elm_genlist_item_select_mode_get()
--
Virtualization  Cloud Management Using Capacity Planning
Cloud computing makes use of virtualization - but cloud computing 
also focuses on allowing computing to be delivered as a service.
http://www.accelacomm.com/jaw/sfnl/114/51521223/___
enlightenment-devel mailing list
enlightenment-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/enlightenment-devel


[E-devel] [patch] Elm_Object_Select_Mode comment update

2012-03-07 Thread Hyoyoung Chang
Dear all.

After updated  Elm_Object_Select_Mode naming, some comments are outdated.
I changed it.

Thanks.
Index: src/lib/elm_genlist.h
===
--- src/lib/elm_genlist.h   (리비전 69008)
+++ src/lib/elm_genlist.h   (작업 사본)
@@ -193,9 +193,9 @@
  *
  * Items will only call their selection func and callback when first becoming
  * selected. Any further clicks will do nothing, unless you enable always
- * select with elm_genlist_select_mode_set() as ELM_OBJECT_ALWAYS_SELECT.
+ * select with elm_genlist_select_mode_set() as ELM_OBJECT_SELECT_MODE_ALWAYS.
  * This means even if selected, every click will make the selected callbacks
- * be called. elm_genlist_select_mode_set() as ELM_OBJECT_NO_SELECT will
+ * be called. elm_genlist_select_mode_set() as ELM_OBJECT_SELECT_MODE_NONE will
  * turn off the ability to select items entirely and they will neither
  * appear selected nor call selected callback functions.
  *
@@ -1822,16 +1822,16 @@
  * @param mode The select mode
  *
  * elm_genlist_select_mode_set() changes item's select mode.
- * - ELM_OBJECT_NORMAL_SELECT : The item will only call their selection func 
and
+ * - ELM_OBJECT_SELECT_MODE_DEFAULT : The item will only call their selection 
func and
  *  callback when first becoming selected. Any further clicks will
  *  do nothing, unless you set always select mode.
- * - ELM_OBJECT_ALWAYS_SELECT : This means that, even if selected,
+ * - ELM_OBJECT_SELECT_MODE_ALWAYS : This means that, even if selected,
  *  every click will make the selected callbacks be called.
- * - ELM_OBJECT_NO_SELECT : This will turn off the ability to select the item
+ * - ELM_OBJECT_SELECT_MODE_NONE : This will turn off the ability to select 
the item
  *  entirely and they will neither appear selected nor call selected
  *  callback functions.
- * - ELM_OBJECT_DISPLAY_ONLY_SELECT : This will apply no-finger-size rule
- *  with ELM_OBJECT_NO_SELECT. No-finger-size rule makes an item can be
+ * - ELM_OBJECT_SELECT_MODE_DISPLAY_ONLY : This will apply no-finger-size rule
+ *  with ELM_OBJECT_SELECT_MODE_NONE. No-finger-size rule makes an item 
can be
  *  smaller than lower limit. Clickable objects should be bigger than
  *  human touch point device (your finger) for some touch or
  *  small screen devices. So it is enabled, the item can be shrink than
Index: src/lib/elm_gengrid.h
===
--- src/lib/elm_gengrid.h   (리비전 69008)
+++ src/lib/elm_gengrid.h   (작업 사본)
@@ -129,9 +129,9 @@
  * Grid cells will only have their selection smart callbacks called
  * when firstly getting selected. Any further clicks will do
  * nothing, unless you enable the always select mode, with
- * elm_gengrid_select_mode_set() as ELM_OBJECT_ALWAYS_SELECT,
+ * elm_gengrid_select_mode_set() as ELM_OBJECT_SELECT_MODE_ALWAYS,
  * thus making every click to issue selection callbacks.
- * elm_gengrid_select_mode_set() as ELM_OBJECT_NO_SELECT will
+ * elm_gengrid_select_mode_set() as ELM_OBJECT_SELECT_MODE_NONE will
  * turn off the ability to select items entirely in the widget and
  * they will neither appear selected nor call the selection smart
  * callbacks.
--
Virtualization  Cloud Management Using Capacity Planning
Cloud computing makes use of virtualization - but cloud computing 
also focuses on allowing computing to be delivered as a service.
http://www.accelacomm.com/jaw/sfnl/114/51521223/___
enlightenment-devel mailing list
enlightenment-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/enlightenment-devel


[E-devel] [patch] elm_gengrid - add item_select_mode_set/get apis

2012-03-07 Thread Hyoyoung Chang
Dear all,

I made a item_select_mode_set/get in elm_gengrid.
It works like genlist_item_select_mode apis.

+EAPI void
+elm_gengrid_item_select_mode_set(Elm_Object_Item *it,
+ Elm_Object_Select_Mode mode)
+EAPI Elm_Object_Select_Mode
+elm_gengrid_item_select_mode_get(const Elm_Object_Item *it)

Thanks.
Index: elementary/src/lib/elm_gengrid.c
===
--- elementary/src/lib/elm_gengrid.c(리비전 69037)
+++ elementary/src/lib/elm_gengrid.c(작업 사본)
@@ -918,6 +918,8 @@ static void
 _item_highlight(Elm_Gen_Item *it)
 {
if ((it-wd-select_mode == ELM_OBJECT_SELECT_MODE_NONE) ||
+   (it-select_mode == ELM_OBJECT_SELECT_MODE_NONE) ||
+   (it-select_mode == ELM_OBJECT_SELECT_MODE_DISPLAY_ONLY) ||
(it-wd-no_highlight) || (it-highlighted) ||
(it-generation  it-wd-generation)) return;
edje_object_signal_emit(VIEW(it), elm,state,selected, elm);
@@ -2983,3 +2985,29 @@ elm_gengrid_item_index_get(const Elm_Object_Item *
 
return _it-position;
 }
+
+EAPI void
+elm_gengrid_item_select_mode_set(Elm_Object_Item *it,
+ Elm_Object_Select_Mode mode)
+{
+   ELM_OBJ_ITEM_CHECK_OR_RETURN(it);
+   Elm_Gen_Item *_it = (Elm_Gen_Item *)it;
+   if (!_it) return;
+   if (_it-generation  _it-wd-generation) return;
+   if (mode = ELM_OBJECT_SELECT_MODE_MAX)
+ return;
+   if (_it-select_mode != mode)
+ _it-select_mode = mode;
+
+   if (_it-select_mode == ELM_OBJECT_SELECT_MODE_DISPLAY_ONLY)
+ elm_gengrid_item_update(it);
+}
+
+EAPI Elm_Object_Select_Mode
+elm_gengrid_item_select_mode_get(const Elm_Object_Item *it)
+{
+   ELM_OBJ_ITEM_CHECK_OR_RETURN(it, ELM_OBJECT_SELECT_MODE_MAX);
+   Elm_Gen_Item *_it = (Elm_Gen_Item *)it;
+   if (!_it) return ELM_OBJECT_SELECT_MODE_MAX;
+   return _it-select_mode;
+}
Index: elementary/src/lib/elm_gengrid.h
===
--- elementary/src/lib/elm_gengrid.h(리비전 69037)
+++ elementary/src/lib/elm_gengrid.h(작업 사본)
@@ -1569,5 +1569,46 @@ EAPI void  elm_gengrid_hig
 EAPI Eina_Bool elm_gengrid_highlight_mode_get(const 
Evas_Object *obj);
 
 /**
+ * Set the gengrid item's select mode.
+ *
+ * @param it The gengrid item object
+ * @param mode The select mode
+ *
+ * elm_gengrid_select_mode_set() changes item's select mode.
+ * - ELM_OBJECT_SELECT_MODE_DEFAULT : The item will only call their selection 
func and
+ *  callback when first becoming selected. Any further clicks will
+ *  do nothing, unless you set always select mode.
+ * - ELM_OBJECT_SELECT_MODE_ALWAYS : This means that, even if selected,
+ *  every click will make the selected callbacks be called.
+ * - ELM_OBJECT_SELECT_MODE_NONE : This will turn off the ability to select 
the item
+ *  entirely and they will neither appear selected nor call selected
+ *  callback functions.
+ * - ELM_OBJECT_SELECT_MODE_DISPLAY_ONLY : This will apply no-finger-size rule
+ *  with ELM_OBJECT_SELECT_MODE_NONE. No-finger-size rule makes an item 
can be
+ *  smaller than lower limit. Clickable objects should be bigger than
+ *  human touch point device (your finger) for some touch or
+ *  small screen devices. So it is enabled, the item can be shrink than
+ *  predefined finger-size value. And the item will be updated.
+ *
+ * @see elm_gengrid_item_select_mode_get()
+ *
+ * @ingroup Gengrid
+ */
+EAPI void  
elm_gengrid_item_select_mode_set(Elm_Object_Item *it, Elm_Object_Select_Mode 
mode);
+
+/**
+ * Get the gengrid item's select mode.
+ *
+ * @param it The gengrid item object
+ * @return The select mode
+ * (If getting mode is failed, it returns ELM_OBJECT_SELECT_MODE_MAX)
+ *
+ * @see elm_gengrid_item_select_mode_set()
+ *
+ * @ingroup Gengrid
+ */
+EAPI Elm_Object_Select_Modeelm_gengrid_item_select_mode_get(const 
Elm_Object_Item *it);
+
+/**
  * @}
  */
--
Virtualization  Cloud Management Using Capacity Planning
Cloud computing makes use of virtualization - but cloud computing 
also focuses on allowing computing to be delivered as a service.
http://www.accelacomm.com/jaw/sfnl/114/51521223/___
enlightenment-devel mailing list
enlightenment-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/enlightenment-devel


[E-devel] [patch] elm_gen{list, grid} - add elm_genlist_select_mode_set

2012-03-06 Thread Hyoyoung Chang
Dear all

As discussed in irc, I made a patch about unifying
always_select_mode_set and no_select_mode_set.

I'm introducing two apis in genlist (also in gengrid)

+EAPI void
+elm_genlist_select_mode_set(Evas_Object *obj, Elm_Object_Select_Mode_Type mode)

+EAPI Elm_Object_Select_Mode_Type
+elm_genlist_select_mode_get(const Evas_Object *obj);

And added a enum in elm_general.h


+typedef enum
+{
+   ELM_OBJECT_NORMAL_SELECT = 0, /** default select mode */
+   ELM_OBJECT_ALWAYS_SELECT, /** always select mode */
+   ELM_OBJECT_NO_SELECT, /** no select mode */
+
+   ELM_OBJECT_SELECT_MODE_MAX
+} Elm_Object_Select_Mode_Type;

After this is commited, i'll send a patch about examples and edje_external.
Thanks

--
Virtualization  Cloud Management Using Capacity Planning
Cloud computing makes use of virtualization - but cloud computing 
also focuses on allowing computing to be delivered as a service.
http://www.accelacomm.com/jaw/sfnl/114/51521223/
___
enlightenment-devel mailing list
enlightenment-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/enlightenment-devel


Re: [E-devel] [patch] elm_gen{list, grid} - add elm_genlist_select_mode_set

2012-03-06 Thread Hyoyoung Chang
Oops i missed attachment.
sorry.

On Wed, Mar 7, 2012 at 1:36 PM, Hyoyoung Chang hyoyo...@gmail.com wrote:
 Dear all

 As discussed in irc, I made a patch about unifying
 always_select_mode_set and no_select_mode_set.

 I'm introducing two apis in genlist (also in gengrid)

 +EAPI void
 +elm_genlist_select_mode_set(Evas_Object *obj, Elm_Object_Select_Mode_Type 
 mode)

 +EAPI Elm_Object_Select_Mode_Type
 +elm_genlist_select_mode_get(const Evas_Object *obj);

 And added a enum in elm_general.h


 +typedef enum
 +{
 +   ELM_OBJECT_NORMAL_SELECT = 0, /** default select mode */
 +   ELM_OBJECT_ALWAYS_SELECT, /** always select mode */
 +   ELM_OBJECT_NO_SELECT, /** no select mode */
 +
 +   ELM_OBJECT_SELECT_MODE_MAX
 +} Elm_Object_Select_Mode_Type;

 After this is commited, i'll send a patch about examples and edje_external.
 Thanks
Index: elementary/src/lib/elm_genlist.c
===
--- elementary/src/lib/elm_genlist.c(리비전 68866)
+++ elementary/src/lib/elm_genlist.c(작업 사본)
@@ -679,7 +679,8 @@
 _item_highlight(Elm_Gen_Item *it)
 {
const char *selectraise;
-   if ((it-wd-no_select) || (it-generation  it-wd-generation) ||
+   if ((it-wd-select_mode == ELM_OBJECT_NO_SELECT) ||
+   (it-generation  it-wd-generation) ||
(it-highlighted) || elm_widget_item_disabled_get(it) ||
(it-display_only) || (it-item-mode_view))
  return;
@@ -3466,13 +3467,15 @@
 void
 _item_select(Elm_Gen_Item *it)
 {
-   if ((it-wd-no_select) || (it-generation  it-wd-generation) || 
(it-mode_set)) return;
+   if ((it-generation  it-wd-generation) || (it-mode_set) ||
+   (it-wd-select_mode == ELM_OBJECT_NO_SELECT))
+ return;
if (!it-selected)
  {
 it-selected = EINA_TRUE;
 it-wd-selected = eina_list_append(it-wd-selected, it);
  }
-   else if (!it-wd-always_select) return;
+   else if (it-wd-select_mode == ELM_OBJECT_ALWAYS_SELECT) return;
 
evas_object_ref(WIDGET(it));
it-walking++;
@@ -5215,42 +5218,64 @@
return wd-mode;
 }
 
-EAPI void
+EINA_DEPRECATED EAPI void
 elm_genlist_always_select_mode_set(Evas_Object *obj,
Eina_Boolalways_select)
 {
ELM_CHECK_WIDTYPE(obj, widtype);
Widget_Data *wd = elm_widget_data_get(obj);
if (!wd) return;
-   wd-always_select = !!always_select;
+   if (always_select)
+ elm_genlist_select_mode_set(obj, ELM_OBJECT_ALWAYS_SELECT);
+   else
+ {
+Elm_Object_Select_Mode_Type oldmode = elm_genlist_select_mode_get(obj);
+if (oldmode == ELM_OBJECT_ALWAYS_SELECT)
+  elm_genlist_select_mode_set(obj, ELM_OBJECT_NORMAL_SELECT);
+ }
 }
 
-EAPI Eina_Bool
+EINA_DEPRECATED EAPI Eina_Bool
 elm_genlist_always_select_mode_get(const Evas_Object *obj)
 {
ELM_CHECK_WIDTYPE(obj, widtype) EINA_FALSE;
Widget_Data *wd = elm_widget_data_get(obj);
if (!wd) return EINA_FALSE;
-   return wd-always_select;
+   Elm_Object_Select_Mode_Type oldmode = elm_genlist_select_mode_get(obj);
+   if (oldmode == ELM_OBJECT_ALWAYS_SELECT)
+ return EINA_TRUE;
+   else
+ return EINA_FALSE;
 }
 
-EAPI void
+EINA_DEPRECATED EAPI void
 elm_genlist_no_select_mode_set(Evas_Object *obj,
Eina_Boolno_select)
 {
ELM_CHECK_WIDTYPE(obj, widtype);
Widget_Data *wd = elm_widget_data_get(obj);
if (!wd) return;
-   wd-no_select = !!no_select;
+   if (no_select)
+ elm_genlist_select_mode_set(obj, ELM_OBJECT_NO_SELECT);
+   else
+ {
+Elm_Object_Select_Mode_Type oldmode = elm_genlist_select_mode_get(obj);
+if (oldmode == ELM_OBJECT_NO_SELECT)
+  elm_genlist_select_mode_set(obj, ELM_OBJECT_NORMAL_SELECT);
+ }
 }
 
-EAPI Eina_Bool
+EINA_DEPRECATED EAPI Eina_Bool
 elm_genlist_no_select_mode_get(const Evas_Object *obj)
 {
ELM_CHECK_WIDTYPE(obj, widtype) EINA_FALSE;
Widget_Data *wd = elm_widget_data_get(obj);
if (!wd) return EINA_FALSE;
-   return wd-no_select;
+   Elm_Object_Select_Mode_Type oldmode = elm_genlist_select_mode_get(obj);
+   if (oldmode == ELM_OBJECT_NO_SELECT)
+ return EINA_TRUE;
+   else
+ return EINA_FALSE;
 }
 
 EAPI void
@@ -5663,6 +5688,27 @@
return _it-flipped;
 }
 
+EAPI void
+elm_genlist_select_mode_set(Evas_Object *obj, Elm_Object_Select_Mode_Type mode)
+{
+   ELM_CHECK_WIDTYPE(obj, widtype);
+   Widget_Data *wd = elm_widget_data_get(obj);
+   if (!wd) return;
+   if (mode = ELM_OBJECT_SELECT_MODE_MAX)
+ return;
+   if (wd-select_mode != mode)
+ wd-select_mode = mode;
+}
+
+EAPI Elm_Object_Select_Mode_Type
+elm_genlist_select_mode_get(const Evas_Object *obj)
+{
+   ELM_CHECK_WIDTYPE(obj, widtype) ELM_OBJECT_SELECT_MODE_MAX;
+   Widget_Data *wd = elm_widget_data_get(obj);
+   if (!wd) return ELM_OBJECT_SELECT_MODE_MAX;
+   return wd-select_mode;
+}
+
 /* for gengrid as of now */
 void
 _elm_genlist_page_relative_set(Evas_Object *obj,
Index: elementary/src/lib/elm_genlist.h

[E-devel] [patch] elm_toolbar - add elm_toolbar_select_mode_set

2012-03-06 Thread Hyoyoung Chang
Dear all,

As already sent genlist select_mode_set patch,
I applied same apis to elm_toolbar.

+EAPI void
+elm_toolbar_select_mode_set(Evas_Object *obj, Elm_Object_Select_Mode_Type mode)


+EAPI Elm_Object_Select_Mode_Type
+elm_toolbar_select_mode_get(const Evas_Object *obj)

Thanks
From a142aa78adb517040eda911e4ade5c9626bb5bf0 Mon Sep 17 00:00:00 2001
From: Hyoyoung Chang hyoyoung.ch...@samsung.com
Date: Wed, 7 Mar 2012 13:51:13 +0900
Subject: [PATCH] add select_mode in toolbar

---
 src/bin/test_toolbar.c   |2 +-
 src/lib/elm_deprecated.h |   64 +
 src/lib/elm_toolbar.c|   79 ---
 src/lib/elm_toolbar.h|  102 +-
 4 files changed, 166 insertions(+), 81 deletions(-)

diff --git a/src/bin/test_toolbar.c b/src/bin/test_toolbar.c
index 9107eb0..2b91fdb 100644
--- a/src/bin/test_toolbar.c
+++ b/src/bin/test_toolbar.c
@@ -529,7 +529,7 @@ test_toolbar5(void *data __UNUSED__, Evas_Object *obj __UNUSED__, void *event_in
elm_toolbar_shrink_mode_set(tb, ELM_TOOLBAR_SHRINK_MENU);
evas_object_size_hint_weight_set(tb, 0.0, 0.0);
evas_object_size_hint_align_set(tb, EVAS_HINT_FILL, 0.0);
-   elm_toolbar_no_select_mode_set(tb, EINA_TRUE);
+   elm_toolbar_select_mode_set(tb, ELM_OBJECT_NO_SELECT);
 
ph1 = elm_photo_add(win);
ph2 = elm_photo_add(win);
diff --git a/src/lib/elm_deprecated.h b/src/lib/elm_deprecated.h
index baeec26..d20217d 100644
--- a/src/lib/elm_deprecated.h
+++ b/src/lib/elm_deprecated.h
@@ -5167,5 +5167,69 @@ EINA_DEPRECATED EAPI void  elm_gengrid_no_select_mode_se
 EINA_DEPRECATED EAPI Eina_Bool elm_gengrid_no_select_mode_get(const Evas_Object *obj);
 
 /**
+ * Set whether the toolbar should always have an item selected.
+ *
+ * @param obj The toolbar object.
+ * @param always_select @c EINA_TRUE to enable always-select mode or @c EINA_FALSE to
+ * disable it.
+ *
+ * This will cause the toolbar to always have an item selected, and clicking
+ * the selected item will not cause a selected event to be emitted. Enabling this mode
+ * will immediately select the first toolbar item.
+ *
+ * Always-selected is disabled by default.
+ *
+ * @see elm_toolbar_always_select_mode_get().
+ *
+ * @ingroup Toolbar
+ */
+EINA_DEPRECATED EAPI void elm_toolbar_always_select_mode_set(Evas_Object *obj, Eina_Bool always_select);
+
+/**
+ * Get whether the toolbar should always have an item selected.
+ *
+ * @param obj The toolbar object.
+ * @return @c EINA_TRUE means an item will always be selected, @c EINA_FALSE indicates
+ * that it is possible to have no items selected. If @p obj is @c NULL, @c EINA_FALSE is returned.
+ *
+ * @see elm_toolbar_always_select_mode_set() for details.
+ *
+ * @ingroup Toolbar
+ */
+EINA_DEPRECATED EAPI Eina_Boolelm_toolbar_always_select_mode_get(const Evas_Object *obj);
+
+/**
+ * Set whether the toolbar items' should be selected by the user or not.
+ *
+ * @param obj The toolbar object.
+ * @param no_select @c EINA_TRUE to disable selection or @c EINA_FALSE to
+ * enable it.
+ *
+ * This will turn off the ability to select items entirely and they will
+ * neither appear selected nor emit selected signals. The clicked
+ * callback function will still be called.
+ *
+ * Selection is enabled by default.
+ *
+ * @see elm_toolbar_no_select_mode_get().
+ *
+ * @ingroup Toolbar
+ */
+EINA_DEPRECATED EAPI void elm_toolbar_no_select_mode_set(Evas_Object *obj, Eina_Bool no_select);
+
+/**
+ * Set whether the toolbar items' should be selected by the user or not.
+ *
+ * @param obj The toolbar object.
+ * @return @c EINA_TRUE means items can be selected. @c EINA_FALSE indicates
+ * they can't. If @p obj is @c NULL, @c EINA_FALSE is returned.
+ *
+ * @see elm_toolbar_no_select_mode_set() for details.
+ *
+ * @ingroup Toolbar
+ */
+EINA_DEPRECATED EAPI Eina_Boolelm_toolbar_no_select_mode_get(const Evas_Object *obj);
+
+/**
  * @}
  */
diff --git a/src/lib/elm_toolbar.c b/src/lib/elm_toolbar.c
index 2ff143b..518311c 100644
--- a/src/lib/elm_toolbar.c
+++ b/src/lib/elm_toolbar.c
@@ -18,9 +18,8 @@ struct _Widget_Data
int icon_size;
unsigned int item_count;
double align;
+   Elm_Object_Select_Mode_Type select_mode;
Eina_Bool homogeneous : 1;
-   Eina_Bool no_select : 1;
-   Eina_Bool always_select : 1;
Eina_Bool vertical : 1;
Eina_Bool long_press : 1;
Ecore_Timer *long_timer;
@@ -174,11 +173,11 @@ _item_select(Elm_Toolbar_Item *it)
if (elm_widget_item_disabled_get(it) || (it-separator) || (it-object)) return;
sel = it-selected;
 
-   if (!wd-no_select)
+   if (wd-select_mode != ELM_OBJECT_NO_SELECT)
  {
 if (sel)
   {
- if (wd-always_select) return;
+ if (wd-select_mode == ELM_OBJECT_ALWAYS_SELECT) return;
  _item_unselect(it);
   }
 else

[E-devel] [patch] elm_gen{list, grid} - add no_highlight_mode_set/get

2012-03-06 Thread Hyoyoung Chang
Dear all,

After seperated select_mode, there'are some needs to manipulate
highlight mode at item selecting.
So i add a no_highlight_mode in elm_gen{list, grid}.

+EAPI void
+elm_genlist_no_highlight_mode_set(Evas_Object *obj,
+  Eina_Boolno_highlight);
+EAPI Eina_Bool
+elm_genlist_no_highlight_mode_get(const Evas_Object *obj);


+EAPI void
+elm_gengrid_no_highlight_mode_set(Evas_Object *obj,
+  Eina_Boolno_highlight);
+EAPI Eina_Bool
+elm_gengrid_no_highlight_mode_get(const Evas_Object *obj);

Thanks.
From f63ea71832d6749a36fc512d19b65a2a9a636cea Mon Sep 17 00:00:00 2001
From: Hyoyoung Chang hyoyoung.ch...@samsung.com
Date: Wed, 7 Mar 2012 14:09:38 +0900
Subject: [PATCH] [gen{list,grid] add no_highlight_mode_set/get

---
 src/lib/elm_gen_common.h |1 +
 src/lib/elm_gengrid.c|   18 +-
 src/lib/elm_gengrid.h|   37 +
 src/lib/elm_genlist.c|   21 +
 src/lib/elm_genlist.h|   37 +
 5 files changed, 113 insertions(+), 1 deletions(-)

diff --git a/src/lib/elm_gen_common.h b/src/lib/elm_gen_common.h
index a5d542e..ebee81e 100644
--- a/src/lib/elm_gen_common.h
+++ b/src/lib/elm_gen_common.h
@@ -106,6 +106,7 @@ struct _Widget_Data
Eina_Bool  on_hold : 1;
Eina_Bool  multi : 1; /** a flag for item multi selection */
Eina_Bool  wasselected : 1;
+   Eina_Bool  no_highlight : 1;
Eina_Bool  clear_me : 1; /** a flag whether genlist is marked as to be cleared or not. if this flag is true, genlist clear was already deferred.  */
Eina_Bool  h_bounce : 1;
Eina_Bool  v_bounce : 1;
diff --git a/src/lib/elm_gengrid.c b/src/lib/elm_gengrid.c
index 3358b3b..feaa015 100644
--- a/src/lib/elm_gengrid.c
+++ b/src/lib/elm_gengrid.c
@@ -916,7 +916,9 @@ _mouse_up(void*data,
 static void
 _item_highlight(Elm_Gen_Item *it)
 {
-   if ((it-wd-select_mode == ELM_OBJECT_NO_SELECT) || (it-generation  it-wd-generation) || (it-highlighted)) return;
+   if ((it-wd-select_mode == ELM_OBJECT_NO_SELECT) ||
+   (it-wd-no_highlight) || (it-highlighted) ||
+   (it-generation  it-wd-generation)) return;
edje_object_signal_emit(VIEW(it), elm,state,selected, elm);
it-highlighted = EINA_TRUE;
 }
@@ -2847,3 +2849,17 @@ elm_gengrid_select_mode_get(const Evas_Object *obj)
 {
return elm_genlist_select_mode_get(obj);
 }
+
+EAPI void
+elm_gengrid_no_highlight_mode_set(Evas_Object *obj,
+  Eina_Boolno_highlight)
+{
+   elm_genlist_no_highlight_mode_set(obj, no_highlight);
+}
+
+EAPI Eina_Bool
+elm_gengrid_no_highlight_mode_get(const Evas_Object *obj)
+{
+   return elm_genlist_no_highlight_mode_get(obj);
+}
+
diff --git a/src/lib/elm_gengrid.h b/src/lib/elm_gengrid.h
index 7b25b56..ce59260 100644
--- a/src/lib/elm_gengrid.h
+++ b/src/lib/elm_gengrid.h
@@ -1454,5 +1454,42 @@ EAPI Elm_Object_Select_Mode_Type
 elm_gengrid_select_mode_get(const Evas_Object *obj);
 
 /**
+ * Set whether the gengrid items' should be highlighted when item selected.
+ *
+ * @param obj The gengrid object.
+ * @param no_highlight @c EINA_TRUE to disable highlight or @c EINA_FALSE to
+ * enable it.
+ *
+ * This will turn off the highlight effect when item selection and
+ * they will not highlighted. The selected and clicked
+ * callback functions will still be called.
+ *
+ * Highlight is enabled by default.
+ *
+ * @see elm_gengrid_no_highlight_mode_get().
+ *
+ * @ingroup Gengrid
+ */
+
+EAPI void
+elm_gengrid_no_highlight_mode_set(Evas_Object *obj,
+  Eina_Boolno_highlight);
+
+/**
+ * Get whether the gengrid items' should be highlighted when item selected.
+ *
+ * @param obj The gengrid object.
+ * @return @c EINA_TRUE means items can be highlighted. @c EINA_FALSE indicates
+ * they can't. If @p obj is @c NULL, @c EINA_FALSE is returned.
+ *
+ * @see elm_gengrid_no_highlight_mode_set() for details.
+ *
+ * @ingroup Gengrid
+ */
+
+EAPI Eina_Bool
+elm_gengrid_no_highlight_mode_get(const Evas_Object *obj);
+
+/**
  * @}
  */
diff --git a/src/lib/elm_genlist.c b/src/lib/elm_genlist.c
index ae184a6..d56c6db 100644
--- a/src/lib/elm_genlist.c
+++ b/src/lib/elm_genlist.c
@@ -680,6 +680,7 @@ _item_highlight(Elm_Gen_Item *it)
 {
const char *selectraise;
if ((it-wd-select_mode == ELM_OBJECT_NO_SELECT) ||
+   (it-wd-no_highlight) ||
(it-generation  it-wd-generation) ||
(it-highlighted) || elm_widget_item_disabled_get(it) ||
(it-display_only) || (it-item-mode_view))
@@ -5709,6 +5710,26 @@ elm_genlist_select_mode_get(const Evas_Object *obj)
return wd-select_mode;
 }
 
+EAPI void
+elm_genlist_no_highlight_mode_set(Evas_Object *obj,
+  Eina_Boolno_highlight

[E-devel] [patch] elm_genlist - add no_finger_size_calc and item_select_mode

2012-03-06 Thread Hyoyoung Chang
Dear all.
I made a patch about genlist_item_display_only_set()
This api consist of setting finger size flag and making item no select mode.
So I split with two apis.

+EAPI void
+elm_genlist_item_select_mode_set(Elm_Object_Item *it,
+ Elm_Object_Select_Mode_Type mode);
+EAPI void
+elm_genlist_item_no_finger_size_calc_set(Elm_Object_Item *it,
Eina_Bool no_finger_size);

Also two getting apis is added

+EAPI Eina_Bool
+elm_genlist_item_no_finger_size_calc_get(const Elm_Object_Item *it);
+EAPI Elm_Object_Select_Mode_Type
+elm_genlist_item_select_mode_get(const Elm_Object_Item *it);

After applied this patch, users can selectively applying finger size
and item select.
Such as
- elm_genlist_item_display_only_set(git, EINA_TRUE);
+ elm_genlist_item_no_finger_size_calc_set(git, EINA_TRUE);
+ elm_genlist_item_select_mode_set(git, ELM_OBJECT_NO_SELECT);

Thanks
From 250410d0d8c92773eefb7350d0f570da64c34893 Mon Sep 17 00:00:00 2001
From: Hyoyoung Chang hyoyoung.ch...@samsung.com
Date: Wed, 7 Mar 2012 15:33:17 +0900
Subject: [PATCH] [genlist] add item finger size calc and item select mode api

---
 src/bin/test_genlist.c   |   11 +++-
 src/lib/elm_deprecated.h |   33 +
 src/lib/elm_gen_common.h |2 +
 src/lib/elm_gengrid.h|5 +-
 src/lib/elm_genlist.c|  104 +++--
 src/lib/elm_genlist.h|  116 ++
 6 files changed, 202 insertions(+), 69 deletions(-)

diff --git a/src/bin/test_genlist.c b/src/bin/test_genlist.c
index 0cf9e61..b571eb8 100644
--- a/src/bin/test_genlist.c
+++ b/src/bin/test_genlist.c
@@ -1573,7 +1573,8 @@ test_genlist8(void *data __UNUSED__, Evas_Object *obj __UNUSED__, void *event_in
  ELM_GENLIST_ITEM_GROUP,
  gl_sel/* func */,
  (void *)(long)(i * 10)/* func data */);
- elm_genlist_item_display_only_set(git, EINA_TRUE);
+ elm_genlist_item_no_finger_size_calc_set(git, EINA_TRUE);
+ elm_genlist_item_select_mode_set(git, ELM_OBJECT_NO_SELECT);
   }
 else if (git)
   {
@@ -1702,7 +1703,9 @@ test_genlist9(void *data __UNUSED__, Evas_Object *obj __UNUSED__, void *event_in
git = elm_genlist_item_append(gl, itc_group,
  (void *)0/* item data */, NULL/* parent */, ELM_GENLIST_ITEM_GROUP, gl4_sel/* func */,
  NULL/* func data */);
-   elm_genlist_item_display_only_set(git, EINA_TRUE);
+   elm_genlist_item_no_finger_size_calc_set(git, EINA_TRUE);
+   elm_genlist_item_select_mode_set(git, ELM_OBJECT_NO_SELECT);
+
elm_genlist_item_append(gl, itc1,
(void *)1/* item data */, git/* parent */, ELM_GENLIST_ITEM_SUBITEMS, gl4_sel/* func */,
NULL/* func data */);
@@ -1715,7 +1718,9 @@ test_genlist9(void *data __UNUSED__, Evas_Object *obj __UNUSED__, void *event_in
git = elm_genlist_item_append(gl, itc_group,
  (void *)4/* item data */, NULL/* parent */, ELM_GENLIST_ITEM_GROUP, gl4_sel/* func */,
  NULL/* func data */);
-   elm_genlist_item_display_only_set(git, EINA_TRUE);
+   elm_genlist_item_no_finger_size_calc_set(git, EINA_TRUE);
+   elm_genlist_item_select_mode_set(git, ELM_OBJECT_NO_SELECT);
+
elm_genlist_item_append(gl, itc1,
(void *)5/* item data */, git/* parent */, ELM_GENLIST_ITEM_SUBITEMS, gl4_sel/* func */,
NULL/* func data */);
diff --git a/src/lib/elm_deprecated.h b/src/lib/elm_deprecated.h
index d20217d..4caf06f 100644
--- a/src/lib/elm_deprecated.h
+++ b/src/lib/elm_deprecated.h
@@ -5231,5 +5231,38 @@ EINA_DEPRECATED EAPI void elm_toolbar_no_select_mode_set
 EINA_DEPRECATED EAPI Eina_Boolelm_toolbar_no_select_mode_get(const Evas_Object *obj);
 
 /**
+ * Sets the display only state of an item.
+ *
+ * @param it The item
+ * @param display_only @c EINA_TRUE if the item is display only, @c
+ * EINA_FALSE otherwise.
+ *
+ * A display only item cannot be selected or unselected. It is for
+ * display only and not selecting or otherwise clicking, dragging
+ * etc. by the user, thus finger size rules will not be applied to
+ * this item.
+ *
+ * It's good to set group index items to display only state.
+ *
+ * @see elm_genlist_item_display_only_get()
+ *
+ * @ingroup Genlist
+ */
+EINA_DEPRECATED EAPI void  elm_genlist_item_display_only_set(Elm_Object_Item *it, Eina_Bool display_only);
+
+/**
+ * Get the display only state of an item
+ *
+ * @param it The item
+ * @return @c EINA_TRUE if the item is display only, @c
+ * EINA_FALSE otherwise.
+ *
+ * @see elm_genlist_item_display_only_set()
+ *
+ * @ingroup Genlist

[E-devel] [patch] elm_genlist - add comments for item class

2012-03-05 Thread Hyoyoung Chang
Dear all.

after working several hours, i made some comments. :P
If it's only, plz comit it.
Thanks.
Index: elementary/src/lib/elm_genlist.h
===
--- elementary/src/lib/elm_genlist.h(리비전 68783)
+++ elementary/src/lib/elm_genlist.h(작업 사본)
@@ -31,7 +31,12 @@
  * - @c item_style - This is a constant string and simply defines the name
  *   of the item style. It @b must be specified and the default should be @c
  *   default.
- *
+ * - @c mode_item_style - This is a constant string and simply defines the name
+ *   of the mode item style. It is used to specify mode item style. It can be
+ *   used to implement sweep mode.
+ * - @c edit_item_style - This is a constant string and simply defines the name
+ *   of the edit item style. It is used to specify edit item style. It can be
+ *   used to implement selection, checking and deletion mode.
  * - @c func - A struct with pointers to functions that will be called when
  *   an item is going to be actually created. All of them receive a @c data
  *   parameter that will point to the same data passed to
Index: elementary/src/lib/elm_gen.h
===
--- elementary/src/lib/elm_gen.h(리비전 68783)
+++ elementary/src/lib/elm_gen.h(작업 사본)
@@ -44,12 +44,12 @@ typedef void  (*Elm_Gen_It
 
 struct _Elm_Gen_Item_Class
 {
-   int   version; /** Set by elementary if you alloc an item class 
via elm_gengrid_item_class_new() or elm_genlist_item_class_new(), or if you 
sety your own class (must be const) then set it to 
ELM_GENGRID_ITEM_CLASS_VERSION */
+   int   version;  /** Set by elementary if you alloc an item class 
via elm_gengrid_item_class_new() or elm_genlist_item_class_new(), or if you 
sety your own class (must be const) then set it to 
ELM_GENGRID_ITEM_CLASS_VERSION */
unsigned int  refcount; /** Set it to 0 if you use your own const class, 
or its managed for you by class ref/unref calls */
Eina_Bool delete_me : 1; /** Leave this alone - set it to 0 if you 
have a const class of your own */
const char   *item_style; /** Name of the visual style to use for this 
item. If you don't know use default */
-   const char   *mode_item_style; /** Style used if item is set to a specific 
mode. @see elm_genlist_item_mode_set() or NULL if you don't care */
-   const char   *edit_item_style; /** Style to use when in edit mode, or NULL 
if you dont care */
+   const char   *mode_item_style; /** Style used if item is set to a specific 
mode. @see elm_genlist_item_mode_set() or NULL if you don't care. currenly it's 
used only in genlist. */
+   const char   *edit_item_style; /** Style to use when in edit mode, or NULL 
if you dont care. currenly it's used only in genlist. */
struct {
   Elm_Gen_Item_Text_Get_Cbtext_get; /** Text fetching class function 
for gengrid/list item classes.*/
   Elm_Gen_Item_Content_Get_Cb content_get; /** Content fetching class 
function for gengrid/list item classes. */
--
Keep Your Developer Skills Current with LearnDevNow!
The most comprehensive online learning library for Microsoft developers
is just $99.99! Visual Studio, SharePoint, SQL - plus HTML5, CSS3, MVC3,
Metro Style Apps, more. Free future releases when you subscribe now!
http://p.sf.net/sfu/learndevnow-d2d___
enlightenment-devel mailing list
enlightenment-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/enlightenment-devel


Re: [E-devel] [patch] elm_genlist - add item flip set/get

2012-03-03 Thread Hyoyoung Chang
As discussed in irc, i modified and removed draggable in flip mode.

@@ -975,6 +975,8 @@ _mouse_move(void*data,
if (ady  0) ady = -dy;
minw /= 2;
minh /= 2;
+   if (it-flipped)
+ return;
if ((adx  minw) || (ady  minh))
  {
 it-dragging = EINA_TRUE;

What do you think about it?
If it's not a good idea, i think flip mode should have only one item.

On Sat, Mar 3, 2012 at 1:39 PM, Hyoyoung Chang hyoyo...@gmail.com wrote:
 On Fri, Mar 2, 2012 at 7:39 PM, Daniel Juyung Seo seojuyu...@gmail.com 
 wrote:
 Thanks for your patch.
 Everything is fine but I still see the floating item bug.
 Could you tell me how to reproduce?
 i tried several times but i can't see it

 And if the item is on dragging, it should not be unrealized.
 As far as I know, when an item is on dragging, unrealizing the item
 will cause unexpected problems.
 I don't remember what it is exactly.
 So I politely recommend you to solve this bug with another solution.
 dragging is enabled by mouse_move (except group item)
 If then how about to define flipped item would not draggable?
 Or as i think we should restrict to only one flipped mode item.
 What do you think so?

 Thanks.

 Daniel Juyung Seo (SeoZ)

 On Fri, Mar 2, 2012 at 5:14 PM, Hyoyoung Chang hyoyo...@gmail.com wrote:
 I attached improved version of flip patch

 Thanks

 On Thu, Mar 1, 2012 at 10:52 PM, Hyoyoung Chang hyoyo...@gmail.com wrote:
 First of all, thanks for detailed review

 On Thu, Mar 1, 2012 at 3:01 PM, Daniel Juyung Seo seojuyu...@gmail.com 
 wrote:
 Thanks Hyoyoung, overall it looks good :)
 I have some comments.

 1. diff option
 Create a diff with -x -up optoin.
 It shows c function name for each  changes.
 This makes review so much easier and faster.
 $ svn diff -x -up *.c

 2. remove default properties from edc.
 - mouse_events: 1
 - rel1.relative: 0 0
 - rel2.relative: 1 1

 3. use elm_win_util_standard_add
 elm_win_add + elm_bg_add is ok but I encourage you to use
 elm_win_util_standard_add in normal cases.
 It does elm_win_add + elm_bg_add and reduces 6 lines of code.
 I didn't know it. I'll apply

 4. formatting
 There are some wrong formatted codes.
 In or edc?

 5. build warnings
 test_genlist.c: In function ‘_flip_icon_clicked_cb’:
 test_genlist.c:2495:82: warning: unused parameter ‘event_info’
 test_genlist.c: In function ‘gl16_content_get’:
 test_genlist.c:2516:17: warning: unused variable ‘ic’
 test_genlist.c: In function ‘test_genlist16’:
 test_genlist.c:2553:39: warning: unused variable ‘bt’
 test_genlist.c:2553:33: warning: unused variable ‘bx2’

 Yeah, It should be removed

 6. In _flip_icon_clicked_cb, you can just do:
 tit-checked = !tit-checked
 However, I would recommend to use elm_genlist_item_flip_get() instead
 of remembering tit-checked.
 This covers more API usage and it's useful example.
 And without checked, you don't even need to use tit array, you can
 just pass (void *)(long) i as an item data.
 If you don't prefer to use that casting trick, you can just use tit
 but without checked member.
 U're right :)

 7. const to getters.
 Yes, add const to getters.
 EAPI Eina_Bool elm_genlist_item_flip_get(const Elm_Object_Item *it);
 Yeah i'll add it

 8. in elm_genlist_item_flip_set
 Instead of
 _it-flipped = EINA_TRUE / EINA_FALSE;
 You can do
 _it-flipped = flip;

 9. floating item bug
 a. flip many items
 b. scroll
 Then I can see floating items bug. I attached screenshot.

 This also happens easily in this case:
 a. flip many items
 b. drag flipped item and scroll it out of viewport.

 10. if statement in elm_genlist_item_flip_set
 You already checked if _it-flipped equals to flip,
 so you do not need to check _it-flipped again.

 if (_it-flipped == flip) return;  you already checked it
 if (flip)
 else
  {
     if (_it-flipped)  do not need to check this
     else
  }
 First checking is to verify changed.
 Second checking is about previous status.
 So It leaves at it is.
 I don't think it's good or clean code either.
 But checking is right. Maybe it should be re-written to make clean code.

 These are just trivial comments.
 Please apply them.
 Otherwise, this patch looks good :)
 Thanks.
 you're always passionate.
 Thanks very much for detail review.


 Daniel Juyung Seo (SeoZ)

 On Wed, Feb 29, 2012 at 9:17 PM, Hyoyoung Chang hyoyo...@gmail.com 
 wrote:
 Dear all.

 I made a patch to introduce new genlist item mode.
 Two public apis are added.
 +EAPI void elm_genlist_item_flip_set(Elm_Object_Item *it, Eina_Bool 
 flip);
 +EAPI Eina_Bool elm_genlist_item_flip_get(Elm_Object_Item *it);

 It provides on-the-flying item change. It works like that a new item
 added on existed item.
 In elementary test, you can test it.
 It's useful at adding widgets or show buttons in genlist item.

 Thanks.

 --
 Virtualization  Cloud Management Using Capacity Planning
 Cloud computing makes use of virtualization - but cloud computing

Re: [E-devel] [patch] elm_genlist - add item flip set/get

2012-03-02 Thread Hyoyoung Chang
On Fri, Mar 2, 2012 at 7:39 PM, Daniel Juyung Seo seojuyu...@gmail.com wrote:
 Thanks for your patch.
 Everything is fine but I still see the floating item bug.
Could you tell me how to reproduce?
i tried several times but i can't see it

 And if the item is on dragging, it should not be unrealized.
 As far as I know, when an item is on dragging, unrealizing the item
 will cause unexpected problems.
 I don't remember what it is exactly.
 So I politely recommend you to solve this bug with another solution.
dragging is enabled by mouse_move (except group item)
If then how about to define flipped item would not draggable?
Or as i think we should restrict to only one flipped mode item.
What do you think so?

 Thanks.

 Daniel Juyung Seo (SeoZ)

 On Fri, Mar 2, 2012 at 5:14 PM, Hyoyoung Chang hyoyo...@gmail.com wrote:
 I attached improved version of flip patch

 Thanks

 On Thu, Mar 1, 2012 at 10:52 PM, Hyoyoung Chang hyoyo...@gmail.com wrote:
 First of all, thanks for detailed review

 On Thu, Mar 1, 2012 at 3:01 PM, Daniel Juyung Seo seojuyu...@gmail.com 
 wrote:
 Thanks Hyoyoung, overall it looks good :)
 I have some comments.

 1. diff option
 Create a diff with -x -up optoin.
 It shows c function name for each  changes.
 This makes review so much easier and faster.
 $ svn diff -x -up *.c

 2. remove default properties from edc.
 - mouse_events: 1
 - rel1.relative: 0 0
 - rel2.relative: 1 1

 3. use elm_win_util_standard_add
 elm_win_add + elm_bg_add is ok but I encourage you to use
 elm_win_util_standard_add in normal cases.
 It does elm_win_add + elm_bg_add and reduces 6 lines of code.
 I didn't know it. I'll apply

 4. formatting
 There are some wrong formatted codes.
 In or edc?

 5. build warnings
 test_genlist.c: In function ‘_flip_icon_clicked_cb’:
 test_genlist.c:2495:82: warning: unused parameter ‘event_info’
 test_genlist.c: In function ‘gl16_content_get’:
 test_genlist.c:2516:17: warning: unused variable ‘ic’
 test_genlist.c: In function ‘test_genlist16’:
 test_genlist.c:2553:39: warning: unused variable ‘bt’
 test_genlist.c:2553:33: warning: unused variable ‘bx2’

 Yeah, It should be removed

 6. In _flip_icon_clicked_cb, you can just do:
 tit-checked = !tit-checked
 However, I would recommend to use elm_genlist_item_flip_get() instead
 of remembering tit-checked.
 This covers more API usage and it's useful example.
 And without checked, you don't even need to use tit array, you can
 just pass (void *)(long) i as an item data.
 If you don't prefer to use that casting trick, you can just use tit
 but without checked member.
 U're right :)

 7. const to getters.
 Yes, add const to getters.
 EAPI Eina_Bool elm_genlist_item_flip_get(const Elm_Object_Item *it);
 Yeah i'll add it

 8. in elm_genlist_item_flip_set
 Instead of
 _it-flipped = EINA_TRUE / EINA_FALSE;
 You can do
 _it-flipped = flip;

 9. floating item bug
 a. flip many items
 b. scroll
 Then I can see floating items bug. I attached screenshot.

 This also happens easily in this case:
 a. flip many items
 b. drag flipped item and scroll it out of viewport.

 10. if statement in elm_genlist_item_flip_set
 You already checked if _it-flipped equals to flip,
 so you do not need to check _it-flipped again.

 if (_it-flipped == flip) return;  you already checked it
 if (flip)
 else
  {
     if (_it-flipped)  do not need to check this
     else
  }
 First checking is to verify changed.
 Second checking is about previous status.
 So It leaves at it is.
 I don't think it's good or clean code either.
 But checking is right. Maybe it should be re-written to make clean code.

 These are just trivial comments.
 Please apply them.
 Otherwise, this patch looks good :)
 Thanks.
 you're always passionate.
 Thanks very much for detail review.


 Daniel Juyung Seo (SeoZ)

 On Wed, Feb 29, 2012 at 9:17 PM, Hyoyoung Chang hyoyo...@gmail.com wrote:
 Dear all.

 I made a patch to introduce new genlist item mode.
 Two public apis are added.
 +EAPI void elm_genlist_item_flip_set(Elm_Object_Item *it, Eina_Bool flip);
 +EAPI Eina_Bool elm_genlist_item_flip_get(Elm_Object_Item *it);

 It provides on-the-flying item change. It works like that a new item
 added on existed item.
 In elementary test, you can test it.
 It's useful at adding widgets or show buttons in genlist item.

 Thanks.

 --
 Virtualization  Cloud Management Using Capacity Planning
 Cloud computing makes use of virtualization - but cloud computing
 also focuses on allowing computing to be delivered as a service.
 http://www.accelacomm.com/jaw/sfnl/114/51521223/
 ___
 enlightenment-devel mailing list
 enlightenment-devel@lists.sourceforge.net
 https://lists.sourceforge.net/lists/listinfo/enlightenment-devel


 --
 Virtualization  Cloud Management Using Capacity Planning
 Cloud computing makes use

Re: [E-devel] [patch] elm_genlist - add item flip set/get

2012-03-01 Thread Hyoyoung Chang
First of all, thanks for detailed review

On Thu, Mar 1, 2012 at 3:01 PM, Daniel Juyung Seo seojuyu...@gmail.com wrote:
 Thanks Hyoyoung, overall it looks good :)
 I have some comments.

 1. diff option
 Create a diff with -x -up optoin.
 It shows c function name for each  changes.
 This makes review so much easier and faster.
 $ svn diff -x -up *.c

 2. remove default properties from edc.
 - mouse_events: 1
 - rel1.relative: 0 0
 - rel2.relative: 1 1

 3. use elm_win_util_standard_add
 elm_win_add + elm_bg_add is ok but I encourage you to use
 elm_win_util_standard_add in normal cases.
 It does elm_win_add + elm_bg_add and reduces 6 lines of code.
I didn't know it. I'll apply

 4. formatting
 There are some wrong formatted codes.
In or edc?

 5. build warnings
 test_genlist.c: In function ‘_flip_icon_clicked_cb’:
 test_genlist.c:2495:82: warning: unused parameter ‘event_info’
 test_genlist.c: In function ‘gl16_content_get’:
 test_genlist.c:2516:17: warning: unused variable ‘ic’
 test_genlist.c: In function ‘test_genlist16’:
 test_genlist.c:2553:39: warning: unused variable ‘bt’
 test_genlist.c:2553:33: warning: unused variable ‘bx2’

Yeah, It should be removed

 6. In _flip_icon_clicked_cb, you can just do:
 tit-checked = !tit-checked
 However, I would recommend to use elm_genlist_item_flip_get() instead
 of remembering tit-checked.
 This covers more API usage and it's useful example.
 And without checked, you don't even need to use tit array, you can
 just pass (void *)(long) i as an item data.
 If you don't prefer to use that casting trick, you can just use tit
 but without checked member.
U're right :)

 7. const to getters.
 Yes, add const to getters.
 EAPI Eina_Bool elm_genlist_item_flip_get(const Elm_Object_Item *it);
Yeah i'll add it

 8. in elm_genlist_item_flip_set
 Instead of
 _it-flipped = EINA_TRUE / EINA_FALSE;
 You can do
 _it-flipped = flip;

 9. floating item bug
 a. flip many items
 b. scroll
 Then I can see floating items bug. I attached screenshot.

 This also happens easily in this case:
 a. flip many items
 b. drag flipped item and scroll it out of viewport.

 10. if statement in elm_genlist_item_flip_set
 You already checked if _it-flipped equals to flip,
 so you do not need to check _it-flipped again.

 if (_it-flipped == flip) return;  you already checked it
 if (flip)
 else
  {
     if (_it-flipped)  do not need to check this
     else
  }
First checking is to verify changed.
Second checking is about previous status.
So It leaves at it is.
I don't think it's good or clean code either.
But checking is right. Maybe it should be re-written to make clean code.

 These are just trivial comments.
 Please apply them.
 Otherwise, this patch looks good :)
 Thanks.
you're always passionate.
Thanks very much for detail review.


 Daniel Juyung Seo (SeoZ)

 On Wed, Feb 29, 2012 at 9:17 PM, Hyoyoung Chang hyoyo...@gmail.com wrote:
 Dear all.

 I made a patch to introduce new genlist item mode.
 Two public apis are added.
 +EAPI void elm_genlist_item_flip_set(Elm_Object_Item *it, Eina_Bool flip);
 +EAPI Eina_Bool elm_genlist_item_flip_get(Elm_Object_Item *it);

 It provides on-the-flying item change. It works like that a new item
 added on existed item.
 In elementary test, you can test it.
 It's useful at adding widgets or show buttons in genlist item.

 Thanks.

 --
 Virtualization  Cloud Management Using Capacity Planning
 Cloud computing makes use of virtualization - but cloud computing
 also focuses on allowing computing to be delivered as a service.
 http://www.accelacomm.com/jaw/sfnl/114/51521223/
 ___
 enlightenment-devel mailing list
 enlightenment-devel@lists.sourceforge.net
 https://lists.sourceforge.net/lists/listinfo/enlightenment-devel


 --
 Virtualization  Cloud Management Using Capacity Planning
 Cloud computing makes use of virtualization - but cloud computing
 also focuses on allowing computing to be delivered as a service.
 http://www.accelacomm.com/jaw/sfnl/114/51521223/
 ___
 enlightenment-devel mailing list
 enlightenment-devel@lists.sourceforge.net
 https://lists.sourceforge.net/lists/listinfo/enlightenment-devel


--
Virtualization  Cloud Management Using Capacity Planning
Cloud computing makes use of virtualization - but cloud computing 
also focuses on allowing computing to be delivered as a service.
http://www.accelacomm.com/jaw/sfnl/114/51521223/
___
enlightenment-devel mailing list
enlightenment-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/enlightenment-devel


[E-devel] [patch] elm_genlist - add item flip set/get

2012-02-29 Thread Hyoyoung Chang
Dear all.

I made a patch to introduce new genlist item mode.
Two public apis are added.
+EAPI void elm_genlist_item_flip_set(Elm_Object_Item *it, Eina_Bool flip);
+EAPI Eina_Bool elm_genlist_item_flip_get(Elm_Object_Item *it);

It provides on-the-flying item change. It works like that a new item
added on existed item.
In elementary test, you can test it.
It's useful at adding widgets or show buttons in genlist item.

Thanks.
Index: elementary/src/lib/elm_genlist.c
===
--- elementary/src/lib/elm_genlist.c(리비전 68548)
+++ elementary/src/lib/elm_genlist.c(작업 사본)
@@ -898,7 +898,7 @@
 if (!it-wd-on_hold)
   {
  it-wd-on_hold = EINA_TRUE;
- if (!it-wd-wasselected)
+ if ((!it-wd-wasselected)  (!it-flipped))
{
   _item_unhighlight(it);
   _item_unselect(it);
@@ -985,7 +985,7 @@
  ecore_timer_del(it-long_timer);
  it-long_timer = NULL;
   }
-if (!it-wd-wasselected)
+if ((!it-wd-wasselected)  (!it-flipped))
   {
  _item_unhighlight(it);
  _item_unselect(it);
@@ -1369,7 +1369,7 @@
if (it-wd-longpressed)
  {
 it-wd-longpressed = EINA_FALSE;
-if (!it-wd-wasselected)
+if ((!it-wd-wasselected)  (!it-flipped))
   {
  _item_unhighlight(it);
  _item_unselect(it);
@@ -1891,6 +1891,39 @@
  }
 }
 
+static Eina_List *
+_item_flips_realize(Elm_Gen_Item *it,
+   Evas_Object *target,
+Eina_List **source)
+{
+   Eina_List *res = NULL;
+
+   if (it-itc-func.content_get)
+ {
+const Eina_List *l;
+const char *key;
+Evas_Object *ic = NULL;
+
+*source = elm_widget_stringlist_get(edje_object_data_get(target, 
flips));
+
+EINA_LIST_FOREACH(*source, l, key)
+  {
+ if (it-itc-func.content_get)
+   ic = it-itc-func.content_get
+  ((void *)it-base.data, WIDGET(it), key);
+ if (ic)
+   {
+  res = eina_list_append(res, ic);
+  edje_object_part_swallow(target, key, ic);
+  evas_object_show(ic);
+  elm_widget_sub_object_add(WIDGET(it), ic);
+   }
+  }
+ }
+
+   return res;
+}
+
 static void
 _item_realize(Elm_Gen_Item *it,
   int   in,
@@ -1918,7 +1951,7 @@
  }
it-item-order_num_in = in;
 
-   if (it-item-nocache)
+   if ((it-item-nocache)  (!it-flipped))
  it-item-nocache = EINA_FALSE;
else
  itc = _item_cache_find(it);
@@ -2036,6 +2069,12 @@
 it-content_objs = _item_content_realize(it, VIEW(it), it-contents, 
NULL);
 _item_state_realize(it, VIEW(it), it-states, NULL);
 
+if (it-flipped)
+  {
+ edje_object_signal_emit(VIEW(it), elm,state,flip,enabled, 
elm);
+ it-content_objs = _item_flips_realize(it, VIEW(it), 
it-contents);
+  }
+
 if (!it-item-mincalcd)
   {
  Evas_Coord mw = -1, mh = -1;
@@ -3257,6 +3296,7 @@
   _multi_move, it);
 
_item_text_realize(it, it-edit_obj, it-item-edit_texts, NULL);
+   if (it-flipped)  edje_object_signal_emit(it-edit_obj, 
elm,state,flip,enabled, elm);
it-item-edit_content_objs =
  _item_content_realize(it, it-edit_obj, it-item-edit_contents, NULL);
_item_state_realize(it, it-edit_obj, it-item-edit_states, NULL);
@@ -3290,7 +3330,7 @@
elm_widget_stringlist_free(it-item-edit_states);
it-item-edit_states = NULL;
EINA_LIST_FREE(it-item-edit_content_objs, icon)
-  evas_object_del(icon);
+ evas_object_del(icon);
edje_object_message_signal_process(it-edit_obj);
 
evas_object_event_callback_del_full(it-edit_obj, EVAS_CALLBACK_MOUSE_DOWN,
@@ -5653,6 +5693,48 @@
  elm_genlist_item_class_free(itc);
 }
 
+EAPI void
+elm_genlist_item_flip_set(Elm_Object_Item *it,
+  Eina_Bool flip)
+{
+   ELM_OBJ_ITEM_CHECK_OR_RETURN(it);
+   Elm_Gen_Item *_it = (Elm_Gen_Item *) it;
+
+   flip = !!flip;
+   if (_it-flipped == flip) return;
+
+   if (flip)
+ {
+_elm_genlist_item_unrealize(_it, EINA_FALSE);
+_it-flipped = EINA_TRUE;
+_it-item-nocache = EINA_TRUE;
+if (_it-selected) _item_unselect(_it);
+
+if (_it-wd-calc_job) ecore_job_del(_it-wd-calc_job);
+_it-wd-calc_job = ecore_job_add(_calc_job, _it-wd);
+ }
+   else
+ {
+if (_it-flipped)
+  {
+ _it-flipped = EINA_FALSE;
+ _it-item-nocache = EINA_TRUE;
+ _item_cache_zero(_it-wd);
+ elm_genlist_item_update(it);
+  }
+else
+  _it-flipped = EINA_FALSE;
+ }
+}
+
+EAPI Eina_Bool
+elm_genlist_item_flip_get(Elm_Object_Item *it)
+{
+   

[E-devel] [patch] elm_cnp - revise document

2012-02-27 Thread Hyoyoung Chang
Dear all.

As i said earlier, elm_cnp's document is revised.
I add information about x11 and make some comment clear.

Thanks
Index: elementary/src/lib/elm_cnp.h
===
--- elementary/src/lib/elm_cnp.h(리비전 68487)
+++ elementary/src/lib/elm_cnp.h(작업 사본)
@@ -2,14 +2,41 @@
  * @defgroup CopyPaste CopyPaste
  *
  * Implements the following functionality
- *a. select, copy/cut and paste 
+ *a. select, copy/cut and paste
  *b. clipboard
- *c. drag and drop 
+ *c. drag and drop
  * in order to share data across application windows.
  *
- * Contains functions to select a portion of text, send it to a buffer,
- * and paste the selection into a target.
+ * Contains functions to select text or a portion of data,
+ * send it to a buffer, and paste the data into a target.
  *
+ * elm_cnp provides generic copy and paste facility on its based window system.
+ * It's not need to know details of each based window system,
+ * But some terms and behavior are originated.
+ * Currently X11 window system is widely used.
+ *
+ * In X11R6 window sytem, CopyPaste works like peer-to-peer communication.
+ * Copying is a operation that owns an object in X server.
+ * X11 calls that objects as 'selections' which are have names.
+ * Generally, two selections are needed to know for copy and paste.
+ * The Primary selection and the Clipboard selection.
+ * Primary selection for selecting text (that means highlighted text).
+ * Clipboard selection for explicit copying behavior
+ * (such as ctrl+c, or copy menu in popup).
+ * Thus in applications, most of cases are only using clipboard selection.
+ * As stated before, taking ownership of a selection dosen't move any actual 
data.
+ * Copying and Pasting goes like below
+ *  1. Copy text in Program A : Program A is trying to own the selection
+ *  2. Paste text in Program B : Program B notes that Program A owns the 
selection
+ *  3. Program B asks A for the text
+ *  4. program A responds, and sends the text to program B
+ *  5. program B pastes the response
+ * More information is on
+ *  - http://www.jwz.org/doc/x-cut-and-paste.html
+ *  - X11R6 Inter-Client Communication Conventions Manual, section 2
+ *
+ * TODO: add for other window system.
+ *
  * @{
  */
 
@@ -20,7 +47,7 @@
  */
 typedef enum
 {
-   ELM_SEL_TYPE_PRIMARY, /** Primary text selection (middle mouse) */
+   ELM_SEL_TYPE_PRIMARY, /** Primary text selection (highlighted or selected 
text) */
ELM_SEL_TYPE_SECONDARY, /** Used when primary selection is in use */
ELM_SEL_TYPE_XDND, /** Drag 'n' Drop */
ELM_SEL_TYPE_CLIPBOARD, /** Clipboard selection (ctrl+C) */
@@ -32,19 +59,19 @@
 typedef enum
 {
/** For matching every possible atom */
-   ELM_SEL_FORMAT_TARGETS = -1,
+   ELM_SEL_FORMAT_TARGETS =   -1,
/** Content is from outside of Elementary */
-   ELM_SEL_FORMAT_NONE = 0x0,
+   ELM_SEL_FORMAT_NONE=  0x0,
/** Plain unformatted text: Used for things that don't want rich markup */
-   ELM_SEL_FORMAT_TEXT = 0x01,
+   ELM_SEL_FORMAT_TEXT= 0x01,
/** Edje textblock markup, including inline images */
-   ELM_SEL_FORMAT_MARKUP = 0x02,
+   ELM_SEL_FORMAT_MARKUP  = 0x02,
/** Images */
-   ELM_SEL_FORMAT_IMAGE = 0x04,
+   ELM_SEL_FORMAT_IMAGE   = 0x04,
/** Vcards */
-   ELM_SEL_FORMAT_VCARD = 0x08,
+   ELM_SEL_FORMAT_VCARD   = 0x08,
/** Raw HTML-like data (eg. webkit) */
-   ELM_SEL_FORMAT_HTML = 0x10,
+   ELM_SEL_FORMAT_HTML= 0x10,
 } Elm_Sel_Format;
 
 /**
@@ -71,10 +98,10 @@
 
 
 /**
- * @brief Set copy and paste data for a widget.
+ * @brief Set copy data for a widget.
  *
- * XXX: need to be rewritten.
- * Append the given callback to the list.
+ * Set a copy data and own a selection. Format is used for specified its type.
+ * buf is saved for later to paste.
  *
  * @param selection Selection type for copying and pasting
  * @param obj The source widget pointer
@@ -94,7 +121,7 @@
  size_t buflen);
 
 /**
- * @brief Retrieve selection data from a widget.
+ * @brief Retrieve data from a widget that has a selection.
  *
  * Gets the current selection data from a widget.
  * The widget input here will usually be elm_entry,
@@ -129,6 +156,8 @@
 /**
  * @brief Clear the selection data of a widget.
  *
+ * Clear all informations of the selection which is owned by a widget.
+ *
  * @see also elm_cnp_selection_set()
  *
  * @param obj The source widget
--
Keep Your Developer Skills Current with LearnDevNow!
The most comprehensive online learning library for Microsoft developers
is just $99.99! Visual Studio, SharePoint, SQL - plus HTML5, CSS3, MVC3,
Metro Style Apps, more. Free future releases when you subscribe now!
http://p.sf.net/sfu/learndevnow-d2d___
enlightenment-devel mailing list
enlightenment-devel@lists.sourceforge.net

[E-devel] [patch] elm_cnp - revise apis

2012-02-27 Thread Hyoyoung Chang
Dear all.

I made a small patch about revise cnp apis.
It changed argument orders of apis to consistence and make elm widget centric.
now all cnp api's first argument is a elm widget.
It breaks api compatibility. so elementarychanges is needed to update.

thanks.
Index: elementary/src/lib/elm_entry.c
===
--- elementary/src/lib/elm_entry.c  (리비전 68489)
+++ elementary/src/lib/elm_entry.c  (작업 사본)
@@ -1182,7 +1182,7 @@
 formats = ELM_SEL_FORMAT_MARKUP;
 if (!wd-textonly)
   formats |= ELM_SEL_FORMAT_IMAGE;
-elm_cnp_selection_get(ELM_SEL_TYPE_CLIPBOARD, formats, data, NULL, 
NULL);
+elm_cnp_selection_get(data, ELM_SEL_TYPE_CLIPBOARD, formats, NULL, 
NULL);
 #endif
  }
 }
@@ -1196,7 +1196,7 @@
if (!wd) return;
sel = edje_object_part_text_selection_get(wd-ent, elm.text);
if ((!sel) || (!sel[0])) return; /* avoid deleting our own selection */
-   elm_cnp_selection_set(seltype, obj, ELM_SEL_FORMAT_MARKUP, sel, 
strlen(sel));
+   elm_cnp_selection_set(obj, seltype, ELM_SEL_FORMAT_MARKUP, sel, 
strlen(sel));
if (seltype == ELM_SEL_TYPE_CLIPBOARD)
  eina_stringshare_replace(wd-cut_sel, sel);
 }
@@ -1588,7 +1588,7 @@
 
 top = elm_widget_top_get(data);
 if (txt  top  (elm_win_xwindow_get(top)))
-  elm_cnp_selection_set(ELM_SEL_TYPE_PRIMARY, data,
+  elm_cnp_selection_set(data, ELM_SEL_TYPE_PRIMARY,
 ELM_SEL_FORMAT_MARKUP, txt, strlen(txt));
  }
 #endif
@@ -1637,7 +1637,7 @@
 
  top = elm_widget_top_get(data);
  if ((top)  (elm_win_xwindow_get(top)))
-   elm_cnp_selection_set(ELM_SEL_TYPE_PRIMARY, data,
+   elm_cnp_selection_set(data, ELM_SEL_TYPE_PRIMARY,
  ELM_SEL_FORMAT_MARKUP, wd-cut_sel,
  strlen(wd-cut_sel));
 #endif
@@ -1674,7 +1674,7 @@
 if ((top)  (elm_win_xwindow_get(top)))
   {
  wd-selection_asked = EINA_TRUE;
- elm_cnp_selection_get(type, ELM_SEL_FORMAT_MARKUP, data,
+ elm_cnp_selection_get(data, type, ELM_SEL_FORMAT_MARKUP,
NULL, NULL);
   }
 #endif
Index: elementary/src/lib/elm_cnp.c
===
--- elementary/src/lib/elm_cnp.c(리비전 68489)
+++ elementary/src/lib/elm_cnp.c(작업 사본)
@@ -390,7 +390,7 @@
 }
 
 EAPI Eina_Bool
-elm_cnp_selection_set(Elm_Sel_Type selection, Evas_Object *obj,
+elm_cnp_selection_set(Evas_Object *obj, Elm_Sel_Type selection,
   Elm_Sel_Format format, const void *selbuf, size_t buflen)
 {
 #ifdef HAVE_ELEMENTARY_X
@@ -463,8 +463,8 @@
 }
 
 EAPI Eina_Bool
-elm_cnp_selection_get(Elm_Sel_Type selection, Elm_Sel_Format format,
-  Evas_Object *obj, Elm_Drop_Cb datacb, void *udata)
+elm_cnp_selection_get(Evas_Object *obj, Elm_Sel_Type selection,
+  Elm_Sel_Format format, Elm_Drop_Cb datacb, void *udata)
 {
 #ifdef HAVE_ELEMENTARY_X
Evas_Object *top;
Index: elementary/src/lib/elm_cnp.h
===
--- elementary/src/lib/elm_cnp.h(리비전 68489)
+++ elementary/src/lib/elm_cnp.h(작업 사본)
@@ -100,7 +100,7 @@
 /**
  * @brief Set copy data for a widget.
  *
- * Set copy data and take ownership of selection. Format is used for 
specifying the selection type,
+ * Set copy data and take ownership of selection. Format is used to specifying 
the selection type,
  * and this is used during pasting.
  *
  * @param selection Selection type for copying and pasting
@@ -113,12 +113,9 @@
  * @ingroup CopyPaste
  *
  */
-// XXX: EAPI void elm_object_cnp_selection_set(Evas_Object *obj, Elm_Sel_Type 
selection,
-// Elm_Sel_Format format, const 
void *buf,
-// size_t buflen);
-EAPI Eina_Bool elm_cnp_selection_set(Elm_Sel_Type selection, Evas_Object *obj,
- Elm_Sel_Format format, const void *buf,
- size_t buflen);
+EAPI Eina_Bool elm_cnp_selection_set(Evas_Object *obj, Elm_Sel_Type selection,
+ Elm_Sel_Format format,
+ const void *buf, size_t buflen);
 
 /**
  * @brief Retrieve data from a widget that has a selection.
@@ -142,15 +139,10 @@
  */
 // XXX: This api needs to be refined by cnp experts.
 //  I suggest:
-// 1. return copy and paste data.
-// 2. call cnp callback regardless of widget type.
-// 3. apps insert text data into entry manually.
-// XXX: EAPI void *elm_object_cnp_selection_get(Evas_Object *obj,
-//  Elm_Sel_Type selection,
-//  Elm_Sel_Format 

[E-devel] [patch] elm_gengrid - add item class management api (1/3)

2012-02-22 Thread Hyoyoung Chang
Dear all.

As like genlist item class management api, I added 4 apis to elm_gengrid.

+EAPI Elm_Gengrid_Item_Class *elm_gengrid_item_class_new(void);
+EAPI void elm_gengrid_item_class_free(Elm_Gengrid_Item_Class *itc);
+EAPI void elm_gengrid_item_class_ref(Elm_Gengrid_Item_Class *itc);
+EAPI void elm_gengrid_item_class_unref(Elm_Gengrid_Item_Class *itc);

gengrid item class is maintained by gengrid in automatic manner.
it maintains its reference count. and item_class_free api marks delete_me.
Unless item_class_free, item class will not be freed.

Thank you.
From 2435dbcf5bbefd5a9dc0db17f7204c38d893cd8b Mon Sep 17 00:00:00 2001
From: Hyoyoung Chang hyoyoung.ch...@samsung.com
Date: Tue, 21 Feb 2012 16:53:25 +0900
Subject: [PATCH 1/3] [gengrid] add item class management apis

---
 src/bin/test_gengrid.c |   56 ++--
 src/lib/elc_fileselector.c |   57 +++--
 src/lib/elm_gengrid.c  |   53 +++
 src/lib/elm_gengrid.h  |   66 +++-
 src/lib/elm_genlist.h  |1 -
 5 files changed, 181 insertions(+), 52 deletions(-)

diff --git a/src/bin/test_gengrid.c b/src/bin/test_gengrid.c
index 8f01a51..b7ccfc7 100644
--- a/src/bin/test_gengrid.c
+++ b/src/bin/test_gengrid.c
@@ -24,7 +24,8 @@ static const char *img[9] =
wood_01.jpg,
 };
 
-static Elm_Gengrid_Item_Class gic, ggic;
+static Elm_Gengrid_Item_Class *gic;
+static Elm_Gengrid_Item_Class ggic;
 
 static void
 _horizontal_grid(void *data, Evas_Object *obj, void *event_info __UNUSED__)
@@ -179,11 +180,12 @@ test_gengrid(void *data __UNUSED__, Evas_Object *obj __UNUSED__, void *event_inf
evas_object_smart_callback_add(grid, drag,stop, grid_drag_stop, NULL);
evas_object_size_hint_weight_set(grid, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
 
-   gic.item_style = default;
-   gic.func.text_get = grid_text_get;
-   gic.func.content_get = grid_content_get;
-   gic.func.state_get = grid_state_get;
-   gic.func.del = grid_del;
+   gic = elm_gengrid_item_class_new();
+   gic-item_style = default;
+   gic-func.text_get = grid_text_get;
+   gic-func.content_get = grid_content_get;
+   gic-func.state_get = grid_state_get;
+   gic-func.del = grid_del;
 
n = 0;
for (i = 0; i  12 * 12; i++)
@@ -192,11 +194,13 @@ test_gengrid(void *data __UNUSED__, Evas_Object *obj __UNUSED__, void *event_inf
 n = (n + 1) % 9;
 ti[i].mode = i;
 ti[i].path = eina_stringshare_add(buf);
-ti[i].item = elm_gengrid_item_append(grid, gic, (ti[i]), grid_sel, NULL);
+ti[i].item = elm_gengrid_item_append(grid, gic, (ti[i]), grid_sel, NULL);
 if (!(i % 5))
   elm_gengrid_item_selected_set(ti[i].item, EINA_TRUE);
  }
 
+   elm_gengrid_item_class_free(gic);
+
evas_object_show(grid);
elm_win_resize_object_add(win, grid);
 
@@ -219,7 +223,7 @@ _before_bt_clicked(void *data, Evas_Object *obj __UNUSED__, void *event_info __U
ti = malloc(sizeof(*ti));
ti-mode = 0;
ti-path = eina_stringshare_add(buf);
-   ti-item = elm_gengrid_item_insert_before(grid, gic, ti, sel, grid_sel,
+   ti-item = elm_gengrid_item_insert_before(grid, gic, ti, sel, grid_sel,
  NULL);
 }
 
@@ -238,7 +242,7 @@ _after_bt_clicked(void *data, Evas_Object *obj __UNUSED__, void *event_info __UN
ti = malloc(sizeof(*ti));
ti-mode = 0;
ti-path = eina_stringshare_add(buf);
-   ti-item = elm_gengrid_item_insert_after(grid, gic, ti, sel, grid_sel,
+   ti-item = elm_gengrid_item_insert_after(grid, gic, ti, sel, grid_sel,
 NULL);
 }
 
@@ -266,7 +270,7 @@ _prepend_bt_clicked(void *data, Evas_Object *obj __UNUSED__, void *event_info __
ti = malloc(sizeof(*ti));
ti-mode = 0;
ti-path = eina_stringshare_add(buf);
-   ti-item = elm_gengrid_item_prepend(grid, gic, ti, grid_sel, NULL);
+   ti-item = elm_gengrid_item_prepend(grid, gic, ti, grid_sel, NULL);
 }
 
 static void
@@ -280,7 +284,7 @@ _append_bt_clicked(void *data, Evas_Object *obj __UNUSED__, void *event_info __U
ti = malloc(sizeof(*ti));
ti-mode = 0;
ti-path = eina_stringshare_add(buf);
-   ti-item = elm_gengrid_item_append(grid, gic, ti, grid_sel, NULL);
+   ti-item = elm_gengrid_item_append(grid, gic, ti, grid_sel, NULL);
 }
 
 static void
@@ -371,11 +375,17 @@ test_gengrid2(void *data __UNUSED__, Evas_Object *obj __UNUSED__, void *event_in
elm_box_pack_end(hbx, ck);
evas_object_show(ck);
 
-   gic.item_style = default;
-   gic.func.text_get = grid_text_get;
-   gic.func.content_get = grid_content_get;
-   gic.func.state_get = grid_state_get;
-   gic.func.del = grid_del;
+   gic = elm_gengrid_item_class_new();
+
+   gic-item_style = default;
+   gic-func.text_get = grid_text_get;
+   gic-func.content_get = grid_content_get;
+   gic-func.state_get = grid_state_get;
+   gic-func.del = grid_del;
+
+   /* item_class_ref is needed for gic

[E-devel] [patch] elm_genlist - move mode_item_style to item_class (2/3)

2012-02-22 Thread Hyoyoung Chang
Dear all.

genlist item class had mode_item_style.
it used for mode styling (such as sweep mode).
one genlist can have multiple mode style.
And mode_item_style's an item's attribute.

So it's better to move to item class from widget_data.

Thank you.
From 8975c9d0f06be21a1aa35a8f8f82307e9737d0eb Mon Sep 17 00:00:00 2001
From: Hyoyoung Chang hyoyoung.ch...@samsung.com
Date: Tue, 21 Feb 2012 17:53:49 +0900
Subject: [PATCH 2/3] [genlist] move mode_item_style to item_class

---
 src/bin/test_genlist.c  |2 +-
 src/lib/elm_deprecated.h|   28 
 src/lib/elm_deprecated_before.h |1 +
 src/lib/elm_gen_common.h|1 -
 src/lib/elm_genlist.c   |   14 +++---
 src/lib/elm_genlist.h   |   28 
 6 files changed, 37 insertions(+), 37 deletions(-)

diff --git a/src/bin/test_genlist.c b/src/bin/test_genlist.c
index aeb7c80..6bb0e9a 100644
--- a/src/bin/test_genlist.c
+++ b/src/bin/test_genlist.c
@@ -1791,11 +1791,11 @@ test_genlist10(void *data __UNUSED__, Evas_Object *obj __UNUSED__, void *event_i
evas_object_show(gl);
 
itc10.item_style = default;
+   itc10.mode_item_style = mode;
itc10.func.text_get = gl10_text_get;
itc10.func.content_get  = gl10_content_get;
itc10.func.state_get = gl_state_get;
itc10.func.del   = gl_del;
-   elm_genlist_mode_item_style_set(gl, mode);
 
for (i = 0; i  50; i++)
  elm_genlist_item_append(gl,
diff --git a/src/lib/elm_deprecated.h b/src/lib/elm_deprecated.h
index ef6ab77..86d7bc0 100644
--- a/src/lib/elm_deprecated.h
+++ b/src/lib/elm_deprecated.h
@@ -1920,6 +1920,34 @@ EINA_DEPRECATED EAPI void  elm_genlist_item_del(Elm_Obje
  */
 EINA_DEPRECATED EAPI Evas_Object  *elm_genlist_item_genlist_get(const Elm_Object_Item *it);
 
+/**
+ * Get the mode item style of items in the genlist
+ * @param obj The genlist object
+ * @return The mode item style string, or NULL if none is specified
+ *
+ * This is a constant string and simply defines the name of the
+ * style that will be used for mode animations. It can be
+ * @c NULL if you don't plan to use Genlist mode. See
+ * elm_genlist_item_mode_set() for more info.
+ *
+ * @ingroup Genlist
+ */
+EINA_DEPRECATED EAPI const char   *elm_genlist_mode_item_style_get(const Evas_Object *obj);
+
+/**
+ * Set the mode item style of items in the genlist
+ * @param obj The genlist object
+ * @param style The mode item style string, or NULL if none is desired
+ *
+ * This is a constant string and simply defines the name of the
+ * style that will be used for mode animations. It can be
+ * @c NULL if you don't plan to use Genlist mode. See
+ * elm_genlist_item_mode_set() for more info.
+ *
+ * @ingroup Genlist
+ */
+EINA_DEPRECATED EAPI void  elm_genlist_mode_item_style_set(Evas_Object *obj, const char *style);
+
 
 #define ELM_IMAGE_ROTATE_90_CW 1
 #define ELM_IMAGE_ROTATE_180_CW 2
diff --git a/src/lib/elm_deprecated_before.h b/src/lib/elm_deprecated_before.h
index 97cf026..a2c0a90 100644
--- a/src/lib/elm_deprecated_before.h
+++ b/src/lib/elm_deprecated_before.h
@@ -13,6 +13,7 @@ struct _Elm_Gen_Item_Class
unsigned int refcount;
Eina_Bool delete_me : 1;
const char *item_style;
+   const char *mode_item_style;
struct _Elm_Gen_Item_Class_Func
{
   Elm_Gen_Item_Text_Get_Cbtext_get;
diff --git a/src/lib/elm_gen_common.h b/src/lib/elm_gen_common.h
index 28f8b1d..7dfeeb5 100644
--- a/src/lib/elm_gen_common.h
+++ b/src/lib/elm_gen_common.h
@@ -126,7 +126,6 @@ struct _Widget_Data
Ecore_Timer   *multi_timer, *scr_hold_timer;
Ecore_Animator*reorder_move_animator;
const char*mode_type;
-   const char*mode_item_style;
unsigned int   start_time;
Evas_Coord prev_x, prev_y, prev_mx, prev_my;
Evas_Coord cur_x, cur_y, cur_mx, cur_my;
diff --git a/src/lib/elm_genlist.c b/src/lib/elm_genlist.c
index ad98448..101c009 100644
--- a/src/lib/elm_genlist.c
+++ b/src/lib/elm_genlist.c
@@ -2957,7 +2957,7 @@ _mode_item_realize(Elm_Gen_Item *it)
 
if (it-item-order_num_in  0x1) strncat(buf, _odd, sizeof(buf) - strlen(buf));
strncat(buf, /, sizeof(buf) - strlen(buf));
-   strncat(buf, it-wd-mode_item_style, sizeof(buf) - strlen(buf));
+   strncat(buf, it-itc-mode_item_style, sizeof(buf) - strlen(buf));
 
_elm_theme_object_set(WIDGET(it), it-item-mode_view, genlist, buf,
  elm_widget_style_get(WIDGET(it)));
@@ -5240,7 +5240,7 @@ elm_genlist_item_mode_set(Elm_Object_Item  *it,
(!strcmp(mode_type, wd-mode_type)) 
(mode_set))
   return;
-   if (!wd-mode_item_style) return;
+   if (!_it-itc-mode_item_style) return;
_it-mode_set = mode_set;
 
if (wd-multi)
@@ -5265,14 +5265,13 @@ elm_genlist_item_mode_set(Elm_Object_Item

Re: [E-devel] [patch] elm_genlist - add item_class management functions

2012-02-17 Thread Hyoyoung Chang
well, that means you have expectations to this feature.
that's very good for me and thanks.
revised version is attached.

On Fri, Feb 17, 2012 at 8:53 PM, Carsten Haitzler ras...@rasterman.com wrote:
 On Thu, 16 Feb 2012 15:10:16 +0900 Hyoyoung Chang hyoyo...@gmail.com said:

 can you adjust elc_fileselector.c to use the new creation/free of smart
 classes. also test_store.c as well? :) (i know - the requests keep coming!) :)

 oops i miss that. thanks.
 attaching improved version

 On Thu, Feb 16, 2012 at 2:59 PM, Daniel Juyung Seo seojuyu...@gmail.com
 wrote:
  Great!
  But add NULL check for itc.
  Thanks.
 
  Daniel Juyung Seo (SeoZ)
 
  On Wed, Feb 15, 2012 at 7:09 PM, Hyoyoung Chang hyoyo...@gmail.com wrote:
 
  yeah, it's right.
  added free and ref to examples.
 
  On Tue, Feb 14, 2012 at 2:47 PM, Carsten Haitzler ras...@rasterman.com
  wrote:
   On Mon, 13 Feb 2012 19:07:07 +0900 Hyoyoung Chang hyoyo...@gmail.com
  said:
  
   ooh something i didn't realize - you should free item class in test
  examples
   after u are done filling genlist with items - so the example is good.
   (otherwise they will leak) :)
  
   So it's revised version.
   I changed for 1~4.
   And one more thing is changed.
   ref/unref functions are public.
   Because refcount start from 1.
   Thank you.
  
   On Mon, Feb 13, 2012 at 5:11 PM, Carsten Haitzler ras...@rasterman.com
  
   wrote:
On Fri, 10 Feb 2012 18:26:08 +0900 Hyoyoung Chang 
hyoyo...@gmail.com
  said:
   
1. your patch has your minw ... wd-w stuff (bugfix at genlist
  rotation)
2. refcount should start at 1 imho.
3. delete_me - use bitfield (delete_me : 1)
4. i'd prefer the version field to be at the start, not end of class.
  i kn-w
this breaks abi with current apps, but we have to do this to make
  things
work into the future. also move refcount and delete_me flag to the
  start
too. keep func at the end please :)
   
fix these and then thumbs up :)
   
Dear all.
   
I make controversial apis for item class management.
As raster and other guys suggest, I simplify APIs and its behaviors.
   
First, Two public apis and two internal apis are introduced
   
+EAPI Elm_Genlist_Item_Class *
+elm_genlist_item_class_new(void)
   
+EAPI void
+elm_genlist_item_class_free(Elm_Genlist_Item_Class *itc)
   
+void
+_elm_genlist_item_class_ref(Elm_Genlist_Item_Class *itc)
   
+void
+_elm_genlist_item_class_unref(Elm_Genlist_Item_Class *itc)
   
genlist item class is maintained by genlist in automatic manner.
   
And three fields are introduced in genlist item class.
+   int version;
+   unsigned int refcount;
+   Eina_Bool delete_me;
   
Normally a user add a elm_genlist_item_class by
  elm_genlist_item_class_new
(). Then its reference counter is automatic maintained.
If the user wanna to remove the elm_genlist_item_class, then call
elm_genlist_item_class_free()
After refcount reaches to 0, it will be removed.
   
Thank you.
   
PS: I made those apis in genlist. If its accepted i'll make a new
patch for gengrid.
   
   
--
- Codito, ergo sum - I code, therefore I am
  --
The Rasterman (Carsten Haitzler)    ras...@rasterman.com
   
  
  
   --
   - Codito, ergo sum - I code, therefore I am --
   The Rasterman (Carsten Haitzler)    ras...@rasterman.com
  
 
 
  --
  Virtualization  Cloud Management Using Capacity Planning
  Cloud computing makes use of virtualization - but cloud computing
  also focuses on allowing computing to be delivered as a service.
  http://www.accelacomm.com/jaw/sfnl/114/51521223/
  ___
  enlightenment-devel mailing list
  enlightenment-devel@lists.sourceforge.net
  https://lists.sourceforge.net/lists/listinfo/enlightenment-devel
 
 
  --
  Virtualization  Cloud Management Using Capacity Planning
  Cloud computing makes use of virtualization - but cloud computing
  also focuses on allowing computing to be delivered as a service.
  http://www.accelacomm.com/jaw/sfnl/114/51521223/
  ___
  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

Index: elementary/src/lib/elm_genlist.c
===
--- elementary/src/lib/elm_genlist.c(리비전 68075)
+++ elementary/src/lib/elm_genlist.c(작업 사본)
@@ -796,6 +796,7 @@
  it-parent-item-items = eina_list_remove(it-parent-item-items, it);
if (it-item-swipe_timer) ecore_timer_del(it-item

[E-devel] [patch] elm_genlist - add item_class management functions

2012-02-15 Thread Hyoyoung Chang
yeah, it's right.
added free and ref to examples.

On Tue, Feb 14, 2012 at 2:47 PM, Carsten Haitzler ras...@rasterman.com wrote:
 On Mon, 13 Feb 2012 19:07:07 +0900 Hyoyoung Chang hyoyo...@gmail.com said:

 ooh something i didn't realize - you should free item class in test examples
 after u are done filling genlist with items - so the example is good.
 (otherwise they will leak) :)

 So it's revised version.
 I changed for 1~4.
 And one more thing is changed.
 ref/unref functions are public.
 Because refcount start from 1.
 Thank you.

 On Mon, Feb 13, 2012 at 5:11 PM, Carsten Haitzler ras...@rasterman.com
 wrote:
  On Fri, 10 Feb 2012 18:26:08 +0900 Hyoyoung Chang hyoyo...@gmail.com 
  said:
 
  1. your patch has your minw ... wd-w stuff (bugfix at genlist rotation)
  2. refcount should start at 1 imho.
  3. delete_me - use bitfield (delete_me : 1)
  4. i'd prefer the version field to be at the start, not end of class. i 
  kn-w
  this breaks abi with current apps, but we have to do this to make things
  work into the future. also move refcount and delete_me flag to the start
  too. keep func at the end please :)
 
  fix these and then thumbs up :)
 
  Dear all.
 
  I make controversial apis for item class management.
  As raster and other guys suggest, I simplify APIs and its behaviors.
 
  First, Two public apis and two internal apis are introduced
 
  +EAPI Elm_Genlist_Item_Class *
  +elm_genlist_item_class_new(void)
 
  +EAPI void
  +elm_genlist_item_class_free(Elm_Genlist_Item_Class *itc)
 
  +void
  +_elm_genlist_item_class_ref(Elm_Genlist_Item_Class *itc)
 
  +void
  +_elm_genlist_item_class_unref(Elm_Genlist_Item_Class *itc)
 
  genlist item class is maintained by genlist in automatic manner.
 
  And three fields are introduced in genlist item class.
  +   int version;
  +   unsigned int refcount;
  +   Eina_Bool delete_me;
 
  Normally a user add a elm_genlist_item_class by elm_genlist_item_class_new
  (). Then its reference counter is automatic maintained.
  If the user wanna to remove the elm_genlist_item_class, then call
  elm_genlist_item_class_free()
  After refcount reaches to 0, it will be removed.
 
  Thank you.
 
  PS: I made those apis in genlist. If its accepted i'll make a new
  patch for gengrid.
 
 
  --
  - Codito, ergo sum - I code, therefore I am --
  The Rasterman (Carsten Haitzler)    ras...@rasterman.com
 


 --
 - Codito, ergo sum - I code, therefore I am --
 The Rasterman (Carsten Haitzler)    ras...@rasterman.com

Index: elementary/src/lib/elm_genlist.c
===
--- elementary/src/lib/elm_genlist.c(리비전 67966)
+++ elementary/src/lib/elm_genlist.c(작업 사본)
@@ -796,6 +796,7 @@
  it-parent-item-items = eina_list_remove(it-parent-item-items, it);
if (it-item-swipe_timer) ecore_timer_del(it-item-swipe_timer);
_elm_genlist_item_del_serious(it);
+   elm_genlist_item_class_unref((Elm_Genlist_Item_Class *)it-itc);
evas_event_thaw(evas_object_evas_get(obj));
evas_event_thaw_eval(evas_object_evas_get(obj));
 }
@@ -3323,6 +3324,7 @@
it-wd = wd;
it-generation = wd-generation;
it-itc = itc;
+   elm_genlist_item_class_ref((Elm_Genlist_Item_Class *)itc);
it-base.data = data;
it-parent = parent;
it-func.func = func;
@@ -5331,6 +5333,57 @@
return _it-item-flags;
 }
 
+EAPI Elm_Genlist_Item_Class *
+elm_genlist_item_class_new(void)
+{
+   Elm_Genlist_Item_Class *itc;
+
+   itc = calloc(1, sizeof(Elm_Genlist_Item_Class));
+   if (!itc)
+ return NULL;
+   itc-version = ELM_GENLIST_ITEM_CLASS_VERSION;
+   itc-refcount = 1;
+   itc-delete_me = EINA_FALSE;
+
+   return itc;
+}
+
+EAPI void
+elm_genlist_item_class_free(Elm_Genlist_Item_Class *itc)
+{
+   if (itc-version == ELM_GENLIST_ITEM_CLASS_VERSION)
+ {
+if (!itc-delete_me) itc-delete_me = EINA_TRUE;
+if (itc-refcount  0) elm_genlist_item_class_unref(itc);
+else
+  {
+ itc-version = 0;
+ free(itc);
+  }
+ }
+}
+
+EAPI void
+elm_genlist_item_class_ref(Elm_Genlist_Item_Class *itc)
+{
+   if (itc-version == ELM_GENLIST_ITEM_CLASS_VERSION)
+ {
+itc-refcount++;
+if (itc-refcount == 0) itc-refcount--;
+ }
+}
+
+EAPI void
+elm_genlist_item_class_unref(Elm_Genlist_Item_Class *itc)
+{
+   if (itc-version == ELM_GENLIST_ITEM_CLASS_VERSION)
+ {
+if (itc-refcount  0) itc-refcount--;
+if (itc-delete_me  (!itc-refcount))
+  elm_genlist_item_class_free(itc);
+ }
+}
+
 /* for gengrid as of now */
 void
 _elm_genlist_page_relative_set(Evas_Object *obj,
Index: elementary/src/lib/elm_genlist.h
===
--- elementary/src/lib/elm_genlist.h(리비전 67966)
+++ elementary/src/lib/elm_genlist.h(작업 사본)
@@ -1846,6 +1846,71 @@
  */
 EAPI Elm_Genlist_Item_Flagselm_genlist_item_flags_get(const 
Elm_Object_Item

Re: [E-devel] [patch] elm_genlist - add item_class management functions

2012-02-15 Thread Hyoyoung Chang
oops i miss that. thanks.
attaching improved version

On Thu, Feb 16, 2012 at 2:59 PM, Daniel Juyung Seo seojuyu...@gmail.com wrote:
 Great!
 But add NULL check for itc.
 Thanks.

 Daniel Juyung Seo (SeoZ)

 On Wed, Feb 15, 2012 at 7:09 PM, Hyoyoung Chang hyoyo...@gmail.com wrote:

 yeah, it's right.
 added free and ref to examples.

 On Tue, Feb 14, 2012 at 2:47 PM, Carsten Haitzler ras...@rasterman.com
 wrote:
  On Mon, 13 Feb 2012 19:07:07 +0900 Hyoyoung Chang hyoyo...@gmail.com
 said:
 
  ooh something i didn't realize - you should free item class in test
 examples
  after u are done filling genlist with items - so the example is good.
  (otherwise they will leak) :)
 
  So it's revised version.
  I changed for 1~4.
  And one more thing is changed.
  ref/unref functions are public.
  Because refcount start from 1.
  Thank you.
 
  On Mon, Feb 13, 2012 at 5:11 PM, Carsten Haitzler ras...@rasterman.com
 
  wrote:
   On Fri, 10 Feb 2012 18:26:08 +0900 Hyoyoung Chang hyoyo...@gmail.com
 said:
  
   1. your patch has your minw ... wd-w stuff (bugfix at genlist
 rotation)
   2. refcount should start at 1 imho.
   3. delete_me - use bitfield (delete_me : 1)
   4. i'd prefer the version field to be at the start, not end of class.
 i kn-w
   this breaks abi with current apps, but we have to do this to make
 things
   work into the future. also move refcount and delete_me flag to the
 start
   too. keep func at the end please :)
  
   fix these and then thumbs up :)
  
   Dear all.
  
   I make controversial apis for item class management.
   As raster and other guys suggest, I simplify APIs and its behaviors.
  
   First, Two public apis and two internal apis are introduced
  
   +EAPI Elm_Genlist_Item_Class *
   +elm_genlist_item_class_new(void)
  
   +EAPI void
   +elm_genlist_item_class_free(Elm_Genlist_Item_Class *itc)
  
   +void
   +_elm_genlist_item_class_ref(Elm_Genlist_Item_Class *itc)
  
   +void
   +_elm_genlist_item_class_unref(Elm_Genlist_Item_Class *itc)
  
   genlist item class is maintained by genlist in automatic manner.
  
   And three fields are introduced in genlist item class.
   +   int version;
   +   unsigned int refcount;
   +   Eina_Bool delete_me;
  
   Normally a user add a elm_genlist_item_class by
 elm_genlist_item_class_new
   (). Then its reference counter is automatic maintained.
   If the user wanna to remove the elm_genlist_item_class, then call
   elm_genlist_item_class_free()
   After refcount reaches to 0, it will be removed.
  
   Thank you.
  
   PS: I made those apis in genlist. If its accepted i'll make a new
   patch for gengrid.
  
  
   --
   - Codito, ergo sum - I code, therefore I am
 --
   The Rasterman (Carsten Haitzler)    ras...@rasterman.com
  
 
 
  --
  - Codito, ergo sum - I code, therefore I am --
  The Rasterman (Carsten Haitzler)    ras...@rasterman.com
 


 --
 Virtualization  Cloud Management Using Capacity Planning
 Cloud computing makes use of virtualization - but cloud computing
 also focuses on allowing computing to be delivered as a service.
 http://www.accelacomm.com/jaw/sfnl/114/51521223/
 ___
 enlightenment-devel mailing list
 enlightenment-devel@lists.sourceforge.net
 https://lists.sourceforge.net/lists/listinfo/enlightenment-devel


 --
 Virtualization  Cloud Management Using Capacity Planning
 Cloud computing makes use of virtualization - but cloud computing
 also focuses on allowing computing to be delivered as a service.
 http://www.accelacomm.com/jaw/sfnl/114/51521223/
 ___
 enlightenment-devel mailing list
 enlightenment-devel@lists.sourceforge.net
 https://lists.sourceforge.net/lists/listinfo/enlightenment-devel
Index: elementary/src/lib/elm_genlist.c
===
--- elementary/src/lib/elm_genlist.c(리비전 68002)
+++ elementary/src/lib/elm_genlist.c(작업 사본)
@@ -796,6 +796,7 @@
  it-parent-item-items = eina_list_remove(it-parent-item-items, it);
if (it-item-swipe_timer) ecore_timer_del(it-item-swipe_timer);
_elm_genlist_item_del_serious(it);
+   elm_genlist_item_class_unref((Elm_Genlist_Item_Class *)it-itc);
evas_event_thaw(evas_object_evas_get(obj));
evas_event_thaw_eval(evas_object_evas_get(obj));
 }
@@ -3323,6 +3324,7 @@
it-wd = wd;
it-generation = wd-generation;
it-itc = itc;
+   elm_genlist_item_class_ref((Elm_Genlist_Item_Class *)itc);
it-base.data = data;
it-parent = parent;
it-func.func = func;
@@ -5331,6 +5333,57 @@
return _it-item-flags;
 }
 
+EAPI Elm_Genlist_Item_Class *
+elm_genlist_item_class_new(void)
+{
+   Elm_Genlist_Item_Class *itc;
+
+   itc = calloc(1, sizeof(Elm_Genlist_Item_Class));
+   if (!itc)
+ return NULL;
+   itc

Re: [E-devel] E SVN: seoz trunk/elementary/src/lib

2012-02-15 Thread Hyoyoung Chang
frankly speaking, i didn't care of cnp apis.
some are too much coupled with ecore_x.
and other things are not updated.
After reviewing i'll make two patches
first patch is updating docs and infos.
and other patch will contain decoupling with elm_entry and ecore_x.


On Thu, Feb 16, 2012 at 4:10 PM, Daniel Juyung Seo seojuyu...@gmail.com wrote:
 ihyoyoung,
 can you please add some comments on elm_cnp documentation?
 I have no knowledge about copy and paste, and it's hard to understand with
 current description.
 Thanks in advance.

 Daniel Juyung Seo (SeoZ)

 On Thu, Feb 16, 2012 at 4:06 PM, Enlightenment SVN 
 no-re...@enlightenment.org wrote:

 Log:
 elm cnp: Reviewed cnp APIs. Many things need to be changed.

  Signed-off-by: Daniel Juyung Seo juyung@samsung.com

 Author:       seoz
 Date:         2012-02-15 23:06:13 -0800 (Wed, 15 Feb 2012)
 New Revision: 68007
 Trac:         http://trac.enlightenment.org/e/changeset/68007

 Modified:
  trunk/elementary/src/lib/Elementary.h.intrunk/elementary/src/lib/elm_cnp.h 
 trunk/elementary/src/lib/elm_cnp_helper.c

 Modified: trunk/elementary/src/lib/Elementary.h.in
 ===
 --- trunk/elementary/src/lib/Elementary.h.in    2012-02-16 07:06:09 UTC
 (rev 68006)
 +++ trunk/elementary/src/lib/Elementary.h.in    2012-02-16 07:06:13 UTC
 (rev 68007)
 @@ -184,7 +184,7 @@
  #include elm_calendar.h
  #include elm_check.h
  #include elm_clock.h
 -#include elm_cnp.h
 +#include elm_cnp.h // comments in elm_cnp.h
  #include elm_colorselector.h
  #include elm_config.h
  #include elm_conform.h

 Modified: trunk/elementary/src/lib/elm_cnp.h
 ===
 --- trunk/elementary/src/lib/elm_cnp.h  2012-02-16 07:06:09 UTC (rev 68006)
 +++ trunk/elementary/src/lib/elm_cnp.h  2012-02-16 07:06:13 UTC (rev 68007)
 @@ -45,13 +45,13 @@
  };

  /**
 - * @brief Set a data of a widget to copy and paste.
 + * @brief Set copy and paste data to a widget.
  *
 - * Append the given callback to the list. This functions will be called
 - * called.
 + * XXX: need to be rewritten.
 + * Append the given callback to the list. This functions will be called.
  *
 - * @param selection selection type for copying and pasting
 - * @param widget The source widget pointer
 + * @param selection Selection type for copying and pasting
 + * @param obj The source widget pointer
  * @param format Type of selection format
  * @param buf The pointer of data source
  * @return If EINA_TRUE, setting data is success.
 @@ -59,20 +59,24 @@
  * @ingroup CopyPaste
  *
  */
 +// XXX: EAPI void elm_object_cnp_selection_set(Evas_Object *obj,
 Elm_Sel_Type selection,
 +//                                             Elm_Sel_Format format,
 const void *buf,
 +//                                             size_t buflen);
 +EAPI Eina_Bool elm_cnp_selection_set(Elm_Sel_Type selection, Evas_Object
 *obj,
 +                                     Elm_Sel_Format format, const void
 *buf,
 +                                     size_t buflen);

 -EAPI Eina_Bool elm_cnp_selection_set(Elm_Sel_Type selection, Evas_Object
 *widget, Elm_Sel_Format format, const void *buf, size_t buflen);
 -
  /**
 - * @brief Retrieve the data from the widget which is set for copying and
 pasting.
 + * @brief Retrieve the copy and paste data from the widget.
  *
 - * Getting the data from the widget which is set for copying and pasting.
 - * Mainly the widget is elm_entry. If then @p datacb and @p udata are
 - * can be NULL. If not, @p datacb and @p udata are used for retrieving
 data.
 + * Gets the data from the widget which is set for copying and pasting.
 + * Mainly the widget is elm_entry. If then @p datacb and @p udata can be
 NULL.
 + * If not, @p datacb and @p udata are used for retrieving data.
  *
  * @see also elm_cnp_selection_set()
  *
 - * @param selection selection type for copying and pasting
 - * @param widget The source widget pointer
 + * @param selection Selection type for copying and pasting
 + * @param obj The source widget pointer
  * @param datacb The user data callback if the target widget isn't
 elm_entry
  * @param udata The user data pointer for @p datacb
  * @return If EINA_TRUE, getting data is success.
 @@ -80,26 +84,38 @@
  * @ingroup CopyPaste
  *
  */
 +// XXX: This api needs to be refined by cnp experts.
 +//      I suggest:
 +//         1. return copy and paste data.
 +//         2. call cnp callback regardless of widget type.
 +//         3. apps insert text data into entry manually.
 +// XXX: EAPI void *elm_object_cnp_selection_get(Evas_Object *obj,
 +//                                              Elm_Sel_Type selection,
 +//                                              Elm_Sel_Format format,
 +//                                              Elm_Cnp_Cb datacb);
 +EAPI Eina_Bool elm_cnp_selection_get(Elm_Sel_Type selection,
 +                                     Elm_Sel_Format format, Evas_Object
 *obj,
 +     

Re: [E-devel] Elementary 1.0 (and efl 1.3, etc.)

2012-02-13 Thread Hyoyoung Chang
yay. elementary 1.0
before that i should send many mails as i can

On Tue, Feb 14, 2012 at 11:44 AM, Carsten Haitzler ras...@rasterman.com wrote:
 Let's get this show on the road.

 So people have been asking for dates... I say March 1. get it out so we can
 focus on E17 then. Cedric - this means Emotion, EIO, Ethumb too - right? what
 about epdf? of course this also needs a new round of efl (eina, evas, edje
 etc.) releases too. get cracking. freeze by 27th of feb! :)

 --
 - Codito, ergo sum - I code, therefore I am --
 The Rasterman (Carsten Haitzler)    ras...@rasterman.com


 --
 Keep Your Developer Skills Current with LearnDevNow!
 The most comprehensive online learning library for Microsoft developers
 is just $99.99! Visual Studio, SharePoint, SQL - plus HTML5, CSS3, MVC3,
 Metro Style Apps, more. Free future releases when you subscribe now!
 http://p.sf.net/sfu/learndevnow-d2d
 ___
 enlightenment-devel mailing list
 enlightenment-devel@lists.sourceforge.net
 https://lists.sourceforge.net/lists/listinfo/enlightenment-devel

--
Keep Your Developer Skills Current with LearnDevNow!
The most comprehensive online learning library for Microsoft developers
is just $99.99! Visual Studio, SharePoint, SQL - plus HTML5, CSS3, MVC3,
Metro Style Apps, more. Free future releases when you subscribe now!
http://p.sf.net/sfu/learndevnow-d2d
___
enlightenment-devel mailing list
enlightenment-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/enlightenment-devel


  1   2   >