Operating systems, development tools, and professional services
for connected embedded systems
for connected embedded systems
![]() |
![]() |
![]() |
![]() |
PtCalcSurfaceById()
Force the control surface with a given ID to calculate its geometry
Synopsis:
PtSurface_t *PtCalcSurfaceById(
PtWidget_t *widget,
uchar_t surface_id );
Library:
ph
Description:
PtCalcSurfaceById() forces a control surface to calculate its geometry.
The widget argument specifies the widget owning the surface, while surface_id specifies the numeric ID of the surface to calculate. This function is useful if the geometry of one surface depends on that of another.
![]() |
This function call amounts to a no-op if the geometry for the specified surface has already been calculated for this pre/post-extent cycle. |
Returns:
A pointer to the specified surface on success, or NULL if the surface couldn't be found.
![]() |
Since control surfaces are maintained internally as an array, it's not uncommon for them to shift around in memory as surfaces are added and removed, thereby possibly invalidating a pointer returned by this function. As such, all surface pointers should be regarded as transient, and you should retrieve an updated copy whenever there is a chance that the widget's surface configuration might have changed. |
Classification:
Photon
| Safety: | |
|---|---|
| Interrupt handler | No |
| Signal handler | No |
| Thread | No |
See also:
PtCalcSurface(), PtCalcSurfaceByAction(), PtSurfaceCalcBoundingBox(), PtSurfaceCalcBoundingBoxById(), PtSurfaceExtent(), PtSurfaceExtentById(), PtSurfaceRect(), PtSurfaceRectById()
Control Surfaces chapter of the Photon Programmer's Guide
![]() |
![]() |
![]() |
![]() |

![[Previous]](../prev.gif)
![[Contents]](../contents.gif)
![[Index]](../keyword_index.gif)
![[Next]](../next.gif)
