docs: public void setValueWidget(I_CmsFormEditWidget widget, String value, String defaultValue, boolean active) {
  
          if (m_hasValue) {
              throw new RuntimeException("Value has already been set");
          }
          m_defaultValue = defaultValue;
          m_hasValue = true;
          m_isSimpleValue = true;
          m_widget = widget;
          if (CmsAttributeHandler.hasResizeHandler() && (m_widget instanceof HasResizeHandlers)) {
              ((HasResizeHandlers)m_widget).addResizeHandler(CmsAttributeHandler.getResizeHandler());
          }
          m_widgetHolder.clear();
          m_widget.setWidgetInfo(m_label, m_help);
          if (active) {
              m_widget.setValue(value, false);
          } else {
              m_widget.setValue("");
          }
          m_widgetHolder.add(m_widget);
          m_widget.setName(getHandler().getAttributeName());
          m_widget.addValueChangeHandler(new ChangeHandler());
          m_widget.addFocusHandler(new FocusHandler() {
  
              public void onFocus(FocusEvent event) {
  
                  CmsValueFocusHandler.getInstance().setFocus(CmsAttributeValueView.this);
                  activateWidget();
              }
          });
          m_widget.setActive(active);
          if (!active) {
              addActivationHandler();
          } else {
              removeStyleName(formCss().emptyValue());
          }
          addStyleName(formCss().simpleValue());
  
          if (m_widget instanceof CmsFormWidgetWrapper) {
              addLabelHoverHandler(((CmsFormWidgetWrapper)m_widget).getLabel());
          } else {
              removeLabelHoverHandler();
          }
      }