2017-11

スポンサーサイト

上記の広告は1ヶ月以上更新のないブログに表示されています。
新しい記事を書く事で広告が消せます。

GMF練習

GMFを使いこなせるように、チュートリアルをこなしていく。
http://wiki.eclipse.org/index.php/GMF_Tutorial

が、結構英語はいい加減に読んでる物なので、ちょっとした単語の意味の取り違えで
つまづくこと多数、、。

そこでぐぐってみたらこんなものが。
http://codezine.jp/a/article.aspx?aid=417
日本語でのGMFのチュートリアル。
ここを見ながら、やるべき事を捕捉していっていちおう英語チュートリアル版に対応する
エディタは起動した。
が、何故かリレーションは作れないけど。なんでだろ?

練習にそのあとcodezineの方の手順でもやるものを試みてみる。
しかし、codezineのチュートリアルのecoreファイルが見付からない。
ダウンロードできるのはチュートリアルの物をベースにはしているだろうけども、
あくまで改造した後の物であってこのチュートリアルの物じゃない,,,,,.
だから、一から作りなおしたけど、こちらでもリレーション作れてないからな。
間違いがまだどこかにあるのかもしれない。

ちなみに自作で作りなおしたのはこれ。

<?xml version="1.0" encoding="UTF-8"?>
<ecore:EPackage xmi:version="2.0"
xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:ecore="http://www.eclipse.org/emf/2002/Ecore" name="sample"
nsURI="sample" nsPrefix="sample">
<eClassifiers xsi:type="ecore:EClass" name="State">
<eStructuralFeatures xsi:type="ecore:EAttribute" name="name" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="StateChart">
<eStructuralFeatures xsi:type="ecore:EReference" name="state" upperBound="-1"
eType="#//State" containment="true"/>
</eClassifiers>
</ecore:EPackage>


それに、やるべき事が多すぎて、どれか忘れるとエラーが発生するのでしんどい。
一度手順を覚えてしまえば間違えないんだろうけどなぁ。
大まかな流れを書いておこう。

New GMF Projectから新しくプロジェクトを作る(空のプロジェクトから作っていってはダメ)

ecoreファイルを作る。(これビジュアルエディタから作れないのかな?)

新規作成でEMFの中にあるEMF Modelをえらび、ecoreファイルから読み込んで
.genmodelを作る。(GMF外にあるので忘れやすい)

.genmodelのファイルの中のルート要素からgenerate ALLを選び、
EMFエディタとして必要なファイルを作成する

GMF Graph Simple Modelから、.gmfgraphを作成する。

GMF Tool Simple  Modelから、.gmftoolを作成する。

Guide GMFMapCreationから、.gmfmapを作成する。

.gmfmap内のLabel Mapping のDiagram Labelに要素が入ってないことが多いので、
これをきちんと選択してやる。

.gmfmapのファイルを右クリックしてCreate Generator Modelを走らせる。.gmfgenが作成される

.gimfgenのファイルを右クリックしてCreate Dialog Modelを走らせる。.diagramのプロジェクトができあがり、
あとは、Eclipse applicationを奔らせれば、新しいeclipseに、今作ったエディタが起動する。

ライブラリがcannot resolvedとなってたら、どれかファイルを作り忘れてる可能性が大きいので、
さまよえる人は一度根本に戻ってためしてみるといいかも。

さてと、まずはリレーションをきちんと動かせるようにするのと、
ビジュアルエディタ上の要素からファイルの起動というのは絶対やりたいことだからそれの方法の習得だな。

まえGEFでも挑戦してみたけども、モデルインスタンスとファイルハンドルインスタンスが
使ってる関数がだいぶはなれてるんで、えらい遡って、関数の引数に
ファイルハンドルインスタンスを持つインスタンスをつけてく改造やって、
なんかえらい重くなって放置した過去がある、、、。
できたら、ecoreの設定だけですませられたらいいんだけどな、、、、。
それか、簡単な関数付けるだけでいけるとか。
スポンサーサイト

コメント

トラックバックどうもです

日本語でのGMFチュートリアルを書いた者です。
>それに、やるべき事が多すぎて、どれか忘れるとエラーが発生するのでしんどい。
同意。さらにエラーメッセージの意味不明さが拍車をかけていると思います。

>ビジュアルエディタ上の要素からファイルの起動
モデルにファイルのパスを持たせておいて、Eclipse APIのIWorkbenchPage.openEditor当たりを呼ぶと動作も軽くて良いと思います。

コメントの投稿


管理者にだけ表示を許可する

トラックバック

http://parathion.blog76.fc2.com/tb.php/4-75412ab0
この記事にトラックバックする(FC2ブログユーザー)

«  | HOME |  »

プロフィール

パラジョン

Author:パラジョン
FC2ブログへようこそ!

最近の記事

最近のコメント

最近のトラックバック

月別アーカイブ

カテゴリー

ブロとも申請フォーム

この人とブロともになる

ブログ内検索

RSSフィード

リンク

このブログをリンクに追加する

上記広告は1ヶ月以上更新のないブログに表示されています。新しい記事を書くことで広告を消せます。