If your custom component is implemented by a BXML file and a java class you can
do following:
in the calling BXML:
<bxml:include bxml:id="id1" src="../MyComp.bxml" customTitle="Hello1"/>
<bxml:include bxml:id="id2" src="../MyComp.bxml" customTitle="Hello2"/>
in MyComp.java, declare a variable with the same name as the parameter and use it in load() to
initialize the component
@BXML
public String customTitle;
@Override
public void load(Object context) {
border.setHeading( customTitle);
}
On 30/10/2011 19:46, Piotr Kołaczkowski wrote:
W dniu 2011-10-30 18:56, Edvin Syse pisze:
Is there a way to use BXML files as templates? I'd like to include two almost
identical component sets in the main window, differing with component ids
and probably a single label text.
It would be fairly trivial to modify the XML before you give it to the BXMLSerializer, so this
wouldn't require any special framework support as far as I can see.
-- Edvin
Ok, and how to do that from another BXML file?
The BXML <include> tag references just a plain text resource. Is there a way to intercept loading
of the included file and modify it on the fly?
BTW: Regardless of how trivial this is to implement, not having this feature in the framework
means adding quite a lot of accidental complexity to the project configuration.
Imagine almost every team rolling their own templating engine, slightly different from each other.
I think this is not a top priority, but a really nice to have feature.
Regards,
Piotr