1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54
|
use ui;
use core:geometry;
use graphics;
use layout;
/**
* Various styles for slides that set up parts of the layout hierarchy in one step.
*/
// Create a simple title slide.
Grid title(Presentation p, Str title, Str subtitle) on Render {
Grid g;
g.add(FillBox(Size(10, p.size.h * 1 / 3)));
g.nextLine();
g.add(component(Heading(title, p.headingStyle)));
g.nextLine();
g.add(component(Heading(subtitle, p.contentStyle)));
g.nextLine();
g.expandCol(0);
g;
}
// Create a slide with a caption and a single space for content.
CaptionLayout content(Presentation p, Str caption) on Render {
CaptionLayout l;
l.add(component(Heading(caption, p.headingStyle)));
l.space = p.headingStyle.space;
l.align = p.headingAlign;
l.contentLeftMargin = p.contentLeftMargin;
l.contentRightMargin = p.contentRightMargin;
l;
}
// Create a slide with a caption and one or more columns with content.
ColumnLayout columns(Presentation p, Str caption) on Render {
var root = content(p, caption);
ColumnLayout c;
c.bundleRoot = root;
root.add(c);
c;
}
// Create a slide with a caption and a grid layout.
Grid grid(Presentation p, Str caption) on Render {
var root = content(p, caption);
Grid g;
g.bundleRoot = root;
root.add(g);
g;
}
|