using System; using System.Collections; using Gtk; using Glade; using Controlador.Afiliacion; using Dominio.Autorizaciones; using Dominio.Planes; using Dominio.Afiliados; using Dominio; public class VBuscarPrestador { Glade.XML xml; string retorno = null; [Widget] TreeView lista; /* Busqueda */ [Widget] Entry nombre; public VBuscarPrestador () { xml = new Glade.XML (null, "buscar_prestador.glade", "buscar_prestador", null); xml.Autoconnect (this); lista.Model = new ListStore (typeof(string), typeof(string), typeof (string)); /* Columnas */ lista.HeadersVisible = true; lista.AppendColumn ("CUIT", new CellRendererText (), "text", 0); lista.AppendColumn ("Nombre", new CellRendererText (), "text", 1); lista.AppendColumn ("eMail", new CellRendererText (), "text", 2); } public void OnBuscarPrestador (object o, EventArgs args) { PrestadoresController c = new PrestadoresController (); ListStore store = (ListStore)lista.Model; store.Clear (); string s=null; if (nombre.Text.Equals("") == false) s = nombre.Text; ArrayList lst = c.Buscar (s); foreach (Prestador p in lst) { TreeIter i = store.Append (); store.SetValue (i, 0, p.Cuit); store.SetValue (i, 1, p.Nombre); store.SetValue (i, 2, p.Email); } c.Dispose (); } public void OnDialogResponse (object o, ResponseArgs args) { 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)) { retorno = (string)model.GetValue (iter, 0); } } public string Run () { Dialog w = (Dialog)xml.GetWidget ("buscar_prestador"); w.Run (); w.Destroy (); return retorno; } }