Files
mikhail e1337e4016 feat(sdk-docs): MD-база знаний SDK — в репозиторий; генератор и зеркало убраны
docs/Kompas3D_SDK/ становится каноническим источником справки КОМПАС SDK
и включается в репозиторий (2491 файл, ~14 МБ). HTML-зеркало
docs/KOMPAS_SDK_ru-RU/ (~1.4 ГБ, © АСКОН) и генератор
tools/build_kompas3d_sdk.py больше не нужны — регенерация не предполагается.

- .gitignore: MD-база разблокирована; зеркало остаётся проигнорированным
  (safety-net на случай повторной локальной выгрузки).
- CLAUDE.md / SKILL.md: убраны упоминания регенерации и зеркала.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-26 20:00:05 +03:00

13 KiB
Raw Permalink Blame History

title, type, api, tags, sources
title type api tags sources
Интерфейс ksDocumentFrameNotify/IDocumentFrameNotify interface
api7
interface
api7
ksdocumentframenotify
ksdocumentframenotify.html

*API интерфейсов. Версия 7 > Интерфейсы событий *

Интерфейс ksDocumentFrameNotify/IDocumentFrameNotify

ksDocumentFrameNotify - интерфейс Automation,
IdocumentFrameNotify - интерфейс COM
Интерфейс событий для окна документа (клавиатура, мышь, события по отрисовке документа)
Позволяют контролировать состояние окна документа.
Источником событий для подписки на данный интерфейс является объект IDocumentFrame - интерфейс окна документа.
В COM источником для подписки является указатель на документ. Дополнительный параметр при подписке задает интерфейс окна IDocumentFrame, для которого предназначен данный интерфейс событий.
ksDocumentFrameNotify, IDocumentFrameNotify - события

Activate - Активизация окна

BOOL Activate(); Синтаксис COM:

BOOL Activate();
Возвращаемое значение:
- Не используется.

Примечание: Индекс события задан в перечислении событий окна документа ksDocumentFrameNotifyEnum.

AddGabarit - Рассчитывается общий габарит окна

Синтаксис Automation:

BOOL AddGabarit (IGabaritObject * gabObj);

Синтаксис COM:

BOOL AddGabarit (IUnknown* gabObj);
Входные параметры:
gabObj    - указатель на интерфейс IGabaritObject вспомогательных данных для изменения габарита документа.
Возвращаемое значение:
- Не используется.

Примечание:

  1. Индекс события задан в перечислении событий окна документа ksDocumentFrameNotifyEnum.
  2. Если на данное событие подписалось несколько библиотек, то заданные ими прямоугольники суммируются.

BeginPaint - Начало отрисовки документа

Синтаксис Automation:

BOOL BeginPaint (IPaintObject* paintObj);

Синтаксис COM:

BOOL BeginPaint (IUnknown* paintObj);
Входные параметры:
paintObj    - указатель на интерфейс IPaintObject вспомогательных данных для отрисовки документа.
Возвращаемое значение:
FALSE    - запретить отрисовку документа.

Примечание:

  1. Индекс события задан в перечислении событий окна документа ksDocumentFrameNotifyEnum.
  2. Если событие вернет значение FALSE, то КОМПАС-3D не будет отрисовывать документ; библиотека в этом случае должна сама выполнить всю отрисовку, событие ClosePaint посылаться не будет.

BeginPaintGL - Начало создания листа в контексте OpenGL

Синтаксис Automation:

BOOL BeginCreateGLList (ksGLObject* glObj, long drawMode);

Синтаксис COM:

BOOL BeginCreateGLList (long drawMode);
Входные параметры:
glObj    - указатель на интерфейс ksGLObject вспомогательных данных для создания листа в контексте OpenGL; используется при работе под управлением внешнего контроллера,
drawMode    - режим отображения документа-модели KDocument3DDrawMode.
Возвращаемое значение:
TRUE    - модель продолжает отрисовываться,
FALSE    - запретить перерисовывать модель.

Примечание: Индекс события задан в перечислении событий окна документа ksDocumentFrameNotifyEnum.

BeginPaintTmpObjects - Начало отрисовки временных объектов(фантомов)

Синтаксис Automation:

BOOL BeginPaintTmpObjects();

Синтаксис COM:

BOOL BeginPaintTmpObjects();
Возвращаемое значение:
FALSE    - запретить отрисовку временных объектов.

Примечание: Событие можно получить в 2D документе и использовать для самостоятельной отрисовки временных объектов функциями OpenGL

CloseFrame - Закрытие окна

Синтаксис Automation:

BOOL CloseFrame();

Синтаксис COM:

BOOL CloseFrame();
Возвращаемое значение:
- Не используется.

Примечание: Индекс события задан в перечислении событий окна документа ksDocumentFrameNotifyEnum.

ClosePaint - Конец отрисовки документа

Синтаксис Automation:

BOOL ClosePaint (IPaintObject* paintObj);

Синтаксис COM:

BOOL ClosePaint (IUnknown* paintObj);
Входные параметры:
paintObj    - указатель на интерфейс IPaintObject вспомогательных данных для отрисовки документа.
Возвращаемое значение:
- Не используется.

Примечание: Индекс события задан в перечислении событий окна документа ksDocumentFrameNotifyEnum.

ClosePaintGL - Окончание создания листа в контексте OpenGL

Синтаксис Automation:

BOOL CloseCreateGLList (ksGLObject* glObj, long drawMode);

Синтаксис COM:

BOOL CloseCreateGLList (long drawMode);
Входные параметры:
glObj    - указатель на интерфейс ksGLObject вспомогательных данных для создания листа в контексте OpenGL; используется при работе под управлением внешнего контроллера,
drawMode    - режим отображения документа-модели KDocument3DDrawMode.
Возвращаемое значение:
- Не используется.

Примечание: Индекс события задан в перечислении событий окна документа ksDocumentFrameNotifyEnum.

ClosePaintTmpObjects - Конец отрисовки временных объектов(фантомов)

Синтаксис Automation:

BOOL ClosePaintTmpObjects();

Синтаксис COM:

BOOL ClosePaintTmpObjects();
Возвращаемое значение:
- не используется.

Примечание: Событие можно получить в 2D документе и использовать для дорисовки временных объектов функциями OpenGL

Deactivate - Деактивация окна

Синтаксис Automation:

BOOL Deactivate();

Синтаксис COM:

BOOL Deactivate();
Возвращаемое значение:
- Не используется.

Примечание: Индекс события задан в перечислении событий окна документа ksDocumentFrameNotifyEnum.

MouseDblClick - Двойной щелчок кнопкой мыши

Синтаксис Automation:

BOOL MouseDblClick (short nButton, short nShiftState, long x, long y);

Синтаксис COM:

BOOL MouseDblClick (short nButton, short nShiftState, long x, long y);
Входные параметры:
nButton    - тип кнопки (LEFT_BUTTON, RIGHT_BUTTON или MIDDLE_BUTTON),
nShiftState    - комбинация нажатых системных кнопок клавиатуры (SHIFT_MASK, CTRL_MASK, ALT_MASK),
х,у    - координаты в экранных пикселах.
Возвращаемое значение:
- Не используется.

Примечание: Индекс события задан в перечислении событий окна документа ksDocumentFrameNotifyEnum. Значения системных кнопок, допустимых в комбинации параметра nShiftState:

SHIFT_MASK 0x01
CTRL_MASK 0x02
ALT_MASK 0x04
Значения типов кнопок мыши для параметра nButton:
LEFT_BUTTON 0x01
--- ---
RIGHT_BUTTON 0x02
MIDDLE_BUTTON 0x04

MouseDown - Нажатие кнопки мыши

Синтаксис Automation:

BOOL MouseDown (short nButton, short nShiftState, long x, long y);

Синтаксис COM:

BOOL MouseDown (short nButton, short nShiftState, long x, long y);
Входные параметры:
nButton    - тип кнопки (LEFT_BUTTON, RIGHT_BUTTON или MIDDLE_BUTTON),
nShiftState    - комбинация нажатых системных кнопок клавиатуры (SHIFT_MASK, CTRL_MASK, ALT_MASK),
х,у    - координаты в экранных пикселах.
Возвращаемое значение:
- Не используется.

Примечание: Индекс события задан в перечислении событий окна документа ksDocumentFrameNotifyEnum. Значения системных кнопок, допустимых в комбинации параметра nShiftState:

SHIFT_MASK 0x01
CTRL_MASK 0x02
ALT_MASK 0x04
Значения типов кнопок мыши для параметра nButton:
LEFT_BUTTON 0x01
--- ---
RIGHT_BUTTON 0x02
MIDDLE_BUTTON 0x04

MouseMove - Перемещение мыши

Синтаксис Automation:

BOOL MouseDown (short nShiftState, long x, long y);

Синтаксис COM:

BOOL MouseMove (short nShiftState, long x, long y);
Входные параметры:
nShiftState    - комбинация нажатых системных клавиш (SHIFT_MASK, CTRL_MASK, ALT_MASK),
х,у    - координаты в экранных пикселах.
Возвращаемое значение:
- Не используется.

Примечание:

  1. Индекс события задан в перечислении событий окна документа ksDocumentFrameNotifyEnum.
  2. Значения системных кнопок допустимых в комбинации параметра nShiftState:
    SHIFT_MASK 0x01
    CTRL_MASK 0x02
    ALT_MASK 0x04

MouseUp - Отпускание кнопки мыши

Синтаксис Automation:

BOOL MouseUp (short nButton, short nShiftState, long x, long y);

Синтаксис COM:

BOOL MouseUp (short nButton, short nShiftState, long x, long y);
Входные параметры:
nButton    - тип кнопки (LEFT_BUTTON, RIGHT_BUTTON или MIDDLE_BUTTON),
nShiftState    - комбинация нажатых системных кнопок клавиатуры (SHIFT_MASK, CTRL_MASK, ALT_MASK),
х,у    - координаты в экранных пикселах.
Возвращаемое значение:
- Не используется.

Примечание: Индекс события задан в перечислении событий окна документа ksDocumentFrameNotifyEnum. Значения системных кнопок, допустимых в комбинации параметра nShiftState:

SHIFT_MASK 0x01
CTRL_MASK 0x02
ALT_MASK 0x04
Значения типов кнопок мыши для параметра nButton:
LEFT_BUTTON 0x01
--- ---
RIGHT_BUTTON 0x02
MIDDLE_BUTTON 0x04

MouseWheel - Вращение колеса мыши

Синтаксис Automation:

BOOL MouseWheel( short NShiftState, short ZDelta, long X, long Y );

Синтаксис COM:

HRESULT MouseWheel( short NShiftState, short ZDelta, long X, long Y, BOOL * Result );
Входные параметры:
NShiftState    - комбинация нажатых системных кнопок клавиатуры (SHIFT_MASK, CTRL_MASK, ALT_MASK)),
ZDelta    - приращение,
X, Y    - координаты в экранных пикселах.
Возвращаемое значение:
- Не используется.
КOMPAS v24