SpDevelop开发文档之"浮动面板"

浮动面板

<PadSet>

<Pad RegName="DbEntityPad" Visiable="true" Dock="right" Title="/视图" FormClass="Sp.DbPlugin.DbEntityPad" />

</PadSet>

浮动面板配置节点的属性

1、 RegName:浮动面板的注册名称,其他的插件可以根据该注册名称来调用该浮动面板。

2、 Visiable:是否可见

3、 Dock:浮动方向,其值可以为right,left,bottom;

4、 Title:浮动面板的标题

5、 FormClass:浮动面板的实现类,该类必须从SpDevelop.PluginPad继承。

 

系统自带的几个特殊的浮动面板

1、 输出面板:SpDevelop.SpApi.Pads. OutputPad

/// <summary>

     /// 输出信息的面板

     /// </summary>

     public interface IOutputPad

     {

         /// <summary>

         /// 双击输出窗体

         /// </summary>

         event OutputDoubleClickHandler DoubleClick;

         /// <summary>

         /// 新开始一行显示信息

         /// </summary>

         /// <param name="msg">信息</param>

         void Add(string msg);

         /// <summary>

         /// 新开始一行显示异常信息ex.Message

         /// </summary>

         /// <param name="ex">异常体</param>

         void Add(Exception ex);

         /// <summary>

         /// 在最后一行显示信息

         /// </summary>

         /// <param name="msg"></param>

         void Append(string msg);

         /// <summary>

         /// 在最后一行显示异常信息ex.Message

         /// </summary>

         /// <param name="ex">异常体</param>

         void Append(Exception ex);

         /// <summary>

         /// 新开始一行显示信息

         /// </summary>

         /// <param name="msg"></param>

         /// <param name="tag"></param>

         void Add(string msg,object tag);

         /// <summary>

         /// 新开始一行显示信息,并设置字体色

         /// </summary>

         /// <param name="msg"></param>

         /// <param name="tag"></param>

         /// <param name="fontColor"></param>

         void Add(string msg,object tag,Color fontColor);

         /// <summary>

         /// 清除所有信息

         /// </summary>

         void Clear();     

     }

2、 工具箱面板

     /// <summary>

     /// 工具箱浮动窗体接口

     /// </summary>

     public interface IToolBoxPad

     {

         /// <summary>

         /// 工具箱容器

         /// </summary>

         ToolBox ToolBox

         {

              get;

              set;

         }

         /// <summary>

         /// 当前选中的项

         /// </summary>

         ToolBoxItem SelectedItem

         {

              get;

         }

 

         /// <summary>

         /// 工具箱中的选项改变

         /// </summary>

         event ItemSelectionChangedHandler ItemSelectionChanged;

         /// <summary>

         /// 工具箱中的选项拖拉完成

         /// </summary>

         event DragDropFinishedHandler DragDropFinished;

 

         /// <summary>

         /// 添加工具箱选项卡

         /// </summary>

         /// <param name="caption">选项卡标题</param>

         /// <param name="name">选项卡名称</param>

         /// <param name="imgList">图标列表</param>

         /// <returns>选项卡</returns>

         ToolBoxTab AddToolBoxTab(string caption,string name,ImageList imgList);

         /// <summary>

         /// 获取工具箱选项卡

         /// </summary>

         /// <param name="name">选项卡名称</param>

         /// <returns>如果存在则返回选项卡,否则返回null</returns>

         ToolBoxTab GetToolBoxTab(string name);

 

         /// <summary>

         ///

         /// </summary>

         /// <param name="tbcnf"></param>

         void AddToolBoxFromConfig(ToolBoxConfig tbcnf);

         /// <summary>

         /// 启用或禁用所有选项卡

         /// </summary>

         /// <param name="enable">true:启用;false:禁用</param>

         void EnableAllTab(bool enable);

         /// <summary>

         /// 启用或禁用指定名称的选项卡

         /// </summary>

         /// <param name="tabName">选项卡名称</param>

         /// <param name="enable">true:启用;false:禁用</param>

         void EnableTab(string tabName,bool enable);

         /// <summary>

         /// 显示指定名称的选项卡

         /// </summary>

         /// <param name="tabName">选项卡名称</param>

         /// <param name="enable">true:显示;false:隐藏</param>

         void ShowTab(string tabName,bool enable);

         /// <summary>

         /// 将选项卡的选项卡置为第一个选项

         /// </summary>

         /// <param name="sender"></param>

         /// <param name="e"></param>

         void RaiseSelectItemReset(object sender,EventArgs e);

 

         /// <summary>

         /// 添加工具项选中事件

         /// </summary>

         /// <param name="handler"></param>

         void AddItemSelectionChangedHandler(ItemSelectionChangedHandler handler);

         /// <summary>

         /// 清除工具项选中事件

         /// </summary>

         void ClearSelectionChangedHandler();

}

3、 属性面板

/// <summary>

     /// 属性窗体

     /// </summary>

     public interface IPropertyPad

     {

         /// <summary>

         /// 属性网格

         /// </summary>

         PropertyGridEx PGrid

         {

              get;

              set;

         }

 

         #region ComboBox

         /// <summary>

         /// 添加下拉框的选项

         /// </summary>

         /// <param name="text"></param>

         /// <param name="value"></param>

         void AddComboBoxItem(string text,object value);

         /// <summary>

         /// 编辑值为value项的Text

         /// </summary>

         /// <param name="value"></param>

         /// <param name="text"></param>

         void EditComboBoxItem(object value,string text);

         /// <summary>

         /// 删除下拉框的选项

         /// </summary>

         /// <param name="value"></param>

         void RemoveComboBoxItem(object value);

         /// <summary>

         /// 下拉框

         /// </summary>

         ComboBoxItem ComboBoxSelectedItem

         {

              get;

         }

        

         /// <summary>

         /// 设置下拉框当前选中的项

         /// </summary>

         /// <param name="value">选中项</param>

         /// <returns></returns>

         ComboBoxItem SelectComboBoxItem(object value);

        

 

         /// <summary>

         /// 添加下拉框的事件

         /// </summary>

         /// <param name="handler"></param>

         void AddComboBoxSelectedIndexChangedEvent(EventHandler handler);

         /// <summary>

         /// 清除下拉框的事件

         /// </summary>

         void ClearComboBoxSelectedIndexChangedEvent();

         #endregion

 

         /// <summary>

         /// 清除

         /// </summary>

         void Clear();

}

4、 解决方案浮动面板

   /// <summary>

     /// 解决方案浮动面板

     /// </summary>

     public interface ISolutionPad

     {

         #region Propertys

         /// <summary>

         /// 解决方案的根节点

         /// </summary>

         FileNode SolutionNode{get;set;}

         /// <summary>

         /// 当前选中的文件节点

         /// </summary>

         FileNode SelectedNode{get;set;}

         /// <summary>

         /// 树型菜单的图片

         /// </summary>

         ImageList TreeImageList{get;}

         #endregion

 

         #region Get

         /// <summary>

         /// 根据Guid获取文件节点

         /// </summary>

         /// <param name="guid">节点Guid</param>

         /// <returns>文件节点</returns>

         FileNode GetTreeNode(string guid);

         #endregion

 

         #region Add

 

         /// <summary>

         /// 添加文件节点,该文件节点将递归到工程文件节点或解决方案文件节点并自动保存

         /// </summary>

         /// <param name="parentNode">父级文件节点</param>

         /// <param name="node">待新增的文件节点</param>

         /// <param name="bSaveSluPrj">其工程文件或者解决方案文件是否自动保存</param>

         /// <returns>是否新增成功</returns>

         bool AddTreeNode(FileNode parentNode,FileNode node,bool bSaveSluPrj);

         #endregion

 

         #region Remove

         /// <summary>

         /// 删除文件节点,该文件节点将递归到工程文件节点或解决方案文件节点并自动保存

         /// </summary>

         /// <param name="guid">文件节点Guid</param>

         /// <returns>是否删除成功</returns>

         bool RemoveTreeNode(string guid);

        

         /// <summary>

         ///  删除文件节点,该文件节点将递归到工程文件节点或解决方案文件节点并自动保存

         /// </summary>

         /// <param name="node">文件节点</param>

         /// <returns>是否删除成功</returns>

         bool RemoveTreeNode(FileNode node);

 

         /// <summary>

         /// 关闭/解决方案

         /// </summary>

         /// <returns></returns>

         void CloseSoluction();

         #endregion

 

         /// <summary>

         /// 判断节点是否能编辑

         /// </summary>

         /// <param name="fNodGuid">节点编号</param>

         /// <param name="bAlterCheckOut">是否提示签出</param>

         /// <param name="autoCheckOutParent">签出时自动将上级签出</param>

         /// <returns>是否能编辑</returns>

         bool CheckFileNodeCanEdit(string fNodGuid,bool bAlterCheckOut,bool autoCheckOutParent);

 

     }

posted on 2007-04-19 18:25  spdevelop  阅读(270)  评论(0编辑  收藏  举报

导航