![](https://images.cnblogs.com/OutliningIndicators/ContractedBlock.gif)
using System;
using System.Collections.Generic;
using System.Drawing;
using System.Windows.Forms;
using FaibClass.BasePackage;
namespace FaibClass.ToolPackage
{
public interface IBaseTool : IPackage
{
/// <summary>
/// 开发框架。
/// </summary>
DEVFrame DEVFrame { set; get; }
/// <summary>
/// 菜单上的图标。
/// </summary>
Image Image { get; }
/// <summary>
/// 是否在启动时显示。
/// </summary>
bool ShowItOnStart { get; }
/// <summary>
/// 工具启动时的处理。
/// </summary>
void OnStart(params object[] pars);
/// <summary>
/// 工具类型。
/// </summary>
ToolType ToolType { get; }
/// <summary>
/// 索引
/// </summary>
int Index { get; }
/// <summary>
/// 子工具集
/// </summary>
List<ISubTool> SubTools { get; }
}
public interface ITool : IBaseTool
{
ApplicationContext Content { get; set; }
/// <summary>
/// 工具安装时的处理。
/// </summary>
void OnSetup();
/// <summary>
/// 选择了表对象后工具中的处理。
/// </summary>
/// <param name="obj"></param>
void OnSelectTableObject(object obj);
/// <summary>
/// 是否可见。
/// </summary>
bool Visible { get; }
}
public interface ISubTool : IBaseTool
{
}
/// <summary>
/// 工具类型。
/// </summary>
[Flags]
public enum ToolType
{
/// <summary>
/// 工具菜单。
/// </summary>
ToolMenu = 1,
/// <summary>
/// 表菜单。
/// </summary>
TableMenu = 2,
/// <summary>
/// 工具栏按钮。
/// </summary>
ToolButton = 4,
/// <summary>
/// 托盘菜单。
/// </summary>
TrayMenu = 8
}
}
using System.Collections.Generic;
using System.Drawing;
using System.Windows.Forms;
using FaibClass.BasePackage;
namespace FaibClass.ToolPackage
{
public interface IBaseTool : IPackage
{
/// <summary>
/// 开发框架。
/// </summary>
DEVFrame DEVFrame { set; get; }
/// <summary>
/// 菜单上的图标。
/// </summary>
Image Image { get; }
/// <summary>
/// 是否在启动时显示。
/// </summary>
bool ShowItOnStart { get; }
/// <summary>
/// 工具启动时的处理。
/// </summary>
void OnStart(params object[] pars);
/// <summary>
/// 工具类型。
/// </summary>
ToolType ToolType { get; }
/// <summary>
/// 索引
/// </summary>
int Index { get; }
/// <summary>
/// 子工具集
/// </summary>
List<ISubTool> SubTools { get; }
}
public interface ITool : IBaseTool
{
ApplicationContext Content { get; set; }
/// <summary>
/// 工具安装时的处理。
/// </summary>
void OnSetup();
/// <summary>
/// 选择了表对象后工具中的处理。
/// </summary>
/// <param name="obj"></param>
void OnSelectTableObject(object obj);
/// <summary>
/// 是否可见。
/// </summary>
bool Visible { get; }
}
public interface ISubTool : IBaseTool
{
}
/// <summary>
/// 工具类型。
/// </summary>
[Flags]
public enum ToolType
{
/// <summary>
/// 工具菜单。
/// </summary>
ToolMenu = 1,
/// <summary>
/// 表菜单。
/// </summary>
TableMenu = 2,
/// <summary>
/// 工具栏按钮。
/// </summary>
ToolButton = 4,
/// <summary>
/// 托盘菜单。
/// </summary>
TrayMenu = 8
}
}