2009/9/29 Nicolas Guzzo <[email protected]>

> 2009/9/29 Luis Lavena <[email protected]>
>
>> 2009/9/30 Nicolas Guzzo <[email protected]>:
>> > Hola gente, después de revisar las opciones en materia de frameworks
>> para
>> > aplicaciones de escritorio en ruby, Shoes, Bowline, Anvil me puse a
>> hacer
>> > uno propio con wxruby, siguiendo el patrón MVC a la rails, Anvil hace
>> esto
>> > también pero esta medio verde todavía y como se abstrae del toolkit se
>> > pierden algunas cosas características del toolkit, de momento lo bauticé
>> > como Ybur jeje a falta de imaginación para pensar un nombre....
>> > lo he probado con ruby 1.9.1 y wxruby 2.0.1 en windows, en debian o
>> ubuntu
>> > hay que usar la gema wxruby-ruby19 2.0.0
>> >
>> > un ejemplito ilustrativo: http://pastebin.com/f4552903e
>> >
>> > Que opinan? Sugerncias? Criticas? (no me enojo si me dicen que le prenda
>> > fuego o que el codigo apesta jejeje)
>> >
>>
> Hola Nicolas, muy buena tu exploración y tus comentarios sobre varios
>> frameworks para aplicaciones de escritorio.
>>
>> Aqui van mis comentarios y espero que sean bien recibidos.
>>
>> Más allá de un detalle de código, considero que el patrón MVC necesita
>> ser adaptado para aplicaciones de escritorio.
>>
>> Por ejemplo, vos mencionás:
>>
>> "def index # el index se ejecuta al instanciar el controller (similar
>> a un constructor), no debe renderizar nada"
>>
>> Creo esto esta diciendote que "index" de por si es inutil.
>>
>
> si en realidad lo pense mas como algo para inicializar alguna variable...
>
>
>> Uno de los grandes dilemas es que uno no crea "vistas" sino
>> "ventanas", paneles o "fieldsets".
>>
> Otro tema es ejecutar acciones versus responder a eventos. Por
>> ejemplo, vos definis acciones, que definen que habrá un click sobre
>> ellas.
>>
>> Este approach parece practico, pero si necesitaras definir doble
>> click, scroll, drag and drop... como lo harias?
>>
>
> algo asi?? esto es una action de un editor que me puse a hacer como
> ejemplo.... te lo paso si te interesa
> Ybur::View.new.create do
>     @editors=Wx::AuiNotebook.new(self)
>     s.add(@editors,1,Wx::EXPAND)
>     evt_auinotebook_page_close(Wx::ID_ANY) { | e |
>         p "page closed"
>         p STCEditor.current.file
>     }
>     evt_auinotebook_page_changed(Wx::ID_ANY) { | e |
>         [email protected]_page(e.get_selection)
>     }
> end
>
> adentro del evento podria haber un link_to que llame a una action Nico
>
> todavia quedan muchas cosas por definir...
>

adjunto el editor a modo de ejemplo mas concreto
-- 
Nico

Attachment: editor.rar
Description: application/rar-compressed

_______________________________________________
Ruby mailing list
[email protected]
http://lista.rubyargentina.com.ar/listinfo.cgi/ruby-rubyargentina.com.ar

Responder a