Compare commits

...

6 Commits

18 changed files with 38 additions and 27 deletions

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Before

(image error) Size: 13 KiB

After

(image error) Size: 13 KiB

Binary file not shown.

Before

(image error) Size: 96 KiB

After

(image error) Size: 92 KiB

Binary file not shown.

Before

(image error) Size: 24 KiB

After

(image error) Size: 24 KiB

Binary file not shown.

@ -30,8 +30,8 @@
#set page(numbering: "1/1", header: align(right)[chronos #sym.dash.em v#chronos.version])
#set page(
header: locate(loc => align(left)[chronos #sym.dash.em v#chronos.version]),
footer: locate(loc => align(center, counter(page).display("1/1", both: true)))
header: align(left)[chronos #sym.dash.em v#chronos.version],
footer: context align(center, counter(page).display("1/1", both: true))
)
= Introduction

@ -19,14 +19,15 @@
),)
}
#let _col(p1, p2, width: auto, margin: 0, min-width: 0) = {
#let _col(p1, p2, width: auto, margin: 0, min-width: 0, max-width: none) = {
return ((
type: "col",
p1: p1,
p2: p2,
width: width,
margin: margin,
min-width: min-width
min-width: min-width,
max-width: max-width
),)
}
@ -240,7 +241,6 @@
}
}
set text(font: "Source Sans 3")
let canvas = render(participants, elmts)
fit-canvas(canvas, width: width)
}

@ -1,4 +1,4 @@
#import "@preview/cetz:0.2.2": draw
#import "@preview/cetz:0.3.1": draw
#import "consts.typ": *
#let _grp(name, desc: none, type: "default", elmts) = {

@ -1,4 +1,4 @@
#let version = version(0, 1, 1)
#let version = version(0, 2, 0)
#import "diagram.typ": diagram, from-plantuml, _gap, _evt, _col
#import "sequence.typ": _seq, _ret

@ -1,4 +1,4 @@
#import "@preview/cetz:0.2.2": draw
#import "@preview/cetz:0.3.1": draw
#import "consts.typ": *
#let SIDES = (

@ -1,4 +1,4 @@
#import "@preview/cetz:0.2.2": draw
#import "@preview/cetz:0.3.1": draw
#import "consts.typ": *
#let PAR-SPECIALS = "?[]"

@ -1,4 +1,4 @@
#import "@preview/cetz:0.2.2": canvas, draw
#import "@preview/cetz:0.3.1": canvas, draw
#import "utils.typ": get-participants-i, get-style, normalize-units
#import "group.typ"
#import "participant.typ"
@ -218,10 +218,13 @@
if elmt.width != auto {
widths.at(i) = normalize-units(elmt.width)
}
widths.at(i) = calc.max(
widths.at(i),
normalize-units(elmt.min-width)
) + normalize-units(elmt.margin)
let width = widths.at(i)
width = calc.max(width, normalize-units(elmt.min-width))
if elmt.max-width != none {
width = calc.min(width, normalize-units(elmt.max-width))
}
widths.at(i) = width + normalize-units(elmt.margin)
}
}

@ -1,4 +1,4 @@
#import "@preview/cetz:0.2.2": draw
#import "@preview/cetz:0.3.1": draw
#import "consts.typ": *
#let _sep(name) = {

@ -1,4 +1,4 @@
#import "@preview/cetz:0.2.2": draw, vector
#import "@preview/cetz:0.3.1": draw, vector
#import "consts.typ": *
#import "participant.typ"
#import "note.typ"
@ -100,19 +100,27 @@
y -= Y-SPACE
let i1 = pars-i.at(elmt.p1)
let i2 = pars-i.at(elmt.p2)
let width = calc.abs(x-pos.at(i1) - x-pos.at(i2))
let h = 0
let comment = if elmt.comment == none {none} else {
let w = calc.min(width * 1pt, measure(elmt.comment).width)
box(
width: if i1 == i2 {auto} else {w},
elmt.comment
)
}
// Reserve space for comment
if elmt.comment != none {
h = calc.max(h, measure(box(elmt.comment)).height / 1pt + 6)
if comment != none {
h = calc.max(h, measure(comment).height / 1pt + 6)
}
if "linked-note" in elmt {
h = calc.max(h, note.get-size(elmt.linked-note).height / 2)
}
y -= h
let i1 = pars-i.at(elmt.p1)
let i2 = pars-i.at(elmt.p2)
let start-info = (
i: i1,
x: x-pos.at(i1),
@ -244,7 +252,7 @@
(x2, end-info.y)
)
if elmt.comment != none {
if comment != none {
comment-anchor = (
start: if x-mid < x1 {"south-east"} else {"south-west"},
end: if x-mid < x1 {"south-west"} else {"south-east"},
@ -268,7 +276,7 @@
(x2, end-info.y)
)
if elmt.comment != none {
if comment != none {
let start-pt = pts.first()
let end-pt = pts.last()
if elmt.start-tip != "" {
@ -348,10 +356,10 @@
shapes += draw.line(..pts, ..style)
if elmt.comment != none {
if comment != none {
shapes += draw.content(
comment-pt,
elmt.comment,
comment,
anchor: comment-anchor,
angle: comment-angle,
padding: 3pt

@ -1,7 +1,7 @@
[package]
name = "chronos"
version = "0.1.1"
compiler = "0.11.0"
version = "0.2.0"
compiler = "0.12.0"
repository = "https://git.kb28.ch/HEL/chronos"
entrypoint = "src/lib.typ"
authors = [