Enlightenment CVS committal

Author  : chaos
Project : e17
Module  : proto

Dir     : e17/proto/entropy/src


Modified Files:
        plugin_helper.c 


Log Message:
* Plugin porting

===================================================================
RCS file: /cvs/e/e17/proto/entropy/src/plugin_helper.c,v
retrieving revision 1.13
retrieving revision 1.14
diff -u -3 -r1.13 -r1.14
--- plugin_helper.c     2 Apr 2006 05:47:38 -0000       1.13
+++ plugin_helper.c     2 Apr 2006 05:55:14 -0000       1.14
@@ -117,15 +117,12 @@
 
 Ecore_List* entropy_plugin_filesystem_filelist_get(entropy_file_request* 
request)
 {
-       entropy_plugin* plugin;
-       Ecore_List* (*list_func)(entropy_file_request* request);
+       Entropy_Plugin_File* plugin;
        Ecore_List* ret;
 
        /*FIXME We should get the caller's current file plugin from the caller 
- i.e. the gui instance*/
-        plugin = entropy_plugins_type_get_first(ENTROPY_PLUGIN_BACKEND_FILE 
,ENTROPY_PLUGIN_SUB_TYPE_ALL);
-       list_func = dlsym(plugin->dl_ref, "filelist_get");
-
-       ret = (*list_func)(request);
+        plugin = 
ENTROPY_PLUGIN_FILE(entropy_plugins_type_get_first(ENTROPY_PLUGIN_BACKEND_FILE 
,ENTROPY_PLUGIN_SUB_TYPE_ALL));
+       ret = (*plugin->file_functions.filelist_get)(request);
 
        return ret;
                
@@ -133,14 +130,12 @@
 
 void entropy_plugin_filesystem_filestat_get(entropy_file_request* request)
 {
-       entropy_plugin* plugin;
-       Ecore_List* (*stat_func)(entropy_file_request* request);
+       Entropy_Plugin_File* plugin;
 
        /*FIXME We should get the caller's current file plugin from the caller 
- i.e. the gui instance*/
-        plugin = entropy_plugins_type_get_first(ENTROPY_PLUGIN_BACKEND_FILE 
,ENTROPY_PLUGIN_SUB_TYPE_ALL);
-       stat_func = dlsym(plugin->dl_ref, "filestat_get");
+        plugin = 
ENTROPY_PLUGIN_FILE(entropy_plugins_type_get_first(ENTROPY_PLUGIN_BACKEND_FILE 
,ENTROPY_PLUGIN_SUB_TYPE_ALL));
 
-       (*stat_func)(request);
+       (*plugin->file_functions.filestat_get)(request);
 }
 
 void entropy_plugin_thumbnail_request(entropy_gui_component_instance* 
requestor, entropy_generic_file* file, 
@@ -188,14 +183,13 @@
 
 void entropy_plugin_filesystem_directory_create(entropy_generic_file* file, 
char* dir) 
 {
+       Entropy_Plugin_File* fileplugin;
         entropy_plugin *plugin =
               entropy_plugins_type_get_first (
         ENTROPY_PLUGIN_BACKEND_FILE, ENTROPY_PLUGIN_SUB_TYPE_ALL);
 
-        void (*dir_func)(entropy_generic_file*, char*);
-        dir_func = dlsym(plugin->dl_ref, 
"entropy_filesystem_directory_create");
-
-        (*dir_func)(file, dir);
+       fileplugin = ENTROPY_PLUGIN_FILE(plugin);
+        (*fileplugin->file_functions.directory_create)(file, dir);
 }
 
 
@@ -203,18 +197,11 @@
 int entropy_plugin_filesystem_file_copy(entropy_generic_file* source, char* 
dest, entropy_gui_component_instance* requester) 
 {
   entropy_gui_component_instance *instance = requester;
-  entropy_plugin *plugin =
-    entropy_plugins_type_get_first (ENTROPY_PLUGIN_BACKEND_FILE,
-                                   ENTROPY_PLUGIN_SUB_TYPE_ALL);
-
-  void (*copy_func) (entropy_generic_file * source, char *dest_uri,
-                    entropy_gui_component_instance * requester);
-
-
-  /*Get the func ref */
-  copy_func = dlsym (plugin->dl_ref, "entropy_filesystem_file_copy");
+  Entropy_Plugin_File* plugin =
+    ENTROPY_PLUGIN_FILE(entropy_plugins_type_get_first 
(ENTROPY_PLUGIN_BACKEND_FILE,
+                                   ENTROPY_PLUGIN_SUB_TYPE_ALL));
 
-  (*copy_func) (source, dest,
+  (*plugin->file_functions.file_copy) (source, dest,
                  instance);
 
   return 1;




-------------------------------------------------------
This SF.Net email is sponsored by xPML, a groundbreaking scripting language
that extends applications into web and mobile media. Attend the live webcast
and join the prime developer group breaking into this new coding territory!
http://sel.as-us.falkag.net/sel?cmd=lnk&kid=110944&bid=241720&dat=121642
_______________________________________________
enlightenment-cvs mailing list
enlightenment-cvs@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/enlightenment-cvs

Reply via email to