using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
using Mesnac.PlugIn.Pad;
using Mesnac.PlugIn.View;
using Mesnac.PlugIn.Workbench;
using Mesnac.Gui.PlugIn;
namespace Mesnac.Gui.Run.Pad
{
public partial class FrmSysFunction : DefaultPadContent
{
public FrmSysFunction()
{
InitializeComponent();
Workbench.WorkbenchSingleton.Workbench.AfterRefreshPlugIn += new EventHandler(Workbench_AfterRefreshPlugIn); //刷新插件事件处理
}
///
/// 插件刷新事件处理
///
///
///
private void Workbench_AfterRefreshPlugIn(object sender, EventArgs e)
{
this.treeView1.Nodes.Clear();
List plugInCollection = sender as List;
if (plugInCollection != null && plugInCollection.Count > 0)
{
foreach (PlugInDescriptor plugIn in plugInCollection)
{
TreeNode tnFunction = new TreeNode();
tnFunction.Text = plugIn.FunctionName;
if (plugIn.ViewContents != null && plugIn.ViewContents.Count > 0)
{
foreach (IViewContent view in plugIn.ViewContents)
{
TreeNode tnView = new TreeNode();
tnView.Text = view.TitleName;
tnView.Tag = view;
tnFunction.Nodes.Add(tnView);
}
}
this.treeView1.Nodes.Add(tnFunction);
}
}
this.treeView1.ExpandAll();
}
///
/// 双击树节点事件处理程序
///
///
///
private void treeView1_NodeMouseDoubleClick(object sender, TreeNodeMouseClickEventArgs e)
{
IViewContent viewContent = e.Node.Tag as IViewContent;
if (viewContent != null)
{
Workbench.WorkbenchSingleton.Workbench.ShowView(viewContent);
}
}
}
}