using System;
using System.Collections.Generic;
using System.Text;
using Mesnac.PlugIn.Pad;
using Mesnac.PlugIn.View;
using Mesnac.Docking;
namespace Mesnac.PlugIn.Workbench
{
///
/// 工作区布局接口,用于在运行时附件/分离工作区内容(面板和文档)
///
public interface IWorkbenchLayout
{
///
/// 所属工作台对象
///
object Owner { get; set; }
///
/// 活动对象,只读
///
object ActiveConent { get; }
///
/// 布局管理容器中的内容集合
///
Dictionary ContentHash { get; }
///
/// 附加工作台
///
void Attach();
///
/// 分离工作台
///
void Detach();
///
/// 设置全屏的面板状态
///
/// 是否全屏
void SetFullScreenPads(bool flag);
///
/// 显示面板
///
///
void ShowPad(PadDescriptor content);
///
/// 显示面板的同时指定是否激活
///
///
///
void ShowPad(PadDescriptor content, bool bActivateIt);
///
/// 显示视图内容
///
///
///
IWorkbenchWindow ShowView(IViewContent content);
///
/// 显示视图窗口
///
/// 要显示的视图内容
/// 要显示的视图状态
///
IWorkbenchWindow ShowView(IViewContent content, DockState dockState);
///
/// 重绘所有组件
///
void RedrawAllComponents();
///
/// 加载配置
///
void LoadConfiguration();
///
/// 保存配置
///
void StoreConfiguration();
}
}