diff --git a/Example/demo.cs b/Example/demo.cs index 58461e69b..799384a73 100644 --- a/Example/demo.cs +++ b/Example/demo.cs @@ -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" }), diff --git a/Terminal.Gui/Core.cs b/Terminal.Gui/Core.cs index fe9b8e7e0..9f0fa1f39 100644 --- a/Terminal.Gui/Core.cs +++ b/Terminal.Gui/Core.cs @@ -1041,6 +1041,47 @@ namespace Terminal.Gui { Frame = new Rect (_x, _y, w, h); } + // https://en.wikipedia.org/wiki/Topological_sorting + static List TopologicalSort (HashSet nodes, HashSet<(View, View)> edges) + { + var result = new List (); + + // Set of all nodes with no incoming edges + var S = new HashSet (nodes.Where (n => edges.All (e => e.Item2.Equals (n) == false))); + + while (S.Any ()) { + // remove a node n from S + var n = S.First (); + S.Remove (n); + + // add n to tail of L + result.Add (n); + + // for each node m with an edge e from n to m do + foreach (var e in edges.Where (e => e.Item1.Equals (n)).ToList ()) { + var m = e.Item2; + + // remove edge e from the graph + edges.Remove (e); + + // if m has no other incoming edges then + if (edges.All (me => me.Item2.Equals (m) == false)) { + // insert m into S + S.Add (m); + } + } + } + + // if graph has edges then + if (edges.Any ()) { + // return error (graph has at least one cycle) + return null; + } else { + // return L (a topologically sorted order) + return result; + } + } + /// /// This virtual method is invoked when a view starts executing or /// when the dimensions of the view have changed, for example in @@ -1050,8 +1091,31 @@ namespace Terminal.Gui { { if (!layoutNeeded) return; - + + // Sort out the dependencies of the X, Y, Width, Height properties + var nodes = new HashSet (); + var edges = new HashSet<(View, View)> (); + foreach (var v in Subviews) { + nodes.Add (v); + if (v.LayoutStyle == LayoutStyle.Computed) { + if (v.X is Pos.PosView) + edges.Add ((v, (v.X as Pos.PosView).Target)); + if (v.Y is Pos.PosView) + edges.Add ((v, (v.Y as Pos.PosView).Target)); + if (v.Width is Dim.DimView) + edges.Add ((v, (v.Width as Dim.DimView).Target)); + if (v.Height is Dim.DimView) + edges.Add ((v, (v.Height as Dim.DimView).Target)); + } + } + + var ordered = TopologicalSort (nodes, edges); + ordered.Reverse (); + if (ordered == null) + throw new Exception ("There is a recursive cycle in the relative Pos/Dim in the views of " + this); + + foreach (var v in ordered) { if (v.LayoutStyle == LayoutStyle.Computed) v.RelativeLayout (Frame); diff --git a/Terminal.Gui/Types/PosDim.cs b/Terminal.Gui/Types/PosDim.cs index 46e1965fc..c2a057004 100644 --- a/Terminal.Gui/Types/PosDim.cs +++ b/Terminal.Gui/Types/PosDim.cs @@ -24,6 +24,11 @@ namespace Terminal.Gui { /// to produce more useful layouts, like: Pos.Center - 3, which would shift the postion /// of the view 3 characters to the left after centering for example. /// + /// + /// It is possible to reference coordinates of another view by using the methods + /// Left(View), Right(View), Bottom(View), Top(View). The X(View) and Y(View) are + /// aliases to Left(View) and Top(View) respectively. + /// /// public class Pos { internal virtual int Anchor (int width) @@ -195,6 +200,69 @@ namespace Terminal.Gui { { return new PosCombine (false, left, right); } + + internal class PosView : Pos { + public View Target; + int side; + public PosView (View view, int side) + { + Target = view; + this.side = side; + } + internal override int Anchor (int width) + { + switch (side) { + case 0: return Target.Frame.X; + case 1: return Target.Frame.Y; + case 2: return Target.Frame.Right; + case 3: return Target.Frame.Bottom; + default: + return 0; + } + } + } + + /// + /// Returns a Pos object tracks the Left (X) position of the specified view. + /// + /// The Position that depends on the other view. + /// The view that will be tracked. + public static Pos Left (View view) => new PosView (view, 0); + + /// + /// Returns a Pos object tracks the Left (X) position of the specified view. + /// + /// The Position that depends on the other view. + /// The view that will be tracked. + public static Pos X (View view) => new PosView (view, 0); + + /// + /// Returns a Pos object tracks the Top (Y) position of the specified view. + /// + /// The Position that depends on the other view. + /// The view that will be tracked. + public static Pos Top (View view) => new PosView (view, 1); + + /// + /// Returns a Pos object tracks the Top (Y) position of the specified view. + /// + /// The Position that depends on the other view. + /// The view that will be tracked. + public static Pos Y (View view) => new PosView (view, 1); + + /// + /// Returns a Pos object tracks the Right (X+Width) coordinate of the specified view. + /// + /// The Position that depends on the other view. + /// The view that will be tracked. + public static Pos Right (View view) => new PosView (view, 2); + + /// + /// Returns a Pos object tracks the Bottom (Y+Height) coordinate of the specified view. + /// + /// The Position that depends on the other view. + /// The view that will be tracked. + public static Pos Bottom (View view) => new PosView (view, 3); } /// @@ -347,5 +415,38 @@ namespace Terminal.Gui { { return new DimCombine (false, left, right); } + + internal class DimView : Dim { + public View Target; + int side; + public DimView (View view, int side) + { + Target = view; + this.side = side; + } + + internal override int Anchor (int width) + { + switch (side) { + case 0: return Target.Frame.Height; + case 1: return Target.Frame.Width; + default: + return 0; + } + } + } + /// + /// Returns a Dim object tracks the Width of the specified view. + /// + /// The dimension of the other view. + /// The view that will be tracked. + public static Dim Width (View view) => new DimView (view, 1); + + /// + /// Returns a Dim object tracks the Height of the specified view. + /// + /// The dimension of the other view. + /// The view that will be tracked. + public static Dim Height (View view) => new DimView (view, 0); } } diff --git a/docfx/api/Terminal.Gui/Terminal.Gui.Dim.yml b/docfx/api/Terminal.Gui/Terminal.Gui.Dim.yml index 02d2a6f20..ade9f6893 100644 --- a/docfx/api/Terminal.Gui/Terminal.Gui.Dim.yml +++ b/docfx/api/Terminal.Gui/Terminal.Gui.Dim.yml @@ -5,10 +5,12 @@ items: children: - Terminal.Gui.Dim.#ctor - Terminal.Gui.Dim.Fill(System.Int32) + - Terminal.Gui.Dim.Height(Terminal.Gui.View) - Terminal.Gui.Dim.op_Addition(Terminal.Gui.Dim,Terminal.Gui.Dim) - Terminal.Gui.Dim.op_Implicit(System.Int32 to Terminal.Gui.Dim) - Terminal.Gui.Dim.op_Subtraction(Terminal.Gui.Dim,Terminal.Gui.Dim) - Terminal.Gui.Dim.Percent(System.Single) + - Terminal.Gui.Dim.Width(Terminal.Gui.View) langs: - csharp name: Dim @@ -75,6 +77,30 @@ items: description: The Fill dimension. overload: Terminal.Gui.Dim.Fill* exceptions: [] +- uid: Terminal.Gui.Dim.Height(Terminal.Gui.View) + id: Height(Terminal.Gui.View) + parent: Terminal.Gui.Dim + langs: + - csharp + name: Height(View) + nameWithType: Dim.Height(View) + fullName: Dim.Height(View) + type: Method + assemblies: + - Terminal.Gui + namespace: Terminal.Gui + summary: Returns a Dim object tracks the Height of the specified view. + syntax: + content: public static Terminal.Gui.Dim Height (Terminal.Gui.View view); + parameters: + - id: view + type: Terminal.Gui.View + description: The view that will be tracked. + return: + type: Terminal.Gui.Dim + description: The dimension of the other view. + overload: Terminal.Gui.Dim.Height* + exceptions: [] - uid: Terminal.Gui.Dim.op_Addition(Terminal.Gui.Dim,Terminal.Gui.Dim) id: op_Addition(Terminal.Gui.Dim,Terminal.Gui.Dim) parent: Terminal.Gui.Dim @@ -177,6 +203,30 @@ items: description: The percent Dim object. overload: Terminal.Gui.Dim.Percent* exceptions: [] +- uid: Terminal.Gui.Dim.Width(Terminal.Gui.View) + id: Width(Terminal.Gui.View) + parent: Terminal.Gui.Dim + langs: + - csharp + name: Width(View) + nameWithType: Dim.Width(View) + fullName: Dim.Width(View) + type: Method + assemblies: + - Terminal.Gui + namespace: Terminal.Gui + summary: Returns a Dim object tracks the Width of the specified view. + syntax: + content: public static Terminal.Gui.Dim Width (Terminal.Gui.View view); + parameters: + - id: view + type: Terminal.Gui.View + description: The view that will be tracked. + return: + type: Terminal.Gui.Dim + description: The dimension of the other view. + overload: Terminal.Gui.Dim.Width* + exceptions: [] references: - uid: System.Object parent: System @@ -208,6 +258,18 @@ references: name: Int32 nameWithType: Int32 fullName: System.Int32 +- uid: Terminal.Gui.Dim.Height(Terminal.Gui.View) + parent: Terminal.Gui.Dim + isExternal: false + name: Height(View) + nameWithType: Dim.Height(View) + fullName: Dim.Height(View) +- uid: Terminal.Gui.View + parent: Terminal.Gui + isExternal: false + name: View + nameWithType: View + fullName: Terminal.Gui.View - uid: Terminal.Gui.Dim.op_Addition(Terminal.Gui.Dim,Terminal.Gui.Dim) parent: Terminal.Gui.Dim isExternal: false @@ -238,6 +300,12 @@ references: name: Single nameWithType: Single fullName: System.Single +- uid: Terminal.Gui.Dim.Width(Terminal.Gui.View) + parent: Terminal.Gui.Dim + isExternal: false + name: Width(View) + nameWithType: Dim.Width(View) + fullName: Dim.Width(View) - uid: Terminal.Gui.Dim.#ctor* parent: Terminal.Gui.Dim isExternal: false @@ -250,6 +318,12 @@ references: name: Fill nameWithType: Dim.Fill fullName: Dim.Fill +- uid: Terminal.Gui.Dim.Height* + parent: Terminal.Gui.Dim + isExternal: false + name: Height + nameWithType: Dim.Height + fullName: Dim.Height - uid: Terminal.Gui.Dim.op_Addition* parent: Terminal.Gui.Dim isExternal: false @@ -274,3 +348,9 @@ references: name: Percent nameWithType: Dim.Percent fullName: Dim.Percent +- uid: Terminal.Gui.Dim.Width* + parent: Terminal.Gui.Dim + isExternal: false + name: Width + nameWithType: Dim.Width + fullName: Dim.Width diff --git a/docfx/api/Terminal.Gui/Terminal.Gui.Pos.yml b/docfx/api/Terminal.Gui/Terminal.Gui.Pos.yml index 6c60ce34c..e22febc6d 100644 --- a/docfx/api/Terminal.Gui/Terminal.Gui.Pos.yml +++ b/docfx/api/Terminal.Gui/Terminal.Gui.Pos.yml @@ -5,11 +5,17 @@ items: children: - Terminal.Gui.Pos.#ctor - Terminal.Gui.Pos.AnchorEnd(System.Int32) + - Terminal.Gui.Pos.Bottom(Terminal.Gui.View) - Terminal.Gui.Pos.Center + - Terminal.Gui.Pos.Left(Terminal.Gui.View) - Terminal.Gui.Pos.op_Addition(Terminal.Gui.Pos,Terminal.Gui.Pos) - Terminal.Gui.Pos.op_Implicit(System.Int32 to Terminal.Gui.Pos) - Terminal.Gui.Pos.op_Subtraction(Terminal.Gui.Pos,Terminal.Gui.Pos) - Terminal.Gui.Pos.Percent(System.Single) + - Terminal.Gui.Pos.Right(Terminal.Gui.View) + - Terminal.Gui.Pos.Top(Terminal.Gui.View) + - Terminal.Gui.Pos.X(Terminal.Gui.View) + - Terminal.Gui.Pos.Y(Terminal.Gui.View) langs: - csharp name: Pos @@ -30,6 +36,11 @@ items: to produce more useful layouts, like: Pos.Center - 3, which would shift the postion of the view 3 characters to the left after centering for example.

+

+ It is possible to reference coordinates of another view by using the methods + Left(View), Right(View), Bottom(View), Top(View). The X(View) and Y(View) are + aliases to Left(View) and Top(View) respectively. +

syntax: content: public class Pos inheritance: @@ -77,6 +88,30 @@ items: description: The Pos object anchored to the end (the bottom or the right side). overload: Terminal.Gui.Pos.AnchorEnd* exceptions: [] +- uid: Terminal.Gui.Pos.Bottom(Terminal.Gui.View) + id: Bottom(Terminal.Gui.View) + parent: Terminal.Gui.Pos + langs: + - csharp + name: Bottom(View) + nameWithType: Pos.Bottom(View) + fullName: Pos.Bottom(View) + type: Method + assemblies: + - Terminal.Gui + namespace: Terminal.Gui + summary: Returns a Pos object tracks the Bottom (Y+Height) coordinate of the specified view. + syntax: + content: public static Terminal.Gui.Pos Bottom (Terminal.Gui.View view); + parameters: + - id: view + type: Terminal.Gui.View + description: The view that will be tracked. + return: + type: Terminal.Gui.Pos + description: The Position that depends on the other view. + overload: Terminal.Gui.Pos.Bottom* + exceptions: [] - uid: Terminal.Gui.Pos.Center id: Center parent: Terminal.Gui.Pos @@ -98,6 +133,30 @@ items: description: The center Pos. overload: Terminal.Gui.Pos.Center* exceptions: [] +- uid: Terminal.Gui.Pos.Left(Terminal.Gui.View) + id: Left(Terminal.Gui.View) + parent: Terminal.Gui.Pos + langs: + - csharp + name: Left(View) + nameWithType: Pos.Left(View) + fullName: Pos.Left(View) + type: Method + assemblies: + - Terminal.Gui + namespace: Terminal.Gui + summary: Returns a Pos object tracks the Left (X) position of the specified view. + syntax: + content: public static Terminal.Gui.Pos Left (Terminal.Gui.View view); + parameters: + - id: view + type: Terminal.Gui.View + description: The view that will be tracked. + return: + type: Terminal.Gui.Pos + description: The Position that depends on the other view. + overload: Terminal.Gui.Pos.Left* + exceptions: [] - uid: Terminal.Gui.Pos.op_Addition(Terminal.Gui.Pos,Terminal.Gui.Pos) id: op_Addition(Terminal.Gui.Pos,Terminal.Gui.Pos) parent: Terminal.Gui.Pos @@ -200,6 +259,102 @@ items: description: The percent Pos object. overload: Terminal.Gui.Pos.Percent* exceptions: [] +- uid: Terminal.Gui.Pos.Right(Terminal.Gui.View) + id: Right(Terminal.Gui.View) + parent: Terminal.Gui.Pos + langs: + - csharp + name: Right(View) + nameWithType: Pos.Right(View) + fullName: Pos.Right(View) + type: Method + assemblies: + - Terminal.Gui + namespace: Terminal.Gui + summary: Returns a Pos object tracks the Right (X+Width) coordinate of the specified view. + syntax: + content: public static Terminal.Gui.Pos Right (Terminal.Gui.View view); + parameters: + - id: view + type: Terminal.Gui.View + description: The view that will be tracked. + return: + type: Terminal.Gui.Pos + description: The Position that depends on the other view. + overload: Terminal.Gui.Pos.Right* + exceptions: [] +- uid: Terminal.Gui.Pos.Top(Terminal.Gui.View) + id: Top(Terminal.Gui.View) + parent: Terminal.Gui.Pos + langs: + - csharp + name: Top(View) + nameWithType: Pos.Top(View) + fullName: Pos.Top(View) + type: Method + assemblies: + - Terminal.Gui + namespace: Terminal.Gui + summary: Returns a Pos object tracks the Top (Y) position of the specified view. + syntax: + content: public static Terminal.Gui.Pos Top (Terminal.Gui.View view); + parameters: + - id: view + type: Terminal.Gui.View + description: The view that will be tracked. + return: + type: Terminal.Gui.Pos + description: The Position that depends on the other view. + overload: Terminal.Gui.Pos.Top* + exceptions: [] +- uid: Terminal.Gui.Pos.X(Terminal.Gui.View) + id: X(Terminal.Gui.View) + parent: Terminal.Gui.Pos + langs: + - csharp + name: X(View) + nameWithType: Pos.X(View) + fullName: Pos.X(View) + type: Method + assemblies: + - Terminal.Gui + namespace: Terminal.Gui + summary: Returns a Pos object tracks the Left (X) position of the specified view. + syntax: + content: public static Terminal.Gui.Pos X (Terminal.Gui.View view); + parameters: + - id: view + type: Terminal.Gui.View + description: The view that will be tracked. + return: + type: Terminal.Gui.Pos + description: The Position that depends on the other view. + overload: Terminal.Gui.Pos.X* + exceptions: [] +- uid: Terminal.Gui.Pos.Y(Terminal.Gui.View) + id: Y(Terminal.Gui.View) + parent: Terminal.Gui.Pos + langs: + - csharp + name: Y(View) + nameWithType: Pos.Y(View) + fullName: Pos.Y(View) + type: Method + assemblies: + - Terminal.Gui + namespace: Terminal.Gui + summary: Returns a Pos object tracks the Top (Y) position of the specified view. + syntax: + content: public static Terminal.Gui.Pos Y (Terminal.Gui.View view); + parameters: + - id: view + type: Terminal.Gui.View + description: The view that will be tracked. + return: + type: Terminal.Gui.Pos + description: The Position that depends on the other view. + overload: Terminal.Gui.Pos.Y* + exceptions: [] references: - uid: System.Object parent: System @@ -231,12 +386,30 @@ references: name: Int32 nameWithType: Int32 fullName: System.Int32 +- uid: Terminal.Gui.Pos.Bottom(Terminal.Gui.View) + parent: Terminal.Gui.Pos + isExternal: false + name: Bottom(View) + nameWithType: Pos.Bottom(View) + fullName: Pos.Bottom(View) +- uid: Terminal.Gui.View + parent: Terminal.Gui + isExternal: false + name: View + nameWithType: View + fullName: Terminal.Gui.View - uid: Terminal.Gui.Pos.Center parent: Terminal.Gui.Pos isExternal: false name: Center() nameWithType: Pos.Center() fullName: Pos.Center() +- uid: Terminal.Gui.Pos.Left(Terminal.Gui.View) + parent: Terminal.Gui.Pos + isExternal: false + name: Left(View) + nameWithType: Pos.Left(View) + fullName: Pos.Left(View) - uid: Terminal.Gui.Pos.op_Addition(Terminal.Gui.Pos,Terminal.Gui.Pos) parent: Terminal.Gui.Pos isExternal: false @@ -267,6 +440,30 @@ references: name: Single nameWithType: Single fullName: System.Single +- uid: Terminal.Gui.Pos.Right(Terminal.Gui.View) + parent: Terminal.Gui.Pos + isExternal: false + name: Right(View) + nameWithType: Pos.Right(View) + fullName: Pos.Right(View) +- uid: Terminal.Gui.Pos.Top(Terminal.Gui.View) + parent: Terminal.Gui.Pos + isExternal: false + name: Top(View) + nameWithType: Pos.Top(View) + fullName: Pos.Top(View) +- uid: Terminal.Gui.Pos.X(Terminal.Gui.View) + parent: Terminal.Gui.Pos + isExternal: false + name: X(View) + nameWithType: Pos.X(View) + fullName: Pos.X(View) +- uid: Terminal.Gui.Pos.Y(Terminal.Gui.View) + parent: Terminal.Gui.Pos + isExternal: false + name: Y(View) + nameWithType: Pos.Y(View) + fullName: Pos.Y(View) - uid: Terminal.Gui.Pos.#ctor* parent: Terminal.Gui.Pos isExternal: false @@ -279,12 +476,24 @@ references: name: AnchorEnd nameWithType: Pos.AnchorEnd fullName: Pos.AnchorEnd +- uid: Terminal.Gui.Pos.Bottom* + parent: Terminal.Gui.Pos + isExternal: false + name: Bottom + nameWithType: Pos.Bottom + fullName: Pos.Bottom - uid: Terminal.Gui.Pos.Center* parent: Terminal.Gui.Pos isExternal: false name: Center nameWithType: Pos.Center fullName: Pos.Center +- uid: Terminal.Gui.Pos.Left* + parent: Terminal.Gui.Pos + isExternal: false + name: Left + nameWithType: Pos.Left + fullName: Pos.Left - uid: Terminal.Gui.Pos.op_Addition* parent: Terminal.Gui.Pos isExternal: false @@ -309,3 +518,27 @@ references: name: Percent nameWithType: Pos.Percent fullName: Pos.Percent +- uid: Terminal.Gui.Pos.Right* + parent: Terminal.Gui.Pos + isExternal: false + name: Right + nameWithType: Pos.Right + fullName: Pos.Right +- uid: Terminal.Gui.Pos.Top* + parent: Terminal.Gui.Pos + isExternal: false + name: Top + nameWithType: Pos.Top + fullName: Pos.Top +- uid: Terminal.Gui.Pos.X* + parent: Terminal.Gui.Pos + isExternal: false + name: X + nameWithType: Pos.X + fullName: Pos.X +- uid: Terminal.Gui.Pos.Y* + parent: Terminal.Gui.Pos + isExternal: false + name: Y + nameWithType: Pos.Y + fullName: Pos.Y diff --git a/docfx/articles/overview.md b/docfx/articles/overview.md index 43306ecb2..a1fbd711b 100644 --- a/docfx/articles/overview.md +++ b/docfx/articles/overview.md @@ -182,6 +182,7 @@ The `Pos` type on `X` and `Y` offers a few options: * Percentage of the parent's view size - `Pos.Percent(n)` * Anchored from the end of the dimension - `AnchorEnd(int margin=0)` * Centered, using `Center()` +* Reference the Left (X), Top (Y), Bottom, Right positions of another view The `Pos` values can be added or subtracted, like this: @@ -193,6 +194,9 @@ view.Y = Pos.Percent (20); anotherView.X = AnchorEnd (10); anotherView.Width = 9; + +myView.X = Pos.X (view); +myView.Y = Pos.Bottom (anotherView); ``` ### The `Dim` Type @@ -203,6 +207,7 @@ the following options: * Absolute size, by passing an integer * Percentage of the parent's view size - `Dim.Percent(n)` * Fill to the end - `Dim.Fill ()` +* Reference the Width or Height of another view Like, `Pos`, objects of type `Dim` can be added an subtracted, like this: @@ -213,6 +218,8 @@ Like, `Pos`, objects of type `Dim` can be added an subtracted, like this: view.Width = Dim.Fill () - 10; view.Height = Dim.Percent(20) - 1; + +anotherView.Height = Dim.Height (view)+1 ``` # TopLevels, Windows and Dialogs. diff --git a/docs/api/Terminal.Gui/Terminal.Gui.Dim.html b/docs/api/Terminal.Gui/Terminal.Gui.Dim.html index 3cc899fe1..7e5f7a1f1 100644 --- a/docs/api/Terminal.Gui/Terminal.Gui.Dim.html +++ b/docs/api/Terminal.Gui/Terminal.Gui.Dim.html @@ -156,6 +156,51 @@ + +

Height(View)

+

Returns a Dim object tracks the Height of the specified view.

+
+
+
Declaration
+
+
public static Terminal.Gui.Dim Height (Terminal.Gui.View view);
+
+
Parameters
+ + + + + + + + + + + + + + + +
TypeNameDescription
Viewview

The view that will be tracked.

+
+
Returns
+ + + + + + + + + + + + + +
TypeDescription
Dim

The dimension of the other view.

+
+ +

Percent(Single)

Creates a percentage Dim object

@@ -199,6 +244,51 @@ + + + +

Width(View)

+

Returns a Dim object tracks the Width of the specified view.

+
+
+
Declaration
+
+
public static Terminal.Gui.Dim Width (Terminal.Gui.View view);
+
+
Parameters
+ + + + + + + + + + + + + + + +
TypeNameDescription
Viewview

The view that will be tracked.

+
+
Returns
+ + + + + + + + + + + + + +
TypeDescription
Dim

The dimension of the other view.

+

Operators

diff --git a/docs/api/Terminal.Gui/Terminal.Gui.Pos.html b/docs/api/Terminal.Gui/Terminal.Gui.Pos.html index d8484cef0..388a906ef 100644 --- a/docs/api/Terminal.Gui/Terminal.Gui.Pos.html +++ b/docs/api/Terminal.Gui/Terminal.Gui.Pos.html @@ -99,6 +99,11 @@ integer value (via the implicit integer to Pos conversion), and they can be combined to produce more useful layouts, like: Pos.Center - 3, which would shift the postion of the view 3 characters to the left after centering for example. +

+

+ It is possible to reference coordinates of another view by using the methods + Left(View), Right(View), Bottom(View), Top(View). The X(View) and Y(View) are + aliases to Left(View) and Top(View) respectively.

Constructors

@@ -162,6 +167,51 @@ + +

Bottom(View)

+

Returns a Pos object tracks the Bottom (Y+Height) coordinate of the specified view.

+
+
+
Declaration
+
+
public static Terminal.Gui.Pos Bottom (Terminal.Gui.View view);
+
+
Parameters
+ + + + + + + + + + + + + + + +
TypeNameDescription
Viewview

The view that will be tracked.

+
+
Returns
+ + + + + + + + + + + + + +
TypeDescription
Pos

The Position that depends on the other view.

+
+ +

Center()

Returns a Pos object that can be used to center the views.

@@ -189,6 +239,51 @@ + +

Left(View)

+

Returns a Pos object tracks the Left (X) position of the specified view.

+
+
+
Declaration
+
+
public static Terminal.Gui.Pos Left (Terminal.Gui.View view);
+
+
Parameters
+ + + + + + + + + + + + + + + +
TypeNameDescription
Viewview

The view that will be tracked.

+
+
Returns
+ + + + + + + + + + + + + +
TypeDescription
Pos

The Position that depends on the other view.

+
+ +

Percent(Single)

Creates a percentage Pos object

@@ -232,6 +327,186 @@ + + + +

Right(View)

+

Returns a Pos object tracks the Right (X+Width) coordinate of the specified view.

+
+
+
Declaration
+
+
public static Terminal.Gui.Pos Right (Terminal.Gui.View view);
+
+
Parameters
+ + + + + + + + + + + + + + + +
TypeNameDescription
Viewview

The view that will be tracked.

+
+
Returns
+ + + + + + + + + + + + + +
TypeDescription
Pos

The Position that depends on the other view.

+
+ + + +

Top(View)

+

Returns a Pos object tracks the Top (Y) position of the specified view.

+
+
+
Declaration
+
+
public static Terminal.Gui.Pos Top (Terminal.Gui.View view);
+
+
Parameters
+ + + + + + + + + + + + + + + +
TypeNameDescription
Viewview

The view that will be tracked.

+
+
Returns
+ + + + + + + + + + + + + +
TypeDescription
Pos

The Position that depends on the other view.

+
+ + + +

X(View)

+

Returns a Pos object tracks the Left (X) position of the specified view.

+
+
+
Declaration
+
+
public static Terminal.Gui.Pos X (Terminal.Gui.View view);
+
+
Parameters
+ + + + + + + + + + + + + + + +
TypeNameDescription
Viewview

The view that will be tracked.

+
+
Returns
+ + + + + + + + + + + + + +
TypeDescription
Pos

The Position that depends on the other view.

+
+ + + +

Y(View)

+

Returns a Pos object tracks the Top (Y) position of the specified view.

+
+
+
Declaration
+
+
public static Terminal.Gui.Pos Y (Terminal.Gui.View view);
+
+
Parameters
+ + + + + + + + + + + + + + + +
TypeNameDescription
Viewview

The view that will be tracked.

+
+
Returns
+ + + + + + + + + + + + + +
TypeDescription
Pos

The Position that depends on the other view.

+

Operators

diff --git a/docs/articles/overview.html b/docs/articles/overview.html index 6689d8212..96dbc0f61 100644 --- a/docs/articles/overview.html +++ b/docs/articles/overview.html @@ -204,6 +204,7 @@ var label2 = new Label (new Rect (1, 2, 20, 1), "World")
  • Percentage of the parent's view size - Pos.Percent(n)
  • Anchored from the end of the dimension - AnchorEnd(int margin=0)
  • Centered, using Center()
  • +
  • Reference the Left (X), Top (Y), Bottom, Right positions of another view
  • The Pos values can be added or subtracted, like this:

    // Set the X coordinate to 10 characters left from the center
    @@ -213,6 +214,9 @@ view.Y = Pos.Percent (20);
     
     anotherView.X = AnchorEnd (10);
     anotherView.Width = 9;
    +
    +myView.X = Pos.X (view);
    +myView.Y = Pos.Bottom (anotherView);
     

    The Dim Type

    The Dim type is used for the Width and Height properties on the View and offers the following options:

    @@ -220,6 +224,7 @@ the following options:

  • Absolute size, by passing an integer
  • Percentage of the parent's view size - Dim.Percent(n)
  • Fill to the end - Dim.Fill ()
  • +
  • Reference the Width or Height of another view
  • Like, Pos, objects of type Dim can be added an subtracted, like this:

    // Set the Width to be 10 characters less than filling 
    @@ -227,6 +232,8 @@ the following options:

    view.Width = Dim.Fill () - 10; view.Height = Dim.Percent(20) - 1; + +anotherView.Height = Dim.Height (view)+1

    TopLevels, Windows and Dialogs.

    Among the many kinds of views, you typically will create a Toplevel view (or any of its subclasses, like Window or Dialog which is special kind of views diff --git a/docs/manifest.json b/docs/manifest.json index 9feb5308b..bffb33ff4 100644 --- a/docs/manifest.json +++ b/docs/manifest.json @@ -1 +1 @@ -{"homepages":[],"source_base_path":"/cvs/gui.cs/docfx","xrefmap":"xrefmap.yml","files":[{"type":"Conceptual","source_relative_path":"articles/overview.md","output":{".html":{"relative_path":"articles/overview.html","hash":"kE457uGBhffcM2FuLzUcig=="}},"is_incremental":false,"version":""},{"type":"Conceptual","source_relative_path":"articles/views.md","output":{".html":{"relative_path":"articles/views.html","hash":"OZ1QwvSGw2eTKn8/QiZ7JA=="}},"is_incremental":false,"version":""},{"type":"ManagedReference","source_relative_path":"api/Mono.Terminal.yml","output":{".html":{"relative_path":"api/Mono.Terminal.html","hash":"0y5WjjosS5xihjT3gYuMEg=="}},"is_incremental":false,"version":""},{"type":"ManagedReference","source_relative_path":"api/Terminal/Terminal.Attribute.yml","output":{".html":{"relative_path":"api/Terminal/Terminal.Attribute.html","hash":"3VQuiTvkwZuhrXRBU2slvA=="}},"is_incremental":false,"version":""},{"type":"ManagedReference","source_relative_path":"api/Terminal/Terminal.Dialog.yml","output":{".html":{"relative_path":"api/Terminal/Terminal.Dialog.html","hash":"2ylkGO6zSUi/FT45G2Kn5A=="}},"is_incremental":false,"version":""},{"type":"ManagedReference","source_relative_path":"api/Terminal/Terminal.MouseFlags.yml","output":{".html":{"relative_path":"api/Terminal/Terminal.MouseFlags.html","hash":"cDzZV9Fx1k/ddXExyYB8Fg=="}},"is_incremental":false,"version":""},{"type":"ManagedReference","source_relative_path":"api/Terminal/Terminal.TextAlignment.yml","output":{".html":{"relative_path":"api/Terminal/Terminal.TextAlignment.html","hash":"VCohI9t1lob2fztxD5ZXcQ=="}},"is_incremental":false,"version":""},{"type":"ManagedReference","source_relative_path":"api/Terminal.Gui/Terminal.Gui.Clipboard.yml","output":{".html":{"relative_path":"api/Terminal.Gui/Terminal.Gui.Clipboard.html","hash":"Fvt60OsJUoECXXoy9pfy+w=="}},"is_incremental":false,"version":""},{"type":"ManagedReference","source_relative_path":"api/Terminal.Gui/Terminal.Gui.Dim.yml","output":{".html":{"relative_path":"api/Terminal.Gui/Terminal.Gui.Dim.html","hash":"5GMV7PvBhVezaKwrp42uiA=="}},"is_incremental":false,"version":""},{"type":"ManagedReference","source_relative_path":"api/Terminal.Gui/Terminal.Gui.MenuBar.yml","output":{".html":{"relative_path":"api/Terminal.Gui/Terminal.Gui.MenuBar.html","hash":"VKWHTFVY6rYU5LAcg1ibfg=="}},"is_incremental":false,"version":""},{"type":"ManagedReference","source_relative_path":"api/Terminal/Terminal.Colors.yml","output":{".html":{"relative_path":"api/Terminal/Terminal.Colors.html","hash":"jVPODiXx92oOFHZgYp3TbA=="}},"is_incremental":false,"version":""},{"type":"ManagedReference","source_relative_path":"api/Terminal/Terminal.MessageBox.yml","output":{".html":{"relative_path":"api/Terminal/Terminal.MessageBox.html","hash":"Wn6KkyjE8pNYfKOXzZV0Iw=="}},"is_incremental":false,"version":""},{"type":"ManagedReference","source_relative_path":"api/Terminal/Terminal.Size.yml","output":{".html":{"relative_path":"api/Terminal/Terminal.Size.html","hash":"uQO7B2czEXvwl283AWce/Q=="}},"is_incremental":false,"version":""},{"type":"ManagedReference","source_relative_path":"api/Terminal.Gui/Terminal.Gui.Application.yml","output":{".html":{"relative_path":"api/Terminal.Gui/Terminal.Gui.Application.html","hash":"SI5UkP+RUkT2Khaw4xmfmg=="}},"is_incremental":false,"version":""},{"type":"ManagedReference","source_relative_path":"api/Terminal.Gui/Terminal.Gui.Button.yml","output":{".html":{"relative_path":"api/Terminal.Gui/Terminal.Gui.Button.html","hash":"39wBFZpnqrJBQIEKnDzDhQ=="}},"is_incremental":false,"version":""},{"type":"ManagedReference","source_relative_path":"api/Terminal.Gui/Terminal.Gui.ConsoleDriver.yml","output":{".html":{"relative_path":"api/Terminal.Gui/Terminal.Gui.ConsoleDriver.html","hash":"tw2X/U/EukiClPKr2Xi9qQ=="}},"is_incremental":false,"version":""},{"type":"ManagedReference","source_relative_path":"api/Terminal.Gui/Terminal.Gui.Label.yml","output":{".html":{"relative_path":"api/Terminal.Gui/Terminal.Gui.Label.html","hash":"ZTqvud6r3nStu+ft89My5g=="}},"is_incremental":false,"version":""},{"type":"ManagedReference","source_relative_path":"api/Terminal.Gui/Terminal.Gui.TextAlignment.yml","output":{".html":{"relative_path":"api/Terminal.Gui/Terminal.Gui.TextAlignment.html","hash":"0WRZZIAjiDvLCkr+/Zr44Q=="}},"is_incremental":false,"version":""},{"type":"ManagedReference","source_relative_path":"api/Terminal.Gui/Terminal.Gui.TextField.yml","output":{".html":{"relative_path":"api/Terminal.Gui/Terminal.Gui.TextField.html","hash":"lu9rcPUMYo2y6x9ZGGTZfQ=="}},"is_incremental":false,"version":""},{"type":"ManagedReference","source_relative_path":"api/Terminal/Terminal.Color.yml","output":{".html":{"relative_path":"api/Terminal/Terminal.Color.html","hash":"85hkUEzd69fFj5+qNKiT1g=="}},"is_incremental":false,"version":""},{"type":"ManagedReference","source_relative_path":"api/Terminal.Gui/Terminal.Gui.SpecialChar.yml","output":{".html":{"relative_path":"api/Terminal.Gui/Terminal.Gui.SpecialChar.html","hash":"i1mFE0BbShjxPO1/uorOKQ=="}},"is_incremental":false,"version":""},{"type":"ManagedReference","source_relative_path":"api/Terminal/Terminal.KeyEvent.yml","output":{".html":{"relative_path":"api/Terminal/Terminal.KeyEvent.html","hash":"H50MHJqCV7rQBETqFufJiw=="}},"is_incremental":false,"version":""},{"type":"ManagedReference","source_relative_path":"api/Terminal/Terminal.Rect.yml","output":{".html":{"relative_path":"api/Terminal/Terminal.Rect.html","hash":"anP+C2o7gvnZXLG5vbMg9A=="}},"is_incremental":false,"version":""},{"type":"ManagedReference","source_relative_path":"api/Terminal/Terminal.Toplevel.yml","output":{".html":{"relative_path":"api/Terminal/Terminal.Toplevel.html","hash":"ZaZkpR6gBBPF5MiM0whB4g=="}},"is_incremental":false,"version":""},{"type":"ManagedReference","source_relative_path":"api/Terminal.Gui/Terminal.Gui.Color.yml","output":{".html":{"relative_path":"api/Terminal.Gui/Terminal.Gui.Color.html","hash":"lDjWo7u8AtVHR4wSVrYp9A=="}},"is_incremental":false,"version":""},{"type":"ManagedReference","source_relative_path":"api/Terminal.Gui/Terminal.Gui.IListDataSource.yml","output":{".html":{"relative_path":"api/Terminal.Gui/Terminal.Gui.IListDataSource.html","hash":"Xfn/6Vl1b8NMvPm84nHBxA=="}},"is_incremental":false,"version":""},{"type":"ManagedReference","source_relative_path":"api/Terminal.Gui/Terminal.Gui.MenuItem.yml","output":{".html":{"relative_path":"api/Terminal.Gui/Terminal.Gui.MenuItem.html","hash":"Cthf6EnfKoA8nN3uPnmqig=="}},"is_incremental":false,"version":""},{"type":"ManagedReference","source_relative_path":"api/Terminal.Gui/Terminal.Gui.ScrollBarView.yml","output":{".html":{"relative_path":"api/Terminal.Gui/Terminal.Gui.ScrollBarView.html","hash":"NORLt3ZAMWoijBoHYO8WWQ=="}},"is_incremental":false,"version":""},{"type":"ManagedReference","source_relative_path":"api/Terminal.Gui/Terminal.Gui.MouseEvent.yml","output":{".html":{"relative_path":"api/Terminal.Gui/Terminal.Gui.MouseEvent.html","hash":"TtIW0+KNQ+DxrIyYnGpJyQ=="}},"is_incremental":false,"version":""},{"type":"ManagedReference","source_relative_path":"api/Terminal/Terminal.Application.RunState.yml","output":{".html":{"relative_path":"api/Terminal/Terminal.Application.RunState.html","hash":"Wr45dWdROck+mzcRWU+Xhw=="}},"is_incremental":false,"version":""},{"type":"ManagedReference","source_relative_path":"api/Terminal/Terminal.ColorScheme.yml","output":{".html":{"relative_path":"api/Terminal/Terminal.ColorScheme.html","hash":"jLksqjNAv5NP/Lzs+w0orA=="}},"is_incremental":false,"version":""},{"type":"ManagedReference","source_relative_path":"api/Terminal/Terminal.MenuBar.yml","output":{".html":{"relative_path":"api/Terminal/Terminal.MenuBar.html","hash":"BYq8R+tNwkE1cm0tao3JNw=="}},"is_incremental":false,"version":""},{"type":"ManagedReference","source_relative_path":"api/Terminal/Terminal.Point.yml","output":{".html":{"relative_path":"api/Terminal/Terminal.Point.html","hash":"yOdvSmSegO4HtL9S0NXmAw=="}},"is_incremental":false,"version":""},{"type":"ManagedReference","source_relative_path":"api/Terminal/Terminal.View.yml","output":{".html":{"relative_path":"api/Terminal/Terminal.View.html","hash":"M01c4HbOagtD5MYiEutIeA=="}},"is_incremental":false,"version":""},{"type":"ManagedReference","source_relative_path":"api/Terminal.Gui/Terminal.Gui.FrameView.yml","output":{".html":{"relative_path":"api/Terminal.Gui/Terminal.Gui.FrameView.html","hash":"7ggzdKG7rlp7hHNktYkkkQ=="}},"is_incremental":false,"version":""},{"type":"ManagedReference","source_relative_path":"api/Terminal.Gui/Terminal.Gui.Toplevel.yml","output":{".html":{"relative_path":"api/Terminal.Gui/Terminal.Gui.Toplevel.html","hash":"beTbOMlgVJIAt8ZNVBJUSQ=="}},"is_incremental":false,"version":""},{"type":"ManagedReference","source_relative_path":"api/Terminal.yml","output":{".html":{"relative_path":"api/Terminal.html","hash":"tFVRBtIAuwnTBjsSB3aeCw=="}},"is_incremental":false,"version":""},{"type":"ManagedReference","source_relative_path":"api/Terminal/Terminal.CursesDriver.yml","output":{".html":{"relative_path":"api/Terminal/Terminal.CursesDriver.html","hash":"kqLZ+gut4HqwdfZMrBSwvQ=="}},"is_incremental":false,"version":""},{"type":"ManagedReference","source_relative_path":"api/Terminal/Terminal.MenuItem.yml","output":{".html":{"relative_path":"api/Terminal/Terminal.MenuItem.html","hash":"04liHi2Olqjby/8vkUCYZw=="}},"is_incremental":false,"version":""},{"type":"ManagedReference","source_relative_path":"api/Terminal/Terminal.ScrollView.yml","output":{".html":{"relative_path":"api/Terminal/Terminal.ScrollView.html","hash":"ZRd9UaOkENOXRtYPGmSJqg=="}},"is_incremental":false,"version":""},{"type":"ManagedReference","source_relative_path":"api/Terminal/Terminal.TextField.yml","output":{".html":{"relative_path":"api/Terminal/Terminal.TextField.html","hash":"PG21wfF6w3WeOn5/F4r0Og=="}},"is_incremental":false,"version":""},{"type":"ManagedReference","source_relative_path":"api/Terminal.Gui/Terminal.Gui.Dialog.yml","output":{".html":{"relative_path":"api/Terminal.Gui/Terminal.Gui.Dialog.html","hash":"b46f8Cq+oTLbNGXHhHOXxQ=="}},"is_incremental":false,"version":""},{"type":"ManagedReference","source_relative_path":"api/Terminal.Gui/Terminal.Gui.LayoutStyle.yml","output":{".html":{"relative_path":"api/Terminal.Gui/Terminal.Gui.LayoutStyle.html","hash":"O2x5wBsNAd2kSLC/OwBPhA=="}},"is_incremental":false,"version":""},{"type":"ManagedReference","source_relative_path":"api/Terminal.Gui/Terminal.Gui.ProgressBar.yml","output":{".html":{"relative_path":"api/Terminal.Gui/Terminal.Gui.ProgressBar.html","hash":"lLQmoXv0C7ivnBuR6TVeMA=="}},"is_incremental":false,"version":""},{"type":"ManagedReference","source_relative_path":"api/Terminal.Gui/Terminal.Gui.Size.yml","output":{".html":{"relative_path":"api/Terminal.Gui/Terminal.Gui.Size.html","hash":"qfcO9/VhcMA9NALvZ/77gA=="}},"is_incremental":false,"version":""},{"type":"ManagedReference","source_relative_path":"api/Mono.Terminal/Mono.Terminal.MainLoop.yml","output":{".html":{"relative_path":"api/Mono.Terminal/Mono.Terminal.MainLoop.html","hash":"ESk8tQCQD0Vz8iMJwxEO/g=="}},"is_incremental":false,"version":""},{"type":"ManagedReference","source_relative_path":"api/Terminal/Terminal.CheckBox.yml","output":{".html":{"relative_path":"api/Terminal/Terminal.CheckBox.html","hash":"bNlFx/QhKQXyWQEyiuvMqQ=="}},"is_incremental":false,"version":""},{"type":"ManagedReference","source_relative_path":"api/Terminal/Terminal.Key.yml","output":{".html":{"relative_path":"api/Terminal/Terminal.Key.html","hash":"sGONwq1ubcfwvIMQPLx8OA=="}},"is_incremental":false,"version":""},{"type":"ManagedReference","source_relative_path":"api/Terminal/Terminal.MouseEvent.yml","output":{".html":{"relative_path":"api/Terminal/Terminal.MouseEvent.html","hash":"tWBrDmGanq6Qsj86XzS8PA=="}},"is_incremental":false,"version":""},{"type":"ManagedReference","source_relative_path":"api/Terminal/Terminal.SpecialChar.yml","output":{".html":{"relative_path":"api/Terminal/Terminal.SpecialChar.html","hash":"oyaYen6dExP+Yje8h+D1yQ=="}},"is_incremental":false,"version":""},{"type":"ManagedReference","source_relative_path":"api/Terminal.Gui/Terminal.Gui.CheckBox.yml","output":{".html":{"relative_path":"api/Terminal.Gui/Terminal.Gui.CheckBox.html","hash":"X+a60f86tmQdi42sejKSig=="}},"is_incremental":false,"version":""},{"type":"ManagedReference","source_relative_path":"api/Terminal.Gui/Terminal.Gui.MenuBarItem.yml","output":{".html":{"relative_path":"api/Terminal.Gui/Terminal.Gui.MenuBarItem.html","hash":"rTwo4kYP1ag7+t0B8vtA9A=="}},"is_incremental":false,"version":""},{"type":"ManagedReference","source_relative_path":"api/Terminal.Gui/Terminal.Gui.SaveDialog.yml","output":{".html":{"relative_path":"api/Terminal.Gui/Terminal.Gui.SaveDialog.html","hash":"nR7oNKkWEFQJgXwgqltYaA=="}},"is_incremental":false,"version":""},{"type":"ManagedReference","source_relative_path":"api/Terminal.Gui/Terminal.Gui.TextView.yml","output":{".html":{"relative_path":"api/Terminal.Gui/Terminal.Gui.TextView.html","hash":"n68Ab8fTny5dQBj3YWZFZA=="}},"is_incremental":false,"version":""},{"type":"ManagedReference","source_relative_path":"api/Terminal.Gui/Terminal.Gui.ScrollView.yml","output":{".html":{"relative_path":"api/Terminal.Gui/Terminal.Gui.ScrollView.html","hash":"5VwAIriBb0f3ogsPX+kSrg=="}},"is_incremental":false,"version":""},{"type":"ManagedReference","source_relative_path":"api/Terminal/Terminal.Application.yml","output":{".html":{"relative_path":"api/Terminal/Terminal.Application.html","hash":"wmqIY3h9ul8VxGLlZ3Nbvw=="}},"is_incremental":false,"version":""},{"type":"ManagedReference","source_relative_path":"api/Terminal/Terminal.ConsoleDriver.yml","output":{".html":{"relative_path":"api/Terminal/Terminal.ConsoleDriver.html","hash":"zYFZ8UpIDDapoy6co0/5Kw=="}},"is_incremental":false,"version":""},{"type":"ManagedReference","source_relative_path":"api/Terminal/Terminal.MenuBarItem.yml","output":{".html":{"relative_path":"api/Terminal/Terminal.MenuBarItem.html","hash":"MLpuOjtsqxDsyuaLJfU28Q=="}},"is_incremental":false,"version":""},{"type":"ManagedReference","source_relative_path":"api/Terminal/Terminal.Responder.yml","output":{".html":{"relative_path":"api/Terminal/Terminal.Responder.html","hash":"DJWHT+iWnN2wV1qbzFu1pw=="}},"is_incremental":false,"version":""},{"type":"ManagedReference","source_relative_path":"api/Terminal.Gui/Terminal.Gui.Application.RunState.yml","output":{".html":{"relative_path":"api/Terminal.Gui/Terminal.Gui.Application.RunState.html","hash":"e7izbnu+VMI54O2ffYPSBw=="}},"is_incremental":false,"version":""},{"type":"ManagedReference","source_relative_path":"api/Terminal.Gui/Terminal.Gui.Attribute.yml","output":{".html":{"relative_path":"api/Terminal.Gui/Terminal.Gui.Attribute.html","hash":"I8naOo433NoB2u5w/nPbMA=="}},"is_incremental":false,"version":""},{"type":"ManagedReference","source_relative_path":"api/Terminal.Gui/Terminal.Gui.ColorScheme.yml","output":{".html":{"relative_path":"api/Terminal.Gui/Terminal.Gui.ColorScheme.html","hash":"1ClzHoep8DR+75SAfZjD4Q=="}},"is_incremental":false,"version":""},{"type":"ManagedReference","source_relative_path":"api/Terminal.Gui/Terminal.Gui.Key.yml","output":{".html":{"relative_path":"api/Terminal.Gui/Terminal.Gui.Key.html","hash":"2tsQD4qIAriuovLyT3ZhpQ=="}},"is_incremental":false,"version":""},{"type":"ManagedReference","source_relative_path":"api/Terminal.Gui/Terminal.Gui.MessageBox.yml","output":{".html":{"relative_path":"api/Terminal.Gui/Terminal.Gui.MessageBox.html","hash":"hjXjQ95RII82TEJ9tZI2/Q=="}},"is_incremental":false,"version":""},{"type":"ManagedReference","source_relative_path":"api/Terminal.Gui/Terminal.Gui.Point.yml","output":{".html":{"relative_path":"api/Terminal.Gui/Terminal.Gui.Point.html","hash":"0wTvcjfDG3By7XHJve5K0g=="}},"is_incremental":false,"version":""},{"type":"ManagedReference","source_relative_path":"api/Terminal.Gui/Terminal.Gui.Pos.yml","output":{".html":{"relative_path":"api/Terminal.Gui/Terminal.Gui.Pos.html","hash":"PdXMNqVzYwBR+JAan8RUeQ=="}},"is_incremental":false,"version":""},{"type":"ManagedReference","source_relative_path":"api/Terminal.Gui.yml","output":{".html":{"relative_path":"api/Terminal.Gui.html","hash":"P0XJ4BpQWlUHpQbTogtg/g=="}},"is_incremental":false,"version":""},{"type":"ManagedReference","source_relative_path":"api/Terminal/Terminal.Button.yml","output":{".html":{"relative_path":"api/Terminal/Terminal.Button.html","hash":"VESOJmXXJ9prNN5hKxfcNw=="}},"is_incremental":false,"version":""},{"type":"ManagedReference","source_relative_path":"api/Terminal/Terminal.Label.yml","output":{".html":{"relative_path":"api/Terminal/Terminal.Label.html","hash":"tJNRVOYJfQqH8GIQdA9+OQ=="}},"is_incremental":false,"version":""},{"type":"ManagedReference","source_relative_path":"api/Terminal/Terminal.RadioGroup.yml","output":{".html":{"relative_path":"api/Terminal/Terminal.RadioGroup.html","hash":"zwoFctZNjvwMklMZpPs1EQ=="}},"is_incremental":false,"version":""},{"type":"ManagedReference","source_relative_path":"api/Terminal/Terminal.Window.yml","output":{".html":{"relative_path":"api/Terminal/Terminal.Window.html","hash":"ItBexMcHWDaV1yCleTabOw=="}},"is_incremental":false,"version":""},{"type":"ManagedReference","source_relative_path":"api/Terminal.Gui/Terminal.Gui.Rect.yml","output":{".html":{"relative_path":"api/Terminal.Gui/Terminal.Gui.Rect.html","hash":"UbrMVw16YFF223fCoch2Xg=="}},"is_incremental":false,"version":""},{"type":"ManagedReference","source_relative_path":"api/Terminal.Gui/Terminal.Gui.Responder.yml","output":{".html":{"relative_path":"api/Terminal.Gui/Terminal.Gui.Responder.html","hash":"haoSRJIv3U6l3xnz/+bN9g=="}},"is_incremental":false,"version":""},{"type":"ManagedReference","source_relative_path":"api/Mono.Terminal/Mono.Terminal.MainLoop.Condition.yml","output":{".html":{"relative_path":"api/Mono.Terminal/Mono.Terminal.MainLoop.Condition.html","hash":"7UhnDvlJfJ7tMAIEGi3BHQ=="}},"is_incremental":false,"version":""},{"type":"ManagedReference","source_relative_path":"api/Terminal.Gui/Terminal.Gui.FileDialog.yml","output":{".html":{"relative_path":"api/Terminal.Gui/Terminal.Gui.FileDialog.html","hash":"HvTIv13xiz6ueYqGfBq5jg=="}},"is_incremental":false,"version":""},{"type":"ManagedReference","source_relative_path":"api/Terminal.Gui/Terminal.Gui.ListView.yml","output":{".html":{"relative_path":"api/Terminal.Gui/Terminal.Gui.ListView.html","hash":"BuBkWrO4UeUy20HDRxM4Tg=="}},"is_incremental":false,"version":""},{"type":"ManagedReference","source_relative_path":"api/Terminal.Gui/Terminal.Gui.RadioGroup.yml","output":{".html":{"relative_path":"api/Terminal.Gui/Terminal.Gui.RadioGroup.html","hash":"qcFfu8vpVZnwPqoeuIWYmg=="}},"is_incremental":false,"version":""},{"type":"ManagedReference","source_relative_path":"api/Terminal.Gui/Terminal.Gui.Colors.yml","output":{".html":{"relative_path":"api/Terminal.Gui/Terminal.Gui.Colors.html","hash":"9fZOKjYk4B6QSQwNg1OuQg=="}},"is_incremental":false,"version":""},{"type":"ManagedReference","source_relative_path":"api/Terminal.Gui/Terminal.Gui.KeyEvent.yml","output":{".html":{"relative_path":"api/Terminal.Gui/Terminal.Gui.KeyEvent.html","hash":"RFZsF2/17jsdv/neuaJ0tg=="}},"is_incremental":false,"version":""},{"type":"ManagedReference","source_relative_path":"api/Terminal.Gui/Terminal.Gui.MouseFlags.yml","output":{".html":{"relative_path":"api/Terminal.Gui/Terminal.Gui.MouseFlags.html","hash":"NRuoTlDQ42lWQzMeiemAyQ=="}},"is_incremental":false,"version":""},{"type":"ManagedReference","source_relative_path":"api/Terminal.Gui/Terminal.Gui.OpenDialog.yml","output":{".html":{"relative_path":"api/Terminal.Gui/Terminal.Gui.OpenDialog.html","hash":"IScEXrw7xfaJ+oueFaNt2Q=="}},"is_incremental":false,"version":""},{"type":"ManagedReference","source_relative_path":"api/Terminal.Gui/Terminal.Gui.View.yml","output":{".html":{"relative_path":"api/Terminal.Gui/Terminal.Gui.View.html","hash":"Qz0LuM8tkkT7Y2pxFqYy3g=="}},"is_incremental":false,"version":""},{"type":"ManagedReference","source_relative_path":"api/Terminal.Gui/Terminal.Gui.Window.yml","output":{".html":{"relative_path":"api/Terminal.Gui/Terminal.Gui.Window.html","hash":"Hfoy0NuXKuWEDSbe44dcFA=="}},"is_incremental":false,"version":""},{"type":"Toc","source_relative_path":"api/toc.yml","output":{".html":{"relative_path":"api/toc.html","hash":"ejcl5EthEeFEtZr0E83cDQ=="}},"is_incremental":false,"version":""}],"version_info":{}} \ No newline at end of file +{"homepages":[],"source_base_path":"/cvs/gui.cs/docfx","xrefmap":"xrefmap.yml","files":[{"type":"Toc","source_relative_path":"api/toc.yml","output":{".html":{"relative_path":"api/toc.html","hash":"ejcl5EthEeFEtZr0E83cDQ=="}},"is_incremental":false,"version":""},{"type":"Conceptual","source_relative_path":"articles/overview.md","output":{".html":{"relative_path":"articles/overview.html","hash":"QBrhsS8zbmxN9zbVkYKGHQ=="}},"is_incremental":false,"version":""},{"type":"Conceptual","source_relative_path":"articles/views.md","output":{".html":{"relative_path":"articles/views.html","hash":"OZ1QwvSGw2eTKn8/QiZ7JA=="}},"is_incremental":false,"version":""},{"type":"ManagedReference","source_relative_path":"api/Mono.Terminal/Mono.Terminal.MainLoop.Condition.yml","output":{".html":{"relative_path":"api/Mono.Terminal/Mono.Terminal.MainLoop.Condition.html","hash":"7UhnDvlJfJ7tMAIEGi3BHQ=="}},"is_incremental":false,"version":""},{"type":"ManagedReference","source_relative_path":"api/Terminal/Terminal.ConsoleDriver.yml","output":{".html":{"relative_path":"api/Terminal/Terminal.ConsoleDriver.html","hash":"zYFZ8UpIDDapoy6co0/5Kw=="}},"is_incremental":false,"version":""},{"type":"ManagedReference","source_relative_path":"api/Terminal/Terminal.MenuItem.yml","output":{".html":{"relative_path":"api/Terminal/Terminal.MenuItem.html","hash":"04liHi2Olqjby/8vkUCYZw=="}},"is_incremental":false,"version":""},{"type":"ManagedReference","source_relative_path":"api/Terminal/Terminal.Size.yml","output":{".html":{"relative_path":"api/Terminal/Terminal.Size.html","hash":"uQO7B2czEXvwl283AWce/Q=="}},"is_incremental":false,"version":""},{"type":"ManagedReference","source_relative_path":"api/Terminal/Terminal.Window.yml","output":{".html":{"relative_path":"api/Terminal/Terminal.Window.html","hash":"ItBexMcHWDaV1yCleTabOw=="}},"is_incremental":false,"version":""},{"type":"ManagedReference","source_relative_path":"api/Terminal.Gui/Terminal.Gui.Dim.yml","output":{".html":{"relative_path":"api/Terminal.Gui/Terminal.Gui.Dim.html","hash":"ptmvYvuZtUqCixq3toUk+A=="}},"is_incremental":false,"version":""},{"type":"ManagedReference","source_relative_path":"api/Terminal.Gui/Terminal.Gui.ListView.yml","output":{".html":{"relative_path":"api/Terminal.Gui/Terminal.Gui.ListView.html","hash":"BuBkWrO4UeUy20HDRxM4Tg=="}},"is_incremental":false,"version":""},{"type":"ManagedReference","source_relative_path":"api/Terminal/Terminal.ScrollView.yml","output":{".html":{"relative_path":"api/Terminal/Terminal.ScrollView.html","hash":"ZRd9UaOkENOXRtYPGmSJqg=="}},"is_incremental":false,"version":""},{"type":"ManagedReference","source_relative_path":"api/Terminal.Gui/Terminal.Gui.Application.yml","output":{".html":{"relative_path":"api/Terminal.Gui/Terminal.Gui.Application.html","hash":"SI5UkP+RUkT2Khaw4xmfmg=="}},"is_incremental":false,"version":""},{"type":"ManagedReference","source_relative_path":"api/Terminal.Gui/Terminal.Gui.Color.yml","output":{".html":{"relative_path":"api/Terminal.Gui/Terminal.Gui.Color.html","hash":"lDjWo7u8AtVHR4wSVrYp9A=="}},"is_incremental":false,"version":""},{"type":"ManagedReference","source_relative_path":"api/Terminal.Gui/Terminal.Gui.Key.yml","output":{".html":{"relative_path":"api/Terminal.Gui/Terminal.Gui.Key.html","hash":"2tsQD4qIAriuovLyT3ZhpQ=="}},"is_incremental":false,"version":""},{"type":"ManagedReference","source_relative_path":"api/Terminal.Gui/Terminal.Gui.MouseEvent.yml","output":{".html":{"relative_path":"api/Terminal.Gui/Terminal.Gui.MouseEvent.html","hash":"TtIW0+KNQ+DxrIyYnGpJyQ=="}},"is_incremental":false,"version":""},{"type":"ManagedReference","source_relative_path":"api/Terminal.Gui/Terminal.Gui.ScrollBarView.yml","output":{".html":{"relative_path":"api/Terminal.Gui/Terminal.Gui.ScrollBarView.html","hash":"NORLt3ZAMWoijBoHYO8WWQ=="}},"is_incremental":false,"version":""},{"type":"ManagedReference","source_relative_path":"api/Terminal.Gui/Terminal.Gui.ScrollView.yml","output":{".html":{"relative_path":"api/Terminal.Gui/Terminal.Gui.ScrollView.html","hash":"5VwAIriBb0f3ogsPX+kSrg=="}},"is_incremental":false,"version":""},{"type":"ManagedReference","source_relative_path":"api/Mono.Terminal.yml","output":{".html":{"relative_path":"api/Mono.Terminal.html","hash":"0y5WjjosS5xihjT3gYuMEg=="}},"is_incremental":false,"version":""},{"type":"ManagedReference","source_relative_path":"api/Terminal/Terminal.Colors.yml","output":{".html":{"relative_path":"api/Terminal/Terminal.Colors.html","hash":"jVPODiXx92oOFHZgYp3TbA=="}},"is_incremental":false,"version":""},{"type":"ManagedReference","source_relative_path":"api/Terminal/Terminal.KeyEvent.yml","output":{".html":{"relative_path":"api/Terminal/Terminal.KeyEvent.html","hash":"H50MHJqCV7rQBETqFufJiw=="}},"is_incremental":false,"version":""},{"type":"ManagedReference","source_relative_path":"api/Terminal/Terminal.Rect.yml","output":{".html":{"relative_path":"api/Terminal/Terminal.Rect.html","hash":"anP+C2o7gvnZXLG5vbMg9A=="}},"is_incremental":false,"version":""},{"type":"ManagedReference","source_relative_path":"api/Terminal/Terminal.TextField.yml","output":{".html":{"relative_path":"api/Terminal/Terminal.TextField.html","hash":"PG21wfF6w3WeOn5/F4r0Og=="}},"is_incremental":false,"version":""},{"type":"ManagedReference","source_relative_path":"api/Terminal.Gui/Terminal.Gui.CheckBox.yml","output":{".html":{"relative_path":"api/Terminal.Gui/Terminal.Gui.CheckBox.html","hash":"X+a60f86tmQdi42sejKSig=="}},"is_incremental":false,"version":""},{"type":"ManagedReference","source_relative_path":"api/Terminal.Gui/Terminal.Gui.MessageBox.yml","output":{".html":{"relative_path":"api/Terminal.Gui/Terminal.Gui.MessageBox.html","hash":"hjXjQ95RII82TEJ9tZI2/Q=="}},"is_incremental":false,"version":""},{"type":"ManagedReference","source_relative_path":"api/Terminal.Gui/Terminal.Gui.MenuBarItem.yml","output":{".html":{"relative_path":"api/Terminal.Gui/Terminal.Gui.MenuBarItem.html","hash":"rTwo4kYP1ag7+t0B8vtA9A=="}},"is_incremental":false,"version":""},{"type":"ManagedReference","source_relative_path":"api/Terminal.Gui/Terminal.Gui.MenuItem.yml","output":{".html":{"relative_path":"api/Terminal.Gui/Terminal.Gui.MenuItem.html","hash":"Cthf6EnfKoA8nN3uPnmqig=="}},"is_incremental":false,"version":""},{"type":"ManagedReference","source_relative_path":"api/Terminal.Gui/Terminal.Gui.View.yml","output":{".html":{"relative_path":"api/Terminal.Gui/Terminal.Gui.View.html","hash":"Qz0LuM8tkkT7Y2pxFqYy3g=="}},"is_incremental":false,"version":""},{"type":"ManagedReference","source_relative_path":"api/Terminal.Gui/Terminal.Gui.Window.yml","output":{".html":{"relative_path":"api/Terminal.Gui/Terminal.Gui.Window.html","hash":"Hfoy0NuXKuWEDSbe44dcFA=="}},"is_incremental":false,"version":""},{"type":"ManagedReference","source_relative_path":"api/Mono.Terminal/Mono.Terminal.MainLoop.yml","output":{".html":{"relative_path":"api/Mono.Terminal/Mono.Terminal.MainLoop.html","hash":"ESk8tQCQD0Vz8iMJwxEO/g=="}},"is_incremental":false,"version":""},{"type":"ManagedReference","source_relative_path":"api/Terminal/Terminal.CursesDriver.yml","output":{".html":{"relative_path":"api/Terminal/Terminal.CursesDriver.html","hash":"kqLZ+gut4HqwdfZMrBSwvQ=="}},"is_incremental":false,"version":""},{"type":"ManagedReference","source_relative_path":"api/Terminal/Terminal.MessageBox.yml","output":{".html":{"relative_path":"api/Terminal/Terminal.MessageBox.html","hash":"Wn6KkyjE8pNYfKOXzZV0Iw=="}},"is_incremental":false,"version":""},{"type":"ManagedReference","source_relative_path":"api/Terminal.Gui/Terminal.Gui.ProgressBar.yml","output":{".html":{"relative_path":"api/Terminal.Gui/Terminal.Gui.ProgressBar.html","hash":"lLQmoXv0C7ivnBuR6TVeMA=="}},"is_incremental":false,"version":""},{"type":"ManagedReference","source_relative_path":"api/Terminal.Gui/Terminal.Gui.TextView.yml","output":{".html":{"relative_path":"api/Terminal.Gui/Terminal.Gui.TextView.html","hash":"n68Ab8fTny5dQBj3YWZFZA=="}},"is_incremental":false,"version":""},{"type":"ManagedReference","source_relative_path":"api/Terminal.Gui/Terminal.Gui.Toplevel.yml","output":{".html":{"relative_path":"api/Terminal.Gui/Terminal.Gui.Toplevel.html","hash":"beTbOMlgVJIAt8ZNVBJUSQ=="}},"is_incremental":false,"version":""},{"type":"ManagedReference","source_relative_path":"api/Terminal.Gui.yml","output":{".html":{"relative_path":"api/Terminal.Gui.html","hash":"P0XJ4BpQWlUHpQbTogtg/g=="}},"is_incremental":false,"version":""},{"type":"ManagedReference","source_relative_path":"api/Terminal/Terminal.CheckBox.yml","output":{".html":{"relative_path":"api/Terminal/Terminal.CheckBox.html","hash":"bNlFx/QhKQXyWQEyiuvMqQ=="}},"is_incremental":false,"version":""},{"type":"ManagedReference","source_relative_path":"api/Terminal/Terminal.MenuBarItem.yml","output":{".html":{"relative_path":"api/Terminal/Terminal.MenuBarItem.html","hash":"MLpuOjtsqxDsyuaLJfU28Q=="}},"is_incremental":false,"version":""},{"type":"ManagedReference","source_relative_path":"api/Terminal/Terminal.Responder.yml","output":{".html":{"relative_path":"api/Terminal/Terminal.Responder.html","hash":"DJWHT+iWnN2wV1qbzFu1pw=="}},"is_incremental":false,"version":""},{"type":"ManagedReference","source_relative_path":"api/Terminal/Terminal.Toplevel.yml","output":{".html":{"relative_path":"api/Terminal/Terminal.Toplevel.html","hash":"ZaZkpR6gBBPF5MiM0whB4g=="}},"is_incremental":false,"version":""},{"type":"ManagedReference","source_relative_path":"api/Terminal.Gui/Terminal.Gui.ConsoleDriver.yml","output":{".html":{"relative_path":"api/Terminal.Gui/Terminal.Gui.ConsoleDriver.html","hash":"tw2X/U/EukiClPKr2Xi9qQ=="}},"is_incremental":false,"version":""},{"type":"ManagedReference","source_relative_path":"api/Terminal.Gui/Terminal.Gui.Label.yml","output":{".html":{"relative_path":"api/Terminal.Gui/Terminal.Gui.Label.html","hash":"ZTqvud6r3nStu+ft89My5g=="}},"is_incremental":false,"version":""},{"type":"ManagedReference","source_relative_path":"api/Terminal.Gui/Terminal.Gui.Responder.yml","output":{".html":{"relative_path":"api/Terminal.Gui/Terminal.Gui.Responder.html","hash":"haoSRJIv3U6l3xnz/+bN9g=="}},"is_incremental":false,"version":""},{"type":"ManagedReference","source_relative_path":"api/Terminal.Gui/Terminal.Gui.SaveDialog.yml","output":{".html":{"relative_path":"api/Terminal.Gui/Terminal.Gui.SaveDialog.html","hash":"nR7oNKkWEFQJgXwgqltYaA=="}},"is_incremental":false,"version":""},{"type":"ManagedReference","source_relative_path":"api/Terminal/Terminal.ColorScheme.yml","output":{".html":{"relative_path":"api/Terminal/Terminal.ColorScheme.html","hash":"jLksqjNAv5NP/Lzs+w0orA=="}},"is_incremental":false,"version":""},{"type":"ManagedReference","source_relative_path":"api/Terminal/Terminal.Dialog.yml","output":{".html":{"relative_path":"api/Terminal/Terminal.Dialog.html","hash":"2ylkGO6zSUi/FT45G2Kn5A=="}},"is_incremental":false,"version":""},{"type":"ManagedReference","source_relative_path":"api/Terminal/Terminal.MouseEvent.yml","output":{".html":{"relative_path":"api/Terminal/Terminal.MouseEvent.html","hash":"tWBrDmGanq6Qsj86XzS8PA=="}},"is_incremental":false,"version":""},{"type":"ManagedReference","source_relative_path":"api/Terminal/Terminal.SpecialChar.yml","output":{".html":{"relative_path":"api/Terminal/Terminal.SpecialChar.html","hash":"oyaYen6dExP+Yje8h+D1yQ=="}},"is_incremental":false,"version":""},{"type":"ManagedReference","source_relative_path":"api/Terminal.Gui/Terminal.Gui.Button.yml","output":{".html":{"relative_path":"api/Terminal.Gui/Terminal.Gui.Button.html","hash":"39wBFZpnqrJBQIEKnDzDhQ=="}},"is_incremental":false,"version":""},{"type":"ManagedReference","source_relative_path":"api/Terminal.Gui/Terminal.Gui.FrameView.yml","output":{".html":{"relative_path":"api/Terminal.Gui/Terminal.Gui.FrameView.html","hash":"7ggzdKG7rlp7hHNktYkkkQ=="}},"is_incremental":false,"version":""},{"type":"ManagedReference","source_relative_path":"api/Terminal.Gui/Terminal.Gui.MenuBar.yml","output":{".html":{"relative_path":"api/Terminal.Gui/Terminal.Gui.MenuBar.html","hash":"VKWHTFVY6rYU5LAcg1ibfg=="}},"is_incremental":false,"version":""},{"type":"ManagedReference","source_relative_path":"api/Terminal.Gui/Terminal.Gui.Application.RunState.yml","output":{".html":{"relative_path":"api/Terminal.Gui/Terminal.Gui.Application.RunState.html","hash":"e7izbnu+VMI54O2ffYPSBw=="}},"is_incremental":false,"version":""},{"type":"ManagedReference","source_relative_path":"api/Terminal.Gui/Terminal.Gui.Clipboard.yml","output":{".html":{"relative_path":"api/Terminal.Gui/Terminal.Gui.Clipboard.html","hash":"Fvt60OsJUoECXXoy9pfy+w=="}},"is_incremental":false,"version":""},{"type":"ManagedReference","source_relative_path":"api/Terminal.Gui/Terminal.Gui.FileDialog.yml","output":{".html":{"relative_path":"api/Terminal.Gui/Terminal.Gui.FileDialog.html","hash":"HvTIv13xiz6ueYqGfBq5jg=="}},"is_incremental":false,"version":""},{"type":"ManagedReference","source_relative_path":"api/Terminal.Gui/Terminal.Gui.Pos.yml","output":{".html":{"relative_path":"api/Terminal.Gui/Terminal.Gui.Pos.html","hash":"J42iby8RfP68ex3HXg9+YA=="}},"is_incremental":false,"version":""},{"type":"ManagedReference","source_relative_path":"api/Terminal.Gui/Terminal.Gui.TextAlignment.yml","output":{".html":{"relative_path":"api/Terminal.Gui/Terminal.Gui.TextAlignment.html","hash":"0WRZZIAjiDvLCkr+/Zr44Q=="}},"is_incremental":false,"version":""},{"type":"ManagedReference","source_relative_path":"api/Terminal.Gui/Terminal.Gui.TextField.yml","output":{".html":{"relative_path":"api/Terminal.Gui/Terminal.Gui.TextField.html","hash":"lu9rcPUMYo2y6x9ZGGTZfQ=="}},"is_incremental":false,"version":""},{"type":"ManagedReference","source_relative_path":"api/Terminal.yml","output":{".html":{"relative_path":"api/Terminal.html","hash":"tFVRBtIAuwnTBjsSB3aeCw=="}},"is_incremental":false,"version":""},{"type":"ManagedReference","source_relative_path":"api/Terminal/Terminal.Button.yml","output":{".html":{"relative_path":"api/Terminal/Terminal.Button.html","hash":"VESOJmXXJ9prNN5hKxfcNw=="}},"is_incremental":false,"version":""},{"type":"ManagedReference","source_relative_path":"api/Terminal/Terminal.MenuBar.yml","output":{".html":{"relative_path":"api/Terminal/Terminal.MenuBar.html","hash":"BYq8R+tNwkE1cm0tao3JNw=="}},"is_incremental":false,"version":""},{"type":"ManagedReference","source_relative_path":"api/Terminal/Terminal.RadioGroup.yml","output":{".html":{"relative_path":"api/Terminal/Terminal.RadioGroup.html","hash":"zwoFctZNjvwMklMZpPs1EQ=="}},"is_incremental":false,"version":""},{"type":"ManagedReference","source_relative_path":"api/Terminal.Gui/Terminal.Gui.Attribute.yml","output":{".html":{"relative_path":"api/Terminal.Gui/Terminal.Gui.Attribute.html","hash":"I8naOo433NoB2u5w/nPbMA=="}},"is_incremental":false,"version":""},{"type":"ManagedReference","source_relative_path":"api/Terminal.Gui/Terminal.Gui.ColorScheme.yml","output":{".html":{"relative_path":"api/Terminal.Gui/Terminal.Gui.ColorScheme.html","hash":"1ClzHoep8DR+75SAfZjD4Q=="}},"is_incremental":false,"version":""},{"type":"ManagedReference","source_relative_path":"api/Terminal.Gui/Terminal.Gui.IListDataSource.yml","output":{".html":{"relative_path":"api/Terminal.Gui/Terminal.Gui.IListDataSource.html","hash":"Xfn/6Vl1b8NMvPm84nHBxA=="}},"is_incremental":false,"version":""},{"type":"ManagedReference","source_relative_path":"api/Terminal.Gui/Terminal.Gui.RadioGroup.yml","output":{".html":{"relative_path":"api/Terminal.Gui/Terminal.Gui.RadioGroup.html","hash":"qcFfu8vpVZnwPqoeuIWYmg=="}},"is_incremental":false,"version":""},{"type":"ManagedReference","source_relative_path":"api/Terminal.Gui/Terminal.Gui.Rect.yml","output":{".html":{"relative_path":"api/Terminal.Gui/Terminal.Gui.Rect.html","hash":"UbrMVw16YFF223fCoch2Xg=="}},"is_incremental":false,"version":""},{"type":"ManagedReference","source_relative_path":"api/Terminal/Terminal.Application.RunState.yml","output":{".html":{"relative_path":"api/Terminal/Terminal.Application.RunState.html","hash":"Wr45dWdROck+mzcRWU+Xhw=="}},"is_incremental":false,"version":""},{"type":"ManagedReference","source_relative_path":"api/Terminal/Terminal.Attribute.yml","output":{".html":{"relative_path":"api/Terminal/Terminal.Attribute.html","hash":"3VQuiTvkwZuhrXRBU2slvA=="}},"is_incremental":false,"version":""},{"type":"ManagedReference","source_relative_path":"api/Terminal/Terminal.Label.yml","output":{".html":{"relative_path":"api/Terminal/Terminal.Label.html","hash":"tJNRVOYJfQqH8GIQdA9+OQ=="}},"is_incremental":false,"version":""},{"type":"ManagedReference","source_relative_path":"api/Terminal/Terminal.Point.yml","output":{".html":{"relative_path":"api/Terminal/Terminal.Point.html","hash":"yOdvSmSegO4HtL9S0NXmAw=="}},"is_incremental":false,"version":""},{"type":"ManagedReference","source_relative_path":"api/Terminal/Terminal.TextAlignment.yml","output":{".html":{"relative_path":"api/Terminal/Terminal.TextAlignment.html","hash":"VCohI9t1lob2fztxD5ZXcQ=="}},"is_incremental":false,"version":""},{"type":"ManagedReference","source_relative_path":"api/Terminal.Gui/Terminal.Gui.Colors.yml","output":{".html":{"relative_path":"api/Terminal.Gui/Terminal.Gui.Colors.html","hash":"9fZOKjYk4B6QSQwNg1OuQg=="}},"is_incremental":false,"version":""},{"type":"ManagedReference","source_relative_path":"api/Terminal.Gui/Terminal.Gui.KeyEvent.yml","output":{".html":{"relative_path":"api/Terminal.Gui/Terminal.Gui.KeyEvent.html","hash":"RFZsF2/17jsdv/neuaJ0tg=="}},"is_incremental":false,"version":""},{"type":"ManagedReference","source_relative_path":"api/Terminal.Gui/Terminal.Gui.MouseFlags.yml","output":{".html":{"relative_path":"api/Terminal.Gui/Terminal.Gui.MouseFlags.html","hash":"NRuoTlDQ42lWQzMeiemAyQ=="}},"is_incremental":false,"version":""},{"type":"ManagedReference","source_relative_path":"api/Terminal.Gui/Terminal.Gui.OpenDialog.yml","output":{".html":{"relative_path":"api/Terminal.Gui/Terminal.Gui.OpenDialog.html","hash":"IScEXrw7xfaJ+oueFaNt2Q=="}},"is_incremental":false,"version":""},{"type":"ManagedReference","source_relative_path":"api/Terminal.Gui/Terminal.Gui.Point.yml","output":{".html":{"relative_path":"api/Terminal.Gui/Terminal.Gui.Point.html","hash":"0wTvcjfDG3By7XHJve5K0g=="}},"is_incremental":false,"version":""},{"type":"ManagedReference","source_relative_path":"api/Terminal.Gui/Terminal.Gui.Size.yml","output":{".html":{"relative_path":"api/Terminal.Gui/Terminal.Gui.Size.html","hash":"qfcO9/VhcMA9NALvZ/77gA=="}},"is_incremental":false,"version":""},{"type":"ManagedReference","source_relative_path":"api/Terminal.Gui/Terminal.Gui.SpecialChar.yml","output":{".html":{"relative_path":"api/Terminal.Gui/Terminal.Gui.SpecialChar.html","hash":"i1mFE0BbShjxPO1/uorOKQ=="}},"is_incremental":false,"version":""},{"type":"ManagedReference","source_relative_path":"api/Terminal/Terminal.Application.yml","output":{".html":{"relative_path":"api/Terminal/Terminal.Application.html","hash":"wmqIY3h9ul8VxGLlZ3Nbvw=="}},"is_incremental":false,"version":""},{"type":"ManagedReference","source_relative_path":"api/Terminal/Terminal.Color.yml","output":{".html":{"relative_path":"api/Terminal/Terminal.Color.html","hash":"85hkUEzd69fFj5+qNKiT1g=="}},"is_incremental":false,"version":""},{"type":"ManagedReference","source_relative_path":"api/Terminal/Terminal.Key.yml","output":{".html":{"relative_path":"api/Terminal/Terminal.Key.html","hash":"sGONwq1ubcfwvIMQPLx8OA=="}},"is_incremental":false,"version":""},{"type":"ManagedReference","source_relative_path":"api/Terminal/Terminal.MouseFlags.yml","output":{".html":{"relative_path":"api/Terminal/Terminal.MouseFlags.html","hash":"cDzZV9Fx1k/ddXExyYB8Fg=="}},"is_incremental":false,"version":""},{"type":"ManagedReference","source_relative_path":"api/Terminal/Terminal.View.yml","output":{".html":{"relative_path":"api/Terminal/Terminal.View.html","hash":"M01c4HbOagtD5MYiEutIeA=="}},"is_incremental":false,"version":""},{"type":"ManagedReference","source_relative_path":"api/Terminal.Gui/Terminal.Gui.Dialog.yml","output":{".html":{"relative_path":"api/Terminal.Gui/Terminal.Gui.Dialog.html","hash":"b46f8Cq+oTLbNGXHhHOXxQ=="}},"is_incremental":false,"version":""},{"type":"ManagedReference","source_relative_path":"api/Terminal.Gui/Terminal.Gui.LayoutStyle.yml","output":{".html":{"relative_path":"api/Terminal.Gui/Terminal.Gui.LayoutStyle.html","hash":"O2x5wBsNAd2kSLC/OwBPhA=="}},"is_incremental":false,"version":""}],"version_info":{}} \ No newline at end of file diff --git a/docs/xrefmap.yml b/docs/xrefmap.yml index 175848dc7..94531ef39 100644 --- a/docs/xrefmap.yml +++ b/docs/xrefmap.yml @@ -2106,6 +2106,16 @@ references: href: api/Terminal.Gui/Terminal.Gui.Dim.html#Terminal_Gui_Dim_Fill_ fullName: Dim.Fill nameWithType: Dim.Fill +- uid: Terminal.Gui.Dim.Height(Terminal.Gui.View) + name: Height(View) + href: api/Terminal.Gui/Terminal.Gui.Dim.html#Terminal_Gui_Dim_Height_Terminal_Gui_View_ + fullName: Dim.Height(View) + nameWithType: Dim.Height(View) +- uid: Terminal.Gui.Dim.Height* + name: Height + href: api/Terminal.Gui/Terminal.Gui.Dim.html#Terminal_Gui_Dim_Height_ + fullName: Dim.Height + nameWithType: Dim.Height - uid: Terminal.Gui.Dim.op_Addition(Terminal.Gui.Dim,Terminal.Gui.Dim) name: op_Addition(Dim, Dim) href: api/Terminal.Gui/Terminal.Gui.Dim.html#Terminal_Gui_Dim_op_Addition_Terminal_Gui_Dim_Terminal_Gui_Dim_ @@ -2146,6 +2156,16 @@ references: href: api/Terminal.Gui/Terminal.Gui.Dim.html#Terminal_Gui_Dim_Percent_ fullName: Dim.Percent nameWithType: Dim.Percent +- uid: Terminal.Gui.Dim.Width(Terminal.Gui.View) + name: Width(View) + href: api/Terminal.Gui/Terminal.Gui.Dim.html#Terminal_Gui_Dim_Width_Terminal_Gui_View_ + fullName: Dim.Width(View) + nameWithType: Dim.Width(View) +- uid: Terminal.Gui.Dim.Width* + name: Width + href: api/Terminal.Gui/Terminal.Gui.Dim.html#Terminal_Gui_Dim_Width_ + fullName: Dim.Width + nameWithType: Dim.Width - uid: Terminal.Gui.FileDialog name: FileDialog href: api/Terminal.Gui/Terminal.Gui.FileDialog.html @@ -3506,6 +3526,16 @@ references: href: api/Terminal.Gui/Terminal.Gui.Pos.html#Terminal_Gui_Pos_AnchorEnd_ fullName: Pos.AnchorEnd nameWithType: Pos.AnchorEnd +- uid: Terminal.Gui.Pos.Bottom(Terminal.Gui.View) + name: Bottom(View) + href: api/Terminal.Gui/Terminal.Gui.Pos.html#Terminal_Gui_Pos_Bottom_Terminal_Gui_View_ + fullName: Pos.Bottom(View) + nameWithType: Pos.Bottom(View) +- uid: Terminal.Gui.Pos.Bottom* + name: Bottom + href: api/Terminal.Gui/Terminal.Gui.Pos.html#Terminal_Gui_Pos_Bottom_ + fullName: Pos.Bottom + nameWithType: Pos.Bottom - uid: Terminal.Gui.Pos.Center name: Center() href: api/Terminal.Gui/Terminal.Gui.Pos.html#Terminal_Gui_Pos_Center @@ -3516,6 +3546,16 @@ references: href: api/Terminal.Gui/Terminal.Gui.Pos.html#Terminal_Gui_Pos_Center_ fullName: Pos.Center nameWithType: Pos.Center +- uid: Terminal.Gui.Pos.Left(Terminal.Gui.View) + name: Left(View) + href: api/Terminal.Gui/Terminal.Gui.Pos.html#Terminal_Gui_Pos_Left_Terminal_Gui_View_ + fullName: Pos.Left(View) + nameWithType: Pos.Left(View) +- uid: Terminal.Gui.Pos.Left* + name: Left + href: api/Terminal.Gui/Terminal.Gui.Pos.html#Terminal_Gui_Pos_Left_ + fullName: Pos.Left + nameWithType: Pos.Left - uid: Terminal.Gui.Pos.op_Addition(Terminal.Gui.Pos,Terminal.Gui.Pos) name: op_Addition(Pos, Pos) href: api/Terminal.Gui/Terminal.Gui.Pos.html#Terminal_Gui_Pos_op_Addition_Terminal_Gui_Pos_Terminal_Gui_Pos_ @@ -3556,6 +3596,46 @@ references: href: api/Terminal.Gui/Terminal.Gui.Pos.html#Terminal_Gui_Pos_Percent_ fullName: Pos.Percent nameWithType: Pos.Percent +- uid: Terminal.Gui.Pos.Right(Terminal.Gui.View) + name: Right(View) + href: api/Terminal.Gui/Terminal.Gui.Pos.html#Terminal_Gui_Pos_Right_Terminal_Gui_View_ + fullName: Pos.Right(View) + nameWithType: Pos.Right(View) +- uid: Terminal.Gui.Pos.Right* + name: Right + href: api/Terminal.Gui/Terminal.Gui.Pos.html#Terminal_Gui_Pos_Right_ + fullName: Pos.Right + nameWithType: Pos.Right +- uid: Terminal.Gui.Pos.Top(Terminal.Gui.View) + name: Top(View) + href: api/Terminal.Gui/Terminal.Gui.Pos.html#Terminal_Gui_Pos_Top_Terminal_Gui_View_ + fullName: Pos.Top(View) + nameWithType: Pos.Top(View) +- uid: Terminal.Gui.Pos.Top* + name: Top + href: api/Terminal.Gui/Terminal.Gui.Pos.html#Terminal_Gui_Pos_Top_ + fullName: Pos.Top + nameWithType: Pos.Top +- uid: Terminal.Gui.Pos.X(Terminal.Gui.View) + name: X(View) + href: api/Terminal.Gui/Terminal.Gui.Pos.html#Terminal_Gui_Pos_X_Terminal_Gui_View_ + fullName: Pos.X(View) + nameWithType: Pos.X(View) +- uid: Terminal.Gui.Pos.X* + name: X + href: api/Terminal.Gui/Terminal.Gui.Pos.html#Terminal_Gui_Pos_X_ + fullName: Pos.X + nameWithType: Pos.X +- uid: Terminal.Gui.Pos.Y(Terminal.Gui.View) + name: Y(View) + href: api/Terminal.Gui/Terminal.Gui.Pos.html#Terminal_Gui_Pos_Y_Terminal_Gui_View_ + fullName: Pos.Y(View) + nameWithType: Pos.Y(View) +- uid: Terminal.Gui.Pos.Y* + name: Y + href: api/Terminal.Gui/Terminal.Gui.Pos.html#Terminal_Gui_Pos_Y_ + fullName: Pos.Y + nameWithType: Pos.Y - uid: Terminal.Gui.ProgressBar name: ProgressBar href: api/Terminal.Gui/Terminal.Gui.ProgressBar.html diff --git a/ecmadocs/en/Terminal.Gui/Dim.xml b/ecmadocs/en/Terminal.Gui/Dim.xml index d0189eb24..a5d862451 100644 --- a/ecmadocs/en/Terminal.Gui/Dim.xml +++ b/ecmadocs/en/Terminal.Gui/Dim.xml @@ -59,6 +59,28 @@ To be added. + + + + Method + + 1.0.0.0 + + + Terminal.Gui.Dim + + + + + + The view that will be tracked. +

    + Returns a Dim object tracks the Height of the specified view. + + The dimension of the other view. + To be added. + + @@ -151,5 +173,27 @@ To be added. + + + + Method + + 1.0.0.0 + + + Terminal.Gui.Dim + + + + + + The view that will be tracked. + + Returns a Dim object tracks the Width of the specified view. + + The dimension of the other view. + To be added. + + diff --git a/ecmadocs/en/Terminal.Gui/Pos.xml b/ecmadocs/en/Terminal.Gui/Pos.xml index 0be74e2ea..5ff65c53a 100644 --- a/ecmadocs/en/Terminal.Gui/Pos.xml +++ b/ecmadocs/en/Terminal.Gui/Pos.xml @@ -27,6 +27,11 @@ to produce more useful layouts, like: Pos.Center - 3, which would shift the postion of the view 3 characters to the left after centering for example. + + It is possible to reference coordinates of another view by using the methods + Left(View), Right(View), Bottom(View), Top(View). The X(View) and Y(View) are + aliases to Left(View) and Top(View) respectively. + @@ -66,6 +71,28 @@ To be added. + + + + Method + + 1.0.0.0 + + + Terminal.Gui.Pos + + + + + + The view that will be tracked. + + Returns a Pos object tracks the Bottom (Y+Height) coordinate of the specified view. + + The Position that depends on the other view. + To be added. + + @@ -85,6 +112,28 @@ To be added. + + + + Method + + 1.0.0.0 + + + Terminal.Gui.Pos + + + + + + The view that will be tracked. + + Returns a Pos object tracks the Left (X) position of the specified view. + + The Position that depends on the other view. + To be added. + + @@ -177,5 +226,93 @@ To be added. + + + + Method + + 1.0.0.0 + + + Terminal.Gui.Pos + + + + + + The view that will be tracked. + + Returns a Pos object tracks the Right (X+Width) coordinate of the specified view. + + The Position that depends on the other view. + To be added. + + + + + + Method + + 1.0.0.0 + + + Terminal.Gui.Pos + + + + + + The view that will be tracked. + + Returns a Pos object tracks the Top (Y) position of the specified view. + + The Position that depends on the other view. + To be added. + + + + + + Method + + 1.0.0.0 + + + Terminal.Gui.Pos + + + + + + The view that will be tracked. + + Returns a Pos object tracks the Left (X) position of the specified view. + + The Position that depends on the other view. + To be added. + + + + + + Method + + 1.0.0.0 + + + Terminal.Gui.Pos + + + + + + The view that will be tracked. + + Returns a Pos object tracks the Top (Y) position of the specified view. + + The Position that depends on the other view. + To be added. + +