/** The constructor. */
  public FigGeneralization() {
    // UML spec for Generalizations doesn't call for name or stereotype
    //        middleGroup.addFig(getNameFig());
    //        middleGroup.addFig(getStereotypeFig());
    //        middleGroup.calcBounds();
    //        addPathItem(middleGroup,
    //                new PathConvPercent2(this, middleGroup, 50, 25));
    endArrow = new ArrowHeadTriangle();

    discriminator.setFont(getLabelFont());
    discriminator.setTextColor(Color.black);
    discriminator.setTextFilled(false);
    discriminator.setFilled(false);
    discriminator.setLineWidth(0);
    discriminator.setExpandOnly(false);
    discriminator.setReturnAction(FigText.END_EDITING);
    discriminator.setTabAction(FigText.END_EDITING);
    addPathItem(discriminator, new PathConvPercent(this, 40, -10));
    endArrow.setFillColor(Color.white);
    setDestArrowHead(endArrow);
    setBetweenNearestPoints(true);

    if (getLayer() == null) {
      setLayer(ProjectManager.getManager().getCurrentProject().getActiveDiagram().getLayer());
    }
  }