enterMultiRep
enterMultiRep( [?promptsl_promptList] [?pointsl_pointList] [?forms_form] [?addPointProct_addProcName] [?delPointProct_delProcName] [?initProct_initProcName] [?doneProct_doneProcName] [?formProct_formProcName] [?dontDrawg_dontDraw] [?alwaysMapg_alwaysMap] [?acceptStringg_acceptString] [?acceptNumberg_acceptNumber] [?noInfixg_noInfix] [?cmdNamet_cmdName] [?cursorx_cursor] ) =>l_point_list/nil
Description
Identical to enterSegment except that the two points can be in windows viewing different cellviews.
This is the only enterfunction that allows this capability. All others accept input only in windows viewing the same Cellview (known as equivalent windows).
Arguments
|
List of prompt strings to be displayed in the CIW. Only the first two strings are used. |
|
|
List of no more than two points. If both points are supplied, they are adjusted and returned with no further interaction. In this case, the two points are both assumed to be in the current window. If one point is supplied, it is adjusted and displayed as if the user had entered it. After the first point is entered a rubberbanding line appears between the point and The rubberbanding line appears only while the cursor is in windows equivalent to the window in which the first point was entered. When the second point is entered, the function terminates and returns the list of points entered. If the second point is entered in a window that is not equivalent to the first, it is returned in coordinates corresponding to the window in which it was entered. Normally this is not a problem. If the two windows, however, have different database-to-user-unit conversion factors, the result might not be as expected. The segment obeys the current snap mode and snap shape rule when in Graphics Editor windows. |
|
|
Options form created with |
|
|
Name of the SKILL function to be called when a point is entered. |
|
|
Name of the SKILL function to be called when a point is deleted. |
|
|
Name of the SKILL function to be called immediately after the enterfunction is started and before any data entry. |
|
|
Name of the SKILL function to be called when the enterfunction is terminated. |
|
|
Name of the SKILL function to be called when the options form is displayed. |
|
|
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. |
|
|
Name you associate with the enterfunction. If the command name is set, it can be accessed with |
|
|
An integer argument that will default to an appropriate cursor. For example, |
|
Value Returned
Retrieve data through the callback procedure t_doneProcName instead of using the return value for this enterfunction.
Examples
Displays the prompt Enter the second point in the CIW prompt line.
procedure( segDone( w done pts )
if( done then
printf("Segment extends from %L to %L.\n"
w hiGetCurrentWindow())
else
println("Segment entry aborted.")
)
)
procedure( segInit( )
w = hiGetCurrentWindow( )
firstWindow =
evalstring(cadr(parseString(sprintf(nil "%L" w) ":")))
)
procedure( myEnterSegment( )
segInit( )
enterMultiRep(
?prompts list( "Enter the first point."
"Enter the second point." )
?doneProc "segDone"
?noInfix t
)
)
Sets the infix mode on and bind the s key to the procedure myEnterSegment. Type the s key in a Schematics window at location p1. Because of the noInfix flag, the infixOn flag is ignored. The prompt “Enter the first point” is displayed in the CIW. Enter point p1 in window(2). The rubberbanding line appears between p1 and the cursor location.
window(1)->infixOn = t
hiSetBindKey("Schematics" "<Key>s" "myEnterSegment( )")
Enter point p2 in window(3), which views a different cellview. doneProc prints out the specified message:
Segment extends from window:2 to window:3.
The enterfunction returns the point list:
( p1 p2 )

Related Topics
Return to top