![]() |
![]() |
![]() |
![]() |
![]() |
This version of this document is no longer maintained. For the latest documentation, see http://www.qnx.com/developers/docs. |
Identify a valid parent for the specified widget
PtWidget_t * PtValidParent(
PtWidget_t *widget_parent,
PtWidgetClassRef_t *class_ref );
ph
This function determines the real parent widget for widgets of type class_ref, given that its parent is specified as widget_parent when created or reparented. Examples of a class_ref include PtWidget, PtBasic, PtLabel, PtMeter, and so on.
The real parent of a widget might not be the specified widget_parent in special circumstances where the specified parent widget redirects the child to an alternate parent. Some examples:
A pointer to the widget that will be the real parent of any widgets of type class_ref created in or reparented to widget_parent.
PtWidget_t *
MyRedirector( PtWidget_t *widget )
{
MyWidget_t *my = (MyWidget_t * ) widget;
PtWidget_t *parent;
if( ( parent =
PtValidParent( my->scroll_area,
widget->class_ref ) ) == widget )
return PtWidgetParent( widget );
return( parent );
/*
* Returning my->scroll_area would allow the child
* to be created as a direct child of my->scroll_area.
* This would be undesirable because scroll_area is a
* compound widget, which also needs to redirect its
* children to work correctly.
*/
}
Photon
| Safety: | |
|---|---|
| Interrupt handler | No |
| Signal handler | No |
| Thread | No |
PtFindGuardian(), PtGetParent(), PtGetParentWidget(), PtReparentWidget(), PtSetParentWidget(), PtWidgetParent()
"Ordering widgets" in the Managing Widgets in Application Code chapter of the Photon Programmer's Guide
![]() |
![]() |
![]() |
![]() |