概要
利用目的に対してAPIの使い方を説明している逆引き形式のコンテンツです。
コンテンツ内のサンプルコードについて
このコンテンツのサンプルはスクリプトとDLLのエクステンションの両方で実行できることを前提にコードを記載しています。
コンテンツ内のコード例は、次のようにコマンドでの実装を前提に記載してます。まず、ICommandContext
のApp
プロパティでIApplication
のオブジェクトを取得し、Workspace
やWindow
などのプロパティにアクセスしています。
public void SomeCommand(ICommandContext c,ICommandParams p)
{
//プロジェクトファイルのパスを取得します
var projectFilePath = c.App.Workspace.CurrentProject.ModelUnit.AbsolutePath;
c.App.Output.WriteLine("sample",projectFilePath);
}
なお、ExtensionPointsライブラリを用いてコマンドやイベントハンドラを記述する場合は、スクリプトのエクステンション同様にCurrentProject
などのプロパティが存在しています。
using NextDesign.Core;
using NextDesign.Desktop;
using NextDesign.Desktop.ExtensionPoints;
namespace NdExtSample.Commands
{
public class SomeCommand : CommandHandlerBase
{
protected override void OnExecute(ICommandContext c, ICommandParams p)
{
//プロジェクトファイルのパスを取得します
var projectFilePath = CurrentProject.ModelUnit.AbsolutePath;
Output.WriteLine("sample",projectFilePath);
}
}
}