docs: public String dialogTitle() {
  
          StringBuffer html = new StringBuffer(512);
          String toolPath = getCurrentToolPath();
          String parentPath = getParentPath();
          String rootKey = getToolManager().getCurrentRoot(this).getKey();
          String upLevelLink = computeUpLevelLink();
  
          html.append(getToolManager().generateNavBar(toolPath, this));
          // build title
          html.append("<div class='screenTitle'>\n");
          html.append("\t<table width='100%' cellspacing='0'>\n");
          html.append("\t\t<tr>\n");
          html.append("\t\t\t<td>\n");
          html.append(CmsEncoder.decode(CmsToolMacroResolver.resolveMacros(getAdminTool().getHandler().getName(), this)));
          html.append("\n\t\t\t</td>");
          // uplevel button only if needed
          if ((upLevelLink != null) && !getParentPath().equals(toolPath)) {
              String parentName = getToolManager().resolveAdminTool(rootKey, parentPath).getHandler().getName();
              html.append("\t\t\t<td class='uplevel'>\n\t\t\t\t");
              html.append(
                  A_CmsHtmlIconButton.defaultButtonHtml(
                      CmsHtmlIconButtonStyleEnum.SMALL_ICON_TEXT,
                      "id-up-level",
                      Messages.get().getBundle(getLocale()).key(Messages.GUI_ADMIN_VIEW_UPLEVEL_0),
                      parentName,
                      true,
                      "admin/images/up.png",
                      null,
                      "openPage('" + upLevelLink + "');"));
              html.append("\n\t\t\t</td>\n");
          }
          html.append("\t\t</tr>\n");
          html.append("\t</table>\n");
          html.append("</div>\n");
          return CmsToolMacroResolver.resolveMacros(html.toString(), this);
      }