forked from HEL/chronos
		
	added sequences with same endpoints
This commit is contained in:
		
										
											Binary file not shown.
										
									
								
							| @@ -65,4 +65,10 @@ Alice <-- Bob: Another authentication Response | ||||
|   _gap(size: 45) | ||||
|   _seq("Alice", "Bob", comment: "message 3") | ||||
|   _seq("Bob", "Alice", comment: "ok", dashed: true) | ||||
| }) | ||||
|  | ||||
| #chronos.diagram({ | ||||
|   import "/src/diagram.typ": * | ||||
|   _seq("Alice", "Alice", comment: "On the\nright") | ||||
|   _seq("Alice", "Alice", flip: true, comment: "On the\nleft") | ||||
| }) | ||||
| @@ -7,7 +7,8 @@ | ||||
|   comment: none, | ||||
|   dashed: false, | ||||
|   tip: "default", | ||||
|   color: black | ||||
|   color: black, | ||||
|   flip: false | ||||
| ) = { | ||||
|   return (( | ||||
|     type: "seq", | ||||
| @@ -17,6 +18,7 @@ | ||||
|     dashed: dashed, | ||||
|     tip: tip, | ||||
|     color: color, | ||||
|     flip: flip | ||||
|   ),) | ||||
| } | ||||
|  | ||||
|   | ||||
| @@ -133,26 +133,51 @@ | ||||
|         ) | ||||
|       ) | ||||
|  | ||||
|       if elmt.comment != none { | ||||
|         let x = calc.min(x1, x2) | ||||
|         if x2 < x1 { | ||||
|           x += COMMENT-PAD | ||||
|       if elmt.p1 == elmt.p2 { | ||||
|         x2 = if elmt.flip {x1 - 20} else {x1 + 20} | ||||
|  | ||||
|         if elmt.comment != none { | ||||
|           y -= measure(box(elmt.comment)).height / 1pt + 6 | ||||
|           draw.content( | ||||
|             (x1, y), | ||||
|             elmt.comment, | ||||
|             anchor: if elmt.flip {"south-east"} else {"south-west"}, | ||||
|             padding: 3pt | ||||
|           ) | ||||
|         } | ||||
|         y -= measure(box(elmt.comment)).height / 1pt + 6 | ||||
|         draw.content( | ||||
|           (x, y), | ||||
|           elmt.comment, | ||||
|           anchor: "south-west", | ||||
|           padding: 3pt | ||||
|  | ||||
|         draw.line( | ||||
|           (x1, y), | ||||
|           (x2, y), | ||||
|           (x2, y - 10), | ||||
|           (x1, y - 10), | ||||
|           ..style | ||||
|         ) | ||||
|         y -= 10 | ||||
|  | ||||
|       } else { | ||||
|         if elmt.comment != none { | ||||
|           let x = calc.min(x1, x2) | ||||
|           if x2 < x1 { | ||||
|             x += COMMENT-PAD | ||||
|           } | ||||
|           y -= measure(box(elmt.comment)).height / 1pt + 6 | ||||
|           draw.content( | ||||
|             (x, y), | ||||
|             elmt.comment, | ||||
|             anchor: "south-west", | ||||
|             padding: 3pt | ||||
|           ) | ||||
|         } | ||||
|  | ||||
|         draw.line( | ||||
|           (x1, y), | ||||
|           (x2, y), | ||||
|           ..style | ||||
|         ) | ||||
|       } | ||||
|  | ||||
|       draw.line( | ||||
|         (x1, y), | ||||
|         (x2, y), | ||||
|         ..style | ||||
|       ) | ||||
|       y -= Y-SPACE | ||||
|  | ||||
|     } else if elmt.type == "grp" { | ||||
|       let m = measure( | ||||
|         box( | ||||
|   | ||||
		Reference in New Issue
	
	Block a user