AcadRegisterCommand
AcadRegisterCommand
AcadRegisterCommand(nomeComandoAcad, luaCode, tab {options})
obsoleta:
AcadRegisterCommand(nomeComandoAcad, luaCode, [options])
- nomeComandoAcad
- (tipo stringa) nome del comando da definire.
- luaCode
- (tipo stringa/funzione) codice lua da eseguire
- options (opzionale)
- versione obsoleta: (tipo stringa) opzioni aggiuntive
versione aggiornata: (tipo tabella) opzioni aggiuntive, nel formato:
Nome Campo |
Tipo |
Descrizione |
options |
stringa |
Specifica il comportamento del comando (vedi sotto). |
group |
stringa |
Gruppo di comandi al quale aggiungere il comando. Se omesso lo aggiunge a "LuaCommands" |
Registra un comando in AutoCAD come un comando interno. Digitando nomeComandoAcad al prompt 'Comando:' viene eseguito il codice luaCode. Può essere passata sia la stringa con il nome della funzione, sia la funzione vera e propria.
La stringa "options" contiene le opzioni di registrazione del comando in AutoCAD\BricsCAD.
Le opzioni attualmente accettate sono:
- "-session" : Indica un comando eseguito in application context
- "-transparent" : Il comando più essere richiamato mentre ne è in esecuzione un'altro SENZA interromperlo.
- "-usepickset" : Quando il PICKFIRST (selezione) viene recuperata, NON viene cancellato in AutoCAD.
- "-redraw": Quando il PICKFIRST (selezione) viene recuperata, viene cancellato in AutoCAD.
- "-noperspective" : Il comando NON potrà essere eseguito mentre la viewport (finestra) corrente è in modalità "prospettiva".
- "-notilemode" : Il comando NON potrà essere eseguito se la variabile TILEMODE è settata ad 1
- "-nopaperspace" : il comando NON sarà disponibile in Spazio Carta
- "-undefined" : Il comando potrà essere richiamato solo attraverso la sintassi del cmdGroupName
- "-defun" : Questo flag può essere impostato solo dal motore Visual LISP. Il comando può essere richiamato come una funzione LISP e può quindi utilizzare acedGetArgs () per ricevere argomenti da LISP e può utilizzare le funzioni acedRetXxx () per restituire valori a LISP.
- "-docreadlock" : il documento verrà bloccato e reso in sola lettura durante l'esecuzione del comando.
- "-docexclusivelock" : Il documento verrà bloccato e reso esclusivo quando durante l'esecuzione del comando.
- "-interruptible" : Il comando può essere interrotto quando viene richiesto l'input dell'utente mentre sta chiamando uno dei metodi acedGetxxx.
- "-nohistory" : il command non sarà aggiunto ad " AutoCAD’s repeat-last-command furnctionality".
- "-noundomarker" : Il comando non verrà aggiunti al file di annullamento (gestione dell'UNDO). é da usare per i comandi che non modificano il database e che quindi non dovrebbero essere "conteggiati" nel file di annullamento.
- "-nobedit" : Il comando viene bloccato durante il comando "bedit"
Per ulteriori informazioni, consultare la descrizione di AcEdCommandStack::addCommand() nel manaule del ObjectARX C++
Esempio 47. Esempio AcadRegisterCommand
AcadRegisterCommand('prova', 'funzione()')
AcadRegisterCommand('zoom2', 'funzionezoom()', "-transparent")
AcadRegisterCommand('prova', 'funzionezoom()', {["options"] = "-transparent"})
AcadRegisterCommand('prova', funzione)