Reputation: 58786
I want to write the following in Clojure, but I can't figure it out for the life of me:
new TouchCommand() {
@Override
public void itemTouched(TouchMenuItem selectedItem) {
}
I tried:
(reify com.vaadin.touchkit.TouchMenu$TouchCommand
(itemTouched [^com.vaadin.touchkit.TouchMenu$TouchMenuItem item]))
but it returns:
java.lang.IllegalArgumentException: Can't define method not in interfaces: itemTouched
even though "itemTouched" does exist in the interface. Can anyone help?
Upvotes: 4
Views: 262
Reputation: 8485
I haven't done extensive Java interop with Clojure so this might be wrong, but how about
(proxy [TouchCommand] []
(itemTouched [selectedItem]
(.. (getParent)
(navigateTo
(UiBasics.)))))
Upvotes: 3