Поделиться через


Макросы объекта оснастки

Эти макросы обеспечивают поддержку расширений оснастки.

Имя Описание
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.

См. также

Макросы