GWT 1.6: "removeClickHandler" solution

GWT 1.6 changed all Listeners to Handlers and in the process setup a few different practices. One possibility with GWT before 1.6 was to add a ClickListener to a FocusPanel and then remove it by calling the method removeClickListener(ClickListener listener). But, in 1.6 this is not an option with Handlers. There is no removeClickHandler(). Instead, when you add a handler to a widget, it returns an instance of HandlerRegistration. This can then be used to remove that handler. Here is an example of a handler being adding then removed:

FocusPanel focus = new FocusPanel();

HandlerRegistration registration = focus.addClickHandler(new ClickHandler()

{

public void onClick(ClickEvent event)

{

// Panel has been clicked

}

});

registration.removeHandler();



As an Amazon Associate I earn from qualifying purchases.

My favorite quotations..


“A man should be able to change a diaper, plan an invasion, butcher a hog, conn a ship, design a building, write a sonnet, balance accounts, build a wall, set a bone, comfort the dying, take orders, give orders, cooperate, act alone, solve equations, analyze a new problem, pitch manure, program a computer, cook a tasty meal, fight efficiently, die gallantly. Specialization is for insects.”  by Robert A. Heinlein

"We are but habits and memories we chose to carry along." ~ Uki D. Lucas


Popular Recent Articles