protected void drawNormalMessage(DrawHandler drawHandler,PointDouble send,PointDouble receive,RelationDrawer.ArrowEndType arrowEndType,boolean fillArrow,DrawingInfo drawingInfo){
  Line line=new Line(send,receive);
  drawHandler.drawLine(line);
  drawHandler.setLineType(LineType.SOLID);
  RelationDrawer.drawArrowToLine(receive,drawHandler,line,false,arrowEndType,fillArrow,false);
  double height=send.y - drawingInfo.getVerticalStart(sendTick);
  double topLeftX;
  AlignHorizontal hAlignment;
  if (from == getFirstLifeline()) {
    topLeftX=send.x;
    hAlignment=AlignHorizontal.LEFT;
  }
 else {
    topLeftX=receive.x;
    hAlignment=AlignHorizontal.RIGHT;
  }
  if (duration == 0) {
    hAlignment=AlignHorizontal.CENTER;
  }
  topLeftX+=LIFELINE_TEXT_PADDING;
  TextSplitter.drawText(drawHandler,textLines,topLeftX,send.y - height,Math.abs(send.x - receive.x) - LIFELINE_TEXT_PADDING * 2,height,hAlignment,AlignVertical.BOTTOM);
}

protected void drawNormalMessage ( DrawHandler drawHandler , PointDouble send , PointDouble receive , RelationDrawer . ArrowEndType arrowEndType , boolean fillArrow , DrawingInfo drawingInfo ) { Line line = new Line ( send , receive ) ; drawHandler . drawLine ( line ) ; drawHandler . setLineType ( LineType . SOLID ) ; RelationDrawer . drawArrowToLine ( receive , drawHandler , line , false , arrowEndType , fillArrow , false ) ; double height = send . y - drawingInfo . getVerticalStart ( sendTick ) ; double topLeftX ; AlignHorizontal hAlignment ; if ( from == getFirstLifeline ( ) ) { topLeftX = send . x ; hAlignment = AlignHorizontal . LEFT ; } else { topLeftX = receive . x ; hAlignment = AlignHorizontal . RIGHT ; } if ( duration == 0 ) { hAlignment = AlignHorizontal . CENTER ; } topLeftX += LIFELINE_TEXT_PADDING ; TextSplitter . drawText ( drawHandler , textLines , topLeftX , send . y - height , Math . abs ( send . x - receive . x ) - LIFELINE_TEXT_PADDING * 2 , height , hAlignment , AlignVertical . BOTTOM ) ; }
draws a message which is sent between two different lifelines
