]> git.llucax.com Git - z.facultad/75.10/miklolife.git/commitdiff
* Instancia clases, asigna valores desde la ventan y los guarda en la DB
authorRicardo Markiewicz <gazer.arg@gmail.com>
Tue, 21 Jun 2005 15:09:55 +0000 (15:09 +0000)
committerRicardo Markiewicz <gazer.arg@gmail.com>
Tue, 21 Jun 2005 15:09:55 +0000 (15:09 +0000)
  TODO : verificar w/r de las clases que se van a usar con eso

demo/src/Controlador/Controller.cs
demo/src/Dominio/Plan.cs
demo/src/Vistas/ABMGenerico.cs

index a0ae47c86daadeca41855863b6c849d7c91db328..54f372feb69f629bd821f81a86f0e35c8101b2f5 100644 (file)
@@ -35,6 +35,10 @@ public class Controller : IDisposable
                }
                return lst;
        }
+
+       public void GenericSave (object o)
+       {
+       }
 }
 
 }
index 58f6bbb14dd703e50843a6771de71d800938257b..659a2e3b8a7ac9dce2fee24476940be91760d6c1 100644 (file)
@@ -15,9 +15,11 @@ public class Plan
 
        public int Codigo {
                get { return _codigo; }
+               set { _codigo = value; }
        }
        public float Categoria {
                get { return _categoria; }
+               set { _categoria = value; }
        }
        public string Descripcion  {
                get { return _descripcion; }
@@ -31,6 +33,11 @@ public class Plan
                get { return _fechaBaja; }
        }
 
+       public Plan ()
+       {
+               _categoria = 0;
+       }
+       
        public Plan (float categoria)
        {
                /* TODO */
@@ -58,6 +65,11 @@ public class Plan
        {
                return _coberturas;
        }
+
+       public override string ToString ()
+       {
+               return String.Format ("Plan : {0} {1} {2}", _codigo, _categoria, _descripcion);
+       }
 }
 
 }
index 4e185db27d25285f88065b3c26e8fb064dc7d5f6..ceb15d32d21ffcabf25845bba2b8ab2b43fca36b 100644 (file)
@@ -5,14 +5,19 @@ using System.Collections;
 using Gtk;
 using Glade;
 
+using Controlador;
+
 public class ABMGenerico
 {
        Glade.XML xml;
        [Widget] Table tabla;
        Type current;
+       Hashtable widgets;
 
        public ABMGenerico (Type objectType)
        {
+               widgets = new Hashtable ();
+
                PropertyInfo[] properties = objectType.GetProperties ();
                current = objectType;
                
@@ -28,6 +33,7 @@ public class ABMGenerico
                                tabla.Attach (e, 1, 2, i, i+1);
                                l.Show ();
                                e.Show ();
+                               widgets[mf.Name] = e;
                        }
                        i++;
                }
@@ -66,8 +72,31 @@ public class ABMGenerico
        {
                if (args.ResponseId == ResponseType.Cancel)
                        return; 
-       }
+       
+               PropertyInfo[] properties = current.GetProperties ();
+
+               System.Object output = Activator.CreateInstance (current);
+               
+               foreach (string key in widgets.Keys) {
+                       PropertyInfo p = current.GetProperty (key);
+                       Entry e = (Entry)widgets[key];
+                       Console.WriteLine ("{0} = {1}", key, e.Text);
+                       if (p.PropertyType.Equals (typeof(string)))
+                               p.SetValue (output, e.Text, null);
+                       if (p.PropertyType.Equals (typeof(int)))
+                               p.SetValue (output, Int32.Parse (e.Text), null);
+                       if (p.PropertyType.Equals (typeof(float))) {
+                               p.SetValue (output, (float)Double.Parse (e.Text), null);
+                       }
+               }
 
+               Controller c = new Controller ();
+               
+               c.GenericSave (output);
+
+               c.Dispose ();
+       }
+       
        public void Run ()
        {
                Dialog w = (Dialog)xml.GetWidget ("abm_one");