r3canvas
oops/r3canvas.h
r3oops
Base class for all canvas classes. Canvas is a class which defines all window specific things needed for rendering to a window.
r3Widget
R3CLID_WIDGET
r3Canvas
R3CLID_CANVAS - 264
NEWDRAWCONTEXT, DELETEDRAWCONTEXT, COPYDRAWCONTEXT, _WAS__RESTOREFROMBACKUP, REGISTERCANVAS, ENUMCANVASLIST, SCREENPOSITIONCHANGED, ACTIVATE, PALETTECHANGED, GETINDEXFORCOLOR,
DoubleBuffer, Main, Overlays, DoubleBufferOverlays, BackDrop, BackDropImage, Shaded, Backup, TrueColor, Palette, ClipLeft, ClipRight, ClipTop, ClipBottom, DrawContextClass, Semaphore, Depth,
int R3RegisterCanvasClass(R3APP *app);
R3CM_NEWDRAWCONTEXT
NEWDRAWCONTEXT
R3CM_NEWDRAWCONTEXT
R3OBJ*, address of the created drawing context.
rc = obj.NEWDRAWCONTEXT();
Ask canvas to create new drawing context. Multiple threads can render to a single window through drawing contexes. Drawing context specifies all rendering attributes, such as current color etc.
R3CM_DELETEDRAWCONTEXT
DELETEDRAWCONTEXT
R3CM_DELETEDRAWCONTEXT
R3BOOL, FALSE if drawing context wasn't created by the canvas
R3OBJ*, drawing context
rc = obj.DELETEDRAWCONTEXT(p3);
Ask canvas to delete given drawing context.
R3CM_COPYDRAWCONTEXT
COPYDRAWCONTEXT
R3CM_COPYDRAWCONTEXT
R3OBJ*, newly created draw context
R3OBJ*, draw context to be duplicated
rc = obj.COPYDRAWCONTEXT(p3);
Duplicate given draw context
R3CM__WAS__RESTOREFROMBACKUP
_WAS__RESTOREFROMBACKUP
R3CM__WAS__RESTOREFROMBACKUP
R3BOOL, FALSE if failed
rc = obj._WAS__RESTOREFROMBACKUP();
Ask canvas to restore the contents of the damaged window.
R3CCM_REGISTERCANVAS
REGISTERCANVAS
R3CCM_REGISTERCANVAS
R3BOOL, FALSE if no more canvases cannot be registered
char*, name of the canvas
R3INT, class id of the canvas class
R3TAG*, currently unused
rc = obj.REGISTERCANVAS(p1, p2, p3);
Class method which can be used for registering new canvas classes. The canvas class keeps track of all available canvas classes and ENUMCANVASLIST can be used for learning what classes are available.
R3CCM_ENUMCANVASLIST
ENUMCANVASLIST
R3CCM_ENUMCANVASLIST
R3INT, return value from the callback object
R3OBJ*, object to be called
R3INT, method to be called
void*, whatever user specific data
rc = obj.ENUMCANVASLIST(p1, p2, p3);
Enumerate available canvas classes. Calls given object with given method as R3SendMsgA3(R3OBJ *userobj, R3INT usermth, char *class_name, R3INT classid, void *user_data);
R3CM_SCREENPOSITIONCHANGED
SCREENPOSITIONCHANGED
R3CM_SCREENPOSITIONCHANGED
obj.SCREENPOSITIONCHANGED();
window moves on screen
R3CM_ACTIVATE
ACTIVATE
R3CM_ACTIVATE
obj.ACTIVATE();
window is activated
R3CM_PALETTECHANGED
PALETTECHANGED
R3CM_PALETTECHANGED
obj.PALETTECHANGED();
Palette of the window has changed
R3CM_GETINDEXFORCOLOR
GETINDEXFORCOLOR
R3CM_GETINDEXFORCOLOR
R3INT, index
R3FLOATCOLOR, RGB color
rc = obj.GETINDEXFORCOLOR(p3);
get an index for RGB color value.
DoubleBuffer
DoubleBuffer
R3CA_DoubleBuffer
Boolean
R3BOOL
double buffering on/off
jsobj.SetDoubleBuffer(value);
R3BOOL value = ...;
R3SetAttrs(r3obj, R3CA_DoubleBuffer, value, R3TAG_END);
Main
Main
R3CA_Main
Boolean
R3BOOL
main buffer on/off
jsobj.SetMain(value);
R3BOOL value = ...;
R3SetAttrs(r3obj, R3CA_Main, value, R3TAG_END);
Overlays
Overlays
R3CA_Overlays
Boolean
R3BOOL
allocate two 1 bit overlay buffers
jsobj.SetOverlays(value);
R3BOOL value = ...;
R3SetAttrs(r3obj, R3CA_Overlays, value, R3TAG_END);
DoubleBufferOverlays
DoubleBufferOverlays
R3CA_DoubleBufferOverlays
Boolean
R3BOOL
double buffered overlays
jsobj.SetDoubleBufferOverlays(value);
R3BOOL value = ...;
R3SetAttrs(r3obj, R3CA_DoubleBufferOverlays, value, R3TAG_END);
BackDrop
BackDrop
R3CA_BackDrop
Boolean
R3BOOL
backdrop (underlay) buffer
jsobj.SetBackDrop(value);
R3BOOL value = ...;
R3SetAttrs(r3obj, R3CA_BackDrop, value, R3TAG_END);
BackDropImage
BackDropImage
R3CA_BackDropImage
Boolean
R3BOOL
image for backdrop buffer
jsobj.SetBackDropImage(value);
R3BOOL value = ...;
R3SetAttrs(r3obj, R3CA_BackDropImage, value, R3TAG_END);
Shaded
Shaded
R3CA_Shaded
Boolean
R3BOOL
if true, shaded otherwise wireframe
jsobj.SetShaded(value);
value = jsobj.GetShaded();
R3BOOL value = ...;
R3SetAttrs(r3obj, R3CA_Shaded, value, R3TAG_END);
R3BOOL value;
R3GetAttrs(r3obj, R3CA_Shaded, &value, R3TAG_END);
Backup
Backup
R3CA_Backup
Boolean
R3BOOL
if true damaged areas are restored automatically by canvas
jsobj.SetBackup(value);
R3BOOL value = ...;
R3SetAttrs(r3obj, R3CA_Backup, value, R3TAG_END);
TrueColor
TrueColor
R3CA_TrueColor
Boolean
R3BOOL
rgb/indexed
jsobj.SetTrueColor(value);
value = jsobj.GetTrueColor();
R3BOOL value = ...;
R3SetAttrs(r3obj, R3CA_TrueColor, value, R3TAG_END);
R3BOOL value;
R3GetAttrs(r3obj, R3CA_TrueColor, &value, R3TAG_END);
Palette
Palette
R3CA_Palette
Object
R3OBJ*
get PALETTE object
value = jsobj.GetPalette();
R3OBJ* value;
R3GetAttrs(r3obj, R3CA_Palette, &value, R3TAG_END);
ClipLeft
ClipLeft
R3CA_ClipLeft
Integer
R3INT
clipping region for optimized update
jsobj.SetClipLeft(value);
value = jsobj.GetClipLeft();
R3INT value = ...;
R3SetAttrs(r3obj, R3CA_ClipLeft, value, R3TAG_END);
R3INT value;
R3GetAttrs(r3obj, R3CA_ClipLeft, &value, R3TAG_END);
ClipRight
ClipRight
R3CA_ClipRight
Integer
R3INT
'R3CA_ClipRight' not documented
jsobj.SetClipRight(value);
value = jsobj.GetClipRight();
R3INT value = ...;
R3SetAttrs(r3obj, R3CA_ClipRight, value, R3TAG_END);
R3INT value;
R3GetAttrs(r3obj, R3CA_ClipRight, &value, R3TAG_END);
ClipTop
ClipTop
R3CA_ClipTop
Integer
R3INT
'R3CA_ClipTop' not documented
jsobj.SetClipTop(value);
value = jsobj.GetClipTop();
R3INT value = ...;
R3SetAttrs(r3obj, R3CA_ClipTop, value, R3TAG_END);
R3INT value;
R3GetAttrs(r3obj, R3CA_ClipTop, &value, R3TAG_END);
ClipBottom
ClipBottom
R3CA_ClipBottom
Integer
R3INT
'R3CA_ClipBottom' not documented
jsobj.SetClipBottom(value);
value = jsobj.GetClipBottom();
R3INT value = ...;
R3SetAttrs(r3obj, R3CA_ClipBottom, value, R3TAG_END);
R3INT value;
R3GetAttrs(r3obj, R3CA_ClipBottom, &value, R3TAG_END);
DrawContextClass
DrawContextClass
R3CA_DrawContextClass
Integer
R3INT
Class id of the drawing context object to be created
jsobj.SetDrawContextClass(value);
R3INT value = ...;
R3SetAttrs(r3obj, R3CA_DrawContextClass, value, R3TAG_END);
Semaphore
Semaphore
R3CA_Semaphore
Object
R3OBJ*
for internal use only
jsobj.SetSemaphore(value);
R3OBJ* value = ...;
R3SetAttrs(r3obj, R3CA_Semaphore, value, R3TAG_END);
Depth
Depth
R3CA_Depth
Integer
R3INT
depth of the canvas
jsobj.SetDepth(value);
R3INT value = ...;
R3SetAttrs(r3obj, R3CA_Depth, value, R3TAG_END);
Modes