Стек Команды
Команды AutoCAD сохранены в группах в стеке команды, который
Определенный AcEdCommandStack классом. Один образец стека команды
Создан в сеанс AutoCAD. Этот стек состоит из заказных команд
То, что Вы определили. AcedRegCmds () макрокоманда дает Вам, обращаются к
Стек команды.
Когда Вы прибавляете команду, Вы также назначаете это название{*имя*} группы. Хорошая политика{*полис*}
Должен использовать ваш буферизованный префикс разработчика для названия{*имени*} группы, чтобы избежать названия{*имени*}
Столкновения с другими командами. Команда называет в пределах данной группы
Должен быть уникален, и названия{*имена*} группы должны быть уникальны. Однако, множественные приложения
Может прибавлять команду того же самого названия{*имени*}, потому что группа называет Делает команды однозначными.
ОБРАТИТЕ ВНИМАНИЕ, что автоплата поддерживает схему регистрации разработчика предотвратить Namespace
находится в противоречии между различными приложениями. Каждый буферизованный разработчик Выбирает одни или более буферизованные символы разработчика (RDS), чтобы использовать исключительно. Буферизованный Символы разработчика - одно из требований “ Сформированные с ObjectARX ” программа эмблемы. Для получения дополнительной информации, идите интерактивно к http://www.veritest.com/autodesk/main(f).htm.
Вы обычно прибавляете команды по одному с AcEdCommandStack:: addCommand () функция, и Вы удаляете команды Группа с AcEdCommandStack:: removeGroup () функция. Вы можете также Используйте AcEdCommandStack:: removeCmd () функция, чтобы удалить команды По одному. Как часть его очистки перед выходом, ваше приложение нуждается к Удалите любые команды это буферизованный.
Сигнатура для addCommand () функция
Acad::ErrorStatus
addCommand(
const char* cmdGroupName,
const char* cmdGlobalName,
const char* cmdLocalName,
Adesk::Int32 commandFlags,
AcRxFunctionPtr functionAddr,
AcEdUIContext *UIContext=NULL,
int fcode=-1,
HINSTANCE hResourceHandle=NULL);
CmdGroupName
Представление ASCII группы, чтобы прибавить команду к.
Если группа не существует, это создано прежде, чем команда добавлена.
CmdGlobalName
Представление ASCII команды называет, чтобы добавиться. Это название{*имя*} представляет глобальное или неоттранслированное название{*имя*} (см. “ Глобальная переменная против Местных Названий{*имен*} Команды ” на странице 42).
CmdLocalName
Представление ASCII команды называет, чтобы добавиться. Это название{*имя*} представляет местное или оттранслированное название{*имя*}.
CommandFlags
Флажки, связанные с командой. Возможные значения - ACRX_CMD_TRANSPARENT, ACRX_CMD_MODAL, ACRX_CMD_USEPICKSET, и ACRX_CMD_REDRAW (см. “ Прозрачный против Модальных Команд ” на странице 42).
FunctionAddr
Адрес функции, которая будет выполнена, когда эта команда вызвана в соответствии с AutoCAD.
UiContext
Входной указатель на AcEdUIContext класс повторного вызова.
Fcode
Введите целочисленный код, назначенный на команду.
ПРИМЕЧАНИЕ, которое строго рекомендует, чтобы все имена команд имели Ваш зарегистрированный префикс разработчика с четырьмя символами, чтобы избежать возможных конфликтов с командами в других приложениях. Например, MOVE команда разработчика с префиксом ASDK
должна быть ASDKMOVE.
Использование вашего зарегистрированного префикса разработчика также рекомендуется для имен группы.
Сигнатура для removeCmd()
virtual Acad::ErrorStatus
AcEdCommandStack::removeCmd
(const char* cmdGroupName,
const char* cmdGlobalName) = 0;
Сигнатура для removeGroup()
virtual Acad::ErrorStatus
AcEdCommandStack::removeGroup
(const char* groupName);