EditParty używane w diagramach czasowych

TimelineEditPart

TimelineEditPart to główny EditPart całego diagramu. Składa się z dwóch części:

  • TimelineAxisFigure umieszczonego w warstwie SCALED_FEEDBACK_LAYER , która odpowiada za rysowanie żółtej skali w górnej części ekranu.
  • figury TimelineFreeformLayer na której umieszczane są inne EditParty (patrz niżej)

Modelem tego EP jest TimelineDiagram

Ten EP posiada także cache położenia swoich dzieci w osi y. Służy on do znajdowania (metodą findChildByY(int yCoord) ) najbliższego PositionedNode 'a, który leży powyżej danej współrzędnej y. Jest to wykorzystywane do bardziej efektywnego tworzenia komendy przesuwającej MoveThreadCommand w TimelineLayoutEditPolicy.createChangeConstraintCommand .

ThreadEditPart

ThreadEditPart rysuje poziomą linię odpowiadającą jednemu PositionedNode . Modelem tego EP jest PositionedNode .

Rozkład linii (połączeń) pomiędzy poszczególnymi ThreadEditPart ami kontroluje własny anchor EventAnchor , zwracany przez tego EP w metodzie getAnchor . Jak to się dokładnie dzieje - nie wiem, ale pewnie jakoś mądrze :)

EventEditPart

EventEditPart rysuje pionową strzałkę między dwoma ThreadEditPart ami. Modelem tego EP jest Connection .