docs: public String buildRadioCopyMode() {
  
          StringBuffer retValue = new StringBuffer(256);
  
          // check if the current resource is a folder for single operation
          boolean isFolder = isOperationOnFolder();
          String checkedAttr = " checked=\"checked\"";
  
          if (isMultiOperation() || isFolder) {
              // for multi resource operations or folders, show an additional option "preserve links"
              CmsResourceCopyMode defaultMode = getSettings().getUserSettings().getDialogCopyFolderMode();
              retValue.append("<input type=\"radio\" name=\"copymode\" value=\"");
              retValue.append(CmsResource.COPY_AS_SIBLING.getMode());
              retValue.append("\"");
              if (defaultMode == CmsResource.COPY_AS_SIBLING) {
                  retValue.append(checkedAttr);
              }
              retValue.append("> ");
              String msgKey;
              if (isMultiOperation()) {
                  msgKey = Messages.GUI_COPY_MULTI_CREATE_SIBLINGS_0;
              } else {
                  msgKey = Messages.GUI_COPY_CREATE_SIBLINGS_0;
              }
              retValue.append(key(msgKey));
              retValue.append("<br>\n");
              retValue.append("<input type=\"radio\" name=\"copymode\" value=\"");
              retValue.append(CmsResource.COPY_PRESERVE_SIBLING.getMode());
              retValue.append("\"");
              if (defaultMode == CmsResource.COPY_PRESERVE_SIBLING) {
                  retValue.append(checkedAttr);
              }
              retValue.append("> ");
              retValue.append(key(Messages.GUI_COPY_ALL_NO_SIBLINGS_0));
              retValue.append("<br>\n");
              retValue.append("<input type=\"radio\" name=\"copymode\" value=\"");
              retValue.append(CmsResource.COPY_AS_NEW.getMode());
              retValue.append("\"");
              if (defaultMode == CmsResource.COPY_AS_NEW) {
                  retValue.append(checkedAttr);
              }
              retValue.append("> ");
              retValue.append(key(Messages.GUI_COPY_ALL_0));
              retValue.append("<br>\n");
  
              if (isMultiOperation()) {
                  // show overwrite option for multi resource copy
                  retValue.append(dialogSpacer());
                  retValue.append("<input type=\"checkbox\" name=\"");
                  retValue.append(PARAM_OVERWRITE);
                  retValue.append("\" value=\"true\"> ");
                  retValue.append(key(Messages.GUI_COPY_MULTI_OVERWRITE_0));
                  retValue.append("<br>\n");
              }
          } else {
              // for files, show copy option "copy as sibling" and "copy as new resource"
              CmsResourceCopyMode defaultMode = getSettings().getUserSettings().getDialogCopyFileMode();
              retValue.append("<input type=\"radio\" name=\"copymode\" value=\"");
              retValue.append(CmsResource.COPY_AS_SIBLING.getMode());
              retValue.append("\"");
              if (defaultMode == CmsResource.COPY_AS_SIBLING) {
                  retValue.append(checkedAttr);
              }
              retValue.append("> ");
              retValue.append(key(Messages.GUI_CREATE_SIBLING_0));
              retValue.append("<br>\n");
              retValue.append("<input type=\"radio\" name=\"copymode\" value=\"");
              retValue.append(CmsResource.COPY_AS_NEW.getMode());
              retValue.append("\"");
              if (defaultMode == CmsResource.COPY_AS_NEW) {
                  retValue.append(checkedAttr);
              }
              retValue.append("> ");
              retValue.append(key(Messages.GUI_COPY_AS_NEW_0));
              retValue.append("<br>\n");
          }
  
          return retValue.toString();
      }