99 lines
3.5 KiB
C#
99 lines
3.5 KiB
C#
using Lattice.Core.Docking.Models;
|
||
|
||
namespace Lattice.UI.Docking.Abstractions;
|
||
|
||
/// <summary>
|
||
/// Определяет контракт для UI-контрола, который представляет автоскрываемую панель.
|
||
/// </summary>
|
||
/// <remarks>
|
||
/// Автоскрываемые панели прикреплены к одной из сторон окна и скрываются,
|
||
/// оставляя видимым только заголовок. При наведении курсора панель выезжает.
|
||
/// </remarks>
|
||
public interface IAutoHidePanelControl : IDockControl
|
||
{
|
||
/// <summary>
|
||
/// Получает или задает сторону прикрепления панели.
|
||
/// </summary>
|
||
/// <value>
|
||
/// Сторона окна, к которой прикреплена панель.
|
||
/// </value>
|
||
DockSide Side { get; set; }
|
||
|
||
/// <summary>
|
||
/// Получает или задает ширину панели (для левой/правой сторон).
|
||
/// </summary>
|
||
/// <value>
|
||
/// Ширина панели в пикселях.
|
||
/// </value>
|
||
double Width { get; set; }
|
||
|
||
/// <summary>
|
||
/// Получает или задает высоту панели (для верхней/нижней сторон).
|
||
/// </summary>
|
||
/// <value>
|
||
/// Высота панели в пикселях.
|
||
/// </value>
|
||
double Height { get; set; }
|
||
|
||
/// <summary>
|
||
/// Получает или задает признак видимости панели.
|
||
/// </summary>
|
||
/// <value>
|
||
/// true, если панель видима; в противном случае — false.
|
||
/// </value>
|
||
bool IsVisible { get; set; }
|
||
|
||
/// <summary>
|
||
/// Получает или задает признак того, что панель всегда видима.
|
||
/// </summary>
|
||
/// <value>
|
||
/// true, если панель всегда видима; в противном случае — false.
|
||
/// </value>
|
||
bool IsPinned { get; set; }
|
||
|
||
/// <summary>
|
||
/// Получает или задает задержку перед скрытием панели (в миллисекундах).
|
||
/// </summary>
|
||
/// <value>
|
||
/// Задержка в миллисекундах.
|
||
/// </value>
|
||
int AutoHideDelay { get; set; }
|
||
|
||
/// <summary>
|
||
/// Показывает панель.
|
||
/// </summary>
|
||
void Show();
|
||
|
||
/// <summary>
|
||
/// Скрывает панель.
|
||
/// </summary>
|
||
void Hide();
|
||
|
||
/// <summary>
|
||
/// Переключает состояние видимости панели.
|
||
/// </summary>
|
||
void Toggle();
|
||
|
||
/// <summary>
|
||
/// Задает фиксированное состояние панели.
|
||
/// </summary>
|
||
/// <param name="pinned">
|
||
/// true, чтобы зафиксировать панель; false, чтобы разрешить автоскрытие.
|
||
/// </param>
|
||
void SetPinned(bool pinned);
|
||
|
||
/// <summary>
|
||
/// Происходит при изменении видимости панели.
|
||
/// </summary>
|
||
event EventHandler VisibilityChanged;
|
||
|
||
/// <summary>
|
||
/// Происходит при наведении курсора на панель.
|
||
/// </summary>
|
||
event EventHandler MouseEntered;
|
||
|
||
/// <summary>
|
||
/// Происходит при уходе курсора с панели.
|
||
/// </summary>
|
||
event EventHandler MouseLeft;
|
||
} |