Enlightenment CVS committal

Author  : rephorm
Project : e17
Module  : apps/e

Dir     : e17/apps/e/src/bin


Modified Files:
        e_config.c e_config.h e_int_config_wallpaper_gradient.c 


Log Message:
save the last used gradient colors and use them the next time the dialog is 
shown

===================================================================
RCS file: /cvs/e/e17/apps/e/src/bin/e_config.c,v
retrieving revision 1.193
retrieving revision 1.194
diff -u -3 -r1.193 -r1.194
--- e_config.c  20 Aug 2006 08:22:18 -0000      1.193
+++ e_config.c  20 Aug 2006 22:30:44 -0000      1.194
@@ -473,6 +473,13 @@
 
    E_CONFIG_VAL(D, T, wallpaper_import_last_dev, STR);
    E_CONFIG_VAL(D, T, wallpaper_import_last_path, STR);
+
+   E_CONFIG_VAL(D, T, wallpaper_grad_c1_r, INT);
+   E_CONFIG_VAL(D, T, wallpaper_grad_c1_g, INT);
+   E_CONFIG_VAL(D, T, wallpaper_grad_c1_b, INT);
+   E_CONFIG_VAL(D, T, wallpaper_grad_c2_r, INT);
+   E_CONFIG_VAL(D, T, wallpaper_grad_c2_g, INT);
+   E_CONFIG_VAL(D, T, wallpaper_grad_c2_b, INT);
    
    e_config = e_config_domain_load("e", _e_config_edd);
    if (e_config)
@@ -1167,6 +1174,15 @@
    IFCFG(0x0096); /* the version # where this value(s) was introduced */
    e_config->wallpaper_import_last_dev = evas_stringshare_add("~/");
    e_config->wallpaper_import_last_path = evas_stringshare_add("/");
+   IFCFGEND;
+
+   IFCFG(0x0098);
+   e_config->wallpaper_grad_c1_r = 0;
+   e_config->wallpaper_grad_c1_g = 0;
+   e_config->wallpaper_grad_c1_b = 0;
+   e_config->wallpaper_grad_c2_r = 255;
+   e_config->wallpaper_grad_c2_g = 255;
+   e_config->wallpaper_grad_c2_b = 255;
    IFCFGEND;
    
 #if 0 /* example of new config */
===================================================================
RCS file: /cvs/e/e17/apps/e/src/bin/e_config.h,v
retrieving revision 1.107
retrieving revision 1.108
diff -u -3 -r1.107 -r1.108
--- e_config.h  15 Aug 2006 20:17:19 -0000      1.107
+++ e_config.h  20 Aug 2006 22:30:44 -0000      1.108
@@ -50,7 +50,7 @@
 /* increment this whenever a new set of config values are added but the users
  * config doesn't need top be wiped - simply new values need to be put in
  */
-#define E_CONFIG_FILE_GENERATION 0x0097
+#define E_CONFIG_FILE_GENERATION 0x0098
 #define E_CONFIG_FILE_VERSION    ((E_CONFIG_FILE_EPOCH << 16) | 
E_CONFIG_FILE_GENERATION)
 
 #define E_EVAS_ENGINE_DEFAULT      0
@@ -236,6 +236,13 @@
    
    const char *wallpaper_import_last_dev; // INTERNAL
    const char *wallpaper_import_last_path; // INTERNAL
+
+   int wallpaper_grad_c1_r; // INTERNAL
+   int wallpaper_grad_c1_g; // INTERNAL
+   int wallpaper_grad_c1_b; // INTERNAL
+   int wallpaper_grad_c2_r; // INTERNAL
+   int wallpaper_grad_c2_g; // INTERNAL
+   int wallpaper_grad_c2_b; // INTERNAL
 };
 
 struct _E_Config_Module
===================================================================
RCS file: /cvs/e/e17/apps/e/src/bin/e_int_config_wallpaper_gradient.c,v
retrieving revision 1.2
retrieving revision 1.3
diff -u -3 -r1.2 -r1.3
--- e_int_config_wallpaper_gradient.c   20 Aug 2006 22:15:27 -0000      1.2
+++ e_int_config_wallpaper_gradient.c   20 Aug 2006 22:30:44 -0000      1.3
@@ -57,6 +57,7 @@
 static void _import_cb_delete(E_Win *win);
 static void _import_cb_close(void *data, E_Dialog *dia);
 static void _import_cb_ok(void *data, E_Dialog *dia);
+static void _import_config_save(Import *import);
 
 EAPI E_Dialog *
 e_int_config_wallpaper_gradient(E_Config_Dialog *parent)
@@ -69,10 +70,10 @@
    E_Radio_Group *rg;
    Evas_Coord w, h;
    E_Config_Dialog_Data *cfdata;
-   
+
    import = E_NEW(Import, 1);
    if (!import) return NULL;
- 
+
    dia = e_dialog_new(parent->con, "E", "_wallpaper_gradient_dialog");
    if (!dia) 
      { 
@@ -89,26 +90,31 @@
    import->dia = dia;
 
    cfdata->name = strdup("gradient");
-   
+
    evas = e_win_evas_get(dia->win);
-   
+
    import->parent = parent;
 
    e_dialog_title_set(dia, _("Create a gradient..."));
-  // e_win_delete_callback_set(dia->win, _import_cb_delete);
-  
+   // e_win_delete_callback_set(dia->win, _import_cb_delete);
+
    cfdata->color1 = calloc(1, sizeof(E_Color));
    cfdata->color1->a = 255;
    cfdata->color2 = calloc(1, sizeof(E_Color));
    cfdata->color2->a = 255;
 
-   // XXX load last used colors from config.
+   cfdata->color1->r = e_config->wallpaper_grad_c1_r;
+   cfdata->color1->g = e_config->wallpaper_grad_c1_g;
+   cfdata->color1->b = e_config->wallpaper_grad_c1_b;
+   cfdata->color2->r = e_config->wallpaper_grad_c2_r;
+   cfdata->color2->g = e_config->wallpaper_grad_c2_g;
+   cfdata->color2->b = e_config->wallpaper_grad_c2_b;
 
    ol = e_widget_list_add(evas, 0, 0);
 
    ot = e_widget_table_add(evas, 0);
    evas_object_show(ot);
-   
+
    o = e_widget_label_add(evas, _("Name:"));
    evas_object_show(o);
    e_widget_table_object_append(ot, o, 1, 1, 1, 1, 0, 1, 0, 1);
@@ -170,7 +176,7 @@
 
    e_dialog_button_add(dia, _("OK"), NULL, _import_cb_ok, cfdata);
    e_dialog_button_add(dia, _("Cancel"), NULL, _import_cb_close, cfdata);
-   
+
    _import_opt_disabled_set(import, 1);
    e_dialog_resizable_set(dia, 0);
    e_dialog_show(dia);
@@ -180,9 +186,10 @@
 void
 e_int_config_wallpaper_gradient_del(E_Dialog *dia)
 {
-  Import *import;
+   Import *import;
 
-  import = dia->win->data;
+   import = dia->win->data;
+   _import_config_save(import);
 
    if (import->exe_handler) ecore_event_handler_del(import->exe_handler);
    import->exe_handler = NULL;
@@ -209,7 +216,18 @@
 static void
 _import_config_save(Import *import)
 {
-   // XXX save last used colors
+   if (import->cfdata->color1)
+     {
+       e_config->wallpaper_grad_c1_r = import->cfdata->color1->r;
+       e_config->wallpaper_grad_c1_g = import->cfdata->color1->g;
+       e_config->wallpaper_grad_c1_b = import->cfdata->color1->b;
+     }
+   if (import->cfdata->color2)
+     {
+       e_config->wallpaper_grad_c2_r = import->cfdata->color2->r;
+       e_config->wallpaper_grad_c2_g = import->cfdata->color2->g;
+       e_config->wallpaper_grad_c2_b = import->cfdata->color2->b;
+     }
    e_config_save_queue();
 }
 



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