Problème DialogBox avec UIBinder
Bonjour je débute en GWT et j'essaye successivement différents points de ce produit pour faire le tour de ce dont j'aurais besoin pour un développement futur.
J'ai fait un test de DialogBox qui a fonctionné, par contre je n'arrive pas à faire correctement une DialogBox via UIBinder, dans les essais que j'ai fait, j'obtiens suivant les cas un des 2 résultats suivants (en mode développement sous Helios) :
http://perso.orange.fr/dbsite/double_cadre.jpg
http://perso.orange.fr/dbsite/simple_cadre.jpg
Soit j'ai une espèce de double cadre, soit un seul, mais pas celui de la boîte de dialogue
Le ui.xml :
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
| <!DOCTYPE ui:UiBinder SYSTEM "http://dl.google.com/gwt/DTD/xhtml.ent">
<ui:UiBinder xmlns:ui="urn:ui:com.google.gwt.uibinder"
xmlns:g="urn:import:com.google.gwt.user.client.ui">
<ui:style>
.important {
font-weight: bold;
}
</ui:style>
<g:DialogBox ui:field="dialog" autoHide="true" modal="true">
<g:caption><b>Caption text</b></g:caption>
<g:HTMLPanel ui:field="HtmlPanel" >
<g:Button ui:field="button" styleName="{style.important}" text="Autodestruction" />
</g:HTMLPanel>
</g:DialogBox>
</ui:UiBinder> |
Le version suivante du source donne le résultat "simple_cadre.jpg" :
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37
| package scc.boris.client;
import com.google.gwt.core.client.GWT;
import com.google.gwt.event.dom.client.ClickEvent;
import com.google.gwt.uibinder.client.UiBinder;
import com.google.gwt.uibinder.client.UiField;
import com.google.gwt.uibinder.client.UiHandler;
import com.google.gwt.user.client.Window;
import com.google.gwt.user.client.ui.Button;
import com.google.gwt.user.client.ui.Composite;
import com.google.gwt.user.client.ui.DialogBox;
import com.google.gwt.user.client.ui.HTMLPanel;
import com.google.gwt.user.client.ui.Widget;
public class TstUiDialogBox extends DialogBox {
private static TstUiDialogBoxUiBinder uiBinder = GWT
.create(TstUiDialogBoxUiBinder.class);
interface TstUiDialogBoxUiBinder extends UiBinder<Widget, TstUiDialogBox> {
}
/* @UiField DialogBox dialog ; */
@UiField HTMLPanel HtmlPanel ;
public TstUiDialogBox() {
uiBinder.createAndBindUi(this);
setWidget( HtmlPanel );
}
@UiField
Button button;
@UiHandler("button")
void onClick(ClickEvent e) {
Window.alert("Hello!");
}
} |
Si je modifie le constructeur de la façon suivante :
Code:
1 2 3
| public TstUiDialogBox() {
setWidget( uiBinder.createAndBindUi(this) );
} |
J'obtiens la version "double_cadre.jpg"
Avez vous la solution pour avoir une boîte normale ?
En vous remerciant pour l'aide que vous pourrez m'apporter.