GL Studio C++ Runtime API
GlsTextBox Class Reference

#include <gls_text_box.h>

Inheritance diagram for GlsTextBox:
GlsText GLPolygon DisplayObject AttributeChangedNotifier WeakReferenceableMixin WeakReferenceable

Classes

struct  RowInfo
 
class  UnderlineStrikeThruHelper
 

Public Types

enum  ResizeMode_t { RESIZE_MODE_FIXED , RESIZE_MODE_AUTO_WIDTH , RESIZE_MODE_AUTO_HEIGHT }
 The ResizeMode_t enumeration. Describes the resize behavior of this text object.
 
enum  Align_t { ALIGN_CENTER , ALIGN_TOP , ALIGN_BOTTOM }
 Different text justifications.
 
typedef GlsText _BaseClass
 Deprecated typedef for the base class.
 
typedef GlsText BaseClass
 Typedef for the base class.
 
- Public Types inherited from GlsText
enum  { NUM_VERTICES = 4 }
 
enum  Justify_t { LEFT , CENTER , RIGHT }
 Different text justifications.
 
typedef GLPolygon _BaseClass
 Deprecated typedef for the base class.
 
typedef GLPolygon BaseClass
 Typedef for the base class.
 
typedef GlsFontBase::Char_t Char_t
 Typedef shorthand for GlsFontBase::Char_t.
 
- Public Types inherited from GLPolygon
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

 GlsTextBox ()
 
 GlsTextBox (const GlsTextBox &that, const bool generateNames)
 
virtual ~GlsTextBox ()
 
virtual void SetAvailableAttributes (unsigned int value) DISTI_METHOD_OVERRIDE
 
virtual void Calculate (double time) DISTI_METHOD_OVERRIDE
 
virtual DisplayObjectCloneObject (bool generateNames=false) DISTI_METHOD_OVERRIDE
 
virtual void CopyGeometry (DisplayObject *src) DISTI_METHOD_OVERRIDE
 
virtual void CopyProperties (DisplayObject *src) DISTI_METHOD_OVERRIDE
 
virtual void Draw () DISTI_METHOD_OVERRIDE
 
virtual InterfaceListTypeGetCppInterfaceDescription (InterfaceListType *addToThisList=NULL) DISTI_METHOD_OVERRIDE
 
virtual void GetCppInterfaceDescriptionFree (InterfaceListType *array) DISTI_METHOD_OVERRIDE
 
virtual void SetVertices (unsigned int nPoints, Vertex *vertices) DISTI_METHOD_OVERRIDE
 
virtual void Initialize ()
 Sets the initial state of this object.
 
void Rebuild ()
 Rebuilds this text box layout. This may be an expensive call, so it should only be called when a property changes.
 
virtual unsigned int MaxLinesToDraw ()
 
virtual void Scale (float px, float py, float pz, Vertex *anchor, int handleBar) DISTI_METHOD_OVERRIDE
 
void VerticalAlignment (Align_t justification)
 
virtual Align_t VerticalAlignment () const
 
void Clear ()
 
void ClearChars ()
 
void SetString (const char *s)
 
void VaString (const char *format,...)
 
void TabSpacing (float)
 
float TabSpacing ()
 
bool LeftToRight ()
 
void LeftToRight (bool leftToRight)
 
virtual void ResizeMode (ResizeMode_t value)
 
virtual ResizeMode_t ResizeMode ()
 
virtual void MaxWidth (float value)
 
virtual float MaxWidth ()
 
virtual void MaxHeight (float value)
 
virtual float MaxHeight ()
 
float GetCharWidth (const unsigned short c) const
 
virtual void Scale (float px, float py, float pz, Vertex *anchor, int handleBar=0)
 
- Public Member Functions inherited from GlsText
 GlsText ()
 
 GlsText (const GlsText &that, const bool generateNames)
 
virtual ~GlsText ()
 
virtual void SetAvailableAttributes (unsigned int value) override
 
void Baseline (const float &baselineShift)
 
float Baseline ()
 
void BgColor (const GlsColor &color)
 
GlsColor BgColor ()
 
void Border (const float &units)
 
float Border () const
 
void CellHeight (float height)
 
float CellHeight () const
 
void CellWidth (float width)
 
float CellWidth () const
 
void Char (Char_t code)
 
CharAttr_t CharAttribs () const
 
CharAttr_t CharAttr (unsigned int index) const
 
void CharScaling (const float &newScale)
 
float CharScaling ()
 
void CharSpacing (const float &horizontalSpacing)
 
float CharSpacing ()
 
void ConstrainCellRatio (bool constrain)
 
bool ConstrainCellRatio () const
 
void ControlCellSize (bool control)
 
bool ControlCellSize () const
 
virtual void CopyGeometry (DisplayObject *src) override
 
virtual void CopyProperties (DisplayObject *src) override
 
void Erase ()
 
void FauxBold (const bool &bold)
 
bool FauxBold ()
 
GlsFontBaseFont () const
 
void Font (GlsFontBase *font)
 
virtual InterfaceListTypeGetCppInterfaceDescription (InterfaceListType *addToThisList=NULL) override
 
virtual void GetCppInterfaceDescriptionFree (InterfaceListType *array) override
 
void Halo (bool halo)
 
bool Halo () const
 
void HaloColor (const GlsColor &color)
 
GlsColor HaloColor () const
 
void InvalidateFont ()
 
void Inverse (const bool &inverse)
 
bool Inverse ()
 
void Justify (Justify_t justification)
 
Justify_t Justify () const
 
void LineSpacing (float spacing)
 
float LineSpacing () const
 
void LockCellSize (bool lock)
 
bool LockCellSize () const
 
virtual void Rotate (const Vector &orig, float angle, const Vector &axis) override
 
virtual void SetValue (int spec, va_list &args) override
 
void Shadow (bool shadow)
 
bool Shadow () const
 
void ShadowColor (const GlsColor &color)
 
GlsColor ShadowColor () const
 
void ShadowDistance (const float &dist)
 
void ShadowOffset (const Vector &offset)
 
Vector ShadowOffset ()
 
void StrikeThru (const bool &strike)
 
bool StrikeThru ()
 
virtual void String (const std::string &s)
 
virtual void String (const char *s)
 
std::string String () const
 
void TextColor (const GlsColor &color)
 
GlsColor TextColor ()
 
void Underline (const bool &underline)
 
bool Underline ()
 
void Uppercase (bool uppercase)
 
bool Uppercase () const
 
void WrapText (bool wrap)
 
bool WrapText () const
 
void SetRebuild ()
 
virtual bool RequiresFontFile () const
 
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)
 
- Public Member Functions inherited from GLPolygon
 GLPolygon (unsigned int nPoints, const Vertex *vertices)
 
 GLPolygon (unsigned int nPoints, const Vertex *vertices, const Vertex &location)
 
 GLPolygon ()
 
 GLPolygon (const GLPolygon &polygon, const bool generateNames)
 
virtual ~GLPolygon ()
 
void ConfigureMetaData ()
 
virtual DisplayObjectCloneObject (bool generateNames=false)
 
virtual void Draw ()
 
virtual void CalculateTextureCoordinates ()
 
virtual void CalcNormals (int windingOrder=1)
 
virtual void DeleteVertexAt (unsigned int index)
 
virtual DisplayObjectPick3D (const Vector &winLoc, const Vector &logicalCoords, float scale, const Vector &directionVector, Vector &collisionWinLoc, const OpenGLMatrices &parentDrawn)
 
- 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)
 
DistiAttribDictAttributes ()
 
const DistiAttribDictAttributes () 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 VectorBoundingVolumeCenter () 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)
 
CallbackMethodCallerBaseCallbackCaller () const
 
void CallbackCaller (CallbackMethodCallerBase *cb)
 
virtual void GetCenter (Vector &center)
 
virtual DisplayObjectCloneObject (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 InterfaceListTypeGetCppInterfaceDescription (InterfaceListType *addToThisList=NULL)
 
virtual void GetCppInterfaceDescriptionFree (InterfaceListType *array)
 
virtual void CullBackFace (const bool val)
 
virtual bool CullBackFace ()
 
bool Culled () const
 
void Culled (bool val)
 
bool CullTest (const GlsMatrixType *matrix, const Culler &culler)
 
GlsMatrixTypeDcsMatrix ()
 
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 GlsMatrixTypeDrawMatrix ()
 
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 DynamicTranslate (float amount, int axis, bool relative=false)
 
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 DisplayObjecthandle (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 VertexLocation () 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)
 
GlsMatrixTypeModelMatrix ()
 
bool NeedCalculate ()
 
VectorNormals ()
 
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)
 
DisplayFrameParent () const
 
virtual void ParentGroup (Group *group)
 
GroupParentGroup () const
 
virtual DisplayObjectPick3D (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)
 
GlsMatrixTypeProjMatrix ()
 
virtual void ReallocateVertices (unsigned int numVertices, bool initializeNew, bool copyOld)
 
virtual float RelativeAngle (const float x, const float y)
 
virtual DistiAttributeBaseResource (const char *name)
 
virtual void GetResources (std::ostream &outstr, GlsResourceFilter *filter=NULL)
 
void RestoreAlpha ()
 
void RestoreAntiAlias ()
 
void RestoreLighting ()
 
void RestoreLineStyle ()
 
const VertexRotationPoint () 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 ()
 
bool SetupAntiAlias ()
 
void SetupDepthTest ()
 
void SetupLighting ()
 
bool SetupLineStyle ()
 
void SetupPolyDrawStyle ()
 
void SetupShading ()
 
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,...)
 
VectorTextureCoordinates ()
 
VectorGetTextureCoordinates ()
 
virtual int TextureIndex ()
 
virtual void TextureIndex (int textureIndex)
 
virtual VectorGetTexturePoints ()
 
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 VertexVertices ()
 
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)
 
virtual bool GetPlaneVectorPoints (Vertex &p1, Vertex &p2, Vertex &p3, Vertex &planeVector)
 
void NotifyAttributeChanged (const AttributeName &name) override
 
virtual void SetPainter (GlsPainter *painter)
 
virtual GlsPainterGetPainter ()
 
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
 

Protected Member Functions

void DrawText ()
 
char * FormatVarArgList (const char *format, va_list args)
 
void EnablePerCharAttribs ()
 Enable per character attribute drawing for this grid.
 
void RecalcCellSize ()
 
void RecalcVertices ()
 
virtual void CalculateRowData ()
 
void GetNextRowInfo (const unsigned int strIndex, unsigned int &rowLength, float &rowPixelWidth, unsigned int &nextRowStartIndex) const
 
float GetMaxLineLengthForResizeMode () const
 
void SetVerticesToTextBounds ()
 Helper function that adjusts the vertices to contain the text based on the resize behavior.
 
- Protected Member Functions inherited from GlsText
char * FormatVarArgList (const int initialBufferLength, const char *format, va_list args)
 
void RecalcDirectionVectors ()
 
- 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)
 
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 VertexLastDrawMatrixLocation ()
 
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 SetValue (int spec, va_list &args)
 
int GetApplicableTextureIndex ()
 
int GetApplicableTextureRepeat ()
 
- Protected Member Functions inherited from WeakReferenceableMixin
 WeakReferenceableMixin ()
 
virtual ~WeakReferenceableMixin ()
 

Protected Attributes

bool _perCharAttribs
 
Align_t _verticalAlignment
 Justification setting (TOP, CENTER, BOTTOM).
 
float _tabSpacing
 Space multiplier for tabs.
 
unsigned int _lineCount
 Number of rows of characters in the text grid (number of lines).
 
bool _lineCountChanged
 If true, the line count has changed, and row information needs to be rebuilt.
 
RowInfo_rowInfo
 
float _cellWidthRatio
 Holds cell width / max char width ratio used for horizontal advance.
 
float _maxLineLengthPixels
 Calculated maximimum line width in "pixels" (logical units).
 
float _maxTextHeightPixels
 Calculated maximimum height in "pixels" (logical units).
 
unsigned int _maxLinesToDraw
 Calculated maximum number of lines that can fit.
 
bool _leftToRight
 true to render characters from left to right else, false for right to left.
 
ResizeMode_t _resizeMode
 The current automatic resize behavior.
 
float _resizeMaxWidth
 The calculated maximum width in logical units based on the current resize behavior.
 
float _resizeMaxHeight
 The calculated maximim height in logical units based on the current resize behavior.
 
UTF16String _unicodeText
 
- Protected Attributes inherited from GlsText
float _border
 
CharAttrCont_t _chars
 
Vertex _currentVertices [NUM_VERTICES]
 The corners of the text object.
 
float _cellHeight
 
float _cellWidth
 
bool _constrainRatio
 
bool _controlCellSize
 
GlsFontBase_font
 
bool _halo
 Whether or not the halo effect is on.
 
GlsColor _haloColor
 
Justify_t _justify
 
float _lineSpacing
 
bool _lockCellSize
 
bool _needToRebuild
 
bool _shadow
 Whether or not the shadow effect is on.
 
GlsColor _shadowColor
 
Vector _shadowOffset
 
std::string _text
 
bool _uppercase
 
Vector _vX
 
Vector _vY
 
Vector _vZ
 
bool _wrapText
 
ScopedPtr< RuntimeGlyphGenerationText > _runtimeGlyphGenerationText
 
- Protected Attributes inherited from DisplayObject
int _alphaMode
 
bool _antiAlias
 
bool _attributesAdded
 
bool _blinking
 
float _blinkRate
 
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
 
- Protected Attributes inherited from WeakReferenceableMixin
DynamicArray< WeakReference * > * _weakRefs
 

Friends

class GlsTextBoxEditor
 

Additional Inherited Members

- Static Public Member Functions inherited from GlsText
static void DrawScalableLine (GLfloat x1, GLfloat y1, GLfloat x2, GLfloat y2)
 
- Static Public Member Functions inherited from GLPolygon
static DisplayObjectCreateInstance ()
 
- Static Public Member Functions inherited from DisplayObject
static InterfaceListTypeStaticGetCppInterfaceDescription (InterfaceListType *addToThisList=NULL)
 
static void UseManualBlinkElapsedTime (bool useManualTime)
 
static void SetManualBlinkElapsedTime (double elapsedTime)
 
- Static Public Attributes inherited from GlsText
static const Char_t EOL
 Carriage return (end of line) character.
 
- Protected Types inherited from GlsText
typedef std::vector< CharAttr_tCharAttrCont_t
 Typedef for a list of character attributes.
 
- Static Protected Attributes inherited from GlsText
static const Vector XAXIS
 Vector for the global X axis.
 
static const Vector YAXIS
 Vector for the global Y axis.
 
static Vertex INITIAL_VERTICES [NUM_VERTICES]
 Default corners for new text objects.
 

Detailed Description

Constructor & Destructor Documentation

◆ GlsTextBox() [1/2]

Class Constructor.

◆ GlsTextBox() [2/2]

GlsTextBox ( const GlsTextBox that,
const bool  generateNames 
)

Copy constructor

Parameters
thatThe object to copy from.
generateNamesWhether or not to generate an instance name for this object.

◆ ~GlsTextBox()

virtual ~GlsTextBox ( )
virtual

Class Constructor.

Member Function Documentation

◆ Calculate()

virtual void Calculate ( double  time)
virtual

Provides a mechanism for performing regular calculations, seperate from drawing. In a standalone applicaton Calculate is recursively called by the main loop before the objects are drawn.

Parameters
timeThe elaspsed time in seconds since program start

Reimplemented from DisplayObject.

◆ CalculateRowData()

virtual void CalculateRowData ( )
protectedvirtual

Populate the _rowInfo array based on the current display string

Precondition
none
Postcondition
_rowInfo array is populated based on the current display string

◆ Clear()

void Clear ( )
inline

Clears all of the characters and resets the attributes of all characters (TextDisplay compatability method)

Deprecated:
use Erase instead

◆ ClearChars()

void ClearChars ( )
inline

Clears all of the characters. Does NOT reset the attributes of the characters (TextDisplay compatability method)

Deprecated:

◆ CloneObject()

virtual DisplayObject * CloneObject ( bool  generateNames = false)
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
generateNamesWhether or not to generate new names for cloned objects
Returns
A new object, identical to the original, except for the instance name

Reimplemented from GLPolygon.

◆ CopyGeometry()

virtual void CopyGeometry ( DisplayObject src)
virtual

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

Parameters
srcThe object to copy geometry from

Reimplemented from GlsText.

◆ CopyProperties()

virtual void CopyProperties ( DisplayObject src)
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
srcThe object to copy properties from

Reimplemented from GlsText.

◆ Draw()

virtual void Draw ( )
virtual

Draws this object on the current display frame (_parent member).

Reimplemented from GLPolygon.

◆ DrawText()

void DrawText ( )
protected

Helper function that performs the underlying text draw.

Note
Not normally called by users.

◆ FormatVarArgList()

char * FormatVarArgList ( const char *  format,
va_list  args 
)
protected

Allocate a text buffer of the appropriate size for this grid and output snprintf style format into the buffer.

Parameters
formatsnprintf style format spec
argsArguments for sprintf style formatting.
Returns
A formatted textbuffer ( must be deleted by caller ).

◆ GetCharWidth()

float GetCharWidth ( const unsigned short  c) const

Get the width for the given character taking into account cell sizing, character spacing, uppercasing and tab characters width being expanded

Parameters
ccharacter in question
Returns
width for given character
Precondition
none
Postcondition
none

◆ GetCppInterfaceDescription()

virtual InterfaceListType * GetCppInterfaceDescription ( InterfaceListType addToThisList = NULL)
virtual

Get the details of the Cpp Interface The actual interface is exposed in compiled code.

Parameters
addToThisListIf not NULL this list will be added to then returned. If NULL a new list will be created.
Returns
A templated list.
The caller must call the corresponding free method to safely free the memory.

Reimplemented from GlsText.

◆ GetCppInterfaceDescriptionFree()

virtual void GetCppInterfaceDescriptionFree ( InterfaceListType array)
virtual

Frees the memory allocated by a previous call to GetCppInterfaceDescription

Parameters
arrayMemory allocated by a previous call to GetCppInterfaceDescription

Reimplemented from GlsText.

◆ GetMaxLineLengthForResizeMode()

float GetMaxLineLengthForResizeMode ( ) const
protected

Helper function that returns the maximum line length (text box width) in logical units.

Returns
Infinity if no limit, otherwise the limit in logical units.

◆ GetNextRowInfo()

void GetNextRowInfo ( const unsigned int  strIndex,
unsigned int &  rowLength,
float &  rowPixelWidth,
unsigned int &  nextRowStartIndex 
) const
protected

Get the row info for the row starting at the given string index

Parameters
strIndexstarting index into string
rowLength[out] gets number of characters in row
rowPixelWidth[out] gets pixel width of row
nextRowStartIndex[out] gets starting string index for next row else GLSUINT32_MAX if there is no string data for the next row
Precondition
strIndex < _str.GetLength()
Postcondition
rowLength has the number of characters in the row, rowPixelWidth has the pixel width of the row, nextRowStartIndex has the starting string index for the next row else GLSUINT32_MAX if there is no string data for the next row

◆ LeftToRight() [1/2]

bool LeftToRight ( )

Determine if the text direction is set to left->right or right->left

Returns
true if if the text direction is set to left->right else false for right->left

◆ LeftToRight() [2/2]

void LeftToRight ( bool  leftToRight)

Set the text direction

Parameters
leftToRighttrue for left->right else false for right->left

◆ MaxHeight() [1/2]

virtual float MaxHeight ( )
virtual
Returns
The current maximum resize height for this object in logical units.

◆ MaxHeight() [2/2]

virtual void MaxHeight ( float  value)
virtual

Set the maximum resize height for this object in logical units.

Parameters
valueThe new maximum height.

◆ MaxLinesToDraw()

virtual unsigned int MaxLinesToDraw ( )
virtual

We need to know the Max number of lines/rows possible to display, we may run out of characters to print/display before we hit the max number of lines though.

Returns
A value between Zero and INT_MAX, representing the max lines/rows to draw
Precondition
The TextBox object has been initialized
Postcondition
The value of max lines returned to the caller

◆ MaxWidth() [1/2]

virtual float MaxWidth ( )
virtual
Returns
The current maximum resize width for this object in logical units.

◆ MaxWidth() [2/2]

virtual void MaxWidth ( float  value)
virtual

Set the maximum resize width for this object in logical units.

Parameters
valueThe new maximum width.

◆ RecalcCellSize()

void RecalcCellSize ( )
protected

Helper function to calculate cell sizes based on the scale of the object if control cell size is enabled.

Note
Not normally called by users.

◆ RecalcVertices()

void RecalcVertices ( )
protected

Helper function to readjust vertices back to the local origin being aligned with vertex 0.

Note
Not normally called by users.

◆ ResizeMode() [1/2]

virtual ResizeMode_t ResizeMode ( )
virtual
Returns
The current resize behavior for this object.

◆ ResizeMode() [2/2]

virtual void ResizeMode ( ResizeMode_t  value)
virtual

Set the resize behavior for this object.

Parameters
valueThe new resize behavior.

◆ Scale() [1/2]

virtual void Scale ( float  px,
float  py,
float  pz,
Vertex anchor,
int  handleBar 
)
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
pxValue of the percentage of scale in x-axis
pyValue of the percentage of scale in y-axis
pzValue of the percentage of scale in z-axis
anchorAnchor from which to scale object relative to
handleBarVertex that is being dragged

Reimplemented from DisplayObject.

◆ Scale() [2/2]

virtual void Scale ( float  px,
float  py,
float  pz,
Vertex anchor,
int  handleBar = 0 
)
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
pxValue of the percentage of scale in x-axis
pyValue of the percentage of scale in y-axis
pzValue of the percentage of scale in z-axis
anchorAnchor from which to scale object relative to
handleBarVertex that is being dragged

Reimplemented from DisplayObject.

◆ SetAvailableAttributes()

virtual void SetAvailableAttributes ( unsigned int  value)
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
valueA bitfield specifying which types of attributes to make available.
See also
AvailableAttributesEnum

Reimplemented from GlsText.

◆ SetString()

void SetString ( const char *  s)
inline

SetColor() meaning has changed, now use TextColor Print a string into this text object starting at index 0 and proceeding Left to right Wraps at newline characters. Does not change the color or any other modes. Replaces the entire string. (TextDisplay compatability method)

Parameters
sThe string to print
Deprecated:
use String instead

◆ SetVertices()

virtual void SetVertices ( unsigned int  nPoints,
Vertex vertices 
)
virtual

Sets the vertex data for this polygon You should call UpdateBoundingVolume after changing an object's extents.

See also
UpdateBoundingVolume
Parameters
nPointsThe number of vertices in the object
verticesThe vertex data for the object

Reimplemented from DisplayObject.

◆ TabSpacing() [1/2]

float TabSpacing ( )

Returns the current tab space multiplier

Returns
the current tab space multiplier

◆ TabSpacing() [2/2]

void TabSpacing ( float  )

Sets tab space multiplier, 1.0 == same as specified in font

◆ VaString()

void VaString ( const char *  format,
  ... 
)

Print a string into this text object to right. Wraps at newline characters. Does not change the color or any other modes. Replaces the entire string.

Parameters
formatprintf style varargs formatting string.

◆ VerticalAlignment() [1/2]

virtual Align_t VerticalAlignment ( ) const
inlinevirtual

Get the vertical justification for this text object

Returns
vertical justification

◆ VerticalAlignment() [2/2]

void VerticalAlignment ( Align_t  justification)

Set the vertical justification for this text object

Parameters
justificationThe justification mode (TOP, BOTTOM, CENTER)

Member Data Documentation

◆ _perCharAttribs

bool _perCharAttribs
protected

true -> grid will draw characters using "per character attributes" else false -> all characters will be drawn using the first character's attribute NOTE: This defaults to false and automatically enables to true if the user calls a method that requires per character attributes

◆ _rowInfo

RowInfo* _rowInfo
protected

array ( _rows number of elements ) of RowInfo

◆ _unicodeText

UTF16String _unicodeText
protected

unicode version of _text from base class, updated by CalculateRowData


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