private void configureOnChangeHandler() {
      final EndDatePanel localThis = this;

      ICallback<IChangeHandler> handler =
          new ICallback<IChangeHandler>() {
            public void onHandle(IChangeHandler o) {
              localThis.changeHandler();
            }
          };
      KeyboardListener keyboardListener =
          new KeyboardListener() {
            public void onKeyDown(Widget sender, char keyCode, int modifiers) {}

            public void onKeyPress(Widget sender, char keyCode, int modifiers) {}

            public void onKeyUp(Widget sender, char keyCode, int modifiers) {
              localThis.changeHandler();
            }
          };

      ClickListener clickListener =
          new ClickListener() {
            public void onClick(Widget sender) {
              localThis.changeHandler();
            }
          };

      endDatePicker.setOnChangeHandler(handler);
      noEndDateRb.addClickListener(clickListener);
      noEndDateRb.addKeyboardListener(keyboardListener);
      endByRb.addClickListener(clickListener);
      endByRb.addKeyboardListener(keyboardListener);
    }
  private void configureOnChangeHandler() {
    final DateRangeEditor localThis = this;

    ICallback<IChangeHandler> handler =
        new ICallback<IChangeHandler>() {
          public void onHandle(IChangeHandler o) {
            localThis.changeHandler();
          }
        };

    startDatePicker.setOnChangeHandler(handler);
    endDatePanel.setOnChangeHandler(handler);
  }