Макросы объекта оснастки
Эти макросы обеспечивают поддержку расширений оснастки.
Имя | Описание |
---|---|
BEGIN_EXTENSION_SNAPIN_NODEINFO_MAP | Помечает начало сопоставления класса данных расширения для объекта Snap-In. |
BEGIN_SNAPINTOOLBARID_MAP | Помечает начало карты панели инструментов для объекта Snap-In. |
END_EXTENSION_SNAPIN_NODEINFO_MAP | Помечает конец карты класса данных расширения оснастки для объекта Snap-In. |
END_SNAPINTOOLBARID_MAP | Помечает конец карты панели инструментов для объекта Snap-In. |
EXTENSION_SNAPIN_DATACLASS | Создает элемент данных для класса данных расширения оснастки. |
EXTENSION_SNAPIN_NODEINFO_ENTRY | Вводит класс данных расширения оснастки в карту класса данных расширения оснастки объекта Snap-In. |
SNAPINMENUID | Объявляет идентификатор контекстного меню, используемого объектом Snap-In. |
SNAPINTOOLBARID_ENTRY | Введите панель инструментов на карту панели инструментов объекта Snap-In. |
Требования
Заголовок: atlsnap.h
BEGIN_EXTENSION_SNAPIN_NODEINFO_MAP
Помечает начало карты класса данных расширения оснастки.
BEGIN_EXTENSION_SNAPIN_NODEINFO_MAP(classname)
Параметры
classname
[in] Имя класса данных расширения оснастки.
Замечания
Запустите карту расширения оснастки с помощью макроса BEGIN_EXTENSION_SNAPIN_NODEINFO_MAP, добавьте записи для каждого типа данных расширения оснастки с помощью макроса EXTENSION_SNAPIN_NODEINFO_ENTRY и завершите сопоставление с помощью макроса END_EXTENSION_SNAPIN_NODEINFO_MAP .
Пример
class CMyExtSnapinExtData :
public CSnapInItemImpl<CMyExtSnapinExtData>,
public CMySnapinBase
{
public:
CMyExtSnapinExtData() {}
};
class CMyExtSnapin :
public CComObjectRoot,
public CSnapInObjectRoot<1, CMyExtSnapin>,
public IComponentDataImpl<CMyExtSnapin, CMyExtSnapin>
{
public:
CMyExtSnapin() {}
BEGIN_COM_MAP(CMyExtSnapin)
END_COM_MAP()
EXTENSION_SNAPIN_DATACLASS(CMyExtSnapinExtData)
BEGIN_EXTENSION_SNAPIN_NODEINFO_MAP(CMyExtSnapin)
EXTENSION_SNAPIN_NODEINFO_ENTRY(CMyExtSnapinExtData)
END_EXTENSION_SNAPIN_NODEINFO_MAP()
};
BEGIN_SNAPINTOOLBARID_MAP
Объявляет начало карты идентификатора панели инструментов для объекта Snap-In.
BEGIN_SNAPINTOOLBARID_MAP(_class)
Параметры
_класс
[in] Задает класс объектов Snap-In.
Пример
class CMySnapinData :
public CSnapInItemImpl<CMySnapinData>,
public CMySnapinBase
{
public:
CMySnapinData() {}
BEGIN_SNAPINTOOLBARID_MAP(CMySnapinData)
// IDR_MYSNAPINTOOLBAR is the resource ID of a toolbar resource.
SNAPINTOOLBARID_ENTRY(IDR_MYSNAPINTOOLBAR)
END_SNAPINTOOLBARID_MAP()
};
END_EXTENSION_SNAPIN_NODEINFO_MAP
Помечает конец карты класса данных расширения оснастки.
END_EXTENSION_SNAPIN_NODEINFO_MAP()
Замечания
Начните карту расширения оснастки с помощью макроса BEGIN_EXTENSION_SNAPIN_NODEINFO_MAP, добавьте записи для каждого типа оснастки расширения с помощью макроса EXTENSION_SNAPIN_NODEINFO_ENTRY и завершите сопоставление с помощью макроса END_EXTENSION_SNAPIN_NODEINFO_MAP.
Пример
См. пример BEGIN_EXTENSION_SNAPIN_NODEINFO_MAP.
END_SNAPINTOOLBARID_MAP
Объявляет конец карты идентификатора панели инструментов для объекта Snap-In.
END_SNAPINTOOLBARID_MAP( _class )
Параметры
_класс
[in] Задает класс объектов Snap-In.
Пример
См. пример BEGIN_SNAPINTOOLBARID_MAP.
EXTENSION_SNAPIN_DATACLASS
Добавляет член данных в класс данных расширения оснастки для класса, производного от ISnapInItemImpl.
EXTENSION_SNAPIN_DATACLASS(dataClass )
Параметры
dataClass
[in] Класс данных расширения оснастки.
Замечания
Этот класс также должен быть введен в карту класса данных расширения оснастки. Начните сопоставление класса данных расширения с помощью макроса BEGIN_EXTENSION_SNAPIN_NODEINFO_MAP , добавьте записи для каждого типа данных расширения оснастки с помощью макроса EXTENSION_SNAPIN_NODEINFO_ENTRY и завершите сопоставление с помощью макроса END_EXTENSION_SNAPIN_NODEINFO_MAP .
Пример
class CMyExtSnapinExtData :
public CSnapInItemImpl<CMyExtSnapinExtData>,
public CMySnapinBase
{
public:
CMyExtSnapinExtData() {}
};
class CMyExtSnapin :
public CComObjectRoot,
public CSnapInObjectRoot<1, CMyExtSnapin>,
public IComponentDataImpl<CMyExtSnapin, CMyExtSnapin>
{
public:
CMyExtSnapin() {}
BEGIN_COM_MAP(CMyExtSnapin)
END_COM_MAP()
EXTENSION_SNAPIN_DATACLASS(CMyExtSnapinExtData)
BEGIN_EXTENSION_SNAPIN_NODEINFO_MAP(CMyExtSnapin)
EXTENSION_SNAPIN_NODEINFO_ENTRY(CMyExtSnapinExtData)
END_EXTENSION_SNAPIN_NODEINFO_MAP()
};
EXTENSION_SNAPIN_NODEINFO_ENTRY
Добавляет класс данных расширения оснастки в карту класса данных расширения.
EXTENSION_SNAPIN_NODEINFO_ENTRY( dataClass )
Параметры
dataClass
[in] Класс данных расширения оснастки.
Замечания
Начните сопоставление класса данных расширения с помощью макроса BEGIN_EXTENSION_SNAPIN_NODEINFO_MAP, добавьте записи для каждого типа данных расширения оснастки с помощью макроса EXTENSION_SNAPIN_NODEINFO_ENTRY и завершите сопоставление с помощью макроса END_EXTENSION_SNAPIN_NODEINFO_MAP .
Пример
См. пример BEGIN_EXTENSION_SNAPIN_NODEINFO_MAP.
SNAPINMENUID
Используйте этот макрос для объявления ресурса контекстного меню объекта Snap-In.
SNAPINMENUID( id )
Параметры
id
[in] Определяет контекстное меню объекта Snap-In.
SNAPINTOOLBARID_ENTRY
Используйте этот макрос, чтобы ввести идентификатор панели инструментов в карту идентификатора панели инструментов Оснастки.
SNAPINTOOLBARID_ENTRY( id )
Параметры
id
[in] Определяет элемент управления панели инструментов.
Замечания
Макрос BEGIN_SNAPINTOOLBARID_MAP помечает начало карты идентификатора панели инструментов; END_SNAPINTOOLBARID_MAP макрос помечает конец.
Пример
См. пример BEGIN_SNAPINTOOLBARID_MAP.