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)