changeEnterFun
changeEnterFun(s_enterFun[?promptsl_promptList] [?pointsl_pointList] [?wantPointsx_pointLimit] [?forms_form] [?addPointProct_addProcName] [?delPointProct_delProcName] [?initProct_initProcName] [?doneProct_doneProcName] [?formProct_formProcName] [?pathStylet_pathStyle] [?cursorx_cursor] [?pathWidthf_pathWidth] [?beginExtentf_beginExtent] [?endExtentf_endExtent] [?dontDrawg_dontDraw] [?alwaysMapg_alwaysMap] [?acceptStringg_acceptString] [?acceptNumberg_acceptNumber] [?noInfixg_noInfix] [?cmdNamet_cmdName] [ ?targetl_point] ) =>t / nil
Description
Changes the current enterfunction to another one.
Since this function uses the current window to determine which enterfunction to change, make sure to properly set the current window before using this function. See for information about setting the current window.
You can use changeEnterFun to get immediate response to any changes the user makes to the values on the option forms.
s_enterFun is the symbol of the enterfunction you want to change. For example, if you want to change to an enterBox, you specify the argument as ’enterBox.
changeEnterFun should always be provided with a ?doneProc argument.
changeEnterFun cancels the current enterfunction and then changes it to the new one. The call to the original enterfunction remains blocked until the changed enterfunction exits. When the new enterfunction is completed, it calls doneProc. Do not use changeEnterFun without specifying a doneProc because it will not return from the original enterfunction until the changed enterfunction returns or is canceled.
changeEnterFun allows a union of all the enterfunction arguments, although it uses only the arguments that apply to the enterfunction specified by s_enterFun.
Arguments
|
List of points that can be preloaded for the new enterfunction to operate o |
|
|
Cursor that is used when the enterfunction is active. For more information on all available cursors see hiSetCursor. |
|
|
Beginning extension to use if the new enterfunction is |
|
|
Ending extension to use if the new enterfunction is |
|
|
Determines whether or not to immediately display the options form. |
|
|
Determines whether or not to accept string input without terminating the enterfunction. |
|
|
Determines whether or not to accept numeric input without terminating the enterfunction. |
|
|
The name of the new enterfunction. You can use this name as an identifier to control nesting. |
|
|
The target point to which a flight line is drawn from the current cursor.
This argument is valid only for the |
|
Values Returned
Examples
circleForm is a form containing options for drawing a circle. Here, because the alwaysMap flag is t, the form is displayed. The prompt in the CIW reads Center. Enter point p1. The prompt reads Radius, and a rubberbanding circle with center at p1 follows the cursor.
procedure( circleDone( w done pts )
if( done then
printf("Circle = %L\n" pts )
else
println("Circle entry aborted.")
)
)
procedure( ellipseDone( w done pts )
if( done then
printf("Ellipse = %L\n" pts )
else
println("Ellipse entry aborted.")
)
)
enterCircle( ?prompts list( "Center" "Radius")
?doneProc "circleDone" ?form circleForm ?alwaysMap t)
The message Circle entry aborted is printed, and the circle options form and the rubberbanding circle disappear as explained above. The prompt in the CIW is changed to First corner, and the ellipseForm appears. Enter p2, and a rubberbanding ellipse is drawn.
changeEnterFun( 'enterEllipse
?prompts list( "First Corner" "Second Corner")
?doneProc "ellipseDone" ?form ellipseForm ?alwaysMap t)
Related Topics
Return to top