Lasciate MyComponent
implementare l'interfaccia HasWidgets
per aggiungere/rimuovere i widget secondari.
Il MyComponent.ui.xml
sembra semplice come
<g:FlowPanel ui:field="main" />
mentre si delega i metodi specificati ind HasWidgets
al FlowPanel
:
public class MyComponent extends Composite implements HasWidgets {
private static MyComponentUiBinder uiBinder = GWT.create(MyComponentUiBinder.class);
interface MyComponentUiBinder extends UiBinder<Widget, MyComponent> {}
@UiField
FlowPanel main;
public MyComponent() {
initWidget(uiBinder.createAndBindUi(this));
}
@Override
public void add(Widget w) {
main.add(w);
}
@Override
public void clear() {
main.clear();
}
@Override
public Iterator<Widget> iterator() {
return main.iterator();
}
@Override
public boolean remove(Widget w) {
return main.remove(w);
}
}
Calling
<M:MyComponent>
<g:Label text="some text" />
</M:MyComponent>
funzionerà in questo modo.
Grazie mille per la risposta molto completa. –
No prob, prego. – z00bs
Ho cercato dappertutto un modo semplice per farlo. Grazie! – roguenet