Obtener las propiedades de los padres de disposición declarativa
Pregunta
He construido una StackPanel como esto
<g:StackPanel ui:field="ticketsPanel">
<g:VerticalPanel g:StackPanel-text="Tickets">
<g:Hyperlink targetHistoryToken='newTickets'>New tickets</g:Hyperlink>
<g:Hyperlink targetHistoryToken='myTickets'>My tickets</g:Hyperlink>
<g:Hyperlink targetHistoryToken='allTickets'>All tickets</g:Hyperlink>
</g:VerticalPanel>
<g:VerticalPanel>
<g:Hyperlink>Preferences</g:Hyperlink>
<g:Hyperlink>My information</g:Hyperlink>
</g:VerticalPanel>
Como se puede ver, hay una propiedad g:StackPanel-text
en cada VerticalPanel que define el nombre de la StackPanel. He encontrado esto en un ejemplo en un foro, pero no puedo encontrar ninguna documentación o literatura sobre lo que está sucediendo aquí ..... ¿Es una especie de "referencia hacia atrás" a una propiedad de los padres? ¿Significa esto que siempre puedo usar algo como g:ParentClass-randomProperty="test"
?
Cualquier puntero a la documentación sobre este va a ser muy útil. Gracias !!!
Solución
Tener un vistazo a la com.google.gwt.uibinder.elementparsers.StackPanelParser
clase, especialmente el método parse(..)
En allí el valor del atributo StackPanel-text
(ATTRIBUTE_TEXT
) se utiliza para finalmente llamar a la add (Widget, String) método (línea 49) en el objeto StackPanel
(la llamada exacta para el ticketsPanel.add(f_VerticalPanel1, "Tickets");
snipped es proporcionado).
Así que, básicamente, es sólo el encabezado del widget añadido.