Reflective Ecore Model Diagram Editor 0.1.0をリリースしました!
とうとう私が作ったEclipseプラグインをsourceforge.netに公開しました。UNIXプロジェクト名は「dynamicgmf」、正式名は「Reflective Ecore Model Diagram Editor」です。
- プロジェクトのURL:
http://sourceforge.net/projects/dynamicgmf/
- リリース0.1.0のダウンロード:
http://sourceforge.net/project/showfiles.php?group_id=203088&package_id=241965&release_id=531602
以下がスクリーンショットです。
Reflective Ecore Model Diagram Editorは、EMFに含まれている「Sample Reflective Ecore Model Editor」のGMF版という感じです。GMFの通常の使い方としては、ある特定のEMFモデルをグラフィカルに編集可能なエディタを自動生成することです。GMFを使って自動生成したエディタによって、その特定のEMFモデルに対するインスタンスをグラフィカルに編集可能になります。他のEMFモデルのインスタンスを編集することはできません。一方、Reflective Ecore Model Diagram Editorは、任意のEMFモデルに対するインスタンスをグラフィカルに編集可能です。
Reflective Ecore Model Diagram Editorでは、新規ファイルを作成する際に編集するインスタンスのメタモデルであるEMFモデルを指定します。すると、そのEMFモデルをロードしグラフィカルエディタを動的に構築します。
リリース0.1.0では、指定可能なEMFモデルは.xsdファイルのみです。近い将来、.ecoreファイルを指定可能にする予定です。
.xsdファイルをEMFモデルとして指定して新規ファイルを作成した場合、Reflective Ecore Model Diagram Editorはその.xsdファイル(XMLスキーマ)に準拠したXMLファイルを編集するXMLエディタと見ることができます。実際、編集されたファイルは指定したXMLスキーマでvalidation可能です。
現在把握している問題点は以下の通りです。
- Reflective Ecore Model Diagram Editorを複数起動すると正常動作しません。
- GMFで生成された他のエディタを起動すると、Reflective Ecore Model Diagram Editorに含まれるGMF関係のプロバイダがNullPointerExceptionをスローしてしまいます。
- "Reference"リンクは張り替えできません。張り替えるには、いったんそのリンクを削除し、新たにリンクを張り直してください。
コメント等ありましたら、是非上記プロジェクトのforumにください。よろしくお願いします!