soy no un experto Groovy, pero sí leí el libro "Groovy en acción". En Groovy, cada cierre viene con un "contexto", donde los elementos dentro del cierre pueden tener acceso a pseudovariables como "este", "propietario" y "delegado", que permiten a los elementos saber quién llamó al cierre. Esto permite escribir DSL como este (de maravilloso en Acción):contexto de cierre de Scala
swing = new SwingBuilder()
frame = swing.frame(title:'Demo') {
menuBar {
menu('File') {
menuItem 'New'
menuItem 'Open'
}
}
panel {
// ...
}
}
Tenga en cuenta que 'barra de menú' "sabe" que pertenece al 'marco', ya que puede obtener información de contexto sobre el propietario y el delegado de la cierre.
¿Esto es posible hacer en Scala? ¿Si es así, cómo?
Una vez vanamente con algunos enfoques para emular el constructor HTML (no el propietario/delegado de un cierre). http://gist.github.com/260426 http://gist.github.com/260446 – retronym
Estaba buscando más el patrón que una aplicación específica con Swing. Como ejercicio de aprendizaje, estoy considerando intentar esto con SWT. – Ralph