performLayout method
Implementation
@override
void performLayout(ChantContext ctxt) {
super.performLayout(ctxt);
final first = notes[0];
final second = notes[1];
final third = notes[2];
final fourth = notes[3];
final builder = build(ctxt)..noteAt(first, GlyphCode.punctumQuadratum);
if (!(hasFlag(second.shapeModifiers, NoteShapeModifiers.stemmed))) {
builder.advanceBy(ctxt.intraNeumeSpacing);
}
builder.noteAt(second, GlyphCode.oriscusAsc);
if (hasFlag(fourth.liquescent, LiquescentType.small)) {
builder.noteAt(third, GlyphCode.punctumQuadratumDesLiquescent);
} else {
builder.noteAt(third, GlyphCode.punctumQuadratum);
}
if (hasFlag(fourth.liquescent, LiquescentType.small)) {
builder.noteAt(fourth, GlyphCode.terminatingDesLiquescent);
} else if (hasFlag(fourth.liquescent, LiquescentType.ascending)) {
builder.noteAt(fourth, GlyphCode.punctumQuadratumAscLiquescent);
} else if (hasFlag(fourth.liquescent, LiquescentType.descending)) {
builder.noteAt(fourth, GlyphCode.punctumQuadratumDesLiquescent);
} else {
builder.noteAt(fourth, GlyphCode.punctumQuadratum);
}
finishLayout(ctxt);
}