Enlightenment CVS committal

Author  : devilhorns
Project : e_modules
Module  : screenshot

Dir     : e_modules/screenshot


Modified Files:
        e_mod_main.c configure.in 


Log Message:
Use evas_list_remove_list, not evas_list_remove to remove config items.

Better trapping for import/scrot installed. This allows a user to 
install either at a later date without having to recompile the module.

Version Bump.


===================================================================
RCS file: /cvs/e/e_modules/screenshot/e_mod_main.c,v
retrieving revision 1.29
retrieving revision 1.30
diff -u -3 -r1.29 -r1.30
--- e_mod_main.c        20 May 2006 16:51:18 -0000      1.29
+++ e_mod_main.c        20 May 2006 17:21:42 -0000      1.30
@@ -11,7 +11,6 @@
 # endif
 #endif
 #include "e_mod_main.h"
-#include "config.h"
 
 typedef struct _Instance Instance;
 typedef struct _Screenshot Screenshot;
@@ -22,6 +21,7 @@
    Evas_Object *ss_obj;
    Screenshot *ss;
    Config_Item *ci;
+   Ecore_Exe *exe;
    const char *id;
 };
 
@@ -215,23 +215,24 @@
    ci = E_NEW(Config_Item, 1);
    ci->id = evas_stringshare_add(id);
    ci->delay_time = 60.0;
-#ifdef HAVE_IMPORT
- #ifdef HAVE_SCROT
-   ci->use_import = 0;
-   ci->use_scrot = 1;
- #else
-   ci->use_import = 1;
-   ci->use_scrot = 0;
- #endif
-#else
-   ci->use_import = 0;
- #ifdef HAVE_SCROT
-   ci->use_scrot = 1;
- #else
-   ci->use_scrot = 0;
- #endif
-#endif
-   
+   if (ecore_file_app_installed("import")) 
+     {
+       if (ecore_file_app_installed("scrot")) 
+         {
+            ci->use_import = 0;
+            ci->use_scrot = 1;
+         }
+       else 
+         {
+            ci->use_import = 1;
+            ci->use_scrot = 0;
+         }
+     }
+   else if (ecore_file_app_installed("scrot")) 
+     {
+       ci->use_import = 0;
+       ci->use_scrot = 1;
+     }
    ci->location = evas_stringshare_add(e_user_homedir_get());
    ci->filename = evas_stringshare_add("screenshot");
    ci->import.use_img_border = 1;
@@ -298,22 +299,24 @@
        
        ci->id = evas_stringshare_add("0");
        ci->delay_time = 60.0;
-#ifdef HAVE_IMPORT
- #ifdef HAVE_SCROT
-   ci->use_import = 0;
-   ci->use_scrot = 1;
- #else
-   ci->use_import = 1;
-   ci->use_scrot = 0;
- #endif
-#else
-   ci->use_import = 0;
- #ifdef HAVE_SCROT
-   ci->use_scrot = 1;
- #else
-   ci->use_scrot = 0;
- #endif
-#endif
+       if (ecore_file_app_installed("import")) 
+         {
+            if (ecore_file_app_installed("scrot")) 
+              {
+                 ci->use_import = 0;
+                 ci->use_scrot = 1;
+              }
+            else 
+              {
+                 ci->use_import = 1;
+                 ci->use_scrot = 0;
+              }
+         }
+       else if (ecore_file_app_installed("scrot")) 
+         {
+            ci->use_import = 0;
+            ci->use_scrot = 1;
+         }
        ci->location = evas_stringshare_add(e_user_homedir_get());
        ci->filename = evas_stringshare_add("screenshot");
        ci->import.use_img_border = 1;
@@ -348,6 +351,7 @@
        e_object_del(E_OBJECT(ss_config->menu));
        ss_config->menu = NULL;
      }
+
    if (ss_config->exe_exit_handler)
      ecore_event_handler_del(ss_config->exe_exit_handler);
    
@@ -359,7 +363,7 @@
        if (ci->id) evas_stringshare_del(ci->id);
        if (ci->location) evas_stringshare_del(ci->location);
        if (ci->filename) evas_stringshare_del(ci->filename);
-       ss_config->items = evas_list_remove(ss_config->items, ss_config->items);
+       ss_config->items = evas_list_remove_list(ss_config->items, 
ss_config->items);
        free(ci);
      }
    free(ss_config);
@@ -434,7 +438,6 @@
 static void 
 _ss_handle_mouse_down(Instance *inst) 
 {
-   Ecore_Exe *x;
    Edje_Message_Int_Set *msg;
    char buf[1024];
    char *cmd, *opt, *f;
@@ -468,8 +471,8 @@
    ss_config->exe_exit_handler = ecore_event_handler_add(ECORE_EXE_EVENT_DEL,
                                                         _ss_exe_cb_exit, NULL);
 
-   x = ecore_exe_run(buf, inst);
-
+   inst->exe = ecore_exe_run(buf, inst);
+   
    if (inst->ci->delay_time > 0)
      {
        msg = malloc(sizeof(Edje_Message_Int_Set) + 1 * sizeof(int));
@@ -613,6 +616,8 @@
 
    inst = ecore_exe_data_get(x);
    x = NULL;
+   inst->exe = NULL;
+
    if (ss_config->exe_exit_handler)
      ecore_event_handler_del(ss_config->exe_exit_handler);
    return 0;
===================================================================
RCS file: /cvs/e/e_modules/screenshot/configure.in,v
retrieving revision 1.14
retrieving revision 1.15
diff -u -3 -r1.14 -r1.15
--- configure.in        20 May 2006 16:31:41 -0000      1.14
+++ configure.in        20 May 2006 17:21:42 -0000      1.15
@@ -7,7 +7,7 @@
 AC_CANONICAL_BUILD
 AC_CANONICAL_HOST
 
-AM_INIT_AUTOMAKE(screenshot, 0.1.0)
+AM_INIT_AUTOMAKE(screenshot, 0.2.0)
 AM_CONFIG_HEADER(config.h)
 
 AC_ISC_POSIX




-------------------------------------------------------
Using Tomcat but need to do more? Need to support web services, security?
Get stuff done quickly with pre-integrated technology to make your job easier
Download IBM WebSphere Application Server v.1.0.1 based on Apache Geronimo
http://sel.as-us.falkag.net/sel?cmd=lnk&kid=120709&bid=263057&dat=121642
_______________________________________________
enlightenment-cvs mailing list
enlightenment-cvs@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/enlightenment-cvs

Reply via email to