r3tbase
real/code/r3tbase.h
r3code
Construction tool base class. Keeps track of installed construction tools.
r3Root
R3CLID_ROOT
r3Toolbase
R3CLID_TOOLBASE - 336
PrimLayer, Layer, Tool, Controls, ImageLayer, UnitConverter, ProgressIndicator, MaterialLayer,
int R3RegisterToolBaseClass(R3APP *app);
R3TBASEM_UPDATESELECTED
UPDATESELECTED
R3TBASEM_UPDATESELECTED
R3BOOL, TRUE enables 'apply' button so that the tool can be applied.
R3INT, number of selected objects
R3LIST, list of selected objects
rc = obj.UPDATESELECTED(p1, p3);
This method is sent to the tool object when the user has played with the selected object. The tool can check out the selected objects and decide whether or not they are valid.
R3TBASEM_APPLY
APPLY
R3TBASEM_APPLY
R3TAG*, R3TBASEA_Layer - current project R3TBASEA_PrimLayer - geometric primitives R3TBASEA_MaterialLayer - materials R3TBASEA_ImageLayer - images
obj.APPLY(p3);
This method is sent to the tool when the user has clicked the 'Apply'.
R3TBASEM_CREATECONTROLS
CREATECONTROLS
R3TBASEM_CREATECONTROLS
R3TAG*, R3TBASEA_Window
obj.CREATECONTROLS(p3);
This method is sent to the tool when the tool window is instanced. The tool creates necessary gadgets here. Gadgets must be created inside one geometry manager, which is later fetched using R3TBASEA_Controls tag.
PrimLayer
PrimLayer
R3TBASEA_PrimLayer
Object
R3OBJ*
geometric primitives
jsobj.SetPrimLayer(value);
value = jsobj.GetPrimLayer();
R3OBJ* value = ...;
R3SetAttrs(r3obj, R3TBASEA_PrimLayer, value, R3TAG_END);
R3OBJ* value;
R3GetAttrs(r3obj, R3TBASEA_PrimLayer, &value, R3TAG_END);
Layer
Layer
R3TBASEA_Layer
Object
R3OBJ*
current project
jsobj.SetLayer(value);
value = jsobj.GetLayer();
R3OBJ* value = ...;
R3SetAttrs(r3obj, R3TBASEA_Layer, value, R3TAG_END);
R3OBJ* value;
R3GetAttrs(r3obj, R3TBASEA_Layer, &value, R3TAG_END);
Tool
Tool
R3TBASEA_Tool
Integer
R3INT*
class id of the tool
value = jsobj.GetTool();
R3INT* value;
R3GetAttrs(r3obj, R3TBASEA_Tool, &value, R3TAG_END);
Controls
Controls
R3TBASEA_Controls
String
void*
geometry manager containing gadgets for the tool
value = jsobj.GetControls();
void* value;
R3GetAttrs(r3obj, R3TBASEA_Controls, &value, R3TAG_END);
ImageLayer
ImageLayer
R3TBASEA_ImageLayer
Object
R3OBJ*
jsobj.SetImageLayer(value);
value = jsobj.GetImageLayer();
R3OBJ* value = ...;
R3SetAttrs(r3obj, R3TBASEA_ImageLayer, value, R3TAG_END);
R3OBJ* value;
R3GetAttrs(r3obj, R3TBASEA_ImageLayer, &value, R3TAG_END);
UnitConverter
UnitConverter
R3TBASEA_UnitConverter
Object
R3OBJ*
jsobj.SetUnitConverter(value);
R3OBJ* value = ...;
R3SetAttrs(r3obj, R3TBASEA_UnitConverter, value, R3TAG_END);
ProgressIndicator
ProgressIndicator
R3TBASEA_ProgressIndicator
Object
R3OBJ*
jsobj.SetProgressIndicator(value);
value = jsobj.GetProgressIndicator();
R3OBJ* value = ...;
R3SetAttrs(r3obj, R3TBASEA_ProgressIndicator, value, R3TAG_END);
R3OBJ* value;
R3GetAttrs(r3obj, R3TBASEA_ProgressIndicator, &value, R3TAG_END);
MaterialLayer
MaterialLayer
R3TBASEA_MaterialLayer
Object
R3OBJ*
jsobj.SetMaterialLayer(value);
value = jsobj.GetMaterialLayer();
R3OBJ* value = ...;
R3SetAttrs(r3obj, R3TBASEA_MaterialLayer, value, R3TAG_END);
R3OBJ* value;
R3GetAttrs(r3obj, R3TBASEA_MaterialLayer, &value, R3TAG_END);
r3appobj *