| GL Studio C++ Runtime API

Public Types | Public Member Functions | Static Public Member Functions | Protected Member Functions | Protected Attributes | Friends | List of all members
ComponentBase Class Reference

`#include <component_base.h>`

Inheritance diagram for ComponentBase:

## Public Types
typedef Group | _BaseClass
| Deprecated typedef for the base class.
typedef Group | BaseClass
| Typedef for the base class.
Public Types inherited from Group
typedef DisplayObject | _BaseClass
| Deprecated typedef for the base class.
typedef DisplayObject | BaseClass
| Typedef for the base class.
Public Types inherited from DisplayObject
enum | AvailableAttributesEnum { GLS_ATTRIBUTES_BASIC = 1 , GLS_ATTRIBUTES_DYNAMIC = 2 , GLS_ATTRIBUTES_APPEARANCE = 4 , GLS_ATTRIBUTES_GEOMETRY = 8 , GLS_ATTRIBUTES_SPECIALIZED = 16 , GLS_ATTRIBUTES_ALL = ~0 , GLS_ATTRIBUTES_NONE = 0 }

## Public Member Functions
| ComponentBase (int generateInstance=0)
virtual | ~ComponentBase ()
virtual void | SetAvailableAttributes (unsigned int value) override
bool | AbsolutePlacement () const
virtual void | ChangedAbsolutePlacement (bool val)
virtual void | AbsolutePlacement (bool val)
virtual void | CalculateBoundingBox () override
virtual void | ClearDragAndFocus () override
virtual DisplayObject * | CloneObject (bool generateNames=false) override
virtual void | CopyGeometry (DisplayObject *src) override
virtual void | CopyProperties (DisplayObject *src) override
virtual void | CreateObjects ()
virtual void | DeleteAllChildren () override
virtual void | Draw () override
virtual DisplayObject * | FindByNameSameFrame (const char *name) override
virtual void | GetExtents (float &x, float &y, float &z, float &x1, float &y1, float &z1) override
virtual void | GetTransformedExtents (Vector &min, Vector &max, const GlsMatrixType &matrix, bool resetMinMax=true) override
virtual DisplayObject * | HandleInput (DisplayEvent *ev)
virtual void | Init ()
virtual void | Initialize ()
LiveComponentAccessor * | LiveAccessor ()
virtual const Vertex & | Location () const override
virtual void | Location (const Vertex &v) override
virtual void | Location (float x, float y, float z) override
virtual void | Parent (DisplayFrame *par) override
DisplayFrame * | ParentDisplayFrame () const
void | ParentDisplayFrame (DisplayFrame *val)
virtual DisplayObject * | Pick3D (const Vector &winLoc, const Vector &logicalCoords, float scale, const Vector &directionVector, Vector &collisionWinLoc, const OpenGLMatrices &drawnMatrices) override
virtual void | PreDraw (const OpenGLMatrices &current, Culler &culler) override
virtual void | GetResources (std::ostream &outstr, GlsResourceFilter *filter=NULL) override
virtual DistiAttributeBase & | Resource (const char *name) override
virtual void | Rotate (const Vector &orig, float angle, const Vector &axis) override
virtual void | Scale (float px, float py, float pz, Vertex *parentAnchor, int handleBar=0) override
virtual void | SetRedraw () override
virtual void | Translate (float tr[]) override
virtual void | Translate (float x, float y, float z) override
virtual void | UseParentsLighting (const bool &)
virtual bool | UseParentsLighting ()
virtual int | TextureIndex () override
virtual void | TextureIndex (int index) override
void | SetValue (int spec, va_list &args) override
virtual InputHandler * | GetInputHandler () override
void | NotifyAttributeChanged (const AttributeName &name) override
virtual void | Location (const Vertex &v) override
virtual void | Location (float x, float y, float z) override
virtual void | Parent (DisplayFrame *par) override
virtual void | Rotate (const Vector &orig, float angle, const Vector &axis) override
virtual void | Scale (float scale_x, float scale_y)
void | Scale (float scale_x, float scale_y, float scale_z, Vertex *anchor=NULL, int handle=0) override
Public Member Functions inherited from Group
DisplayObject * | FindByName (const char *name)
virtual DisplayObject * | FindByNameSameFrame (const char *name)
DisplayObject * | FindByName (DisplayObject *obj)
DisplayObject * | FindByQualifiedName (const char *name)
DisplayObject * | FindNonRecursive (DisplayObject *obj)
DisplayObjectArray & | Objects ()
const DisplayObjectArray & | Objects () const
DisplayObject * | Item (unsigned int index)
bool | PerformGroupCullCheck () const
void | PerformGroupCullCheck (bool mode)
bool | CullTestChildren () const
void | CullTestChildren (bool mode)
unsigned int | Count () const
DisplayObjectPtr | operator[] (unsigned int index)
const DisplayObject * | operator[] (unsigned int index) const
DisplayObject * | FirstObject ()
DisplayObject * | LastObject ()
bool | IsEmpty () const
int | Position (const DisplayObject *obj) const
| Group (int generateInstance=0)
| Group (const Group &group, bool generateNames)
void | InitialGroupCount (unsigned int cnt)
virtual | ~Group ()
virtual void | DeleteAllChildren ()
virtual void | SetAvailableAttributes (unsigned int value) override
virtual DisplayObject * | CloneObject (bool generateNames=false) override
virtual void | CopyGeometry (DisplayObject *src) override
virtual void | CopyProperties (DisplayObject *src) override
virtual void | Draw () override
virtual void | PreDraw (const OpenGLMatrices &current, Culler &culler) override
virtual bool | Hit (float x, float y, float z, float scale, const Vector &directionVector, Vector *collisionPoint) override
virtual DisplayObject * | Pick3D (const Vector &winLoc, const Vector &logicalCoords, float scale, const Vector &directionVector, Vector &collisionWinLoc, const OpenGLMatrices &drawnMatrices) override
virtual void | Parent (DisplayFrame *par) override
void | SetPainter (GlsPainter *painter) override
virtual void | CalculateBoundingBox ()
virtual void | Location (const Vertex &v) override
virtual void | Location (float x, float y, float z) override
virtual void | Translate (float x, float y, float z) override
virtual void | Translate (float transAmount[]) override
virtual void | TranslateVertices (float x, float y, float z) override
virtual void | TranslateVertices (float transAmount[])
virtual void | GetExtents (float &x, float &y, float &z, float &x1, float &y1, float &z1) override
virtual void | GetTransformedExtents (Vector &min, Vector &max, const GlsMatrixType &matrix, bool resetMinMax=true) override
virtual void | Rotate (const Vector &orig, float angle, const Vector &axis) override
virtual void | Scale (float scale_x, float scale_y)
void | Scale (float scale_x, float scale_y, float scale_z, Vertex *anchor=NULL, int handle=0) override
virtual void | InsertObject (DisplayObject *obj, bool reparent=true, bool recalculateBoundingbox=true, int loc=-1)
virtual bool | DeleteObject (DisplayObject *obj, bool recalculateBoundingbox=true)
virtual void | ReorderObject (unsigned int oldIndex, unsigned int newIndex)
virtual void | PushObject (DisplayObject *obj)
void | DeleteVertexAt (unsigned) override
void | InsertVertexAt (unsigned) override
virtual void | SetGroupLocation (const Vertex &v)
virtual void | GetResources (std::ostream &outstr, GlsResourceFilter *filter=NULL) override
virtual void | CalculateTextureCoordinates () override
virtual void | LineWidth (float width) override
virtual float | LineWidth () override
virtual void | LineStipplePattern (int pattern) override
virtual int | LineStipplePattern () override
virtual void | LineStippleMultiplier (int mult) override
virtual int | LineStippleMultiplier () override
virtual int | PolygonMode () override
virtual void | PolygonMode (int mode) override
virtual void | PolygonEnd (const int mode) override
virtual int | PolygonEnd () override
virtual void | Shading (const int mode) override
virtual int | Shading () override
virtual void | DepthTest (unsigned char mode) override
virtual int | DepthTest () override
virtual void | AntiAlias (bool mode) override
virtual bool | AntiAlias () override
virtual void | AlphaMode (int mode) override
virtual int | AlphaMode () override
virtual void | CullBackFace (const bool mode) override
virtual bool | CullBackFace () override
virtual bool | LightingEnabled () override
virtual void | LightingEnabled (bool lighting) override
virtual void | SetBlendColor (const GlsColor &color) override
virtual GlsColor | GetBlendColor () override
virtual void | SetColor (const GlsColor &color) override
virtual GlsColor | GetColor () override
virtual void | SetFillColor (const GlsColor &color) override
virtual GlsColor | GetFillColor () override
virtual void | TextureRepeat (const int rep) override
virtual void | TextureMappingTechnique (const int map) override
virtual int | TextureMappingTechnique () override
virtual void | TextureMinificationFilter (const int filter) override
virtual int | TextureMinificationFilter () override
virtual void | TextureMagnificationFilter (const int filter) override
virtual int | TextureMagnificationFilter () override
virtual void | Calculate (double time) override
CompatabilityListItem * | First ()
CompatabilityListItem * | Last ()
virtual void | Parent (DisplayFrame *par)
DisplayFrame * | Parent () const
virtual const Vertex & | Location () const
virtual void | Location (const Vertex &v)
virtual void | Location (float x, float y, float z)
virtual void | Rotate (float angle, int axis=Z_AXIS)
virtual void | Rotate (const Vector &origin, float angle, int axis=Z_AXIS)
virtual void | Rotate (const Vector &orig, float angle, const Vector &axis)
virtual void | SetBlendColor (const GlsColor &color)
void | SetBlendColor (unsigned char color[])
void | SetBlendColor (unsigned char r, unsigned char g, unsigned char b, unsigned char a)
void | GetBlendColor (unsigned char color[])
void | GetBlendColor (unsigned char &r, unsigned char &g, unsigned char &b, unsigned char &a)
virtual GlsColor | GetBlendColor ()
virtual void | SetColor (const GlsColor &color)
void | SetColor (unsigned char c4[])
void | SetColor (unsigned char r, unsigned char g, unsigned char b, unsigned char a)
virtual GlsColor | GetColor ()
void | GetColor (unsigned char c4[])
void | GetColor (unsigned char &r, unsigned char &g, unsigned char &b, unsigned char &a)
void | SetFillColor (unsigned char r, unsigned char g, unsigned char b, unsigned char a)
void | SetFillColor (unsigned char c4[])
virtual void | SetFillColor (const GlsColor &color)
void | GetFillColor (unsigned char &r, unsigned char &g, unsigned char &b, unsigned char &a)
void | GetFillColor (unsigned char c4[])
virtual GlsColor | GetFillColor ()
virtual bool | TextureRepeat ()
virtual void | TextureRepeat (const int rep)
Public Member Functions inherited from DisplayObject
| DisplayObject (float x, float y, float z)
| DisplayObject (const DisplayObject &object, const bool generateNames)
virtual | ~DisplayObject ()
void | Destroy ()
virtual void | SetAvailableAttributes (unsigned int value)
virtual void | AlphaMode (int mode)
virtual int | AlphaMode ()
virtual bool | AntiAlias ()
virtual void | AntiAlias (bool alias)
void | ApplyTextureSettings (int textureIndex=-1)
DistiAttribDict & | Attributes ()
const DistiAttribDict & | Attributes () const
virtual void | SetBlendColor (const GlsColor &color)
void | GetBlendColor (unsigned char color[])
void | GetBlendColor (unsigned char &r, unsigned char &g, unsigned char &b, unsigned char &a)
virtual GlsColor | GetBlendColor ()
void | SetBlendColor (unsigned char color[])
void | SetBlendColor (unsigned char r, unsigned char g, unsigned char b, unsigned char a)
virtual bool | BlinkedOff ()
virtual bool | Blinking ()
virtual void | Blinking (const bool blink)
virtual float | BlinkRate ()
virtual void | BlinkRate (const float rate)
const Vector & | BoundingVolumeCenter () const
void | BoundingVolumeCenter (const Vector &center)
bool | BoundingVolumeHit (const Vector &start, const Vector &direction)
float | BoundingVolumeRadius () const
void | BoundingVolumeRadius (float radius)
virtual void | Calculate (double time)
void | CalculateCollisionPoint (const Vector &pickLoc, const Vector &directionVector, Vector *collisionPoint)
virtual void | CalculateParentBoundingBox ()
virtual void | CalculateTextureCoordinates ()
bool | GetTexturePointTransformationMatrix (GlsMatrixType &world2tex)
CallbackMethodCallerBase * | CallbackCaller () const
void | CallbackCaller (CallbackMethodCallerBase *cb)
virtual void | GetCenter (Vector &center)
virtual DisplayObject * | CloneObject (bool generateNames=false)=0
virtual GlsColor | GetColor ()
void | GetColor (unsigned char c4[])
void | GetColor (unsigned char &r, unsigned char &g, unsigned char &b, unsigned char &a)
virtual void | SetColor (const GlsColor &color)
void | SetColor (unsigned char c4[])
void | SetColor (unsigned char r, unsigned char g, unsigned char b, unsigned char a)
virtual void | CopyGeometry (DisplayObject *src)
virtual void | CopyHierarchyProperties (DisplayObject *src, bool copyName)
virtual void | CopyProperties (DisplayObject *src)
virtual void | CullBackFace (const bool val)
virtual bool | CullBackFace ()
bool | Culled () const
void | Culled (bool val)
bool | CullTest (const GlsMatrixType *matrix, const Culler &culler)
GlsMatrixType & | DcsMatrix ()
GlsMatrixType | DcsMatrix () const
void | DcsMatrix (const GlsMatrixType &matrix)
virtual void | DeleteVertexAt (unsigned int index)
virtual void | DeleteVertex (unsigned int indexAfter) final
virtual int | DepthTest ()
virtual void | DepthTest (unsigned char zbuf)
virtual void | Draw ()=0
const GlsMatrixType * | DrawMatrix ()
bool | NeedCalcDrawMatrix ()
void | DynamicRotate (float angle, int axis)
void | DynamicRotate (const Vector &v)
void | DynamicRotate (float angle[])
virtual void | DynamicRotate (float x, float y, float z)
virtual void | DynamicRotateRelative (float angle, int axis)
virtual float | DynamicRotation (int axis)
virtual Vector | DynamicRotation ()
virtual Vector | DynamicScale ()
virtual void | DynamicScale (float x, float y, float z)
void | DynamicScale (const Vector &scale)
virtual void | DynamicTranslate (float x, float y, float z, bool relative=false)
void | DynamicTranslate (const Vertex &amount, bool relative)
void | DynamicTranslate (const Vector &amount)
virtual void | DynamicTranslateAxis (float amount, int axis, bool relative)
virtual float | DynamicTranslation (int axis)
virtual Vector | DynamicTranslation ()
DisplayObjectEditor * | Editor ()
const DisplayObjectEditor * | Editor () const
void | Editor (DisplayObjectEditor *editor)
virtual void | GetExtents (float &x, float &y, float &z, float &x1, float &y1, float &z1)
void | GetExtentsDCS (Vector &min, Vector &max)
void | GetFillColor (unsigned char &r, unsigned char &g, unsigned char &b, unsigned char &a)
void | GetFillColor (unsigned char c4[])
virtual GlsColor | GetFillColor ()
void | SetFillColor (unsigned char r, unsigned char g, unsigned char b, unsigned char a)
void | SetFillColor (unsigned char c4[])
virtual void | SetFillColor (const GlsColor &color)
virtual void | FinishObject ()
virtual void | GenerateInstanceName ()
virtual DisplayObject * | handle (DisplayEvent *ev)
virtual bool | Hit (float x, float y, float z, float scale, const Vector &directionVector, Vector *collisionPoint)
virtual bool | HitUtil (float x, float y, float z, float scale, Vertex *vertices, unsigned int vertex_cnt, const Vector &directionVector, Vector *collisionPoint)
virtual void | InsertVertexAt (unsigned int index)
virtual void | InsertVertex (unsigned int indexAfter) final
char * | InstanceName ()
const char * | InstanceName () const
void | InstanceName (const char *name)
virtual bool | LightingEnabled ()
virtual void | LightingEnabled (bool lighting)
virtual int | LineStippleMultiplier ()
virtual void | LineStippleMultiplier (int mult)
virtual int | LineStipplePattern ()
virtual void | LineStipplePattern (int pattern)
virtual float | LineWidth ()
virtual void | LineWidth (float width)
virtual const Vertex & | Location () const
virtual void | Location (const Vertex &v)
virtual void | Location (float x, float y, float z)
virtual void | GetLocation (Vertex &v)
virtual void | GetLocation (float &x, float &y, float &z)
float | X () const
float | Y () const
float | Z () const
void | X (const float x)
void | Y (const float y)
void | Z (const float z)
virtual int | MaterialIndex ()
virtual void | MaterialIndex (int index)
virtual DynamicArray< int > & | MaterialIndices ()
virtual void | MaterialIndices (DynamicArray< int > indices)
GlsMatrixType * | ModelMatrix ()
bool | NeedCalculate ()
Vector * | Normals ()
virtual void | SetNormals (unsigned int nPoints, Vector *vertices)
void | VaSetNormals (unsigned int nPoints,...)
unsigned int | NumberOfVertices () const
virtual float | ObjectDepth ()
virtual float | ObjectHeight ()
virtual float | ObjectWidth ()
virtual void | SetOrigin (const Vertex &vert)
virtual void | Parent (DisplayFrame *par)
DisplayFrame * | Parent () const
virtual void | ParentGroup (Group *group)
Group * | ParentGroup () const
virtual DisplayObject * | Pick3D (const Vector &winLoc, const Vector &logicalCoords, float scale, const Vector &directionVector, Vector &collisionWinLoc, const OpenGLMatrices &drawnMatrices)
unsigned char | Pickable ()
virtual void | Pickable (unsigned char pick)
virtual int | PolygonEnd ()
virtual void | PolygonEnd (const int end)
virtual int | PolygonMode ()
virtual void | PolygonMode (int mode)
virtual void | PreDraw (const OpenGLMatrices &current, Culler &culler)
GlsMatrixType * | ProjMatrix ()
virtual void | ReallocateVertices (unsigned int numVertices, bool initializeNew, bool copyOld)
virtual float | RelativeAngle (const float x, const float y)
virtual DistiAttributeBase & | Resource (const char *name)
virtual void | GetResources (std::ostream &outstr, GlsResourceFilter *filter=NULL)
const Vertex & | RotationPoint () const
virtual void | RotationPoint (const Vertex &v)
virtual void | RotationPoint (float x, float y, float z)
virtual void | GetRotationPoint (Vertex &v)
virtual void | Rotate (float angle, int axis=Z_AXIS)
virtual void | Rotate (const Vector &origin, float angle, int axis=Z_AXIS)
virtual void | Rotate (const Vector &orig, float angle, const Vector &axis)
void | SaveMatrices ()
virtual void | Scale (float px, float py, float pz, Vertex *anchor, int handleBar=0)
void | Set (int spec,...)
bool | SetupAlpha ()
void | SetupDepthTest ()
void | SetupLighting ()
bool | SetupLineStyle ()
bool | SetupTexture ()
virtual int | Shading ()
virtual void | Shading (const int shading)
virtual void | GetTransformedExtents (Vector &min, Vector &max, const GlsMatrixType &matrix, bool resetMinMax=true)
virtual void | SetTexCoords (unsigned int nPoints, Vector *new_tex_coord, bool isVectorArray=true)
void | SetTexCoords (unsigned int nPoints, Vertex *new_tex_coord)
void | VaSetTexCoords (unsigned int nPoints,...)
Vector * | TextureCoordinates ()
Vector * | GetTextureCoordinates ()
virtual int | TextureIndex ()
virtual void | TextureIndex (int textureIndex)
virtual Vector * | GetTexturePoints ()
virtual bool | TextureRepeat ()
virtual void | TextureRepeat (const int rep)
virtual int | TextureMappingTechnique ()
virtual void | TextureMappingTechnique (const int map)
virtual int | TextureMagnificationFilter ()
virtual void | TextureMagnificationFilter (const int filter)
virtual int | TextureMinificationFilter ()
virtual void | TextureMinificationFilter (const int filter)
virtual void | Translate (float tr[])
virtual void | Translate (float x, float y, float z)
virtual void | TranslateVertices (float x, float y, float z)
virtual void | UpdateBoundingVolume ()
void * | UserData () const
void | UserData (void *data)
virtual void | SetVertexColor (unsigned int vertex, unsigned char CurrentFillColor[])
virtual Vertex * | Vertices ()
virtual void | SetVertices (unsigned int nPoints, Vertex *vertices)
void | VaSetVertices (unsigned int nPoints,...)
int * | ViewMatrix ()
bool | Visible () const
bool | Visibility () const
virtual void | Visibility (const bool vis)
virtual Vector | WorldRotationPoint ()
virtual void | WorldRotationPoint (const Vector &vert)
virtual Vertex | WorldVertex (unsigned int i)
virtual void | WorldVertex (unsigned int i, const Vertex &vert)
bool | LogicalToWindow (const Vector &logical, Vector &winLoc, const OpenGLMatrices &alternateMatrices=OpenGLMatrices())
bool | WindowToLogical (const Vector &winLoc, Vector &logical, Vector *directionVector=NULL, const OpenGLMatrices &alternateMatrices=OpenGLMatrices())
void | LogicalToDCS (Vector logicalPoint, Vector &objectLocal, const Vector *directionVector, const Vector &planeNormal=Vector(0, 0, 1), const Vector &planePoint=Vector(), const GlsMatrixType *dcsMatrix=NULL)
void | DCSToLogical (Vector dcsPoint, Vector &logicalPoint, const GlsMatrixType *dcsMatrix=NULL)
bool | Create (GlsGloFile &dataStream, Group *parent)
void | GeometryRefresh ()
| Invalidates the painter and refreshes the geometry on the next paint cycle.
virtual bool | GetPlaneVectorPoints (Vertex &p1, Vertex &p2, Vertex &p3, Vertex &planeVector)
void | NotifyAttributeChanged (const AttributeName &name) override
virtual void | SetPainter (GlsPainter *painter)
virtual GlsPainter * | GetPainter ()
void | InvalidatePainter ()
virtual bool | IsVisibleInScene (const DisplayObject *obj=NULL) const
Public Member Functions inherited from AttributeChangedNotifier
virtual void | NotifyAttributeChanged (const AttributeName &name)=0
virtual | ~AttributeChangedNotifier ()
Public Member Functions inherited from WeakReferenceableMixin
void | AddWeakReference (WeakReference *weakRef) override
void | NotifyWeakReferenceDestroyed (WeakReference *ref) override
virtual void | AddWeakReference (WeakReference *weakRef)=0
virtual void | NotifyWeakReferenceDestroyed (WeakReference *weakReference)=0
Public Member Functions inherited from DisplayFrame
| DisplayFrame (int width, int height, bool allocateObjects=true)
void | ClearBitfield (GLbitfield bitField)
GLbitfield | ClearBitfield ()
virtual void | DragObject (DisplayObject *obj)
virtual DisplayObject * | DragObject ()
virtual void | ClearDrag ()
virtual void | FocusObject (DisplayObject *obj)
virtual DisplayObject * | FocusObject ()
virtual void | ClearFocus ()
virtual void | MultitouchEnabled (bool enabled)
virtual bool | MultitouchEnabled ()
virtual InputHandler * | GetInputHandler ()
virtual DisplayObject * | HandleDisplayEvent (DisplayEvent *ev)
virtual void | WriteResources (const char *filename, GlsResourceFilter *filter=NULL)
virtual void | ReadResources (const char *filename)
virtual DistiAttributeBase & | Resource (const char *name)
virtual void | GetResources (std::ostream &outstr, GlsResourceFilter *filter=NULL)
virtual void | SetResources (std::istream &instr)
void | SetResource (const std::string &resourceName, const std::string &resourceVal)
void | SetResource (const char *resourceName, const char *resourceVal)
std::string | GetResource (const std::string &resourceName)
std::string | GetResource (const char *resourceName)
virtual char * | GetResource_CRTClean (const char *name)
virtual void | GetResourceFree_CRTClean (char *memoryToFree)
virtual char * | GetResources_CRTClean (GlsResourceFilter *filter)
virtual void | GetResourcesFree_CRTClean (char *memoryToFree)
virtual void | SetResource_CRTClean (const char *name, const char *value)
virtual void | SetResources_CRTClean (const char *buf)
virtual void | NotifyAttributeChanged (const AttributeName &name) override
void | SetTexturePaletteSize (int cnt)
void | Draw ()
void | InsertObject (DisplayObject *obj, bool reparent=true, bool recalculateBoundingbox=true, int loc=-1)
void | InsertObject (DisplayObject *obj, int loc)
void | PushObject (DisplayObject *obj)
int | Width ()
int | Height ()
void | SetWidth (int w)
void | SetHeight (int h)
virtual void | SetRedraw ()
bool | CullingEnabled ()
void | CullingEnabled (const bool enabled)
DistiAttribDict & | FrameAttribDict ()
const DistiAttribDict & | FrameAttribDict () const
DynamicMaterialArray & | MaterialPalette ()
ComponentLightMgr * | LightMgr ()
void | LightMgr (ComponentLightMgr *val)
virtual void | ClearDragAndFocus ()

## Static Public Member Functions
static ComponentBase * | CreateLiveComponent (const char *fileName=NULL, const char *className=NULL, bool performCreate=true, const GlsBuiltVersionInfo &callingVersion=GlsBuiltVersionInfo())
static bool | CheckLiveVersion (ComponentBase *comp, const GlsBuiltVersionInfo &callingVersion=GlsBuiltVersionInfo())
template<class T >
static T * | CreateComponent (DisplayObject::AvailableAttributesEnum availableAttributes=DisplayObject::GLS_ATTRIBUTES_ALL)
Static Public Member Functions inherited from Group
static DisplayObject * | CreateInstance ()
Static Public Member Functions inherited from DisplayObject
static void | UseManualBlinkElapsedTime (bool useManualTime)
static void | SetManualBlinkElapsedTime (double elapsedTime)
Static Public Member Functions inherited from DisplayFrame
static void | SetOpenGLDefaultState (bool saveVal)
static void | RestoreOpenGLState ()

## Protected Member Functions
virtual void | CalcDrawMatrix () override
virtual void | CalculateMatrices (const OpenGLMatrices &newMatrices) override
void | EditorTransformMatrix (const GlsMatrixType &matrix)
const GlsMatrixType & | EditorTransformMatrix () const
virtual void | SetFromGloData (GlsGloFileAttribute &data) override
Protected Member Functions inherited from Group
virtual void | AddAvailableAttributes (unsigned int availableAttributes)
virtual void | GrowBoundingBox (DisplayObject *obj)
Protected Member Functions inherited from DisplayObject
virtual void | VaListSetVertices (unsigned int nPoints, va_list args)
virtual void | VaListSetNormals (unsigned int nPoints, va_list args)
virtual void | VaListSetTexCoords (unsigned int nPoints, va_list args)
void | ApplyTextureMinMagSettings ()
| Updates the state manager's texture minification and magnification filter based on this display's configuration.
void | ApplyTextureEnvModeSettings ()
| Updates the state manager's texture environment based on this object configuration.
bool | SetupTextureIsNeeded ()
virtual int | ColorMaterialMode ()
void | AllocateModelMatrix ()
bool | ApplyDynamicRotation ()
virtual void | CalcDrawMatrix ()
void | CalcDrawMatrixIfExists ()
virtual void | CalculateMatrices (const OpenGLMatrices &newMatrices)
bool | InsideVertexExtents (float x, float y, unsigned int nVerts, Vertex *verts, float tolerance)
void | LastDrawMatrixLocation (const Vertex &loc)
const Vertex & | LastDrawMatrixLocation ()
void | NeedCalculate (bool val)
void | PickSetup (float x, float y, float z, Vertex *vertices, unsigned int vertex_cnt, const Vector &directionVector)
void | PickCleanup (Vertex *vertices, unsigned int vertex_cnt)
virtual void | SetFromGloData (GlsGloFileAttribute &data)
virtual void | SetValue (int spec, va_list &args)
int | GetApplicableTextureIndex ()
int | GetApplicableTextureRepeat ()
Protected Member Functions inherited from WeakReferenceableMixin
| WeakReferenceableMixin ()
virtual | ~WeakReferenceableMixin ()
Protected Member Functions inherited from DisplayFrame
virtual void | CurrentCursor (unsigned int cursor_id)
void | CleanupDragMap ()
DisplayObject * | GetDragObjectForCursor (unsigned int cursorID)
DisplayObject * | FindDragObject ()
virtual EventCompressor< DisplayFrame > * | GetEventCompressor ()
virtual float | Scale ()

## Protected Attributes
LiveComponentAccessor * | _liveAccessor
bool | _absolutePlacement
Vertex | _absolutePlacementDelta
| The delta vector used when using relative placement.
DisplayFrame * | _parentDisplayFrame
GlsMatrixType | _editorTransformMatrix
Protected Attributes inherited from Group
DisplayObjectArray | _objects
| The objects contained in this group.
Protected Attributes inherited from DisplayObject
bool | _geometryRefresh
| Whether or not the geometry (VBOs etc.) needs to be updated on the GPU.
int | _alphaMode
bool | _antiAlias
bool | _attributesAdded
bool | _blinking
float | _blinkRate
bool | _isBlinkedOff
| Stores whether the object is presently blinked on or off.
GlsColor | _color
bool | _cullBackFace
GlsMatrixType | _dcsMatrix
unsigned char | _depthTest
GlsMatrixType * | _drawMatrix
bool | _needCalcDrawMatrix
| True if CalcDrawMatrix() needs to be called on this object.
unsigned char | _lineStippleMultiplier
unsigned short | _lineStipplePattern
float | _lineWidth
Vertex | _location
DynamicArray< int > | _materialIndices
| List of materials associated with this object.
GlsMatrixType * | _modelMatrix
Vector * | _normals
unsigned int | _nTex_vertices
unsigned int | _nVertices
unsigned char | _polygonEnd
unsigned char | _polygonMode
GlsMatrixType * | _projMatrix
unsigned char | _shading
Vector * | _texCoord
GlsColor | _textureBlendColor
int | _textureIndex
unsigned char | _textureMagFilter
unsigned char | _textureMinFilter
unsigned char | _textureMap
Vector | _texturePoints [4]
unsigned char | _textureRepeat
void * | _userData
Vertex * | _vertices
int * | _viewMatrix
bool | _visible
IGlsStateManager * | _stateManager
| The state manager that interfaces with OpenGL and maintains its render state.
Protected Attributes inherited from WeakReferenceableMixin
DynamicArray< WeakReference * > * | _weakRefs
Protected Attributes inherited from DisplayFrame
bool | _cullingEnabled
int | _width
int | _height
float | _lastPickedDepth
DynamicMaterialArray | _materialPalette
ComponentLightMgr * | _lightMgr
GLbitfield | _clearBitfield
std::string | _componentHeaderFileName
DragObjectMap * | _dragObjectMap
| Holds a focus object for each cursor.
unsigned int | _currentCursor
bool | _multitouchEnabled
unsigned int | _cursorsDown

## Friends
class | disti::LiveComponentAccessor

## Additional Inherited Members
Public Attributes inherited from Group
DynamicArray< CompatabilityListItem > | _compatList
| Used for GL Studio 2.1 compatibility only.
Public Attributes inherited from DisplayFrame
TexturePalette * | texturePalette
SoundSystem * | _sound_player
Group * | objects

## Detailed Description

The ComponentBase class is derived from Group and DisplayFrame. It is capable of containing objects as well as drawing them. It is used for encapsulating object geometry and behavior. The behavior is defined when this object is derived.

## Constructor & Destructor Documentation

## ◆ ComponentBase()

ComponentBase | ( | int | generateInstance = `0` | ) |

Constructor

Parameters

  generateInstance | If true generates a new unique instance name

## ◆ ~ComponentBase()

virtual ~ComponentBase | ( |  | ) |
| virtual

Cleans up the object and destructs it. Don't call "delete yourComponent", instead call yourComponent->Destroy(). If this is an RSO, it will be completely destroyed, including the DLL.

## Member Function Documentation

## ◆ AbsolutePlacement() [1/2]

bool AbsolutePlacement | ( |  | ) | const
| inline

Returns
  The value for Absolute Placement. If true, the component will be left in the generated location. Otherwise it will be moved based on its extents.

## ◆ AbsolutePlacement() [2/2]

virtual void AbsolutePlacement | ( | bool | val | ) |
| virtual

Sets the value for Absolute Placement. This affects what happens during the call to CreateObjects().

Parameters

  val | If true, the component will be left in the generated location, otherwise it will be moved based on its extents.

Reimplemented in GlsRSOWrapper.

## ◆ CalcDrawMatrix()

virtual void CalcDrawMatrix | ( |  | ) |
| override protected virtual

Overridden from base class This adds the _editorTransformMatrix to the DCS. You will need to call CalcDrawMatrix whenever the _editorTransformMatrix changes.

Reimplemented from DisplayObject.

## ◆ CalculateBoundingBox()

virtual void CalculateBoundingBox | ( |  | ) |
| override virtual

Recalculates the 3D bounding volume of the object, setting the Group's vertices. Affects the results of GetExtents(). This should be called when a Group's children are modified.

Reimplemented from Group.

Reimplemented in GlsRSOWrapper.

## ◆ CalculateMatrices()

virtual void CalculateMatrices | ( | const OpenGLMatrices & | newMatrices | ) |
| override protected virtual

Applies the _drawMatrix to the modelMatrix.
If necessary derived classes can save other matrices.

Parameters

  newMatrices | A set of matrices passed down to this object from its parent.

Reimplemented from DisplayObject.

## ◆ ChangedAbsolutePlacement()

virtual void ChangedAbsolutePlacement | ( | bool | val | ) |
| virtual

Sets the value for absolute placement.

Parameters

  val | The new value for absolute placement.

See also
  AbsolutePlacement

## ◆ CheckLiveVersion()

static bool CheckLiveVersion | ( | ComponentBase * | comp,
|  | const GlsBuiltVersionInfo & | callingVersion = `GlsBuiltVersionInfo()`
| ) |  |
| static

Returns true if version checks ok, false if there MIGHT be a problem. The consequences of version mismatches depend on the methods that will be called on the object. This will emit warnings to stdout.

Parameters

  comp | RSO
  callingVersion | Leave this as the default and it will use the calling function's version information.

Returns
  true If version is considered OK.

## ◆ ClearDragAndFocus()

virtual void ClearDragAndFocus | ( |  | ) |
| override virtual

Call this before deleting objects which may be being kept by the drag or focus objects.

Reimplemented from DisplayFrame.

## ◆ CloneObject()

virtual DisplayObject * CloneObject | ( | bool | generateNames = `false` | ) |
| override virtual

Copy+Create operation in one method. In derived classes, this method will create a new instance of the derived class and then copy the object into the new instance. The cut,copy,paste and undo operations use this method.

Parameters

  generateNames | Whether or not to generate new names for cloned objects

Returns
  A new object, identical to the original, except for the instance name

Reimplemented from Group.

Reimplemented in SplashDisplay, and GlsRSOWrapper.

## ◆ CopyGeometry()

virtual void CopyGeometry | ( | DisplayObject * | src | ) |
| override virtual

Copies the geometry information from one object to another. Used by the undo mechanism to allow user to undo a geometry change.

Parameters

  src | The object to copy geometry from

Reimplemented from Group.

Reimplemented in GlsRSOWrapper.

## ◆ CopyProperties()

virtual void CopyProperties | ( | DisplayObject * | src | ) |
| override virtual

Copies the attributes except for geometry attributes from one object to another. Used by the undo mechanism to undo most attribute change operations.

Parameters

  src | The object to copy properties from

Reimplemented from Group.

Reimplemented in GlsRSOWrapper.

## ◆ CreateComponent()

static T * CreateComponent | ( | DisplayObject::AvailableAttributesEnum | availableAttributes = `DisplayObject::GLS_ATTRIBUTES_ALL` | ) |
| inline static

Creates a new component of the templated type

Parameters

  availableAttributes | The value to call SetAvailableAttributes() with.

Returns
  A pointer to the newly created component instance.

## ◆ CreateLiveComponent()

static ComponentBase * CreateLiveComponent | ( | const char * | fileName = `NULL`,
|  | const char * | className = `NULL`,
|  | bool | performCreate = `true`,
|  | const GlsBuiltVersionInfo & | callingVersion = `GlsBuiltVersionInfo()`
| ) |  |
| static

Create RSO static This will load the specified DLL and try to create the specified class. It will return the ComponentBase* on success, and NULL on failure. Internally, this uses a LiveComponentAccessor. If more control is needed, it is recommended to create a LiveComponentAccessor.

Parameters

  fileName | The name of the DLL
  className | The class name to create. If NULL, the default class will be created.
  performCreate | If true, CreateObjects() will be called, otherwise it will not.
  callingVersion |

Returns
  NULL on failure.

## ◆ CreateObjects()

virtual void CreateObjects | ( |  | ) |
| virtual

In derived classes this creates all the geometry for the component

Reimplemented in SplashDisplay, and GlsRSOWrapper.

## ◆ DeleteAllChildren()

virtual void DeleteAllChildren | ( |  | ) |
| override virtual

Overriden to avoid children getting deleted until object deletion.

Reimplemented from Group.

## ◆ Draw()

virtual void Draw | ( |  | ) |
| override virtual

Draws this object and all its contained objects in the current OpenGL pipeline. This can be overloaded to perform any special effects. If PreDraw and Draw are needed, call DisplayFrame::Draw()

Reimplemented from Group.

Reimplemented in GlsRSOWrapper.

## ◆ EditorTransformMatrix() [1/2]

const GlsMatrixType & EditorTransformMatrix | ( |  | ) | const
| protected

Returns
  A const reference to the the current editor transform matrix.

## ◆ EditorTransformMatrix() [2/2]

void EditorTransformMatrix | ( | const GlsMatrixType & | matrix | ) |
| protected

EditorTransformMatrix is an extra transformation added in addition to the DCS matrix. This is used for scaling, rotation, and placement of component instances in the editor and at runtime.

Parameters

  matrix | The new transform matrix value to use.

## ◆ FindByNameSameFrame()

virtual DisplayObject * FindByNameSameFrame | ( | const char * | name | ) |
| override virtual

Finds a pointer to the display object in the group, using the object's instance name as a key. Because this is a component, it will always return NULL.

Parameters

  name | Instance name of the object to find

Returns
  A pointer to the object if it is in the group, otherwise NULL

Reimplemented from Group.

## ◆ GetExtents()

virtual void GetExtents | ( | float & | x,
|  | float & | y,
|  | float & | z,
|  | float & | x1,
|  | float & | y1,
|  | float & | z1
| ) |  |
| override virtual

Figure out the static extents for the object. Used by the editor as part of the pick operation and for figuring out the size of groups.

Parameters

  x | Gets the minimum x extent
  y | Gets the minimum y extent
  z | Gets the minimum z extent
  x1 | Gets the maximum x extent
  y1 | Gets the maximum y extent
  z1 | Gets the maximum z extent

Reimplemented from Group.

Reimplemented in GlsRSOWrapper.

## ◆ GetInputHandler()

virtual InputHandler * GetInputHandler | ( |  | ) |
| override virtual

See also
  DisplayFrame

Returns
  the parents input handler if a parent exists, else returns this component's input handler

Reimplemented from DisplayFrame.

## ◆ GetResources()

virtual void GetResources | ( | std::ostream & | outstr,
|  | GlsResourceFilter * | filter = `NULL`
| ) |  |
| override virtual

Get the resources for this display frame and all it's children acording to the filter

Parameters

  outstr | The stream to write to
  filter | The filter to control what gets written.

Reimplemented from DisplayFrame.

Reimplemented in GlsRSOWrapper.

## ◆ GetTransformedExtents()

virtual void GetTransformedExtents | ( | Vector & | min,
|  | Vector & | max,
|  | const GlsMatrixType & | matrix,
|  | bool | resetMinMax = `true`
| ) |  |
| override virtual

Determines the extents of geometry projected to the XY plane of an arbirary coordinate system.

Parameters

  min | Returns the minimum values found in the traversal
  max | Returns the maximum values found in the traversal
  matrix | Transformation matrix from world coordinates to the desired coordinate system.
  resetMinMax | Normally not specified by user. Should be true for the initial call.

Reimplemented from Group.

Reimplemented in GlsRSOWrapper.

## ◆ HandleInput()

virtual DisplayObject * HandleInput | ( | DisplayEvent * | ev | ) |
| virtual

Handles input events.
It traverses the hierarchy with Pick3D.
Then THE picked object is given the handle() call.

Parameters

  ev | The event data.

Returns
  The object that handled the input.

Reimplemented in GlsRSOWrapper.

## ◆ Init()

virtual void Init | ( |  | ) |
| virtual

Peforms post creation tasks including reparenting all objects. and adjusting their position. It checks the value of _absolutePlacement to determine if movement of the generated objects is necessary /see AbsolutePlacement

Reimplemented in GlsRSOWrapper.

## ◆ Initialize()

virtual void Initialize | ( |  | ) |
| virtual

The GL Studio code generator allways derives a new Initialize method for the user This is called after all the objects are created.

Reimplemented in SplashDisplay, and GlsRSOWrapper.

## ◆ LiveAccessor()

LiveComponentAccessor * LiveAccessor | ( |  | ) |
| inline

If this component was loaded from an RSO library, this method returns the object's library reference. The library reference should be deleted AFTER the component is deleted. If the component was not loaded from an RSO library, this method returns NULL.

Returns
  A pointer to component's library reference, if it was loaded from an RSO, else NULL.

## ◆ Location() [1/5]

virtual const Vertex & Location | ( |  | ) | const
| inline override virtual

Returns
  The location of the origin of the object Lifetime is guaranteed to coincide with the DisplayObject's lifetime.

Reimplemented from DisplayObject.

## ◆ Location() [2/5]

virtual void Location | ( | const Vertex & | v | ) |
| override virtual

Sets the location of the origin of the object

Parameters

  v | The new location

Reimplemented from Group.

## ◆ Location() [3/5]

virtual void Location | ( | const Vertex & | v | ) |
| override virtual

Sets the location of the origin of the object

Parameters

  v | The new location

Reimplemented from Group.

## ◆ Location() [4/5]

virtual void Location | ( | float | x,
|  | float | y,
|  | float | z
| ) |  |
| override virtual

Sets the location of the origin of the object

Parameters

  x | X Coordinate of the new location
  y | Y Coordinate of the new location
  z | Z Coordinate of the new location

Reimplemented from Group.

## ◆ Location() [5/5]

virtual void Location | ( | float | x,
|  | float | y,
|  | float | z
| ) |  |
| override virtual

Sets the location of the origin of the object

Parameters

  x | X Coordinate of the new location
  y | Y Coordinate of the new location
  z | Z Coordinate of the new location

Reimplemented from Group.

## ◆ NotifyAttributeChanged()

void NotifyAttributeChanged | ( | const AttributeName & | name | ) |
| override virtual

Implements AttributeChangedNotifier::NotifyAttributeChanged. Notify the class that the attribute has changed. Observers of the attribute will have their callbacks called

Parameters

  name | the name of the attribute

Reimplemented from DisplayFrame.

## ◆ Parent() [1/2]

virtual void Parent | ( | DisplayFrame * | par | ) |
| override virtual

Sets the parent display frame pointer for this object to the indicated display frame

Parameters

  par | The new display frame to be the parent object

Reimplemented from Group.

## ◆ Parent() [2/2]

virtual void Parent | ( | DisplayFrame * | par | ) |
| override virtual

Sets the DisplayFrame for this object. It does not set the specified parent for all the children. Instead, it sets all the children's parent to 'this'. And saves the argument 'par' in _parentDisplayFrame. This allows special traversals, which traverse out of the ComponentBase to the ComponentBase's parent.

Parameters

  par | The parent which will be saved in _parentDisplayFrame

See also
  ParentDisplayFrame

Reimplemented from Group.

## ◆ ParentDisplayFrame() [1/2]

DisplayFrame * ParentDisplayFrame | ( |  | ) | const
| inline

Gets the value of the DisplayFrame containing this component

Returns
  the value of the DisplayFrame containing this component. Returns NULL if there is no parent DisplayFrame

## ◆ ParentDisplayFrame() [2/2]

void ParentDisplayFrame | ( | DisplayFrame * | val | ) |
| inline

Sets the parent DisplayFrame for this object. This is normally only set by a call to Parent().

Parameters

  val | The new val for _parentDisplayFrame

See also
  ComponentBase::Parent()

## ◆ Pick3D()

virtual DisplayObject * Pick3D | ( | const Vector & | winLoc,
|  | const Vector & | logicalCoords,
|  | float | scale,
|  | const Vector & | directionVector,
|  | Vector & | collisionWinLoc,
|  | const OpenGLMatrices & | drawnMatrices
| ) |  |
| override virtual

Attempts to pick an object in 3D and accounting for dynamic rotations and translations of this object or parent objects. It also looks at the pickable status and attempts to return the "Best" pick if that is what is desired.

Note: This method will pick objects in the scene based on a pick ray starting at winLoc and pointing into the screen. It will not pick objects behind the depth specified by winLoc.z. Typically winLoc.z should be set to 0 to ensure that the pick ray starts at near clip plane.

Parameters

  winLoc | Device coordinates for the mouse click. Z value should be set to 0 to ensure pick ray starts at near clip plane.
  logicalCoords | The start of the pick ray in logical coordinates. Should be calculated from the winLoc using this->WindowToLogical(winLoc, logicalCoords, &directionVector).
  scale | Current window scale. Affects picking radius of outlines. Initial value should typically be 1.0.
  directionVector | The direction of the pick ray in logical coordinates. Should be calculated from the winLoc using this->WindowToLogical(winLoc, logicalCoords, &directionVector).
  collisionWinLoc | Returns where the pick vector intersects the object that is hit in device coordinates.
  drawnMatrices | The matrices used to draw the object, including matrices set by parents that may have dynamically rotated, translated or scaled this object. Initial value should typically be a default OpenGLMatrices() object.

Returns
  The object that was hit, or NULL if no object hit

Reimplemented from Group.

Reimplemented in GlsRSOWrapper.

## ◆ PreDraw()

virtual void PreDraw | ( | const OpenGLMatrices & | current,
|  | Culler & | culler
| ) |  |
| override virtual

Traverses the hierarchy calculating the _modelMatrix, _projMatrix, _viewMatrix as needed.

Parameters

  current | Current matrices inherited from parent
  culler | Object that possibly marks this object for culling

Reimplemented from Group.

Reimplemented in GlsRSOWrapper.

## ◆ Resource()

virtual DistiAttributeBase & Resource | ( | const char * | name | ) |
| override virtual

Gets a reference to the specified attribute for reading and writing. This reference can be streamed into and out of variables. This can access different levels of objects. For example: The DisplayFrame: Resource("ComponentHeaderFile") >> someStdString; An object in the DisplayFrame: Resource("SomeObject.Visible") << someBool; An object in a Component in this DisplayFrame: Resource("SomeComponentObject.SomeObject.Visible") >> someBool;

Parameters

  name | The name of the attribute to get.

Returns
  A reference to the requested attribute if available, otherwise DistiEmptyAttribute.

Reimplemented from DisplayFrame.

Reimplemented in GlsRSOWrapper.

## ◆ Rotate() [1/2]

virtual void Rotate | ( | const Vector & | orig,
|  | float | angle,
|  | const Vector & | axis
| ) |  |
| override virtual

Rotates the object (around the specified axis) by the angle indicated, at the point specified. Recalculates the vertex data.

Parameters

  orig | The point to rotate around
  angle | The angle to rotate by, in degrees
  axis | The arbitrary axis to rotate the object around

Reimplemented from Group.

Reimplemented in GlsRSOWrapper, and GlsRSOWrapper.

## ◆ Rotate() [2/2]

virtual void Rotate | ( | const Vector & | orig,
|  | float | angle,
|  | const Vector & | axis
| ) |  |
| override virtual

Rotates the object (around the specified axis) by the angle indicated, at the point specified. Recalculates the vertex data.

Parameters

  orig | The point to rotate around
  angle | The angle to rotate by, in degrees
  axis | The arbitrary axis to rotate the object around

Reimplemented from Group.

Reimplemented in GlsRSOWrapper, and GlsRSOWrapper.

## ◆ Scale() [1/3]

virtual void Scale | ( | float | px,
|  | float | py,
|  | float | pz,
|  | Vertex * | anchor,
|  | int | handleBar = `0`
| ) |  |
| override virtual

Scales the object, either the handleBar, or the Anchor is used to translate the object, not both. Anchor takes presidence, if it is set HandleBar is ignored. The footprint is different from the 2D scale so the compiler can destinguish the two.

Parameters

  px | Value of the percentage of scale in x-axis
  py | Value of the percentage of scale in y-axis
  pz | Value of the percentage of scale in z-axis
  anchor | Anchor from which to scale object relative to
  handleBar | Vertex that is being dragged

Reimplemented from DisplayObject.

Reimplemented in GlsRSOWrapper, and GlsRSOWrapper.

## ◆ Scale() [2/3]

virtual void Scale | ( | float | scale_x,
|  | float | scale_y
| ) |  |
| virtual

Scale in X-Y plane using the center of the group as the anchor.

Parameters

  scale_x | The X factor to scale by.
  scale_y | The Y factor to scale by.

Reimplemented from Group.

Reimplemented in GlsRSOWrapper.

## ◆ Scale() [3/3]

void Scale | ( | float | px,
|  | float | py,
|  | float | pz,
|  | Vertex * | anchor = `NULL`,
|  | int | handleBar = `0`
| ) |  |
| override virtual

Scales the object, either the handleBar, or the Anchor is used to translate the object, not both. Anchor takes presidence, if it is set HandleBar is ignored. The footprint is different from the 2D scale so the compiler can destinguish the two.

Parameters

  px | Value of the percentage of scale in x-axis
  py | Value of the percentage of scale in y-axis
  pz | Value of the percentage of scale in z-axis
  anchor | Anchor from which to scale object relative to
  handleBar | Vertex that is being dragged

Reimplemented from Group.

Reimplemented in GlsRSOWrapper, and GlsRSOWrapper.

## ◆ SetAvailableAttributes()

virtual void SetAvailableAttributes | ( | unsigned int | value | ) |
| override virtual

Specifies which attributes are available for the object. Currently the available attributes cannot be changed after they have been set. (Only the first call has an effect.)

Parameters

  value | A bitfield specifying which types of attributes to make available.

See also
  AvailableAttributesEnum

Reimplemented from Group.

## ◆ SetFromGloData()

virtual void SetFromGloData | ( | GlsGloFileAttribute & | data | ) |
| override protected virtual

Set a single attribute from the GLO file.

Parameters

  data | The attribute to set and its associated data.

Reimplemented from DisplayObject.

## ◆ SetRedraw()

virtual void SetRedraw | ( |  | ) |
| override virtual

This will call our parent display frame's SetRedraw() causing this component to be redrawn in the future.

Reimplemented from DisplayFrame.

## ◆ SetValue()

void SetValue | ( | int | spec,
|  | va_list & | args
| ) |  |
| override virtual

Sets an attribute of this object using variable arguments

Parameters

  spec | A GLS_Initializer tag
  args | A variable argument list

Reimplemented from DisplayObject.

Reimplemented in GlsRSOWrapper.

## ◆ TextureIndex() [1/2]

virtual int TextureIndex | ( |  | ) |
| override virtual

Overridden so we will always get -1 for our texture index. This keeps our children from trying to draw with our texture index which would be for the wrong palette.

Returns
  -1

Reimplemented from DisplayObject.

Reimplemented in GlsRSOWrapper.

## ◆ TextureIndex() [2/2]

virtual void TextureIndex | ( | int | textureIndex | ) |
| inline override virtual

Sets the texture index to be used when drawing the object.

Parameters

  textureIndex | The texture index to use. -1 indicates that no texture will be drawn.

Reimplemented from DisplayObject.

Reimplemented in GlsRSOWrapper.

## ◆ Translate() [1/2]

virtual void Translate | ( | float | tr[] | ) |
| override virtual

Moves the object by the amount indicated.

Parameters

  tr | Float[3] array containing the x,y,z amounts to translate by

Reimplemented from Group.

## ◆ Translate() [2/2]

virtual void Translate | ( | float | x,
|  | float | y,
|  | float | z
| ) |  |
| override virtual

Moves the object by the amount indicated.

Parameters

  x | X amount to translate by
  y | Y amount to translate by
  z | Z amount to translate by

Reimplemented from Group.

## ◆ UseParentsLighting() [1/2]

virtual bool UseParentsLighting | ( |  | ) |
| virtual

If UseParentsLighting is true, the component will add its lights to those already set by its parent. If false, the component will only use its own lights.

Returns
  The current use parent's lighting value.

## ◆ UseParentsLighting() [2/2]

virtual void UseParentsLighting | ( | const bool & |  | ) |
| virtual

If UseParentsLighting is true, the component will add its lights to those already set by its parent. If false, the component will only use its own lights.

## Member Data Documentation

## ◆ _absolutePlacement

bool _absolutePlacement
| protected

/see ComponentBase::AbsolutePlacement

## ◆ _editorTransformMatrix

GlsMatrixType _editorTransformMatrix
| protected

The static transformation from the internal component coordinates to the parent's coordinate system

## ◆ _liveAccessor

LiveComponentAccessor* _liveAccessor
| protected

/see ComponentBase::LiveAccessor

## ◆ _parentDisplayFrame

DisplayFrame* _parentDisplayFrame
| protected

/see ComponentBase::ParentDisplayFrame

The documentation for this class was generated from the following file:

- component_base.h