Implement new Dim/Pos capabilities, referencing the elements of another view

This commit is contained in:
miguel
2018-05-01 23:27:15 -04:00
parent 7a064983cd
commit b296c920ac
13 changed files with 1145 additions and 6 deletions

View File

@@ -92,12 +92,33 @@ static class Demo {
Application.MainLoop.AddTimeout (TimeSpan.FromMilliseconds (300), timer);
// A little convoluted, this is because I am using this to test the
// layout based on referencing elements of another view:
var login = new Label ("Login: ") { X = 3, Y = 6 };
var password = new Label ("Password: ") {
X = Pos.Left (login),
Y = Pos.Bottom (login) + 1
};
var loginText = new TextField ("") {
X = Pos.Right (password),
Y = Pos.Top (login),
Width = 40
};
var passText = new TextField ("") {
Secret = true,
X = Pos.Left (loginText),
Y = Pos.Top (password),
Width = Dim.Width (loginText)
};
// Add some content
container.Add (
new Label (3, 6, "Login: "),
new TextField (14, 6, 40, ""),
new Label (3, 8, "Password: "),
new TextField (14, 8, 40, "") { Secret = true },
login,
loginText,
password,
passText,
new FrameView (new Rect (3, 10, 25, 6), "Options"){
new CheckBox (1, 0, "Remember me"),
new RadioGroup (1, 2, new [] { "_Personal", "_Company" }),