using System; using System.Collections.Generic; using System.Text; using System.Windows.Forms; using Mesnac.PlugIn.Pad; using Mesnac.PlugIn.View; namespace Mesnac.PlugIn.Workbench { /// /// 工作区基础接口 /// public interface IWorkbench { /// /// 工作区主菜单 /// MenuStrip TopMenu { get; } /// /// 工作区工具栏 /// ToolStrip ToolStrip { get; } /// /// 工作台布局属性 /// IWorkbenchLayout WorkbenchLayout { get; set; } /// /// 是否全屏 /// bool FullScreen { get; set; } /// /// 系统关闭标识 /// bool CloseFlag { get; set; } /// /// 标题,显示在标题栏 /// string Title { get; set; } /// /// 用于保存的工作区面板集合,只读 /// List PadContentCollection { get; } /// /// 用于保存设计时工作区窗口的集合 /// List ViewContentCollection { get; } /// /// 用于保存运行时工作区窗口的字典 /// Dictionary ViewContentDic { get; } /// /// 活动对象,只读 /// object ActiveContent { get; } /// /// 当前视图,只读 /// object CurrentViewContent { get; set; } /// /// 增加一个新的对象在工作区中 /// /// void ShowPad(PadDescriptor content); /// /// 返回一个指定类型的面板 /// /// /// PadDescriptor GetPad(Type type); /// /// 显示一个视图窗口 /// /// void ShowView(IViewContent content); /// /// 显示一个视图窗口 /// /// 视图内容 /// 是否允许重复保存 void ShowView(IViewContent content, bool isAllowRepeat); /// /// 显示一个视图窗口 /// /// 视图窗口标识 /// 视图内容 void ShowView(string key, IViewContent content); /// /// 显示一个视图窗口 /// /// 视图窗口标识 /// 视图内容 void ShowView(string key, IViewContent content, Mesnac.Docking.DockState dockState); /// /// 获取视图窗口 /// /// 视图窗口标识 /// IWorkbenchWindow GetViewByKey(string key); /// /// 获取视图窗口 /// /// /// IWorkbenchWindow GetViewByViewContentID(string viewContentID); /// /// 根据视图类型,获取单个视图窗口 /// /// /// IWorkbenchWindow GetViewByType(Type type); /// /// 根据视图类型,获取对应类型的所有视图窗口 /// /// /// List GetViewsByType(Type type); /// /// 获取自定义视图窗口集合 /// /// List GetCustomerViews(); /// /// 关闭一个视图窗口 /// /// 要关闭的视图对象 void CloseView(IViewContent content); /// /// 关闭一个视图窗口 /// /// 要关闭的视图对象 /// 是否真正关闭 void CloseView(IViewContent content, bool isRealClose); /// /// 关闭所有视图窗口 /// void CloseAllViews(); /// /// 关闭所有视图窗口 /// /// 是否真正关闭 void CloseAllViews(bool isRealClose); /// /// 根据键值关闭一个视图窗口 /// /// 要关闭的视图键值 void CloseViewByKey(string key); /// /// 根据键值关闭一个视图窗口 /// /// 要关闭的视图键值 /// 是否真正关闭 void CloseViewByKey(string key, bool isRealClose); /// /// 关闭所有的键视图窗口 /// void CloseAllKeysView(); /// /// 关闭所有的键视图窗口 /// /// 是否真正关闭 void CloseAllKeysView(bool isRealClose); /// /// 刷新插件 /// void RefreshPlugIn(); /// /// 重绘所有组件 /// void RedrawAllComponents(); /// /// 退出系统方法 /// void Exit(); /// /// 刷新插件事件 /// event EventHandler AfterRefreshPlugIn; /// /// 初始化完毕事件 /// event EventHandler InitFinished; /// /// 刷新工作台界面事件 /// event EventHandler RefreshUI; /// /// 系统即将关闭事件 /// event EventHandler ShutDown; } }