pascalabcnet/WeifenLuoLinux/WinFormsUI/Docking/Interfaces.cs
Mikhalkovich Stanislav 3072383106 Для Linux-версии исправлен DockContent, редактор (показ всплывающего окна)
Сделан новый проект VisualPABCLinux
И пришлось склонировать PluginsSupport, поскольку он вносит зависимость по редактору
Компоненты WeifenLuo для Linux надо после перекомпиляции скопировать в Libraries - подшить их к основному проекту просто не получилось
2022-06-30 09:47:11 +03:00

60 lines
1.6 KiB
C#

using System;
using System.Drawing;
using System.Windows.Forms;
namespace WeifenLuo.WinFormsUI.Docking
{
public interface IDockContent : IContextMenuStripHost
{
DockContentHandler DockHandler { get; }
void OnActivated(EventArgs e);
void OnDeactivate(EventArgs e);
}
public interface IContextMenuStripHost
{
void ApplyTheme();
}
public interface INestedPanesContainer
{
DockState DockState { get; }
Rectangle DisplayingRectangle { get; }
NestedPaneCollection NestedPanes { get; }
VisibleNestedPaneCollection VisibleNestedPanes { get; }
bool IsFloat { get; }
}
public interface IDragSource
{
Control DragControl { get; }
}
public interface IDockDragSource : IDragSource
{
Rectangle BeginDrag(Point ptMouse);
void EndDrag();
bool IsDockStateValid(DockState dockState);
bool CanDockTo(DockPane pane);
void FloatAt(Rectangle floatWindowBounds);
void DockTo(DockPane pane, DockStyle dockStyle, int contentIndex);
void DockTo(DockPanel panel, DockStyle dockStyle);
}
public interface ISplitterDragSource : IDragSource
{
void BeginDrag(Rectangle rectSplitter);
void EndDrag();
bool IsVertical { get; }
Rectangle DragLimitBounds { get; }
void MoveSplitter(int offset);
}
public interface ISplitterHost : ISplitterDragSource
{
DockPanel DockPanel { get; }
DockState DockState { get; }
bool IsDockWindow { get; }
}
}