Skip to content

ATF Simple DOM Editor WPF Sample_j

Gary edited this page Mar 17, 2015 · 6 revisions

Table of Contents

説明

SimpleDomEditorWpf は SimpleDomEditor サンプルによく似ていますが、ATF の WPF フレームワークを使用して実装されている点が異なります。SimpleDomEditorWpf はドキュメントオブジェクトモデル (DOM) の使用例を、イベントシーケンスを含むデータを使用して示します。イベントにはリソースが含まれることもあります。各イベントシーケンスファイルは WPF の ListView コントロールに表示され、選択、編集が可能なすべてのイベントとリソースおよび、編集用に選択されたアイテムのプロパティが示されます。[リソース] エディターは最後に選択されたイベントを追跡して、そのリソースを別の ListView コントロールに表示します。

SimpleDomEditorWpf は、複数ドキュメントを管理するための IDocumentClient の実装方法やドキュメントフレームワークの使用方法および、[ファイル] メニューアイテムの実装方法を示します。また、UI パーツパレットの実装方法、イベントおよびリソースの編集可能なリストの表示方法、データをリストに適合させる方法、およびアクティブな編集中コンテキストを追跡するための ContextRegistry の使用方法も示されます。さらに、ATF コマンドコンポーネントを使用して、元に戻す/やり直しおよび、切り取り/貼り付けのコマンドを取得できるようにデータを適合させる方法、選択された UI 要素のプロパティを編集可能にする方法、および標準のヘルプ/バージョン情報ダイアログの実装方法も示します。

サンプルのプログラム方法に関する詳細は、Simple DOM Editor WPF Programming Discussion をご覧ください。

SimpleDomEditorWpf が示す ATF の機能

  • EventSequence.xsd XML スキーマを使用するデータモデルを定義します。XML はアプリケーションデータにも使用されます。
  • DomGen を使用して、アダプターが使用する DOM メタデータを自動生成します。
  • アダプターを使用して、イベントシーケンスデータモデルを作成するための DOM を装飾します。
  • IDocumentClient およびドキュメントフレームワークを使用して、複数ドキュメントを管理します。
  • IPaletteClient を実装して、UI パーツパレットを作成します。
  • ContextRegistry を使用して、アクティブな編集コンテキストを追跡します。編集中の場所にアプリケーションコンポーネントが常に適用されるようにします。
  • IInstancingContext および ISelectionContext のインターフェイスを使用して、データを編集コマンドに適合します。
  • WPF ATF PropertyEditor コンポーネントを使用して、選択された UI 要素のプロパティを編集可能にします。

SimpleDomEditorWpf の実行

  1. \bin\wws_atf\Release にある SimpleDomEditorWpf.exe をダブルクリックします。
  2. [Simple] ウィンドウが表示されます。
  3. ツールバーボタンまたは [ファイル] メニューアイテムを使い、ファイルを作成したり開いたりすることができます。

SimpleDomEditorWpf には以下のウィンドウがあります。

  • [パレット] (イベントとリソースを含む): [イベント]、[アニメーション]、または [ジオメトリ] を選択します。
  • イベントシーケンスファイル: 編集中のイベントシーケンスファイルです。複数のドキュメントをサポートします。
  • [プロパティエディター]: リストコントロール内で、選択したイベントまたはリソースのプロパティを編集します。
  • [リソース]: アクティブなイベントシーケンスファイル内の選択されたイベントのリソースを一覧表示します。
ツールバーおよびメニューバーには標準的な機能が含まれています。ファイル管理の機能には、保存、新規作成、既存のファイルを開くなど、編集機能には、切り取り、コピー、貼り付け、削除、元に戻す/やり直しがあります。[編集] メニューには標準的な編集機能に加え、キーボードショートカット、[設定を読み込み/保存]、[基本設定] が含まれます。[ウィンドウ] メニューアイテムを使用して、ウィンドウの表示/非表示を切り替えられます。[ヘルプ] では、SimpleDomEditorWpf に関する情報が提供されます。

SimpleDomEditorWpf の使用法

起動する手順を次に示します。

  1. イベントシーケンスファイルを作成します。SimpleDomEditorWpf のメニューから [ファイル] > [イベントシーケンスを新規作成] を選択します。[名前を付けて保存] ダイアログボックスが表示されます。イベントシーケンスファイルの保存場所と新しい名前を指定して、[保存] をクリックします。編集キャンバスに空のシーケンスファイルが開かれます。
  2. [パレット] から、[イベント] を編集キャンバスのイベントシーケンスファイルにドラッグアンドドロップします。
  3. イベントを選択して、イベントのプロパティを表示、編集します。
リソースを追加する手順を次に示します。
  1. イベントをクリックして選択します。
  2. リソース (アニメーションまたはジオメトリ) を [リソース] ウィンドウにドラッグアンドドロップします。
  3. リソースを選択して、リソースのプロパティを表示し編集します。

SimpleDomEditorWpf のモジュール

モジュールには次のような機能があります。

  • App.xaml.cs: 部分クラス App を含みます。このモジュールは、使用されている ATF コンポーネントおよび内部 MEF コンポーネントをリストした TypeCatalog を作成します。
  • EventSequenceView.xaml: イベントシーケンスの表示を管理する EventSequenceView を定義します。
  • ResourceListView.xaml: リソースの表示を管理する ResourceListView を定義します。
  • Editor.cs: IDocumentClient を実装し、ドキュメントフレームワークを使用して [ファイル] メニューのコマンドを実装します。
  • PaletteClient.cs: IPaletteClient を実装し、IPaletteService を使用して UI パーツパレットを作成します。
  • ResourceListEditor.cs: 直近に選択されたイベントのリソースを表示します。
  • EventSequenceContext.cs: ATF インターフェイスである IInstancingContext および ISelectionContext を実装し、ATF コマンドコンポーネントを使用して EventSequenceView で、元に戻す/やり直し、切り取り/貼り付け、および選択のコマンドを取得できるようにイベントデータを適合させます。
  • ResourceListContext.cs: ATF インターフェイスである IInstancingContext および ISelectionContext を実装し、ATF コマンドコンポーネントを使用して ResourceListView で、元に戻す/やり直し、切り取り/貼り付け、および選択のコマンドを取得できるようにリソースデータを適合させます。
  • EventSequenceDocument.cs: DomDocument を拡張し、IDocument を実装します。

このセクションのトピック一覧

Clone this wiki locally