Enlightenment CVS committal

Author  : dj2
Project : e17
Module  : libs/efreet

Dir     : e17/libs/efreet/src/bin


Modified Files:
        ef_desktop.c main.c 


Log Message:
- allow the app to add custom Types to be matched in the .desktop file. 
  (e17 uses this for Mount and a few other types)

===================================================================
RCS file: /cvs/e/e17/libs/efreet/src/bin/ef_desktop.c,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -3 -r1.1 -r1.2
--- ef_desktop.c        3 Feb 2007 13:05:30 -0000       1.1
+++ ef_desktop.c        5 Feb 2007 02:06:05 -0000       1.2
@@ -17,7 +17,6 @@
     int ret = 1;
 
     desktop = efreet_desktop_get(PACKAGE_DATA_DIR"/efreet/test/test.desktop");
-
     if (!desktop) 
     {
         printf("No desktop found.\n");
@@ -344,3 +343,36 @@
 
   free(exec);
 }
+
+int
+ef_cb_desktop_type_parse(void)
+{
+    Efreet_Desktop *desktop;
+    int ret = 1, my_type;
+
+    /* add my custom desktop type to efreet */
+    my_type = efreet_desktop_type_add("My_Type"); 
+    if (my_type <= EFREET_DESKTOP_TYPE_MAX)
+    {
+        printf("Error adding desktop type.");
+        return 0;
+    }
+
+    desktop = 
efreet_desktop_get(PACKAGE_DATA_DIR"/efreet/test/test_type.desktop");
+    if (!desktop) 
+    {
+        printf("No desktop found.\n");
+        return 0;
+    }
+
+    if (desktop->type != my_type)
+    {
+        printf("Invalid type returned in desktop");
+        return 0;
+    }
+
+    return 1;
+}
+
+
+
===================================================================
RCS file: /cvs/e/e17/libs/efreet/src/bin/main.c,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -3 -r1.1 -r1.2
--- main.c      3 Feb 2007 13:05:30 -0000       1.1
+++ main.c      5 Feb 2007 02:06:05 -0000       1.2
@@ -15,13 +15,14 @@
 int ef_cb_ini_parse(void);
 int ef_cb_locale(void);
 int ef_cb_desktop_parse(void);
+int ef_cb_desktop_save(void);
+int ef_cb_desktop_command_get(void);
+int ef_cb_desktop_type_parse(void);
 #if 0
 int ef_cb_desktop_file_id(void);
 #endif
 int ef_cb_menu_get(void);
 int ef_cb_ini_long_line(void);
-int ef_cb_desktop_save(void);
-int ef_cb_desktop_command_get(void);
 
 typedef struct Efreet_Test Efreet_Test;
 struct Efreet_Test
@@ -43,12 +44,13 @@
     {"INI Long Line Parsing", ef_cb_ini_long_line},
     {"Locale Parsing", ef_cb_locale},
     {"Desktop Parsing", ef_cb_desktop_parse},
+    {"Desktop Type Parsing", ef_cb_desktop_type_parse},
+    {"Desktop Save", ef_cb_desktop_save},
+    {"Desktop Command", ef_cb_desktop_command_get},
 #if 0
     {"Desktop File ID", ef_cb_desktop_file_id},
 #endif
     {"Menu Parsing", ef_cb_menu_get},
-    {"Desktop Save", ef_cb_desktop_save},
-    {"Desktop Command", ef_cb_desktop_command_get},
     {NULL, NULL}
 };
 



-------------------------------------------------------------------------
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