FxOnScreenControl
FxOnScreenControl
протокол определяет методы, которые плагин должен реализовать для создания экранных средств управления параметром.
Плагины могут использовать FxOnScreenControlAPI для рисования средств управления и других элементов пользовательского интерфейса непосредственно на холсте, где пользователь применил плагин. Это позволяет непосредственное управление объектом и является естественным и забавным способом для пользователей взаимодействовать с плагином. Используйте этот API для преобразования точек от пространства получения холста или документа пиксельному пространству объекта, которым пользователь хочет управлять, и наоборот.
Наследование
Не применимый
Соответствует
Не применимый
Оператор импорта
Не применимый не применимый
-
drawingCoordinates - drawingCoordinates
ТребуемыйОпределяет координатное пространство для события. (требуемый)
Объявление
Objective C
- (FxDrawingCoordinates)drawingCoordinates
Возвращаемое значение
Возвращает координатное пространство для события.
-
Рисует управление на изображении. Это - основной метод вызовы хост-приложения для рисования сменного управления параметром. (требуемый)
Объявление
Параметры
width
Ширина текущего изображения, где будет нарисовано управление.
height
Высота текущего изображения, где будет нарисовано управление.
activePart
Активная часть управления для рисования.
time
Время, выраженное в канонических кадрах, для рисования управления.
Обсуждение
Этот метод служит двум целям, в зависимости от режима рендеринга. Режим рендеринга определяется следующим образом:
GLint renderMode;
glGetIntegerv( GL_RENDER_MODE, &renderMode );
Если
renderMode
GL_RENDER
, тогда этот метод должен представить свой вывод изображения в текущем контексте GL.Если
renderMode
GL_SELECT
, тогда метод должен выполнить команды рисования GL для определения форм различных «частей» управления. Хост-приложение тогда использует эту информацию для тестирования хита. Когда хост-приложение решает, что положение мыши находится в определенной части, это передает идентификатор части какactivePart
параметр к другомуFxOnScreenControl
методы.В зависимости от хост-приложения временная стоимость может быть относительно запуска временной шкалы или к запуску клипа. Посмотрите Ссылку класса FxHostCapabilities для получения дополнительной информации.
-
mouseUp:positionY:activePart:modifiers:forceUpdate:time: - mouseUp:positionY:activePart:modifiers:forceUpdate:time:
ТребуемыйКогда левая кнопка мыши отпускается, предоставляет информацию. (требуемый)
Объявление
Objective C
- (void)mouseUp:(double)
mousePositionX
positionY:(double)mousePositionY
activePart:(NSInteger)activePart
modifiers:(FxModifierKeys)modifiers
forceUpdate:(BOOL *)forceUpdate
time:(double)time
Параметры
mousePositionX
X позиций курсора, в
drawingCoordinates
координатное пространство.mousePositionY
Позиция Y курсора, в
drawingCoordinates
координатное пространство.activePart
Активная часть управления, в настоящее время содержащего курсор.
modifiers
Модификаторы клавиатуры в настоящее время нажимали.
forceUpdate
Набор к YES, если должен быть повторно вычислен фильтр/генератор, связанный с этим управлением; НЕТ иначе.
time
Текущее время, выраженное в канонических кадрах, когда была отпущена кнопка мыши.
Обсуждение
В зависимости от хост-приложения временная стоимость может быть относительно запуска временной шкалы или к запуску клипа. Посмотрите Ссылку класса FxHostCapabilities для получения дополнительной информации.
-
mouseDragged:positionY:activePart:modifiers:forceUpdate:time: - mouseDragged:positionY:activePart:modifiers:forceUpdate:time:
ТребуемыйПредоставляет информацию, когда левая кнопка мыши нажимается и, курсор перемещен с кнопкой мыши все еще вниз. (требуемый)
Объявление
Objective C
- (void)mouseDragged:(double)
mousePositionX
positionY:(double)mousePositionY
activePart:(NSInteger)activePart
modifiers:(FxModifierKeys)modifiers
forceUpdate:(BOOL *)forceUpdate
time:(double)time
Параметры
mousePositionX
X позиций курсора, в
drawingCoordinates
координатное пространство.mousePositionY
Позиция Y курсора, в
drawingCoordinates
координатное пространство.activePart
Активная часть управления, в настоящее время содержащего курсор.
modifiers
Модификаторы клавиатуры в настоящее время нажимали.
forceUpdate
Набор к
YES
true
если должен быть повторно вычислен фильтр/генератор, связанный с этим управлением; НЕТ иначе.time
Текущее время, выраженное в канонических кадрах, когда был перемещен указатель.
Обсуждение
В зависимости от хост-приложения временная стоимость может быть относительно запуска временной шкалы или к запуску клипа. Посмотрите Ссылку класса FxHostCapabilities для получения дополнительной информации.
-
mouseDown:positionY:activePart:modifiers:forceUpdate:time: - mouseDown:positionY:activePart:modifiers:forceUpdate:time:
ТребуемыйПредоставляет информацию, когда левая кнопка мыши нажимается, и курсор находится на изображении с активным сменным управлением. (требуемый)
Объявление
Objective C
- (void)mouseDown:(double)
mousePositionX
positionY:(double)mousePositionY
activePart:(NSInteger)activePart
modifiers:(FxModifierKeys)modifiers
forceUpdate:(BOOL *)forceUpdate
time:(double)time
Параметры
mousePositionX
X позиций курсора, в
drawingCoordinates
координатное пространство.mousePositionY
Позиция Y курсора, в
drawingCoordinates
координатное пространство.activePart
Активная часть управления, в настоящее время содержащего курсор.
modifiers
Модификаторы клавиатуры в настоящее время нажимали.
forceUpdate
Набор к YES, если должен быть повторно вычислен фильтр/генератор, связанный с этим управлением; НЕТ иначе.
time
Текущее время, выраженное в канонических кадрах, когда была нажата кнопка мыши.
Обсуждение
В зависимости от хост-приложения временная стоимость может быть относительно запуска временной шкалы или к запуску клипа. Посмотрите Ссылку класса FxHostCapabilities для получения дополнительной информации.
-
keyDown:positionY:keyPressed:modifiers:forceUpdate:didHandle:time: - keyDown:positionY:keyPressed:modifiers:forceUpdate:didHandle:time:
ТребуемыйКогда клавиша нажата, предоставляет информацию. (требуемый)
Объявление
Objective C
- (void)keyDown:(double)
mousePositionX
positionY:(double)mousePositionY
keyPressed:(unsigned short)asciiKey
modifiers:(FxModifierKeys)modifiers
forceUpdate:(BOOL *)forceUpdate
didHandle:(BOOL *)didHandle
time:(double)time
Параметры
mousePositionX
X позиций курсора, в
drawingCoordinates
координатное пространство.mousePositionY
Позиция Y курсора, в
drawingCoordinates
координатное пространство.asciiKey
Представление ASCII ключа нажало.
modifiers
Модификаторы клавиатуры в настоящее время нажимали.
forceUpdate
Набор к
YES
true
если должен быть повторно вычислен фильтр/генератор, связанный с этим управлением; иначеNO
false
.didHandle
Набор к
YES
true
если управление выполнило действие из-за этого нажатия клавиши; иначеNO
false
, и событие пасуется назад дерево объектов.time
Текущее время, выраженное в канонических кадрах, когда произошло нажатие клавиши.
Обсуждение
В зависимости от хост-приложения временная стоимость может быть относительно запуска временной шкалы или к запуску клипа. Посмотрите Ссылку класса FxHostCapabilities для получения дополнительной информации.
-
keyUp:positionY:keyPressed:modifiers:forceUpdate:didHandle:time: - keyUp:positionY:keyPressed:modifiers:forceUpdate:didHandle:time:
ТребуемыйКогда клавиша отпускается, предоставляет информацию. (требуемый)
Объявление
Objective C
- (void)keyUp:(double)
mousePositionX
positionY:(double)mousePositionY
keyPressed:(unsigned short)asciiKey
modifiers:(FxModifierKeys)modifiers
forceUpdate:(BOOL *)forceUpdate
didHandle:(BOOL *)didHandle
time:(double)time
Параметры
mousePositionX
X позиций указателя, в
drawingCoordinates
координатное пространство.mousePositionY
Позиция Y указателя, в
drawingCoordinates
координатное пространство.asciiKey
Представление ASCII отжатой кнопки.
modifiers
Модификаторы клавиатуры.
forceUpdate
Набор к
YES
true
если должен быть повторно вычислен фильтр/генератор, связанный с этим управлением; иначеNO
false
.didHandle
Набор к
YES
true
если сменное управление выполнило действие из-за ключевого выпуска; иначеNO
false
, и событие пасуется назад дерево объектов.time
Текущее время, выраженное в канонических кадрах, когда произошел ключевой выпуск.
Обсуждение
В зависимости от хост-приложения временная стоимость может быть относительно запуска временной шкалы или к запуску клипа. Посмотрите Ссылку класса FxHostCapabilities для получения дополнительной информации.
-
Константы раньше идентифицировали координатные пространства.
Y
скоординируйте увеличения компонента вверх всех координатных пространств.Объявление
Objective C
enum { kFxDrawingCoordinates_CANVAS = 0, kFxDrawingCoordinates_DOCUMENT = 1, kFxDrawingCoordinates_OBJECT = 2, kFxDrawingCoordinates_OBJECT_CENTERED = 3 }; typedef NSUInteger FxDrawingCoordinates;
Константы
-
kFxDrawingCoordinates_CANVAS
kFxDrawingCoordinates_CANVAS
Указывает, что координатное пространство использует координаты окна холста.
-
kFxDrawingCoordinates_DOCUMENT
kFxDrawingCoordinates_DOCUMENT
Указывает, что координатное пространство использует координаты холста фильма.
-
kFxDrawingCoordinates_OBJECT
kFxDrawingCoordinates_OBJECT
Указывает, что координатное пространство использует объектно-специфичные координаты.
-
kFxDrawingCoordinates_OBJECT_CENTERED
kFxDrawingCoordinates_OBJECT_CENTERED
Указывает, что координатное пространство использует объектные координаты с источником в центре. Эта константа осуждается.
-
-
Указывает флаги, идентифицирующие модифицирующие клавиши, удерживаемые, в то время как сгенерировано событие.
Объявление
Objective C
enum { kFxModifierKey_SHIFT = 1 << 0, kFxModifierKey_CONTROL = 1 << 1, kFxModifierKey_OPTION = 1 << 2, kFxModifierKey_COMMAND = 1 << 3, kFxModifierKey_CAPS_LOCK = 1 << 4 }; typedef NSUInteger FxModifierKeys;
Константы
-
kFxModifierKey_SHIFT
kFxModifierKey_SHIFT
Указывает левую или правую клавишу Shift
-
kFxModifierKey_CONTROL
kFxModifierKey_CONTROL
Указывает левую или правую Клавишу CTRL
-
kFxModifierKey_OPTION
kFxModifierKey_OPTION
Указывает левую или правую функциональную клавишу
-
kFxModifierKey_COMMAND
kFxModifierKey_COMMAND
Указывает Командную клавишу
-
kFxModifierKey_CAPS_LOCK
kFxModifierKey_CAPS_LOCK
Указывает Caps Lock
-