1/* 2 * This macro displays a popup menu showing all lines in the file that are named 3 * as a result of a SET POINT command. When a line is selected, that line becomes current. 4 */ 5Trace o 6lf = D2c(10) 7'extract /line/point *' 8If point.0 = 0 Then Call Abort 'No named lines exist' 9line = '' 10max_line = 0 11max_name = 0 12save_line = line.1 13Do i = 1 To point.0 14 If Length( Word( point.i, 1 ) ) > max_line Then max_line = Length( Word( point.i, 1 ) ) 15 If Length( Word( point.i, 2 ) ) > max_name Then max_name = Length( Word( point.i, 2 ) ) 16 ':'Word( point.i, 1 ) 17 'extract /curline' 18 point.i = point.i curline.3 19End 20':'save_line 21Do i = 1 To point.0 22 line = line || Right( Word( point.i, 1 ), max_line ) Left( Word( point.i, 2 ), max_name) Subword( point.i, 3 ) || lf 23End 24'popup centre' lf || line 25idx = popup.2 26If idx \= 0 Then ':'Word( point.idx, 1 ) 27Return 28 29Abort: 30Parse Arg msg 31'emsg' msg 32exit 0 33