Re: GWT and Google Maps Version 3
some code i've took from here:
http://code.google.com/p/gwt-maps3/source/browse/trunk/src/com/googlecode/maps3/client/InfoWindow.java
пятница, 22 июня 2012 г., 11:04:14 UTC+4 пользователь John99 написал:
I have a button on InfoWindow. and ClickEvent doesn't work. I think it because of infowindow doesn't attach this button to DOM correctly. I've made a wraper whis fake panel and now it works ok.--
public class NGTInfoWindow {
static class FakePanel extends ComplexPanel
{
public FakePanel(Widget w)
{
// Detach new child from anything it was attached to before.
w.removeFromParent();
// Adds to our collection
getChildren().add(w);
// Results in the actual attachment
adopt(w);
}
@Override
public boolean isAttached()
{
return true;
}
/** Detaches the widget */
public void detachWidget()
{
this.remove(0);
}
}
private static final Logger log = Logger.getLogger(NGTInfoWindow.class.getName()) ;
private InfoWindow infoWindow;
private FakePanel widgetAttacher;
public NGTInfoWindow(InfoWindowOptions options){
this.infoWindow = InfoWindow.newInstance(options);
}
private void detachWidget()
{
if (this.widgetAttacher != null)
{
this.widgetAttacher.detachWidget();
this.widgetAttacher = null;
log.log(Level.SEVERE, "detachWidget");
}
}
public void setContent(Widget value)
{
infoWindow.setContent(value.getElement());
if (this.widgetAttacher == null)
{
// Add a hook for the close button click
infoWindow.addCloseClickHandler(new CloseClickMapHandler(){
@Override
public void onEvent(CloseClickMapEvent closeClickMapEvent) {
detachWidget();
}
});
/*this.jso.addListener("closeclick", new Runnable() {
@Override
public void run()
{
detachWidget();
}
});*/
this.widgetAttacher = new FakePanel(value);
}
else if (this.widgetAttacher.getWidget(0) != value)
{
this.widgetAttacher.detachWidget();
this.widgetAttacher = new FakePanel(value);
}
}
public void open(MapWidget mapWidget, MVCObject<?> anchor){
infoWindow.open(mapWidget, anchor);
}
public void close(){
infoWindow.close();
}
}
пятница, 22 июня 2012 г., 6:39:20 UTC+4 пользователь Joseph Lust написал:John99,Which event on InfoWindow is not working for you. There are five handlers exposed to GWT from the 5 handlers documented for InfoWindow in the GMaps API. Please elaborate.Sincerely,Joseph
You received this message because you are subscribed to the Google Groups "Google Web Toolkit" group.
To view this discussion on the web visit https://groups.google.com/d/msg/google-web-toolkit/-/QUbLDwEaSNgJ.
To post to this group, send email to google-web-toolkit@googlegroups.com.
To unsubscribe from this group, send email to google-web-toolkit+unsubscribe@googlegroups.com.
For more options, visit this group at http://groups.google.com/group/google-web-toolkit?hl=en.
0 Comments:
Post a Comment
Subscribe to Post Comments [Atom]
<< Home