|
関連・オブジェクトは、両端の矢尻の形を変更できます。
関連・オブジェクト用のシェイプは共通してjp.carabiner.inkpod.pi.shape.PReltionObjectShapeインターフェースを持ちます。この、startArrowShapeName、endArrowShapeNameプロパティで、それぞれ始点と終点の矢尻の形を変更できます。
startArrowShapeName, endArrowShapeNameには、矢尻の形を表す名前を文字列で設定します。矢尻の名前は、jp.carabiner.inkpod.pi.shape.arrow.BasicArrowShapeTypeTableクラスのstaticフィールドに定義されている、jp.carabiner.inkpod.pi.shape.arrow.ArrowShapeTypeオブジェクトのnameプロパティから得ることができます。例えば、Packages.jp.carabiner.inkpod.pi.shape.arrow.BasicArrowShapeTypeTable.SIMPLE_WIDE_ARROW_SHAPE.name は、幅広の矢尻の名前です。
終点の矢尻の形を、幅広の矢尻に変更するサンプルです。「オブジェクト」メニューに「矢印の変更」というメニュー項目を追加します。関連・オブジェクトを選択して、このメニュー項目を選択すると幅広の矢尻に変わります。
importClass(Packages.jp.carabiner.inkpod.pi.shape.ArrowShapeName);
function extendUI(event) {
inkpod.ui.actions.addAction({
id : "SAMPLE_CHANGE_ARROW",
text : "矢印を変更",
action : function(frame, event) {
var model = frame.model;
var object = model.singleSelectedObject;
if(!(object.shape instanceof Packages.jp.carabiner.inkpod.pi.shape.PAbstractRelationShape)) {
frame.alert("関連オブジェクトを選択してください。");
return;
}
object.shape.endArrowShapeName = Packages.jp.carabiner.inkpod.pi.shape.arrow.BasicArrowShapeTypeTable.SIMPLE_WIDE_ARROW_SHAPE.name;
}
});
inkpod.ui.menuBar.objectMenu.addMenuItem("SAMPLE_CHANGE_ARROW");
}
function init()
{
inkpod.ui.addUIExtensionListener(extendUI);
}
function dispose()
{
}
plugin = {
init : init,
dispose : dispose
}