Создание кнопки переключения компоновок

(defun ru-acad-sbb-make-layouts-button
(button_text button_clicked_call_back / srv)
;|
Создание кнопки и установка ее свойств
В качестве COM-сервера используется
AcadStatusBarButton.dll
Copyright 2003 ManuSoft http://www.manusoft.com
|;
(setq *ru_sbb_layouts_maked* (vl-bb-ref '*ru_bb_sbb_layouts_maked*))
(if (not *ru_sbb_layouts_maked*)
(progn
(setq srv (vlax-create-object "AcadStatusBarButton.Button"))
(vlax-put-property srv 'Text button_text)
(vlax-put-property srv 'Width 0)
(vlax-put-property
srv
'TooltipText
"Выбор компоновки"
) ;_ end of vlax-put-property
(vlax-put-property srv 'TooltipEnabled :vlax-true)
(vlax-put-property
srv
'LispFunctionOnClicked
(vl-symbol-name button_clicked_call_back)
) ;_ end of vlax-put-property
(vlax-put-property srv 'Visible :vlax-true)
(setq *ru_sbb_layouts_maked* t)
(vl-bb-set '*ru_bb_sbb_layouts_maked* *ru_sbb_layouts_maked*)
) ;_ end of progn
) ;_ end of if
srv
) ;_ end of defun
(defun ru-acad-sbb-make-layouts-button-on-click ()
;|
Функция реакции на нажатие кнопки. Автокаду посылается
команда методом SendCommand. В строке команды мы вызываем
функцию переключения меню
|;
;; (setvar "NOMUTT" 1)
(vlax-invoke-method
(vla-get-activedocument (vlax-get-acad-object))
'SendCommand
"(ru-dlg-set-layout)
"
) ;_ end of vlax-invoke-method
;; (setvar "NOMUTT" 0)
(princ)
) ;_ end of defun
(defun ru-acad-sbb-layouts-erase-button ()
(vlax-release-object *ru_sbb_layouts_srv*)
) ;_ end of defun