3D Graphics Programming with QuickDraw 3D
#define kQ3DrawContextTypePixmap Q3_OBJECT_TYPE('d','p','x','p') #define kQ3DrawContextTypeMacintosh Q3_OBJECT_TYPE('d','m','a','c') typedef enum TQ3DrawContextClearImageMethod { kQ3ClearMethodNone, kQ3ClearMethodWithColor } TQ3DrawContextClearImageMethod; typedef enum TQ3MacDrawContext2DLibrary { kQ3Mac2DLibraryNone, kQ3Mac2DLibraryQuickDraw, kQ3Mac2DLibraryQuickDrawGX } TQ3MacDrawContext2DLibrary;
typedef TQ3SharedObject TQ3DrawContextObject;
typedef struct TQ3DrawContextData { TQ3DrawContextClearImageMethod clearImageMethod; TQ3ColorARGB clearImageColor; TQ3Area pane; TQ3Boolean paneState; TQ3Bitmap mask; TQ3Boolean maskState; TQ3Boolean doubleBufferState; } TQ3DrawContextData;
typedef struct TQ3MacDrawContextData { TQ3DrawContextData drawContextData; CWindowPtr window; TQ3MacDrawContext2DLibrary library; gxViewPort viewPort; CGrafPtr grafPort; } TQ3MacDrawContextData;
typedef struct TQ3PixmapDrawContextData { TQ3DrawContextData drawContextData; TQ3Pixmap pixmap; } TQ3PixmapDrawContextData;
TQ3ObjectType Q3DrawContext_GetType ( TQ3DrawContextObject drawContext); TQ3Status Q3DrawContext_GetData ( TQ3DrawContextObject context, TQ3DrawContextData *contextData); TQ3Status Q3DrawContext_SetData ( TQ3DrawContextObject context, const TQ3DrawContextData *contextData); TQ3Status Q3DrawContext_GetClearImageColor ( TQ3DrawContextObject context, TQ3ColorARGB *color); TQ3Status Q3DrawContext_SetClearImageColor ( TQ3DrawContextObject context, const TQ3ColorARGB *color); TQ3Status Q3DrawContext_GetPane ( TQ3DrawContextObject context, TQ3Area *pane); TQ3Status Q3DrawContext_SetPane ( TQ3DrawContextObject context, const TQ3Area *pane); TQ3Status Q3DrawContext_GetPaneState ( TQ3DrawContextObject context, TQ3Boolean *state); TQ3Status Q3DrawContext_SetPaneState ( TQ3DrawContextObject context, TQ3Boolean state); TQ3Status Q3DrawContext_GetClearImageMethod ( TQ3DrawContextObject context, TQ3DrawContextClearImageMethod *method); TQ3Status Q3DrawContext_SetClearImageMethod ( TQ3DrawContextObject context, TQ3DrawContextClearImageMethod method); TQ3Status Q3DrawContext_GetMask ( TQ3DrawContextObject context, TQ3Bitmap *mask); TQ3Status Q3DrawContext_SetMask ( TQ3DrawContextObject context, const TQ3Bitmap *mask); TQ3Status Q3DrawContext_GetMaskState ( TQ3DrawContextObject context, TQ3Boolean *state); TQ3Status Q3DrawContext_SetMaskState ( TQ3DrawContextObject context, TQ3Boolean state); TQ3Status Q3DrawContext_GetDoubleBufferState ( TQ3DrawContextObject context, TQ3Boolean *state); TQ3Status Q3DrawContext_SetDoubleBufferState ( TQ3DrawContextObject context, TQ3Boolean state);
TQ3DrawContextObject Q3MacDrawContext_New ( const TQ3MacDrawContextData *drawContextData); TQ3Status Q3MacDrawContext_GetWindow ( TQ3DrawContextObject drawContext, CWindowPtr *window); TQ3Status Q3MacDrawContext_SetWindow ( TQ3DrawContextObject drawContext, const CWindowPtr window); TQ3Status Q3MacDrawContext_Get2DLibrary ( TQ3DrawContextObject drawContext, TQ3MacDrawContext2DLibrary *library); TQ3Status Q3MacDrawContext_Set2DLibrary ( TQ3DrawContextObject drawContext, TQ3MacDrawContext2DLibrary library); TQ3Status Q3MacDrawContext_GetGXViewPort ( TQ3DrawContextObject drawContext, gxViewPort *viewPort); TQ3Status Q3MacDrawContext_SetGXViewPort ( TQ3DrawContextObject drawContext, const gxViewPort viewPort); TQ3Status Q3MacDrawContext_GetGrafPort ( TQ3DrawContextObject drawContext, CGrafPtr *grafPort); TQ3Status Q3MacDrawContext_SetGrafPort ( TQ3DrawContextObject drawContext, const CGrafPtr grafPort);
TQ3DrawContextObject Q3PixmapDrawContext_New ( const TQ3PixmapDrawContextData *contextData); TQ3Status Q3PixmapDrawContext_GetPixmap ( TQ3DrawContextObject drawContext, TQ3Pixmap *pixmap); TQ3Status Q3PixmapDrawContext_SetPixmap ( TQ3DrawContextObject drawContext, const TQ3Pixmap *pixmap);
kQ3ErrorBadDrawContextType | Unrecognized draw context type |
kQ3ErrorBadDrawContextFlag | Unrecognized draw context flag |
kQ3ErrorBadDrawContext | Invalid draw context |
kQ3ErrorUnsupportedPixelDepth | Specified pixel depth not supported by draw context |
kQ3WarningInvalidPaneDimensions | Invalid panel dimensions |
kQ3NoticeDrawContextNotSetUsingInternalDefaults | Draw context not set |
Let us know what you think of these prototype pages.
Generated with Harlequin WebMaker