code: @Override
    @UiChild(limit = 1, tagname = "widget")
    public void setChildWidget(final TakesValue<T> pwidget) {
      widget = (Widget) pwidget;
      contents.add(widget);
      setEditor(new ExtendedValueBoxEditor<>(pwidget, this));
      if (pwidget instanceof HasFocusHandlers) {
        ((HasFocusHandlers) pwidget).addFocusHandler(pevent -> addStyleToLabel());
      }
      if (pwidget instanceof HasBlurHandlers) {
        ((HasBlurHandlers) pwidget).addBlurHandler(pevent -> {
          boolean hide = true;
          if (widget instanceof TakesValue<?>) {
            hide = StringUtils.isEmpty(Objects.toString(((TakesValue<?>) widget).getValue(), null));
          }
          if (hide) {
            removeStyleFromLabel();
          }
        });
      }
    }
docs: Set the widget that the EditorPanel will display. This method will automatically call
  {@link #setEditor}.
  
  @param pwidget a {@link IsEditor} widget