Пользовательские теги в файлах UiBinder - PullRequest
9 голосов
/ 03 ноября 2010

При использовании <g:LayoutPanel> в файлах UiBinder.ui.xml можно указать <g:layer> теги.Некоторые другие встроенные в Google виджеты также имеют такие специальные теги - <g:tab> даже имеет вложенный тег <g:header>.

Как я могу указать их для своих собственных виджетов?

Ответы [ 2 ]

8 голосов
/ 12 декабря 2012

Новый ответ на этот вопрос после некоторых улучшений GWT: https://stackoverflow.com/a/11785903/439317.Скопировано ниже, чтобы избежать удаления модератором (возможно?).

Вы можете использовать @UiChild для объявления специальных функций в ваших виджетах, доступных в UiBinders.

, например,

class MyPanel extends AbsolutePanel {

    @UiChild
    public void addAt(Widget w, String parameter1, String parameter2) {
         ....

Затем в своем uiBinder вы можете сказать

<custom:MyPanel>
    <custom:at parameter1="HI" parameter2="Anything you like!">
        <g:AnySingleWidget />
    </custom:at>
</custom:MyPanel>

См. @UiChild на http://google -web-toolkit.googlecode.com / svn / javadoc / latest / com / google / gwt /UiBinder / клиент / UiChild.html

3 голосов
/ 03 ноября 2010

То, что вы ищете, это пользовательский анализатор элементов для UiBinder.См. этот выпуск .К сожалению, он пока не поддерживается.

Возможно, вас заинтересует эта публикация , в которой приведены некоторые рекомендации о том, как самостоятельно расширить текущий синтаксический анализатор.

...