Hi
this patch add to engrave the function:
engrave_part_state_remove(part,state)
that will remove the part_state from the part.

PS:
leviathan: thanks for the good previous commit.

Dave

Index: src/lib/engrave_part.c
===================================================================
RCS file: /cvs/e/e17/libs/engrave/src/lib/engrave_part.c,v
retrieving revision 1.17
diff -u -r1.17 engrave_part.c
--- src/lib/engrave_part.c	10 Jan 2007 01:58:30 -0000	1.17
+++ src/lib/engrave_part.c	10 Jan 2007 15:50:29 -0000
@@ -439,6 +439,27 @@
 }
 
 /**
+ * engrave_part_state_remove - remove the state from the part.
+ * @param ep: The Engrave_Part to remove the state to.
+ * @param eps: The Engrave_Part_State to remove.
+ *
+ * @return Returns no value.
+ */
+EAPI void
+engrave_part_state_remove(Engrave_Part *ep, Engrave_Part_State *eps)
+{
+   if (!eps || !ep) return;
+
+   /* if eps its the current one then set current to NULL */
+   if (eps == engrave_part_current_state_get(ep))
+      ep->current_state = NULL;
+
+   engrave_part_state_parent_set(eps, NULL);
+
+   evas_list_remove(ep->states, eps);
+}
+
+/**
  * engrave_part_state_by_name_value_find - Find the Engrave_Part State that * matches the given name and value in this part
  * @param ep: The Engrave_Part to search.
  * @param name: The name to search for
Index: src/lib/engrave_part.h
===================================================================
RCS file: /cvs/e/e17/libs/engrave/src/lib/engrave_part.h,v
retrieving revision 1.12
diff -u -r1.12 engrave_part.h
--- src/lib/engrave_part.h	6 Sep 2006 07:31:31 -0000	1.12
+++ src/lib/engrave_part.h	10 Jan 2007 15:50:29 -0000
@@ -78,6 +78,7 @@
 EAPI void engrave_part_dragable_y_set(Engrave_Part *ep, int y, int step, int count);
 EAPI void engrave_part_dragable_confine_set(Engrave_Part *ep, const char *confine);
 EAPI void engrave_part_state_add(Engrave_Part *ep, Engrave_Part_State *eps);
+EAPI void engrave_part_state_remove(Engrave_Part *ep, Engrave_Part_State *eps);
 EAPI Engrave_Part_State * engrave_part_state_by_name_value_find(Engrave_Part *ep, 
                                                                 const char *name, double val);
 
-------------------------------------------------------------------------
Take Surveys. Earn Cash. Influence the Future of IT
Join SourceForge.net's Techsay panel and you'll get the chance to share your
opinions on IT & business topics through brief surveys - and earn cash
http://www.techsay.com/default.php?page=join.php&p=sourceforge&CID=DEVDEV
_______________________________________________
enlightenment-devel mailing list
enlightenment-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/enlightenment-devel

Reply via email to