docs: public String htmlCell(CmsListItem item, boolean isPrintable) {
  
          StringBuffer html = new StringBuffer(512);
          Iterator<I_CmsListDirectAction> itActions = m_directActions.iterator();
          while (itActions.hasNext()) {
              I_CmsListDirectAction action = itActions.next();
              action.setItem(item);
              boolean enabled = action.isEnabled();
              if (isPrintable) {
                  action.setEnabled(false);
              }
              html.append(action.buttonHtml());
              if (isPrintable) {
                  action.setEnabled(enabled);
              }
          }
          if (!m_defaultActions.isEmpty()) {
              Iterator<CmsListDefaultAction> itDefaultActions = m_defaultActions.iterator();
              while (itDefaultActions.hasNext()) {
                  CmsListDefaultAction defAction = itDefaultActions.next();
                  defAction.setItem(item);
                  boolean enabled = defAction.isEnabled();
                  if (isPrintable) {
                      defAction.setEnabled(false);
                  }
                  html.append(defAction.buttonHtml());
                  if (isPrintable) {
                      defAction.setEnabled(enabled);
                  }
              }
          } else {
              if (m_formatter == null) {
                  // unformatted output
                  if (item.get(m_id) != null) {
                      // null values are not showed by default
                      html.append(item.get(m_id).toString());
                  }
              } else {
                  // formatted output
                  html.append(m_formatter.format(item.get(m_id), getWp().getLocale()));
              }
          }
          html.append("\n");
          return html.toString();
      }