X-Git-Url: https://git.llucax.com/z.facultad/75.10/miklolife.git/blobdiff_plain/5bb1bb3c90e891755b8963804c9babe4b5f6b0d0..3eba3d2e131f2d0d0057bd77b7b6596bdc48607d:/demo/src/Vistas/BuscarPrestacion.cs?ds=sidebyside diff --git a/demo/src/Vistas/BuscarPrestacion.cs b/demo/src/Vistas/BuscarPrestacion.cs index c908752..60cf548 100644 --- a/demo/src/Vistas/BuscarPrestacion.cs +++ b/demo/src/Vistas/BuscarPrestacion.cs @@ -15,6 +15,8 @@ public class VBuscarPrestacion ComboBox categoria; TreeView lista; + string codigo_retorno = null; + public VBuscarPrestacion () { xml = new Glade.XML (null, "buscar_prestacion.glade", "buscar_prestacion", null); @@ -23,7 +25,7 @@ public class VBuscarPrestacion categoria = (ComboBox)xml.GetWidget ("categoria"); lista = (TreeView)xml.GetWidget ("lista"); - lista.Model = new ListStore (typeof(string), typeof(string), typeof(string), typeof (DateTime)); + lista.Model = new ListStore (typeof(string), typeof(string), typeof(string), typeof (string)); /* Columnas */ lista.HeadersVisible = true; @@ -48,18 +50,49 @@ public class VBuscarPrestacion { if (args.ResponseId == ResponseType.Cancel) return; + + /* Todo el seleccionado. TODO : abortar si no hay nada seleccionado! :) */ + + TreeSelection fromSel = lista.Selection; + TreeIter iter; + TreeModel model; + + if (fromSel.GetSelected (out model, out iter)) { + codigo_retorno = (string)model.GetValue (iter, 0); + } } public void OnBuscar (object o, EventArgs args) { + TreeIter iter; + categoria.GetActiveIter (out iter); + + PrestacionesController c = new PrestacionesController (); + ArrayList lst = c.Prestaciones ((string)categoria.Model.GetValue (iter, 0)); + ListStore store = (ListStore)lista.Model; + store.Clear (); + foreach (Prestacion p in lst) { + TreeIter i = store.Append (); + store.SetValue (i, 0, p.Codigo); + store.SetValue (i, 1, p.Nombre); + store.SetValue (i, 2, (string)categoria.Model.GetValue (iter, 0)); + if (p._fechaBaja == DateTime.MinValue) + store.SetValue (i, 3, "Activo"); + else + store.SetValue (i, 3, p._fechaBaja.ToString ()); + } + + c.Dispose (); } - public void Run () + public string Run () { Dialog w = (Dialog)xml.GetWidget ("buscar_prestacion"); w.Run (); w.Destroy (); + + return codigo_retorno; } }