private void printAndUpdateIndex( DrawHandler drawer, RelationPointHandler relationPoints, PointDouble pointText, int index, String text, Point displacement, Set<Integer> usedIndexes) { if (displacement != null) { pointText = new PointDouble( pointText.getX() + displacement.getX(), pointText.getY() + displacement.getY()); } printAndUpdateIndex(drawer, relationPoints, pointText, index, text, usedIndexes); }
private void printAndUpdateIndex( DrawHandler drawer, RelationPointHandler relationPoints, PointDouble pointText, int index, String text, Set<Integer> usedIndexes) { drawer.print(text, pointText, AlignHorizontal.LEFT); // to make sure text is printed (and therefore withing relation-element-borders, resize relation // according to text relationPoints.setTextBox( index, new Rectangle( pointText.getX(), pointText.getY() - drawer.textHeightMax(), drawer.textWidth(text), drawer.textHeightMax())); usedIndexes.add(index); }