marines
marines

Reputation: 2693

Duplicating widget in UiBinder XML file

Let's say I have Toolbar widget with buttons I'm passing in XML definition. I'd like to have the same toolbar both on top and bottom of the widget I'm creating.

<g:HTMLPanel>
    <ns:Toolbar>
        <g:Button ui:field="b1Top">1</g:Button>
    </ns:Toolbar>

    <p>Lorem ipsum</p>

    <ns:Toolbar>
        <g:Button ui:field="b2Bottom">1</g:Button>
    </ns:Toolbar>
</g:HTMLPanel>

This way I need to assign same handlers individualy for each button. Is there any way to define the toolbar in one place without creating new toolbar widget with particular widgets to show?

I hope you understand what I want to achieve. :)

Upvotes: 0

Views: 109

Answers (2)

Onkar
Onkar

Reputation: 662

Well you can always create a Ui-Binder for your Toolbar and declare the methods and handlers for the buttons. and then use multiple instances of it.

Toolbar ui-binder

<ns:Toolbar>
    <g:Button ui:field="b1Top">1</g:Button>
</ns:Toolbar>

Your ui-binder

<g:HTMLPanel>
    <TB:Toolbar />

    <p>Lorem ipsum</p>

    <TB:Toolbar />
</g:HTMLPanel>

Upvotes: 1

Philippe Gonday
Philippe Gonday

Reputation: 1766

This is not exactly what you've asked, but you can set multiple widgets in the @UiHandler parameters:

@UiHandler( { "b1Top", "b2Bottom" } )
void onButtonClick(ClickEvent event) {
    Window.alert("Click !");
}

Upvotes: 0

Related Questions