class ZoomLevelSelectorPresenter {

    @PreDestroy
    public void destroy() {
        cancelHide();
        if (null != panelResizeHandlerRegistration) {
            panelResizeHandlerRegistration.removeHandler();
            panelResizeHandlerRegistration = null;
        }
        if (null != transformChangedHandler) {
            transformChangedHandler.removeHandler();
            transformChangedHandler = null;
        }
        if (null != selectorOverHandler) {
            selectorOverHandler.removeHandler();
            selectorOverHandler = null;
        }
        floatingView.destroy();
        canvas = null;
        hideTimer = null;
    }

    @Inject public  ZoomLevelSelectorPresenter(final ClientTranslationService translationService,
                                      final FloatingView<IsWidget> floatingView,
                                      final ZoomLevelSelector selector);

}