Hi,
I know how to add anchors to a cell using SafeHtml, but the clickHandler of
the anchors is not triggered.
Below is how I create the anchors. How can I do that with CellTable?
Thanks
Magnus
Column<MyData,SafeHtml> col_Action = new Column<MyData,SafeHtml>(new
SafeHtmlCell())
{
@Override
public SafeHtml getValue (MyData obj)
{
SafeHtmlBuilder sb = new SafeHtmlBuilder();
Panel p = createActionPanel (obj);
String t = p.toString ();
sb.appendHtmlConstant (t);
return sb.toSafeHtml();
}
};
private Panel createActionPanel (MyData data)
{
HorizontalPanel p = new HorizontalPanel ();
Anchor a;
a = createAnchor ("Open","open",data.idx);
p.add (a);
a = createAnchor ("Edit","edit",data.idx);
p.add (a);
...
return (p);
}
private Anchor createAnchor (String label,String command,int idx)
{
Anchor a = new Anchor (label);
a.addClickHandler(this);
Element e = a.getElement();
e.setAttribute("command",command);
e.setAttribute("index",Integer.toString(idx));
return (a);
}
@Override
public void onClick(ClickEvent evt)
{
Window.alert("never called!");
Object o = evt.getSource();
if (o == null)
return;
if (!(o instanceof Anchor))
return;
Anchor a = (Anchor) o;
int idx = Integer.parseInt(a.getElement().getAttribute("index"));
String c = a.getElement().getAttribute("command");
if (command.equals ("open"))
{
openMyData (idx);
}
}
--
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/-/NuD9scvbZqQJ.
To post to this group, send email to [email protected].
To unsubscribe from this group, send email to
[email protected].
For more options, visit this group at
http://groups.google.com/group/google-web-toolkit?hl=en.