Enlightenment CVS committal

Author  : sebastid
Project : e17
Module  : apps/e

Dir     : e17/apps/e/src/modules/randr


Modified Files:
        e_mod_main.c 


Log Message:
Only save config if the user clicks "OK".

===================================================================
RCS file: /cvsroot/enlightenment/e17/apps/e/src/modules/randr/e_mod_main.c,v
retrieving revision 1.8
retrieving revision 1.9
diff -u -3 -r1.8 -r1.9
--- e_mod_main.c        25 Aug 2005 16:17:52 -0000      1.8
+++ e_mod_main.c        25 Aug 2005 16:21:58 -0000      1.9
@@ -22,6 +22,7 @@
 static void _randr_dialog_cb_ok(void *data, E_Dialog *dia);
 static void _randr_dialog_cb_cancel(void *data, E_Dialog *dia);
 static int  _randr_timer_cb(void *data);
+static void _randr_save_res(Randr_Resolution *res);
 
 static E_Config_DD *conf_edd;
 static E_Config_DD *conf_manager_edd;
@@ -301,8 +302,6 @@
 {
    Randr *e;
    Randr_Resolution *res;
-   Config_Manager *cm = NULL;
-   Evas_List *l;
    
    e = data;
    res = e_object_data_get(E_OBJECT(mi));
@@ -328,34 +327,6 @@
 #endif
 
    e->timer = ecore_timer_add(15.0, _randr_timer_cb, res);
-
-   /* Find this manager config */
-   for (l = e->conf->managers; l; l = l->next)
-     {
-       Config_Manager *current;
-
-       current = l->data;
-       if (current->manager == res->manager->num)
-         {
-            cm = current;
-            break;
-         }
-     }
-   /* If not found, create new config */
-   if (!cm)
-     {
-       cm = E_NEW(Config_Manager, 1);
-       if (cm)
-         e->conf->managers = evas_list_append(e->conf->managers, cm);
-     }
-   /* Save config */
-   if (cm)
-     {
-       cm->manager = res->manager->num;
-       cm->width = res->next.width;
-       cm->height = res->next.height;
-     }
-   e_config_save_queue();
 }
 
 static void
@@ -365,6 +336,7 @@
 
    /* Do nothing */
    res = data;
+   _randr_save_res(res);
    e_object_unref(E_OBJECT(res->manager));
    e_object_del(E_OBJECT(res->randr->dialog));
    res->randr->dialog = NULL;
@@ -410,3 +382,38 @@
    free(res);
    return 0;
 }
+
+static void
+_randr_save_res(Randr_Resolution *res)
+{
+   Config_Manager *cm = NULL;
+   Evas_List *l;
+
+   /* Find this manager config */
+   for (l = res->randr->conf->managers; l; l = l->next)
+     {
+       Config_Manager *current;
+
+       current = l->data;
+       if (current->manager == res->manager->num)
+         {
+            cm = current;
+            break;
+         }
+     }
+   /* If not found, create new config */
+   if (!cm)
+     {
+       cm = E_NEW(Config_Manager, 1);
+       if (cm)
+         res->randr->conf->managers = 
evas_list_append(res->randr->conf->managers, cm);
+     }
+   /* Save config */
+   if (cm)
+     {
+       cm->manager = res->manager->num;
+       cm->width = res->next.width;
+       cm->height = res->next.height;
+     }
+   e_config_save_queue();
+}




-------------------------------------------------------
SF.Net email is Sponsored by the Better Software Conference & EXPO
September 19-22, 2005 * San Francisco, CA * Development Lifecycle Practices
Agile & Plan-Driven Development * Managing Projects & Teams * Testing & QA
Security * Process Improvement & Measurement * http://www.sqe.com/bsce5sf
_______________________________________________
enlightenment-cvs mailing list
enlightenment-cvs@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/enlightenment-cvs

Reply via email to