Enlightenment CVS committal
Author : dj2
Project : e17
Module : libs/engrave
Dir : e17/libs/engrave/src/lib
Modified Files:
engrave_file.c engrave_file.h engrave_group.c engrave_group.h
Log Message:
- add the ability to find data blocks by key
===================================================================
RCS file: /cvsroot/enlightenment/e17/libs/engrave/src/lib/engrave_file.c,v
retrieving revision 1.13
retrieving revision 1.14
diff -u -3 -r1.13 -r1.14
--- engrave_file.c 16 Nov 2004 01:13:30 -0000 1.13
+++ engrave_file.c 29 Nov 2004 22:27:21 -0000 1.14
@@ -345,4 +345,28 @@
}
}
+/**
+ * engrave_file_data_by_key_find - find the Engrave_Data by key
+ * @param ef: The Engrave_File to search
+ * @param key: They key to search for
+ *
+ * @return Returns the Engrave_Data with the matching key or NULL if no such
+ * data exists.
+ */
+Engrave_Data *
+engrave_file_data_by_key_find(Engrave_File *ef, const char *key)
+{
+ Evas_List *l;
+
+ if (!ef || !key) return NULL;
+ for (l = ef->data; l; l = l->next) {
+ Engrave_Data *ed = l->data;
+ const char *data_key = engrave_data_key_get(ed);
+
+ if (!strcmp(key, data_key) && (strlen(key) == strlen(data_key)))
+ return ed;
+ }
+}
+
+
===================================================================
RCS file: /cvsroot/enlightenment/e17/libs/engrave/src/lib/engrave_file.h,v
retrieving revision 1.9
retrieving revision 1.10
diff -u -3 -r1.9 -r1.10
--- engrave_file.h 16 Nov 2004 01:13:30 -0000 1.9
+++ engrave_file.h 29 Nov 2004 22:27:22 -0000 1.10
@@ -68,6 +68,9 @@
void (*func)(Engrave_Font *, void *),
void *data);
+Engrave_Data *engrave_file_data_by_key_find(Engrave_File *ef,
+ const char *key);
+
/**
* @}
*/
===================================================================
RCS file: /cvsroot/enlightenment/e17/libs/engrave/src/lib/engrave_group.c,v
retrieving revision 1.11
retrieving revision 1.12
diff -u -3 -r1.11 -r1.12
--- engrave_group.c 15 Nov 2004 16:49:05 -0000 1.11
+++ engrave_group.c 29 Nov 2004 22:27:23 -0000 1.12
@@ -361,4 +361,26 @@
}
}
+/**
+ * engrave_group_data_by_key_find - find the Engrave_Data by key
+ * @param eg: The Engrave_Group to search
+ * @param key: They key to search for
+ *
+ * @return Returns the Engrave_Data with the matching key or NULL if no such
+ * data exists.
+ */
+Engrave_Data *
+engrave_group_data_by_key_find(Engrave_Group *eg, const char *key)
+{
+ Evas_List *l;
+
+ if (!eg || !key) return NULL;
+ for (l = eg->data; l; l = l->next) {
+ Engrave_Data *ed = l->data;
+ const char *data_key = engrave_data_key_get(ed);
+
+ if (!strcmp(key, data_key) && (strlen(key) == strlen(data_key)))
+ return ed;
+ }
+}
===================================================================
RCS file: /cvsroot/enlightenment/e17/libs/engrave/src/lib/engrave_group.h,v
retrieving revision 1.9
retrieving revision 1.10
diff -u -3 -r1.9 -r1.10
--- engrave_group.h 15 Nov 2004 16:49:05 -0000 1.9
+++ engrave_group.h 29 Nov 2004 22:27:23 -0000 1.10
@@ -70,6 +70,9 @@
void engrave_group_programs_foreach(Engrave_Group *eg,
void (*func)(Engrave_Program *, void *), void *data);
+Engrave_Data *engrave_group_data_by_key_find(Engrave_Group *eg,
+ const char *key);
+
/**
* @}
*/
-------------------------------------------------------
SF email is sponsored by - The IT Product Guide
Read honest & candid reviews on hundreds of IT Products from real users.
Discover which products truly live up to the hype. Start reading now.
http://productguide.itmanagersjournal.com/
_______________________________________________
enlightenment-cvs mailing list
[EMAIL PROTECTED]
https://lists.sourceforge.net/lists/listinfo/enlightenment-cvs