void GrDestroyBitmap(
GStateHandle gstate, /* GState containing bitmap */
BMDestroy flags); /* flags for removing data */
Free the bitmap and disassociate it with its window. Depending on the passed flag, the bitmap's data may be freed or preserved. Thus, it is possible to remove the GString used to edit the bitmap while maintaining the bitmap in a drawable state.
Structures:
typedef ByteEnum BMDestroy; /* BMD_KILL_DATA, BMD_LEAVE_DATA */
Include: graphics.h
void GrDestroyGString(
Handle gstring, /* Handle of GString */
GStateHandle gstate, /* NULL, or handle of another
* gstate to free*/
GStringKillType type); /* Kill type for data removal */
Destroys a GString. Depending on the
GStringKillType
argument, this either constitutes removing the GState from the GString data; or freeing both the GState and the GString's data. If you have been drawing the GString to a GState, you should pass the GState's handle as
gstate
, and this routine will do some cleaning up.
Structures:
typedef ByteEnum GStringKillType; /* GSKT_KILL_DATA, GSKT_LEAVE_DATA */
Include: gstring.h
void GrDestroyPalette(
GStateHandle gstate); /* GState of palette to destroy */
Free any custom palette associated with the current window.
Include: graphics.h
void GrDestroyState(
GStateHandle gstate); /* GState to be destroyed */
Free a graphics state block.
Include: graphics.h
void GrDrawArc(
GStateHandle gstate, /* GState to draw to */
sword left, /* bounds of box outlining arc */
sword top,
sword right,
sword bottom,
word startAngle, /* angles in degrees
word endAngle, * counter-clockwise */
ArcCloseType arcType); /* how the arc is closed */
Draw an arc along the ellipse that is specified by a bounding box, from the starting angle to the ending angle.
Include: graphics.h
void GrDrawArc3Point(
GStateHandle gstate, /* GState to draw to */
const ThreePointArcParams *params);
Draw a circular arc, given three points along the arc; both endpoints and any other point on the arc.
Include: graphics.h
void GrDrawArc3PointTo(
GStateHandle gstate, /* GState to draw to */
const ThreePointArcToParams *params);
As
GrDrawArc3Point()
, above, except that the current position is automatically used as one of the endpoints.
Include: graphics.h
void GrDrawBitmap(
GStateHandle gstate, /* GState to draw to */
sword x, /* x starting point */
sword y, /* y starting point */
const Bitmap * bm, /* pointer to the bitmap */
Bitmap * _pascal (*callback) (Bitmap *bm)); /* NULL for no callback */
Draw a bitmap. Note that if the bitmap takes up a great deal of memory, it is necessary to manage its memory when drawing. If the bitmap resides in a
HugeArray
(true of any bitmap created using
GrCreateBitmap()
), then calling
GrDrawHugeBitmap()
will automatically take care of memory management. Otherwise, you may wish to provide a suitable callback routine. This routine should be declared _pascal and is passed a pointer into the passed bitmap and is expected to return a pointer to the next slice. This allows the bitmap to be drawn in horizontal bands, or swaths.
Include: graphics.h
void GrDrawBitmapAtCP(
GStateHandle gstate, /* GState to draw to */
const Bitmap * bm, /* pointer to the bitmap */
Bitmap * _pascal (*callback) (Bitmap *bm)); /* NULL for no callback */
This routine is the same as
GrDrawBitmap()
, above, except that the bitmap is drawn at the current position.
Include: graphics.h
void GrDrawChar(
GStateHandle gstate, /* GState to draw to */
sword x, /* x position at which to draw */
sword y, /* y position at which to draw */
word ch); /* character of type Chars */
Draw a character at the given position with the current text drawing attributes.
Include: graphics.h
void GrDrawCharAtCP(
GStateHandle gstate, /* GState to draw to */
word ch); /* character of type Chars */
Draw a character at the current position with the current text drawing attributes.
Include: graphics.h
GEOS SDK TechDocs
|
|
GrClearBitmap() ...
|
GrDrawCurve() ...