SDM エンジン

Styling and Data Mapping (SDM) エンジンは、グラフィックへのデータ・マッピングを制御するため、JViews Diagrammer の最も重要な部分の 1 つです。グラフィックへのデータ・マッピング過程には、4 つの主要な要素があります。
  • 表示/編集データとのインターフェースの役割を果たすデータ・モデル。このデータ・モデルは、完全に GUI から独立しており、使用アプリケーションのビジネス・オブジェクトのみを参照します。
  • ダイアグラムを全体としてスタイリングするレンダラーおよびそれに含まれるグラフィック・オブジェクト。スタイル・シートで指定されたスタイルを適用するレンダラー。
  • グラフィック・オブジェクトがデータ・モデルを表示するグラファーはノードおよびリンク として作成されます。これは、ダイアグラムを描画するのに最低限必要なインフラストラクチャーを提供します。
  • グラフィック・オブジェクト上のユーザー・アクションを許可するインタラクター。共通の要件には、ズーム、パン、選択およびオブジェクト作成機能があります。
diaext_dtogmapping.png
SDM エンジンおよびデータからグラフィックへのマッピング
上の図に示すように、データ・モデルとグラフ表示の間のマッピングは双方向で行われます。
  • データ・モデルからグラフィック: レンダリング・プロセスは、スタイル・シートで制御されます。これによって、SDM エンジンに、各特定の種類のデータ・オブジェクトをグラファーにどのように表示させるかを伝えることができます。レンダリング・プロセスは、専用レンダラーによって行われます。
    • データ・モデルが読み込まれると、SDM エンジンがそれをチェックし、グラファー内でデータ・モデルによって定義されたノードとリンクを表すグラフィック・オブジェクトを作成します。
    • データ・モデルにおけるオブジェクトの状態が変更されると、SDM エンジンは、変更されたデータ・オブジェクトを表すグラフィック・オブジェクトを更新します。
  • グラフィックからデータ・モデル: 編集プロセスは、基底データ・モデルに直接働きかけるビルトイン編集機能に基づいています。編集アプリケーションでのアクションは、インタラクターによって実装されます。次に例を示します。
    • (例えば、エディターで) ユーザーがグラフィック・オブジェクトを移動させると、SDM エンジンがデータ・モデル内でオブジェクトの幾何学プロパティーを更新します。
    • (例えば、ナビゲーション・アプリケーションで) ユーザーがノードを展開したり折りたたむと、SDM エンジンはデータ・モデル内のオブジェクトの展開/折りたたみ状況を更新します。