矢尻の形の変更

関連・オブジェクトは、両端の矢尻の形を変更できます。

関連・オブジェクト用のシェイプは共通して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
}

関連するクラス/インタフェース