Files
MsAddIns/ShrlAlgo.MsAddIns/CustomTool.cs
2026-02-28 21:01:57 +08:00

61 lines
1.6 KiB
C#

using Bentley.DgnPlatformNET;
using Bentley.DgnPlatformNET.Elements;
using Bentley.MstnPlatformNET;
using ShrlAlgo.MsAddins.Views;
namespace ShrlAlgo.MsAddIns
{
internal class CustomTool : DgnElementSetTool
{
private static CustomTool _toolSettings;
private static CustomToolSettings customToolSettings;
private readonly AddIn addin;
public CustomTool(AddIn addin) : base(0, 0)
{
this.addin = addin;
}
protected override bool OnInstall()
{
base.OnInstall();
// 初始化工具设置对话框
if (_toolSettings == null)
_toolSettings = new CustomTool(addin);
if (customToolSettings == null)
{
customToolSettings = new CustomToolSettings();
}
customToolSettings.Attach(addin);
return true;
}
protected override void OnRestartTool()
{
_toolSettings.InstallTool();
}
protected override bool OnResetButton(DgnButtonEvent ev)
{
customToolSettings.Detach();
ExitTool();//退出工具
return true;//返回
}
public static void InstallNewTool()
{
_toolSettings = new CustomTool(MsAddIns.AddIn);
customToolSettings = new CustomToolSettings();
_toolSettings.InstallTool();
}
public override StatusInt OnElementModify(Element element)
{
throw new System.NotImplementedException();
}
}
}