Keywords: LessTif

Next: 7. The change_managed() Method Up: 3. Geometry Management and Previous: 5. The query_geometry() Method Contents Index

## 6. The geometry_manager() Method

geometry_managermethodThis is the trickiest one. The preferred-size-routine should take two parameters, instigator and instig_request, and use the values specified in instig_request when treating the instigator.

There are two additional rules that you should keep in mind: geometry_manager() doesn't get called if the parent isn't realized; it also doesn't get called if the child isn't managed (in both cases, the request is automatically granted). The method should then call _XmMakeGeometryRequest(). Doing this guarantees that either XtGeometryYes or XtGeometryNo is returned - you'll never see XtGeometryAlmost unless a composite has a bug.

Finally the layout function should be called. The layout function should take two additional parameters, the instigator and the instig_request. What to do next depends on the value that's going to be returned by the geometry_manager() method:

In the layout function, if the child being manipulated is not the instigator, then the child should be configured (normally using _XmConfigureObject()), if the return is XtGeometryYes.

Next: 7. The change_managed() Method Up: 3. Geometry Management and Previous: 5. The query_geometry() Method Contents Index