VS:RunTempTool/ja

From Vectorworks Developer
Jump to navigation Jump to search
The printable version is no longer supported and may have rendering errors. Please update your browser bookmarks and please use the default browser print function instead.

.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