Enlightenment CVS committal

Author  : werkt
Project : misc
Module  : ewler

Dir     : misc/ewler/src


Modified Files:
        form.c widgets.c widgets.h 


Log Message:
Allowed default values to override values received from 'get' for enums.

===================================================================
RCS file: /cvsroot/enlightenment/misc/ewler/src/form.c,v
retrieving revision 1.12
retrieving revision 1.13
diff -u -3 -r1.12 -r1.13
--- form.c      10 Aug 2004 21:45:34 -0000      1.12
+++ form.c      10 Aug 2004 22:33:15 -0000      1.13
@@ -703,6 +703,7 @@
        }
 
        form_selected_clear( form );
+       inspector_reset();
 }
 
 void
===================================================================
RCS file: /cvsroot/enlightenment/misc/ewler/src/widgets.c,v
retrieving revision 1.5
retrieving revision 1.6
diff -u -3 -r1.5 -r1.6
--- widgets.c   9 Aug 2004 09:03:14 -0000       1.5
+++ widgets.c   10 Aug 2004 22:33:15 -0000      1.6
@@ -263,10 +263,16 @@
                        c_info = t_info;
                        break;
                case WIDGET_ENUM_TYPE:
-                       if( elem->type->w.get )
+                       if( elem->type->w_enum.has_default ) {
+                               elem->w_enum.value = elem->type->w_enum.default_value;
+                               if( elem->type->w.get &&
+                                               elem->type->w.get( 
EWL_OBJECT(c_widget) ) != elem->w_enum.value &&
+                                               elem->type->w.set )
+                                       elem->type->w.set( EWL_OBJECT(c_widget), 
elem->w_enum.value );
+                       } if( elem->type->w.get )
                                elem->w_enum.value = elem->type->w.get( 
EWL_OBJECT(c_widget) );
                        else
-                               elem->w_enum.value = elem->type->w_enum.default_value;
+                               elem->w_enum.value = 0;
                        break;
        }
 
@@ -513,6 +519,14 @@
                        ecore_hash_new( ecore_str_hash, ecore_str_compare );
        } else if( !strcmp( type, "enum" ) ) {
                elem->w_enum.w_type = WIDGET_ENUM_TYPE;
+               xml_attr = xmlTextReaderGetAttribute( reader, "default" );
+               if( xml_attr ) {
+                       elem->w_enum.has_default = 1;
+                       elem->w_enum.default_value = strtol( xml_attr, NULL, 0 );
+               } else {
+                       elem->w_enum.has_default = 0;
+                       elem->w_enum.default_value = 0;
+               }
                elem->w_enum.map = ecore_hash_new( ecore_str_hash, ecore_str_compare );
                elem->w_enum.map_rev =
                        ecore_hash_new( ecore_direct_hash, ecore_direct_compare );
===================================================================
RCS file: /cvsroot/enlightenment/misc/ewler/src/widgets.h,v
retrieving revision 1.2
retrieving revision 1.3
diff -u -3 -r1.2 -r1.3
--- widgets.h   25 Jul 2004 01:01:49 -0000      1.2
+++ widgets.h   10 Aug 2004 22:33:15 -0000      1.3
@@ -49,6 +49,7 @@
        WIDGET_TYPE_BASE;
        Ecore_Hash *map;
        Ecore_Hash *map_rev;
+       int has_default;
        int default_value;
 };
 




-------------------------------------------------------
SF.Net email is sponsored by Shop4tech.com-Lowest price on Blank Media
100pk Sonic DVD-R 4x for only $29 -100pk Sonic DVD+R for only $33
Save 50% off Retail on Ink & Toner - Free Shipping and Free Gift.
http://www.shop4tech.com/z/Inkjet_Cartridges/9_108_r285
_______________________________________________
enlightenment-cvs mailing list
[EMAIL PROTECTED]
https://lists.sourceforge.net/lists/listinfo/enlightenment-cvs

Reply via email to