Zviditelnění funkcí v prostoru názvů dokumentu

Implicitně definovaná funkce VLX ve vlastním prostoru názvů není odkryta prostoru názvů dokumentu, který aplikaci VLX nahrál. Aby byly funkce aplikace VLX (definované ve vlastním prostoru názvů) viditelné v prostoru názvů dokumentu, musí se použít funkce vl-doc-export. Funkce vl-doc-export je volána s jedním parametrem - jménem funkce.

Přehled informací lekce

Příklad zviditelnění funkce ZPRAVA

  (vl-doc-export 'ZPRAVA)
    (defun ZPRAVA ()
    (princ  "Malý pokus s aplikací VLX")
  )

Předchozí příklad definuje jednoduchou funkci ZPRAVA, která vytiskne zprávu "Malý pokus s aplikací VLX". Příkaz vl-doc-export způsobí, že funkce ZPRAVA je exportována do prostoru názvů dokumentu.

Ukázka principu fungování vl-doc-export v odděleném prostoru názvů VLX aplikace

1. Přepište následující kód do okna editoru Visual LISP:

      (defun ZPRAVA ()
        (princ  "Malý pokus s aplikací VLX")
      )

Pozor funkce je zatím bez volání vl-doc-export!

2. Uložte soubor, který jste právě vytvořily.

3. Vytvořte aplikaci VLX ve vlastním prostoru jmen. Použijte průvodce novou aplikací v IDE Visual LISP (Nabídka Soubor -> položka Vytvořit aplikaci -> položka Průvodce novou aplikací ...). Během vytváření nastavte následující informace:

4. Nahrajte aplikaci zprava.vlx - z příkazové řádky AutoCADu nebo konzole Visual LISPu.

5. Zkuste zpustit funkci zprava v IDE Visual LISPu. (do příkazové řádky napište (zprava) a potvrďte entrem, pozor závorky musí být uvedeny).

AutoCAD zobrazí chybovou zprávu, že funkce (zprava) není definovaná.

6. Na začátek programu dopište následující kód:

(vl-doc-export 'ZPRAVA)

7. Uložte soubor a přeložte znovu aplikaci.

8. Odstraňte předešlou verzi souboru VLX z AutoCADu pomocí funkce vl-unload-vlx. Poté znovu načtěte soubor zprava.vlx.

9. Spusťte znovu funkci (zprava).

V tomto případě již funkce vypíše požadovaný text v AutoCADu.

Zjištění všech aplikací běžících v odděleném prostoru jmen

Pro zjištění všech aplikací běžících v odděleném prostoru jmen přiřazených k aktuálnímu dokumentu můžete použít následující funkci:

  _$ (vl-list-loaded-vlx)
  (zprava)

Zjištění všech funkcí exportovaných aplikací

Visual LISP nabízí funkci vl-list-exported-functions, kterou když zavoláte se jménem aplikace běžící v odděleném prostoru názvů, vrátí Vám seznam všech funkcí, které aplikace exportuje do prostoru názvů dokumentu. Příklad použití:

  _$ (vl-list-exported-functions "zprava")
  (zprava)

Z výpisu je patrné, že aplikace zprava.vlx exportuje do prostoru názvů pouze jedinou funkci - (zprava).