Enlightenment CVS committal
Author : lordchaos
Project : e17
Module : proto
Dir : e17/proto/entropy/src
Modified Files:
entropy_core.c plugin_helper.c
Log Message:
* Check in DND code I've been holding back on until ewld_dnd is in
===================================================================
RCS file: /cvsroot/enlightenment/e17/proto/entropy/src/entropy_core.c,v
retrieving revision 1.31
retrieving revision 1.32
diff -u -3 -r1.31 -r1.32
--- entropy_core.c 20 Dec 2005 06:12:26 -0000 1.31
+++ entropy_core.c 22 Dec 2005 04:34:40 -0000 1.32
@@ -151,7 +151,8 @@
/*Initialize the mime hint hash*/
core->mime_action_hint = ecore_hash_new(ecore_str_hash,
ecore_str_compare);
-
+ /*Initialize the object assoc. hash*/
+ core->object_associate_hash = ecore_hash_new(ecore_direct_hash,
ecore_direct_compare);
//printf ("Initialising the file cache..\n");
core->file_interest_list = ecore_hash_new(ecore_str_hash,
ecore_str_compare);
@@ -819,7 +820,7 @@
/*FIXME We should get the caller's current file plugin from the
caller - i.e. the gui instance*/
- plugin =
entropy_plugins_type_get_first(instance->core->plugin_list,
ENTROPY_PLUGIN_BACKEND_FILE ,ENTROPY_PLUGIN_SUB_TYPE_ALL);
+ plugin =
entropy_plugins_type_get_first(ENTROPY_PLUGIN_BACKEND_FILE
,ENTROPY_PLUGIN_SUB_TYPE_ALL);
/*Make our new event for notification*/
@@ -942,7 +943,7 @@
//printf ("Requested a stat on a file...md5 %s, pointer %p,
path '%s', filename '%s'\n", ((entropy_generic_file*)event->data)->md5,
((entropy_generic_file*)event->data),
((entropy_generic_file*)event->data)->path,
((entropy_generic_file*)event->data)->filename );
/*FIXME We should get the caller's current file plugin from the
caller - i.e. the gui instance*/
- plugin =
entropy_plugins_type_get_first(instance->core->plugin_list,
ENTROPY_PLUGIN_BACKEND_FILE ,ENTROPY_PLUGIN_SUB_TYPE_ALL);
+ plugin =
entropy_plugins_type_get_first(ENTROPY_PLUGIN_BACKEND_FILE
,ENTROPY_PLUGIN_SUB_TYPE_ALL);
/*Make our new event for notification*/
ev = entropy_notify_request_register(instance->core->notify,
instance, ENTROPY_NOTIFY_FILE_STAT_EXECUTED,
@@ -1267,6 +1268,20 @@
return uri;
}
+/* Associate an object with an entropy_generic_file - e.g. an ewl_widget with
a file -
+ * Mostly used for transparent DND between objects */
+void entropy_core_object_file_associate(void* object, entropy_generic_file*
file) {
+ if (object) ecore_hash_set(core_core->object_associate_hash, object,
file);
+}
+
+void entropy_core_object_file_disassociate(void* object) {
+ if (object) ecore_hash_remove(core_core->object_associate_hash, object);
+}
+
+entropy_generic_file* entropy_core_object_file_association_get(void* object) {
+ return ecore_hash_get(core_core->object_associate_hash, object);
+}
+
void* entropy_malloc(size_t size) {
requests++;
===================================================================
RCS file: /cvsroot/enlightenment/e17/proto/entropy/src/plugin_helper.c,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -3 -r1.1 -r1.2
--- plugin_helper.c 20 Oct 2005 08:45:54 -0000 1.1
+++ plugin_helper.c 22 Dec 2005 04:34:41 -0000 1.2
@@ -46,9 +46,11 @@
}
-entropy_plugin* entropy_plugins_type_get_first(Ecore_List* plugins, int type,
int subtype) {
+entropy_plugin* entropy_plugins_type_get_first(int type, int subtype) {
entropy_plugin* list_item;
+ Ecore_List* plugins = entropy_core_get_core()->plugin_list;
+
ecore_list_goto_first(plugins);
while ( (list_item = ecore_list_next(plugins)) ) {
/*printf("Scanning '%s' for first\n", list_item->filename);*/
@@ -61,8 +63,10 @@
}
-Ecore_List* entropy_plugins_type_get(Ecore_List* plugins, int type) {
+Ecore_List* entropy_plugins_type_get(int type) {
entropy_plugin* list_item;
+
+ Ecore_List* plugins = entropy_core_get_core()->plugin_list;
if (plugin_list) {
ecore_list_destroy(plugin_list);
-------------------------------------------------------
This SF.net email is sponsored by: Splunk Inc. Do you grep through log files
for problems? Stop! Download the new AJAX search engine that makes
searching your log files as easy as surfing the web. DOWNLOAD SPLUNK!
http://ads.osdn.com/?ad_id=7637&alloc_id=16865&op=click
_______________________________________________
enlightenment-cvs mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/enlightenment-cvs