Element Messaging
PBMessageEmpty
Structure: A message with no parameters or return values.
Fields
unused (uint8_t
): Unused.
PBMessageCustom
Structure:
Fields
data1 (opaque pointer):
data2 (opaque pointer):
data3 (opaque pointer):
PBMessage
Tagged union: A message that can be sent to a message handler. For each message type, there are various inputs and outputs.
Tags
PBMsg_INVALID
PBMsg_INVALID
with field empty
(PBMessageEmpty):
Do not send.
PBMsg_CUSTOM
PBMsg_CUSTOM
with field custom
(PBMessageCustom):
A custom message defined specially by the recipient.
PBMsg_REDUCE_MEMORY_USAGE
PBMsg_REDUCE_MEMORY_USAGE
with field empty
(PBMessageEmpty):
Broadcast to all elements when the system is low on memory.
PBMsg_CUSTOM_PAINT
PBMsg_CUSTOM_PAINT
with field customPaint
(PBMessageCustomPaint):
Sent only to elements with the PBElement_CUSTOM_PAINT flag for each PBDepthIndex to draw itself. Return -1 to prevent the system from painting the descendent elements.
PBMsg_GET_PAINT_BOUNDS
PBMsg_GET_PAINT_BOUNDS
with field getPaintBounds
(PBMessageGetPaintBounds):
Sent only to elements with the PBElement_CUSTOM_PAINT flag to get the bounding box in which they can draw. It is best to keep this as close to the element's layout bounds as possible, to reduce the amount of pixels that must be redrawn every event.
PBMsg_UPDATE_STATE
PBMsg_UPDATE_STATE
with field updateState
(PBMessageUpdateState):
Sent when an interaction state changes. See PBUpdateStateIndex for a list of supported states. For PBUpdateState_PRESSED, this is sent before the corresponding mouse button down message, giving the pressed element an opportunity to defer the press to another element using PBElementTransferMousePress.
PBMsg_WINDOW_ACTIVATE
PBMsg_WINDOW_ACTIVATE
with field empty
(PBMessageEmpty):
Sent to all elements in a window when it is becomes the active window.
PBMsg_WINDOW_DEACTIVATE
PBMsg_WINDOW_DEACTIVATE
with field empty
(PBMessageEmpty):
Sent to all elements in a window when another window becomes the active window.
PBMsg_WINDOW_RECONNECT_TO_WM
PBMsg_WINDOW_RECONNECT_TO_WM
with field empty
(PBMessageEmpty):
Sent to all elements in a window when the connection to window manager is restored if it is restarted.
PBMsg_SCALE_FACTOR_CHANGED
PBMsg_SCALE_FACTOR_CHANGED
with field scaleFactorChanged
(PBMessageScaleFactorChanged):
Sent to all elements in a window when its scale factor changes. The element will be automatically marked for relayout.
PBMsg_COLOR_SPACE_CHANGED
PBMsg_COLOR_SPACE_CHANGED
with field colorSpaceChanged
(PBMessageColorSpaceChanged):
Sent to all elements in a window when its backing color space changes.
PBMsg_UI_THEME_CHANGED
PBMsg_UI_THEME_CHANGED
with field empty
(PBMessageEmpty):
PBMsg_GET_CURSOR
PBMsg_GET_CURSOR
with field getCursor
(PBMessageGetCursor):
Sent to the hovered element to let them pick a mouse cursor image.
PBMsg_CAPTURED_COMMAND
PBMsg_CAPTURED_COMMAND
with field capturedCommand
(PBMessageCapturedCommand):
Sent to the focused element. See PBElementSetCapturedCommandDisabled.
PBMsg_LOW_FLAGS_WILL_CHANGE
PBMsg_LOW_FLAGS_WILL_CHANGE
with field lowFlagsWillChange
(PBMessageLowFlagsWillChange):
Sent by PBElementSetFlags before it updates bits 0-7 of the element's flags.
PBMsg_USER_PROPERTY_CHANGED
PBMsg_USER_PROPERTY_CHANGED
with field empty
(PBMessageEmpty):
Sent when a user-defined element property changes. This can occur due to a call to one of PBElementSetProperty functions, or due to a property being animated. A user-defined property is one with positive ID. If multiple properties have been changed, this message may only be sent once.
PBMsg_ANIMATION_FRAME
PBMsg_ANIMATION_FRAME
with field empty
(PBMessageEmpty):
PBMsg_ADD_CHILD
PBMsg_ADD_CHILD
with field addChild
(PBMessageAddChild):
PBMsg_REMOVE_CHILD
PBMsg_REMOVE_CHILD
with field removeChild
(PBMessageRemoveChild):
PBMsg_DESTROY
PBMsg_DESTROY
with field empty
(PBMessageEmpty):
Sent by PBElementDestroy. This message is sent after it has been sent to the descendents.
PBMsg_DEALLOCATE
PBMsg_DEALLOCATE
with field empty
(PBMessageEmpty):
Sent later in the event cycle outside of input messages once an element is marked for destruction by PBElementDestroy. This message is sent after it has been sent to the descendents.
PBMsg_DID_DESTROY_DESCENDENTS
PBMsg_DID_DESTROY_DESCENDENTS
with field empty
(PBMessageEmpty):
Sent after PBElementDestroyDescendents was called with this element.
PBMsg_GET_CHILD_STABILITY
PBMsg_GET_CHILD_STABILITY
with field getChildStability
(PBMessageGetChildStability):
PBMsg_LAYOUT
PBMsg_LAYOUT
with field layout
(PBMessageLayout):
Sent to elements with the PBElement_CUSTOM_LAYOUT flag. In this message, elements must position all their child elements with PBElementMove or PBElementMove64.
PBMsg_MOVED
PBMsg_MOVED
with field empty
(PBMessageEmpty):
Sent to elements when they are moved. See PBElementMove. Return 1 if you moved the child elements manually.
PBMsg_MEASURE
PBMsg_MEASURE
with field measure
(PBMessageMeasure):
Sent to elements with the PBElement_CUSTOM_LAYOUT flag to obtain the optimal size of their dimensions.
PBMsg_CONTAINS_POINT
PBMsg_CONTAINS_POINT
with field containsPoint
(PBMessageContainsPoint):
Sent during PBElementFindByPoint to allow for elements to have a non-rectangular input region. If the element doesn't contain the point and it has the PBElement_CLIP_LAYER flag, neither it nor its descendents will be returned. If the element doesn't contain the point but it doesn't have the PBElement_CLIP_LAYER flag, it is still possible for a descendent to be returned.
PBMsg_TAB_TRAVERSE
PBMsg_TAB_TRAVERSE
with field tabTraverse
(PBMessageTabTraverse):
PBMsg_EVENT_CYCLE
PBMsg_EVENT_CYCLE
with field empty
(PBMessageEmpty):
See PBElementWantMsgEventCycle. This is sent after the first layout pass and just before rendering, every event cycle. If necessary, another layout pass will be performed after sending this message.
PBMsg_ENSURE_VISIBLE
PBMsg_ENSURE_VISIBLE
with field ensureVisible
(PBMessageEnsureVisible):
Sent to elements with the PBElement_CUSTOM_LAYOUT flag to request them to modify their layout so that the given descendent element will be within the visible viewport. For example, a scroll view will adjust its scroll position as necessary to make the descendent visible. Return 1 if you have made the descendent visible; return 0 to defer the request to the parent element.
PBMsg_SCROLL
PBMsg_SCROLL
with field scroll
(PBMessageScroll):
Sent by a scroll view to its child to notify it that the scroll position has changed.
PBMsg_SCROLL_GET_FIXED_SIZE
PBMsg_SCROLL_GET_FIXED_SIZE
with field scrollGetFixedSize
(PBRectangle):
Sent by a scroll view to its child to ask it for the size of the portion of the viewport that is taken up by fixed elements that do not scroll. The returned rectangle gives the inset on each edge in pixels.
PBMsg_GET_VIRTUAL_CHILD_COUNT
PBMsg_GET_VIRTUAL_CHILD_COUNT
with field getVirtualChildCount
(PBMessageGetVirtualChildCount):
PBMsg_GET_VIRTUAL_CHILD
PBMsg_GET_VIRTUAL_CHILD
with field getVirtualChild
(PBMessageGetVirtualChild):
PBMsg_GET_INDEX_OF_VIRTUAL_CHILD
PBMsg_GET_INDEX_OF_VIRTUAL_CHILD
with field getIndexOfVirtualChild
(PBMessageGetIndexOfVirtualChild):
PBMsg_RAW_LEFT_DOWN
PBMsg_RAW_LEFT_DOWN
with field mouse
(PBMessageMouse):
The left mouse button was pressed. Sent to the pressed element and its ancestors. Sent before PBMsg_LEFT_DOWN.
PBMsg_RAW_MIDDLE_DOWN
PBMsg_RAW_MIDDLE_DOWN
with field mouse
(PBMessageMouse):
Similar to PBMsg_RAW_LEFT_DOWN, but for the middle mouse button.
PBMsg_RAW_RIGHT_DOWN
PBMsg_RAW_RIGHT_DOWN
with field mouse
(PBMessageMouse):
Similar to PBMsg_RAW_LEFT_DOWN, but for the right mouse button.
PBMsg_RAW_LEFT_UP
PBMsg_RAW_LEFT_UP
with field mouse
(PBMessageMouse):
The left mouse button was released. Sent to the pressed element and its ancestors. Sent before PBMsg_LEFT_UP and PBMsg_LEFT_CLICK (if it is sent).
PBMsg_RAW_MIDDLE_UP
PBMsg_RAW_MIDDLE_UP
with field mouse
(PBMessageMouse):
Similar to PBMsg_RAW_LEFT_UP, but for the middle mouse button.
PBMsg_RAW_RIGHT_UP
PBMsg_RAW_RIGHT_UP
with field mouse
(PBMessageMouse):
Similar to PBMsg_RAW_LEFT_UP, but for the right mouse button.
PBMsg_RAW_MOUSE_MOVE
PBMsg_RAW_MOUSE_MOVE
with field mouse
(PBMessageMouse):
The mouse moved. Sent to the hovered element and its ancestors. Sent regardless of whether any mouse buttons are held.
PBMsg_MODIFIER_KEYS_CHANGED
PBMsg_MODIFIER_KEYS_CHANGED
with field mouse
(PBMessageMouse):
The set of held modifiers keys changed. If there is a pressed element, the message is sent to the pressed element and its ancestors; otherwise, it is sent to the hovered element and its ancestors. This is sent before the corresponding PBMsg_KEY_UP or PBMsg_KEY_DOWN message.
PBMsg_LEFT_DOWN
PBMsg_LEFT_DOWN
with field mouse
(PBMessageMouse):
The left mouse button was pressed. Sent to the element that is about to become pressed. Requires the PBElement_INPUT_MOUSE_LEFT flag.
PBMsg_MIDDLE_DOWN
PBMsg_MIDDLE_DOWN
with field mouse
(PBMessageMouse):
Similar to PBMsg_LEFT_DOWN, but for the middle mouse button.
PBMsg_RIGHT_DOWN
PBMsg_RIGHT_DOWN
with field mouse
(PBMessageMouse):
Similar to PBMsg_LEFT_DOWN, but for the right mouse button.
PBMsg_LEFT_UP
PBMsg_LEFT_UP
with field mouse
(PBMessageMouse):
The left mouse button was released. Sent to the element that is about to no longer be pressed.
PBMsg_MIDDLE_UP
PBMsg_MIDDLE_UP
with field mouse
(PBMessageMouse):
Similar to PBMsg_LEFT_UP, but for the middle mouse button.
PBMsg_RIGHT_UP
PBMsg_RIGHT_UP
with field mouse
(PBMessageMouse):
Similar to PBMsg_LEFT_UP, but for the right mouse button.
PBMsg_MOUSE_MOVE
PBMsg_MOUSE_MOVE
with field mouse
(PBMessageMouse):
The mouse moved. Sent to the hovered element. Not sent if there is a pressed element; see the _DRAG messages below.
PBMsg_LEFT_DRAG
PBMsg_LEFT_DRAG
with field mouse
(PBMessageMouse):
The mouse moved while the left mouse button was held. Sent to the pressed element.
PBMsg_MIDDLE_DRAG
PBMsg_MIDDLE_DRAG
with field mouse
(PBMessageMouse):
Similar to PBMsg_LEFT_DRAG, but for the middle mouse button.
PBMsg_RIGHT_DRAG
PBMsg_RIGHT_DRAG
with field mouse
(PBMessageMouse):
Similar to PBMsg_LEFT_DRAG, but for the right mouse button.
PBMsg_LEFT_CLICK
PBMsg_LEFT_CLICK
with field mouse
(PBMessageMouse):
The left mouse button was released while in the bounds of the pressed element. Sent before PBMsg_LEFT_UP. Not sent if the press is cancelled (see PBMouseInput_CANCEL_ACTION). Requires the PBElement_INPUT_MOUSE_LEFT flag.
PBMsg_MIDDLE_CLICK
PBMsg_MIDDLE_CLICK
with field mouse
(PBMessageMouse):
Similar to PBMsg_LEFT_CLICK, but for the middle mouse button.
PBMsg_RIGHT_CLICK
PBMsg_RIGHT_CLICK
with field mouse
(PBMessageMouse):
Similar to PBMsg_LEFT_CLICK, but for the right mouse button.
PBMsg_OPEN_CONTEXT_MENU
PBMsg_OPEN_CONTEXT_MENU
with field mouse
(PBMessageMouse):
The element is requested to open its context menu. If the element has the PBElement_INPUT_MOUSE_RIGHT flag, this will be sent by right clicks (after PBMsg_RIGHT_CLICK and before PBMsg_RIGHT_UP). It is also sent by the context menu key to the focused element.
PBMsg_MOUSE_WHEEL
PBMsg_MOUSE_WHEEL
with field mouseWheel
(PBMessageMouseWheel):
The scroll wheel was adjusted. Sent to the pressed element if there is one; otherwise, sent to the hovered element. Return 1 from the message handler if you consumed the message. Otherwise, it will be propagated to the layout parent.
PBMsg_KEY_DOWN
PBMsg_KEY_DOWN
with field keyboard
(PBMessageKeyboard):
A key was pressed. Sent to the focused element. The modifiers keys in the message will have already been updated. Return 1 from the message handler if you consumed the message. Otherwise, it will be propagated to the layout parent. This message may be simulated to send arbitrary text into an element, in which case PBKey_NONE is used.
PBMsg_KEY_UP
PBMsg_KEY_UP
with field keyboard
(PBMessageKeyboard):
A key was released. Sent to the focused element. The modifiers keys in the message will have already been updated. Return 1 from the message handler if you consumed the message. Otherwise, it will be propagated to the layout parent.
PBMsg_GET_PROP_ROLE
PBMsg_GET_PROP_ROLE
with field getPropRole
(PBMessageGetPropRole):
PBMsg_GET_PROP_LABEL
PBMsg_GET_PROP_LABEL
with field getPropString
(PBMessageGetPropString):
PBMsg_GET_PROP_TEXT
PBMsg_GET_PROP_TEXT
with field getPropString
(PBMessageGetPropString):
PBMsg_GET_PROP_CHECK_STATE
PBMsg_GET_PROP_CHECK_STATE
with field getPropCheckState
(PBMessageGetPropCheckState):
PBMsg_GET_PROP_SELECTION_STATE
PBMsg_GET_PROP_SELECTION_STATE
with field getPropBool
(PBMessageGetPropBool):
PBMsg_GET_PROP_SELECTED_ITEM
PBMsg_GET_PROP_SELECTED_ITEM
with field getPropElement
(PBMessageGetPropElement):
PBMsg_GET_PROP_FOCUSED_ITEM
PBMsg_GET_PROP_FOCUSED_ITEM
with field getPropElement
(PBMessageGetPropElement):
PBMsg_GET_PROP_HANDLE_INFO
PBMsg_GET_PROP_HANDLE_INFO
with field getPropHandleInfo
(PBMessageGetPropHandleInfo):
PBMsg_GET_PROP_HANDLE_POSITION
PBMsg_GET_PROP_HANDLE_POSITION
with field getPropHandlePosition
(PBMessageGetPropHandlePosition):
PBMsg_INTERACT_INVOKE
PBMsg_INTERACT_INVOKE
with field empty
(PBMessageEmpty):
PBMsg_INTERACT_TOGGLE
PBMsg_INTERACT_TOGGLE
with field empty
(PBMessageEmpty):
PBMsg_INTERACT_SET_CHECK_STATE
PBMsg_INTERACT_SET_CHECK_STATE
with field interactSetCheckState
(PBMessageInteractSetCheckState):
PBMsg_INTERACT_SELECT_ITEM
PBMsg_INTERACT_SELECT_ITEM
with field interactSelectItem
(PBMessageInteractSelectItem):
PBMsg_INTERACT_SELECT_SELF
PBMsg_INTERACT_SELECT_SELF
with field interactSelectSelf
(PBMessageInteractSelectSelf):
PBMsg_INTERACT_MOVE_HANDLE
PBMsg_INTERACT_MOVE_HANDLE
with field interactMoveHandle
(PBMessageInteractMoveHandle):
PBMsg_WINDOW_RESIZED
PBMsg_WINDOW_RESIZED
with field empty
(PBMessageEmpty):
The window was resized. Sent to the window.
PBMsg_WINDOW_MINIMIZE
PBMsg_WINDOW_MINIMIZE
with field empty
(PBMessageEmpty):
The window was minimized. Sent to the window.
PBMsg_WINDOW_UNMINIMIZE
PBMsg_WINDOW_UNMINIMIZE
with field empty
(PBMessageEmpty):
The window was restored after being minimized. Sent to the window.
PBMsg_WINDOW_CLOSE
PBMsg_WINDOW_CLOSE
with field empty
(PBMessageEmpty):
A request was made to close the window. For example, this message is sent when the window's close button is clicked. Sent to the window. The default implementation of this is to destroy the window element, causing it to be closed at the end of the event.
PBMsg_WINDOW_ATTACHMENT_REMOVED
PBMsg_WINDOW_ATTACHMENT_REMOVED
with field windowAttachmentRemoved
(PBMessageWindowAttachmentRemoved):
Sent when one of the windows attached to this window is destroyed.
PBMsg_WINDOW_ADJUST_APP_MENU
PBMsg_WINDOW_ADJUST_APP_MENU
with field windowAdjustAppMenu
(PBMessageWindowAdjustAppMenu):
PBMsg_SCREEN_RESOLUTION_CHANGED
PBMsg_SCREEN_RESOLUTION_CHANGED
with field screenResolutionChanged
(PBMessageScreenResolutionChanged):
Sent to all windows when the resolution of any screen is updated.
PBMsg_TABLE_GET_STRING
PBMsg_TABLE_GET_STRING
with field tableGetString
(PBMessageTableGetString):
PBMsg_TABLE_GET_DOCUMENT
PBMsg_TABLE_GET_DOCUMENT
with field tableGetDocument
(PBMessageTableGetDocument):
PBMsg_TABLE_GET_ICON
PBMsg_TABLE_GET_ICON
with field tableGetIcon
(PBMessageTableGetIcon):
PBMsg_TABLE_GET_STATE
PBMsg_TABLE_GET_STATE
with field tableGetState
(PBMessageTableGetState):
PBMsg_TABLE_SET_SELECTED
PBMsg_TABLE_SET_SELECTED
with field tableSetSelected
(PBMessageTableSetSelected):
PBMsg_TABLE_SET_SINGLE_SELECTED
PBMsg_TABLE_SET_SINGLE_SELECTED
with field tableSetSingleSelected
(PBMessageEmpty):
PBMsg_TABLE_CHOOSE
PBMsg_TABLE_CHOOSE
with field tableChoose
(PBMessageTableChoose):
PBMsg_TABLE_CONTEXT_MENU
PBMsg_TABLE_CONTEXT_MENU
with field tableContextMenu
(PBMessageTableContextMenu):
PBMsg_TABLE_HEADER_CONTEXT_MENU
PBMsg_TABLE_HEADER_CONTEXT_MENU
with field tableContextMenu
(PBMessageTableContextMenu):
PBMsg_TABLE_FOCUS
PBMsg_TABLE_FOCUS
with field tableFocus
(PBMessageTableFocus):
PBMsg_TABLE_INLINE_INPUT
PBMsg_TABLE_INLINE_INPUT
with field tableInlineInput
(PBMessageTableInlineInput):
PBMsg_TABLE_HEADER_CLICKED
PBMsg_TABLE_HEADER_CLICKED
with field tableHeaderClicked
(PBMessageTableHeaderClicked):
PBMsg_TABLE_ITEM_DRAGGED
PBMsg_TABLE_ITEM_DRAGGED
with field tableItemDragged
(PBMessageTableItemDragged):
PBMsg_TABLE_ITEM_DND_UPDATE
PBMsg_TABLE_ITEM_DND_UPDATE
with field tableItemDNDUpdate
(PBMessageTableItemDNDUpdate):
PBMsg_TABLE_ITEM_TOGGLE
PBMsg_TABLE_ITEM_TOGGLE
with field tableItemToggle
(PBMessageTableItemToggle):
PBMsg_TABLE_ITEM_CREATED
PBMsg_TABLE_ITEM_CREATED
with field tableItemCreated
(PBMessageTableItemCreated):
PBMsg_VIRTUAL_TEXT_GET_LINE_INFO
PBMsg_VIRTUAL_TEXT_GET_LINE_INFO
with field virtualTextGetLineInfo
(PBMessageVirtualTextGetLineInfo):
PBMsg_VIRTUAL_TEXT_GET_STRING
PBMsg_VIRTUAL_TEXT_GET_STRING
with field virtualTextGetString
(PBMessageVirtualTextGetString):
PBMsg_VIRTUAL_TEXT_GET_PLAN
PBMsg_VIRTUAL_TEXT_GET_PLAN
with field virtualTextGetPlan
(PBMessageVirtualTextGetPlan):
PBMsg_VIRTUAL_TEXT_ADJUST_MENU
PBMsg_VIRTUAL_TEXT_ADJUST_MENU
with field virtualTextAdjustMenu
(PBMessageVirtualTextAdjustMenu):
PBMsg_VIRTUAL_TEXT_DRAW_LINE
PBMsg_VIRTUAL_TEXT_DRAW_LINE
with field virtualTextDrawLine
(PBMessageVirtualTextDrawLine):
PBMsg_VIRTUAL_TEXT_DRAW_REGION
PBMsg_VIRTUAL_TEXT_DRAW_REGION
with field virtualTextDrawRegion
(PBMessageVirtualTextDrawRegion):
PBMsg_VIRTUAL_TEXT_SELECTION_CHANGED
PBMsg_VIRTUAL_TEXT_SELECTION_CHANGED
with field virtualTextSelectionChanged
(PBMessageVirtualTextSelectionChanged):
PBMsg_VALUE_CHANGED
PBMsg_VALUE_CHANGED
with field empty
(PBMessageEmpty):
An interaction with this element has caused the value it stores to change. For example, this message is to sent to a slider element when the handle is moved.
PBMsg_TRANSITION_COMPLETE
PBMsg_TRANSITION_COMPLETE
with field transitionComplete
(PBMessageTransitionComplete):
PBMsg_INPUT_FIELD_PROPOSE_CHANGE
PBMsg_INPUT_FIELD_PROPOSE_CHANGE
with field inputFieldProposeChange
(PBMessageInputFieldProposeChange):
A message sent when the input field's contents is about to be changed.
PBMsg_VIRTUAL_PANEL_REALIZE_CHILD
PBMsg_VIRTUAL_PANEL_REALIZE_CHILD
with field getVirtualChild
(PBMessageGetVirtualChild):
PBMsg_SLIDER_ADJUST_VALUE
PBMsg_SLIDER_ADJUST_VALUE
with field sliderAdjustValue
(PBMessageSliderAdjustValue):
PBMsg_SLIDER_DRAG
PBMsg_SLIDER_DRAG
with field sliderDrag
(PBMessageSliderDrag):
PBMsg_POPUP_BUTTON_GET_ITEM
PBMsg_POPUP_BUTTON_GET_ITEM
with field popUpButtonGetItem
(PBMessagePopUpButtonGetItem):
PBMsg_POPUP_BUTTON_ADJUST_MENU
PBMsg_POPUP_BUTTON_ADJUST_MENU
with field popUpButtonAdjustMenu
(PBMessagePopUpButtonAdjustMenu):
PBMsg_HYPERLINK_CLICKED
PBMsg_HYPERLINK_CLICKED
with field hyperlinkClicked
(PBMessageHyperlinkClicked):
PBMsg_GET_IMAGE
PBMsg_GET_IMAGE
with field getImage
(PBMessageGetImage):
PBMsg_LOG_VIEW_PARSE_APC
PBMsg_LOG_VIEW_PARSE_APC
with field logViewParseAPC
(PBMessageLogViewParseAPC):
PBMsg_APP_CREATE
PBMsg_APP_CREATE
with field appCreate
(PBMessageAppCreate):
A request has been made to open a new window of this application. Sent to the application message handler.
PBMsg_APP_QUERY
PBMsg_APP_QUERY
with field appQuery
(PBMessageAppQuery):
PBMsg_APP_CLEANUP
PBMsg_APP_CLEANUP
with field appCleanup
(PBMessageAppCleanup):
Sent just before the application process exits, once the last window has been closed.
PBMsg_NOTIFY_WINDOW_CREATED
PBMsg_NOTIFY_WINDOW_CREATED
with field notifyWindowCreated
(PBMessageNotifyWindowCreated):
PBMsg_NOTIFY_WINDOW_DESTROYED
PBMsg_NOTIFY_WINDOW_DESTROYED
with field notifyWindowDestroyed
(PBMessageNotifyWindowDestroyed):
PBMsg_NOTIFY_WINDOW_SHOWN
PBMsg_NOTIFY_WINDOW_SHOWN
with field notifyWindowShown
(PBMessageNotifyWindowShown):
PBMsg_NOTIFY_WINDOW_HIDDEN
PBMsg_NOTIFY_WINDOW_HIDDEN
with field notifyWindowHidden
(PBMessageNotifyWindowHidden):
PBMsg_NOTIFY_WINDOW_ACTIVATED
PBMsg_NOTIFY_WINDOW_ACTIVATED
with field notifyWindowActivated
(PBMessageNotifyWindowActivated):
PBMsg_NOTIFY_WINDOW_REORDERED
PBMsg_NOTIFY_WINDOW_REORDERED
with field notifyWindowReordered
(PBMessageNotifyWindowReordered):
PBMsg_NOTIFY_WINDOW_TITLE_CHANGED
PBMsg_NOTIFY_WINDOW_TITLE_CHANGED
with field notifyWindowTitleChanged
(PBMessageNotifyWindowTitleChanged):
PBMsg_GET_TOOL_TIP
PBMsg_GET_TOOL_TIP
with field getToolTip
(PBMessageGetToolTip):
PBMsg_CLIPBOARD_CHANGED
PBMsg_CLIPBOARD_CHANGED
with field empty
(PBMessageEmpty):
Sent to the focused element when the primary clipboard is updated.
PBMsg_DND_DROP
PBMsg_DND_DROP
with field dndInfo
(PBMessageDNDInfo):
Sent during a drag-and-drop operation when the item is dropped on an element with the PBElement_DND_TARGET flag.
PBMsg_DND_MOVE_OVER
PBMsg_DND_MOVE_OVER
with field dndInfo
(PBMessageDNDInfo):
Sent during a drag-and-drop operation when the mouse moves over an element with the PBElement_DND_TARGET flag. You should call PBDNDSetFeedback exactly once in response to this message.
PBMsg_DND_ENTER
PBMsg_DND_ENTER
with field dndInfo
(PBMessageDNDInfo):
Sent during a drag-and-drop operation when the mouse enters the bounds of an element with the PBElement_DND_TARGET flag. Unless the element is destroyed too early, it will eventually receive either a PBMsg_DND_DROP message confirming the drop, or PBMsg_DND_LEAVE cancelling it.
PBMsg_DND_LEAVE
PBMsg_DND_LEAVE
with field empty
(PBMessageEmpty):
Sent during a drag-and-drop operation when the mouse exits the bounds of an element with the PBElement_DND_TARGET flag.
PBMsg_HANDOFF_SAVE
PBMsg_HANDOFF_SAVE
with field handoffSave
(PBMessageHandoffSave):
Broadcast to all elements in a window when the window's state is being saved. Windows are only eligible for handoff if they have a restore string set with PBWindowSetRestoreString.
PBMsg_HANDOFF_RESTORE
PBMsg_HANDOFF_RESTORE
with field handoffRestore
(PBMessageHandoffRestore):
Broadcast to all elements in a window when the window's state is being restored. An element receives this message before its children. Windows are only eligible for handoff if they have a restore string set with PBWindowSetRestoreString.
PBMsg_CONFIG_CHANGED
PBMsg_CONFIG_CHANGED
with field configChanged
(PBMessageConfigChanged):
See Also
PBElementMessageHandler
Callback:
Syntax (C/C++)
intptr_t PBElementMessageHandler(PBElementRef element,
/* in-out */ PBMessage * __restrict message);
You can create a callback of this type from a function pointer with the above signature using PBElementMessageHandler_Make
.
Syntax (Python)
ElementMessageHandler(element, message) -> (result)
Parameters and Return Values
[in] element (referenced PBElement):
[in-out] message (PBMessage):
[out] result (intptr_t
):
PBElementMessage
Function:
Syntax (C/C++)
intptr_t PBElementMessage(PBElementRef element,
/* in-out */ PBMessage * __restrict message);
Syntax (Python)
ElementMessage(element, message) -> (result)
Parameters and Return Values
[in] element (referenced PBElement):
[in-out] message (PBMessage):
[out] result (intptr_t
):
PBElementPostMessage
C-only function:
Syntax (C)
void PBElementPostMessage(PBElement *_Nonnull element, const PBMessage *_Nonnull message);
PBElementWantMsgEventCycle
Function:
Syntax (C/C++)
void PBElementWantMsgEventCycle(PBElementRef element, bool wantMsgEventCycle);
Syntax (Python)
ElementWantMsgEventCycle(element, wantMsgEventCycle)
Parameters and Return Values
[in] element (referenced PBElement):
[in] wantMsgEventCycle (bool
):