private Node createInsertionMarker(double lineHeight) {
double lineWidth = lineHeight / 15d;
double arrowSide = lineHeight / 2d;
double arrowHeight = arrowSide / 2d;
Path marker = new Path();
marker.getElements().add(new MoveTo(- arrowSide / 2d, - arrowHeight));
marker.getElements().add(new LineTo(+ arrowSide / 2d, - arrowHeight));
marker.getElements().add(new LineTo(+ lineWidth / 2d, 0));
marker.getElements().add(new LineTo(+ lineWidth / 2d, lineHeight));
marker.getElements().add(new LineTo(+ arrowSide / 2d, lineHeight + arrowHeight));
marker.getElements().add(new LineTo(- arrowSide / 2d, lineHeight + arrowHeight));
marker.getElements().add(new LineTo(- lineWidth / 2d, lineHeight));
marker.getElements().add(new LineTo(- lineWidth / 2d, 0));
marker.getElements().add(new ClosePath());
marker.setVisible(false);
marker.getStyleClass().add("insertion-marker");
marker.setMouseTransparent(true);
return marker;
}