掲示板一覧   -   トピック一覧
   EA API
     シーケンス図にメッセージ(Connector)の追加/削除を行った場合の後処理


フラット表示 前のトピック | 次のトピック
投稿者 トピック
mogass
投稿日時: 2006-12-4 18:00
EA Administrator
投稿: 171

シーケンス図にメッセージ(Connector)の追加/削除を行った場合の後処理

○ご質問

「ヘルプ」「APIとアドイン」「サンプルコード」の「接続を追加する」に習い、
Connectorの追加を行った後にEA.Diagram.ReorderMessage()や
EA.Diagram.Update()を呼んでみたのですが、シーケンス図の変化が
確認出来ませんでした。

既に開いているシーケンス図に対しては
EA.Repository.ReloadDiagram(int diagramID)
まだ開いていないシーケンス図に対しては
EA.Repository.OpenDiagram(int diagramID)
を呼ぶことで、シーケンス図に Connectorが追加されていることが
確認出来ました。
削除(DeleteAt)した場合も同様でした。

シーケンス図に対する ReorderMessage()や Update()はどのような
場合に有効なのでしょうか?
あるいは、あえて呼ぶ必要は無いのでしょうか?

○回答

シーケンス図にメッセージ(Connector)の追加/削除を行った場合の後処理
につきまして、ご指摘の通りの操作で正しい挙動になるかと思います。

> 既に開いているシーケンス図に対しては
> EA.Repository.ReloadDiagram(int diagramID)
> まだ開いていないシーケンス図に対しては
> EA.Repository.OpenDiagram(int diagramID)

EA.Diagram.ReorderMessage()につきましては、ヘルプの説明にて混乱を
招いてしまい誠に申し訳ございません。
ReorderMessage()はコラボレーション図のメッセージの、先頭の番号の
並び替えを行うために用意されているようです。
シーケンス図の操作の場合には呼ぶ必要はございません。

シーケンス図の場合、EA.Diagram.Update()も後処理にて呼ぶ必要はあまり
ございません。ダイアグラムそのもののプロパティなどを変更した際には
もちろんUpdate()を実行しますが、要素や接続などの操作のみを行った場合
のEA.Diagram.Update()はどこにも影響を及ぼさないためです。
(EA.Diagram.Update()はクラス図などの操作の際に有効です。)
フラット表示 前のトピック | 次のトピック

題名 投稿者 日時
 » シーケンス図にメッセージ(Connector)の追加/削除を行った場合の後処理 mogass 2006-12-4 18:00