Сделан новый проект VisualPABCLinux И пришлось склонировать PluginsSupport, поскольку он вносит зависимость по редактору Компоненты WeifenLuo для Linux надо после перекомпиляции скопировать в Libraries - подшить их к основному проекту просто не получилось
60 lines
1.6 KiB
C#
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; }
|
|
}
|
|
}
|