Skip to content

ATF Simple DOM Editor Sample_j

Gary edited this page Mar 17, 2015 · 2 revisions

Table of Contents

説明

SimpleDomEditor は ドキュメントオブジェクトモデル (DOM) の使用を示すサンプルエディターです。SimpleDomEditor は一連のイベントを含むイベントシーケンスファイル (.xml または .esq ファイル) を操作します。イベントには、リソース (アニメーションおよびジオメトリ) が含まれます。各イベントシーケンスファイルは ListView コントロールに表示されます。すべてのイベントとリソースが表示されますが、これらは選択して編集することが可能です。また編集するために選択されたアイテムのプロパティも表示されます。エディターは、複数のイベントシーケンスファイルを読み込むことができます。[リソース] エディターは最後に選択されたイベントを追跡して、そのリソースを別の ListView コントロールに表示します。

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

SimpleDomEditor が示す ATF の機能

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

SimpleDomEditor の実行

  1. \bin\wws_atf\Release にある SimpleDomEditor.exe をダブルクリックします。
  2. 前回の SimpleDomEditor の実行を、イベントシーケンスファイルが何も開かれていない状態で終了した場合は、[名前を付けて保存] ウィンドウが表示されます。この場合は、イベントシーケンスファイルの保存場所と新しい名前を指定して、[保存] をクリックします。ツールバーボタンまたは [ファイル] メニューアイテムを使ってファイルを作成したり開いたりすることもできます。
  3. [Simple DOM Editor] ウィンドウが表示されます。

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

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

SimpleDomEditor の使用法

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

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

SimpleDomEditor のモジュール

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

  • Program.cs: Main プログラムを含みます。このプログラムが、使用されている ATF コンポーネントおよび内部 MEF コンポーネントをリストした TypeCatalog を作成します。
  • Editor.cs: IDocumentClient を実装し、ドキュメントフレームワークを使用して、複数ドキュメントを管理し、[ファイル] メニューコマンドを実装し、起動時にドキュメントを自動作成して開きます。
  • PaletteClient.cs: IPaletteClient を実装し、IPaletteService を使用して UI パーツパレットを作成します。
  • EventListEditor.cs: ListView と ListViewAdapter を使用して、イベントおよびリソースの編集可能なリストを表示します。
  • ResourceListEditor.cs: 直近に選択されたイベントのリソースを表示し編集します。イベントとリソースのドラッグドロップおよび右クリックコンテキストメニューを処理します。
  • EventSequenceContext.cs および EventContext.cs: IListView、IItemView、および IObservableContext インターフェイスを使用して、データをリストに適合させます。
  • EventSequenceContext.cs および EventContext.cs: ATF インターフェイスである IInstancingContext、ISelectionContext、および IHistoryContext を実装し、ATF コマンドコンポーネントを使用して、元に戻す/やり直し、切り取り/貼り付け、および選択のコマンドを取得できるようにデータを適合させます。
  • DomNodeNameSearchControl.cs: 現在アクティブなドキュメント上で DOMNode 名を検索および置換するための簡単な GUI を定義します。
  • HelpAboutCommand.cs: 標準のヘルプ/バージョン情報ダイアログを実装します。

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

Clone this wiki locally