VisClass: 6.3 Visible Layers and 32-Bit Graphics: The 16-Bit Limit on Visual Bounds

Up: GEOS SDK TechDocs | Up | Prev: 6.2 Using 16-Bit Drawing Commands | Next: 6.4 Handling MSG_VIS_DRAW

Individual visual objects have 16-bit bounds. If the rules of drawing in the 32-bit graphics space are followed, this is not a problem. Individual objects are constrained to 16-bit width and 16-bit height, however.

The only objects for which having 16-bit bounds is a problem are the tree's content object and all the layer objects. This is because these two types of objects must have width and height greater than 16 bits. This problem is handled differently for each object:

For the content object, the VI_bounds field is set to all zeros and is not used. Normally, the content uses its bounds to set the document size in the GenView; the responsibility for setting the GenView's document size then falls to the application.

For the layer object, the VI_bounds field is set to all zeros and is not used. If the bounds of the layer object are important to the application, the layer object must be given new instance fields to hold the 32-bit coordinates of the bounds. If not, nothing needs to be done; the bounds can simply be ignored.


Up: GEOS SDK TechDocs | Up | Prev: 6.2 Using 16-Bit Drawing Commands | Next: 6.4 Handling MSG_VIS_DRAW