GtkILIASTree

Bueno, trasteando un poquito con C#. Estoy intentando hacer la aplicación que ya hice ‘appletizada’, pero en aplicación grandota, y he escogido esta vez, después de hojear el libro de Edd Dumbill (a ver si te lo devuelvo ya Antonio….) C-sharp como lenguaje. Luego vendrán los tiempos en los que minimizarla la convertirá en un icon tray applet, pero eso es otro cantar.

Después de realizar el otro día una pequeña clase que hacía los mensajes popup’s para el applet (etiqueta ‘subject + asunto + date …’ + foto), hoy tocaba pelearse un poquito con el Treeview. Como yo soy muy membrillín, y me pienso que todo hay que hacerlo con clases, me dio por pensar una serie de cosas, que expongo a continuación para que me digan que hubieran hecho (claro, ahora que expongo mis reflexiones ya es trampa).

El problema básico era que yo no quería construir un Gtk.TreeView, si no que ya lo tenía creado por Glade:

[Glade.Widget] Gtk.TreeView treeview1

Lo primero que pensé es en hacer una clase GtkILIASTree que heredase de GtkTreeview, pero no supe hacer algo tan tonto, a priori, como asignar la instancia que ya tenía (treeview1) a mi clase. Tendría que redefinir el constructor de la clase de algún modo con un parámetro, mi treeview1 ya creado por glade.

Después de un rato hablando con Loren, llegamos a la conclusión de que era absurdo heredar, ya que yo no estaba usando los métodos de TreeView, lo único que quería era encapsular esa funcionalidad y añadir mis métodos nuevos que trastearan ese Gtk.Treeview. Finalmente hice esto.

Desde el código de la funcion main sólo tenía que crear una instancia de mi clase, que creaba como:


public class...
....

[Glade.Widget] Gtk.Treeview treeview1;

....


Glade.XML gxml = new Glade.XML (null, "gui.glade", "window1", null);
gxml.Autoconnect (this);
GtkILIAStree t = new GtkILIAStree  (treeview1);
t.GtkILIAStreeExample();

Ahora bien, no se si tiene demasiado sentido hacer una clase para esto, ya que lo único que yo estoy haciendo es métodos que usan un treeview, y que, si bien conceptualmente hacer una clase puede ser útil (según para quién), puede no tener sentido alguno para otras personas, y sólo debería crear una serie de metodos dentro del espacio de nombres, y punto.

No se, ¿opiniones sobre esta tontería? ¿Se debe crear una clase?, ¿o no? ¿es esto programación orientada a objetos? ¿o a patos?

7 comentarios en “GtkILIASTree

  1. Hope begins in the dark, the stubborn hope that if you just show up and try to do the right thing, the dawn will come. You wait and watch and work: you don’t give up.

Responder

Introduce tus datos o haz clic en un icono para iniciar sesión:

Logo de WordPress.com

Estás comentando usando tu cuenta de WordPress.com. Cerrar sesión / Cambiar )

Imagen de Twitter

Estás comentando usando tu cuenta de Twitter. Cerrar sesión / Cambiar )

Foto de Facebook

Estás comentando usando tu cuenta de Facebook. Cerrar sesión / Cambiar )

Google+ photo

Estás comentando usando tu cuenta de Google+. Cerrar sesión / Cambiar )

Conectando a %s