A cross-platform UI framework for .NET
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.
 
 
 

32 lines
1018 B

using System;
using System.Diagnostics.CodeAnalysis;
using Avalonia.Metadata;
using Avalonia.Platform;
namespace Avalonia.Controls.Platform
{
[Unstable]
public interface INativeControlHostImpl
{
INativeControlHostDestroyableControlHandle CreateDefaultChild(IPlatformHandle parent);
INativeControlHostControlTopLevelAttachment CreateNewAttachment(Func<IPlatformHandle, IPlatformHandle> create);
INativeControlHostControlTopLevelAttachment CreateNewAttachment(IPlatformHandle handle);
bool IsCompatibleWith(IPlatformHandle handle);
}
[Unstable]
public interface INativeControlHostDestroyableControlHandle : IPlatformHandle
{
void Destroy();
}
[Unstable]
public interface INativeControlHostControlTopLevelAttachment : IDisposable
{
INativeControlHostImpl? AttachedTo { get; set; }
bool IsCompatibleWith(INativeControlHostImpl host);
void HideWithSize(Size size);
void ShowInBounds(Rect rect);
}
}