Next Design V2.0 の変更点
エクステンション機能の変更点
アプリケーションの動作フレームワークの変更
Next Design V2.0 はアプリケーションの動作フレームワークを .NET Framework 4.6.2 から .NET Core 3.1 に変更しました。
この変更に伴い、V1.1 のエクステンションを .NET Core 3.1 に対応していただく必要があります。
詳しくは次のページを参照してください。
また、.NET Core 3.1 でサポートされない型を利用していた、いくつかのAPIのシグネチャを変更しました。
エクステンションロード機能の変更
Next Design V2.0 はDLL方式のエクステンションのロード機構を変更しました。
詳しくは次のページを参照してください。
高度な機能拡張
Next Design V2.0 では、DLL方式のエクステンションにより高度な機能拡張ができます。
ダイアグラムビューでの条件付き書式変更
ダイアグラムビューに表示されるシェイプやラベルなどの書式を、モデルのフィールド値などを条件として動的に変更できます。
詳しくは次のページを参照してください。
ダイアグラムビューでのテキスト動的変更
ダイアグラムビューに表示されるタイトルやラベルなどのテキストを、モデルのフィールド値などを条件として動的に変更できます。テキスト値を変更するだけでなく、ダイアグラム上の表示の変更のみでテキスト値は変更しないことも可能です。
詳しくは次のページを参照してください。
モデル追加時の初期処理の追加
モデル追加時にユーザー独自の初期処理を追加することができます。プリミティブ型や列挙型のフィールドの値を設定するだけでなく、所有する子要素のモデル追加も可能です。
詳しくは次のページを参照してください。
モデル編集操作時の動的制約の追加
Next Design に標準搭載されている多重度制約やパス制約に加えて、モデルのフィールド値などに基づくユーザー独自の制約を追加できます。
詳しくは次のページを参照してください。
サブエディタ/インスペクタでの表示モードの追加
サブエディタとインスペクタに Next Design に標準搭載されている表示モード以外に、独自の表示モードを追加することができます。
詳しくは次のページを参照してください。
ユーザー独自 UI でのモデル編集
Next Design に標準搭載されている UI 以外に、ユーザーが独自に開発した UI を次の部分に組み込んでモデル編集機能を拡張できます。
- モデルエディタのビュー
- ナビゲータ
- インスペクタ
詳しくは次のページを参照してください。
エディタのスタイル再定義機能の廃止
V1.1 のスタイル再定義機能は廃止されました。
エディタの表示をカスタマイズする場合は、より高度なダイアグラムビューでの条件付き書式変更やダイアグラムビューでのテキスト動的変更の利用を検討してください。
note
- V2.0ではフォームエディタのスタイル変更はサポートされません。
API ごとの変更点
ここでは、V2.0のAPI変更点を列挙します。それぞれの API の詳細は API 仕様 を参照してください。
変更した API
V2.0で変更したAPIを列挙します。
NextDesign.Core
API | 変更内容 |
---|---|
IEditor.EditorType プロパティ | カスタムエディタが識別できるように変更しました |
IEditorDef.Type プロパティ | カスタムエディタ定義が識別できるように変更しました |
IFrameShape.Label プロパティ | IFrameShape.Text プロパティに名前を変更しました |
ILifelineShape.Label プロパティ | ILifelineShape.Text プロパティに名前を変更しました |
IMessageShape.Label プロパティ | IMessageShape.Text プロパティに名前を変更しました |
INode.Location プロパティ | プロパティの型をSystem.Windows.Point からSystem.Drawing.Point に変更しました |
INode.Size プロパティ | プロパティの型をSystem.Windows.Size からSystem.Drawing.Size に変更しました |
INode.SetBounds メソッド | 引数の型をSystem.Windows.Rectangle からSystem.Drawing.Rectangle に変更しました |
INode.SetLocation メソッド | 引数の型をSystem.Windows.Point からSystem.Drawing.Point に変更しました |
INode.SetSize メソッド | 引数の型をSystem.Windows.Size からSystem.Drawing.Size に変更しました |
IProject.IsDirty プロパティ | 継承元の IModel インタフェースで IModel.IsDirty プロパティを提供するように変更しました |
ISequenceNodeShape.Location プロパティ | プロパティの型をSystem.Windows.Point からSystem.Drawing.Point に変更しました |
ISequenceNodeShape.Size プロパティ | プロパティの型をSystem.Windows.Size からSystem.Drawing.Size に変更しました |
IWorkspace.OpenProject メソッド | 第3引数(省略可能)に excludeModelFiles を追加しました |
削除した API
V2.0で削除したAPIを列挙します。
NextDesign.Core
- IConnectorShapeStyleOverride インタフェース
- IFormElement.StyleOverride プロパティ
- IFormStyleOverride インタフェース
- INodeShapeStyleOverride インタフェース
- IShapeStyleOverride インタフェース
- IShape.StyleOverride プロパティ
- ITreeGridColumn.DataTypeName プロパティ
NextDesign.Desktop
- EditorOnDoubleClickEventParams クラス
追加した API
V2.0で追加したAPIを列挙します。
NextDesign.Core
- CustomDefinitionDescriptorBase クラス
- CustomEditorDefinitionDescriptor クラス
- CustomElementDefinitionDescriptor クラス
- ICustomEditor インタフェース
- ICustomEditorDefinition インタフェース
- ICustomEditorSettings インタフェース
- ICustomElementDefinition インタフェース
- IEditingCapabilityProvider インタフェース
- IEditingCapabilityProviderRegistry インタフェース
- IExecutionSpecificationShape.Length プロパティ
- IFeature.GetAssignedModels メソッド
- IFeatureModel.GetFeatureConstraint メソッド
- IField.DefaultValue プロパティ
- IField.TypeEnum プロパティ
- IFragmentShape インタフェース
- IInteraction.InteractionUses プロパティ
- IInteractionUse インタフェース
- IInteractionUseShape インタフェース
- ILifelineShape.Figure プロパティ
- IMessageShape.SelfloopBendsX プロパティ
- IMessageShape.SourceY プロパティ
- IMessageShape.TargetY プロパティ
- IModel.GetRichTextField メソッド
- IModel.GetRichTextFieldCustomData メソッド
- IModel.GetRichTextFieldFormats メソッド
- IModel.IsDirty プロパティ
- IModel.SetRichTextField メソッド
- IModel.SetRichTextFieldCustomData メソッド
- IModelCreationProvider インタフェース
- IModelEditorSelectionProvider インタフェース
- IModelInitializationProvider インタフェース
- IModelInitializationProviderInitializationContext インタフェース
- IModelReferenceProvider インタフェース
- INode.NodeStyle プロパティ
- INodeShapeStyle インタフェース
- INoteAnchorShape インタフェース
- INoteShape インタフェース
- IOperandShape インタフェース
- IProfile.RootPackage プロパティ
- IProject.EditingCapabilityProviderRegistry プロパティ
- IProject.OutputModelPaths プロパティ
- IProject.GetModelByPath メソッド
- ISequenceDiagram.Fragments プロパティ
- ISequenceDiagram.InteractionUses プロパティ
- ISequenceDiagram.NoteAnchors プロパティ
- ISequenceDiagram.Notes プロパティ
- ISequenceShape インタフェース
- IStyleProperty インタフェース
- IViewDefinitions.NewCustomEditorDef メソッド
- IViewDefinitions.NewCustomElementDef メソッド
- IViewDefinitions.RegisterCompartmentItemTextValueCallback メソッド
- IViewDefinitions.RegisterGetCompartmentItemTextStyleCallback メソッド
- IViewDefinitions.RegisterGetStyleCallback メソッド
- IViewDefinitions.RegisterGetTextStyleCallback メソッド
- IViewDefinitions.RegisterTextValueCallback メソッド
- IViewDefinitions.UnregisterStyleCallback メソッド
- ModelCreatableParams クラス
- ModelCreatableResult クラス
- ModelEditorCategoriesParams クラス
- ModelEditorCategoriesResult クラス
- ModelEditorCategory クラス
- ModelEditorSelectionParams クラス
- ModelEditorSelectionResult クラス
- ModelInitializationParams クラス
- ModelReferableParams クラス
- ModelReferableResult クラス
- ModelRelateParams クラス
- ModelRelateResult クラス
- ParamBase クラス
- PropertyDescriptor クラス
- PropertyGroupDescriptor クラス
- ResultBase クラス
NextDesign.Desktop
- BeforeDisposeEventArgs クラス
- BeforeProjectCloseEventArgs クラス
- CustomDescriptorBase クラス
- CustomEditorConfigs クラス
- CustomEditorDescriptor クラス
- CustomFinderDescriptor クラス
- CustomInspectorConfigs クラス
- CustomInspectorDescriptor クラス
- CustomNavigatorConfigs クラス
- CustomNavigatorDescriptor クラス
- CustomUIEventArgs クラス
- DisplayModeChangedEventArgs クラス
- DocumentGenerationOptions クラス
- DocumentGenerationResult クラス
- IApplication.CustomUI プロパティ
- IApplication.Resources プロパティ
- ICustomDescriptor インタフェース
- ICustomEditorView インタフェース
- ICustomFinder インタフェース
- ICustomInspector インタフェース
- ICustomNavigator インタフェース
- ICustomUI インタフェース
- ICustomUIRegistry インタフェース
- IDisplayMode インタフェース
- IEditorPage.ActiveInspector プロパティ
- IEditorPage.SubEditorModeName プロパティ
- IEditorPage.IsMainEditor メソッド
- IEditorPage.IsSubEditor メソッド
- IFinder インタフェース
- IModelEventDispatcher インタフェース
- InitializedEventArgs インタフェース
- IResourceUtility インタフェース
- IWorkspace.State プロパティ
- IWorkspace.GenerateDocument メソッド
- IWorkspace.GetModelUnitByLoadMode メソッド
- IWorkspace.LoadModelUnits メソッド
- IWorkspace.SaveAll メソッド
- IWorkspace.SetLoadMode メソッド
- IWorkspaceState インタフェース
- IWorkspaceWindow.Finder プロパティ
- OnHideEventArgs クラス
- OnShowEventArgs クラス
- ProjectAfterModelUnitLoadEventParams クラス
- ProjectOpenedEventArgs クラス
- WorkspaceStateChangedEventArgs クラス
統廃合予定の API
次回アップデート時に統廃合予定の API を列挙します。
NextDesign.Desktop
- IApplication.CreateSearch メソッド
- ICommonUI.MessageBox メソッド
- IContext.Application プロパティ
- IEditorPage.ActiveInfoWindow プロパティ
- IEditorPage.CurrentOutputCategory プロパティ
- IEditorPage.CurrentInfoView プロパティ
- IWorkspace.CreateSearch メソッド
note
- 統廃合予定のAPIは V2.0でも継続利用可能ですが、DLL方式のエクステンションとしてビルドすると警告メッセージが表示されます。