csharpc-sharpdotnetxamlavaloniauicross-platformcross-platform-xamlavaloniaguimulti-platformuser-interfacedotnetcore
You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
43 lines
1.5 KiB
43 lines
1.5 KiB
// Copyright (c) The Avalonia Project. All rights reserved.
|
|
// Licensed under the MIT license. See licence.md file in the project root for full license information.
|
|
|
|
|
|
namespace Avalonia.Layout
|
|
{
|
|
/// <summary>
|
|
/// Manages measuring and arranging of controls.
|
|
/// </summary>
|
|
public interface ILayoutManager
|
|
{
|
|
/// <summary>
|
|
/// Notifies the layout manager that a control requires a measure.
|
|
/// </summary>
|
|
/// <param name="control">The control.</param>
|
|
void InvalidateMeasure(ILayoutable control);
|
|
|
|
/// <summary>
|
|
/// Notifies the layout manager that a control requires an arrange.
|
|
/// </summary>
|
|
/// <param name="control">The control.</param>
|
|
void InvalidateArrange(ILayoutable control);
|
|
|
|
/// <summary>
|
|
/// Executes a layout pass.
|
|
/// </summary>
|
|
/// <remarks>
|
|
/// You should not usually need to call this method explictly, the layout manager will
|
|
/// schedule layout passes itself.
|
|
/// </remarks>
|
|
void ExecuteLayoutPass();
|
|
|
|
/// <summary>
|
|
/// Executes the initial layout pass on a layout root.
|
|
/// </summary>
|
|
/// <param name="root">The control to lay out.</param>
|
|
/// <remarks>
|
|
/// You should not usually need to call this method explictly, the layout root will call
|
|
/// it to carry out the initial layout of the control.
|
|
/// </remarks>
|
|
void ExecuteInitialLayoutPass(ILayoutRoot root);
|
|
}
|
|
}
|
|
|