/* Création des réseaux sur un circuit n'en contenant aucun */
/* Version 1.00, 18 août 2001 */
/* $VER: CreateNets 1.00, © R.Florac 18/08/01 */

options results     /* indispensable pour récupérer le résultat des macros */

signal on error     /* pour l'interception des erreurs */
signal on syntax

call 'ARexx/InitObjets.AmiPCB'

'FINDOBJ(0,PAD,-1,-1)'
p=result
do while p>0
    'GETNET('p')'
    if result=0 then do
	'GROUP('p')'
	if result>0 then do
	    p0=p
	    p1=0
	    'UNMARK(0):MARK('p'):MENU("Select track")'
	    do while p0>0
		'GROUP('p0')'
		if result>0 then do
		    if p1>0 then 'NET('p0','p1')'
		    p1=p0
		end
		'FINDOBJ('p0',-PAD,-1,-1)'
		p0=result
	    end
	end
    end
    'FINDOBJ('p',PAD,-1,-1)'
    p=result
end
'MENU("Réduire chevelu")'
exit

/* Traitement des erreurs, interruption du programme */
syntax:
erreur=RC
'LANGUAGE'
if result="français.language" then 'MESSAGE("Script CreateNets.AmiPCB"+CHR(10)+"Erreur de syntaxe"+CHR(10)+"en ligne 'SIGL'"+CHR(10)+"'errortext(erreur)'")'
else 'MESSAGE("CreateNets.AmiPCB script"+CHR(10)+"Syntax error"+CHR(10)+"in line 'SIGL'"+CHR(10)+"'errortext(erreur)'")'
exit

error:
'LANGUAGE'
if result="français.language" then 'MESSAGE("Script CreateNets.AmiPCB"+CHR(10)+"Erreur en ligne 'SIGL'")'
else 'MESSAGE("CreateNets.AmiPCB script"+CHR(10)+"Error in line 'SIGL'")'
exit
