@Override
  protected String getDescription(GeoElement geo) {

    String text = null;
    if (geo.isIndependent() && geo.getDefinition() == null) {
      text = getAlgebraDescriptionTextOrHTML(geo);
    } else {
      switch (kernel.getAlgebraStyle()) {
        case Kernel.ALGEBRA_STYLE_VALUE:
          text = getAlgebraDescriptionTextOrHTML(geo);
          break;

        case Kernel.ALGEBRA_STYLE_DESCRIPTION:
          IndexHTMLBuilder builder = new IndexHTMLBuilder(true);
          geo.addLabelTextOrHTML(
              geo.getDefinitionDescription(StringTemplate.defaultTemplate), builder);
          text = builder.toString();
          break;

        case Kernel.ALGEBRA_STYLE_DEFINITION:
          builder = new IndexHTMLBuilder(true);
          geo.addLabelTextOrHTML(geo.getDefinition(StringTemplate.defaultTemplate), builder);
          text = builder.toString();
          break;
      }
    }

    return text;
  }