VS:RunTempTool/ja

From Vectorworks Developer
Jump to navigation Jump to search

.VectorScript|VectorScript ..VS:Function Reference|Function Reference ..VS:Function_Reference_Appendix|Appendix

Description

テンポラリツール関数を呼ぶ。ツール関数が終了するまで待機します。コールバック関数へはツールイベントが通知されます。

PROCEDURE RunTempTool(
toolCallback :PROCEDURE;
initialScroll :BOOLEAN);
def vs.RunTempTool(toolCallback, initialScroll):
    return None

Parameters

toolCallback PROCEDURE ツールイベントで呼ばれる手続き
initialScroll BOOLEAN 上級者向け。FALSE:単純なテンポラリーツール TRUE:ツールを実行する前に原点(0,0)にひとつ点を追加されます。これにより最初のクリックの前にスクロールされます。よってツールハンドラでこの点を認識してスキップする必要がある。

Example

PROCEDURE Test;
VAR
    pt1, pt2 : POINT;

    FUNCTION TempToolCallback(action, msg1, msg2 : LONGINT) : LONGINT;
    VAR pt : POINT;
    BEGIN
         TempToolCallback := 0;
         CASE action OF
             3: BEGIN {kOnToolDoSetupEventID}
		             vstSetHelpString ( 'Just click once.' );
             END;

             103 : BEGIN {kToolDrawEventID}
                 vstGetCurrPt2D( pt.x, pt.y );
                 vstDrawCoordLine( pt.x, pt.y, pt1.x, pt1.y );
                 vstDrawCoordLine( pt.x, pt.y, pt2.x, pt2.y );
             END;
         END;
    END;

BEGIN
    pt1.x := 0; pt1.y := 0;
    pt2.x := 100mm; pt2.y := 100mm;
    RunTempTool( TempToolCallback, FALSE );
END;
RUN( Test );

Version

Availability: from Vectorworks 2010