Planeshift
pawsTextBox Class Reference

A basic text box widget. More...

#include <pawstextbox.h>

Public Types

enum  pawsHorizAdjust { horizLEFT, horizRIGHT, horizCENTRE }
 Various positions to center the text on horizontally. More...
 
enum  pawsVertAdjust { vertTOP, vertBOTTOM, vertCENTRE }
 Various positions to center the text on vertically. More...
 

Public Member Functions

void Adjust (pawsHorizAdjust horiz, pawsVertAdjust vert)
 Alters how the text box is laid out in its container. More...
 
void Draw ()
 Draws the text box. More...
 
void FormatText (const char *fmt,...)
 Sets the text to display using formatting. More...
 
virtual int GetBorderStyle ()
 Gets the border style for the text box. More...
 
virtual int GetFontColour ()
 Gets the font color based on the set colour and if grayed is set. More...
 
const char * GetText () const
 Gets the text that is displayed by this text box. More...
 
void Grayed (bool g)
 Sets if the text box is having its text grayed. More...
 
void HorizAdjust (pawsHorizAdjust horiz)
 Alters how the text box is laid out horizontally in its container. More...
 
virtual bool OnGainFocus (bool)
 Normal text boxes should not be focused. More...
 
virtual void OnUpdateData (const char *dataname, PAWSData &data)
 Called whenever subscribed data gets updated Sets the text to either the data's string value or a properly formatted float representation. More...
 
 pawsTextBox ()
 Basic constructor. More...
 
 pawsTextBox (const pawsTextBox &origin)
 Copy constructor. More...
 
bool SelfPopulate (iDocumentNode *node)
 Sets the text from the node using either the text attribute or the node's content. More...
 
void SetSizeByText (int padX, int padY)
 Sets the size of the widget to fit the text that it displays. More...
 
void SetText (const char *text)
 Sets the text to display. More...
 
bool Setup (iDocumentNode *node)
 Sets up the text box from a document node
Possible attributes in the node: More...
 
void SetVertical (bool vertical)
 Sets if this text box should be rendered vertically (top to bottom) More...
 
void VertAdjust (pawsVertAdjust vert)
 Alters how the text box is laid out vertically in its container. More...
 
virtual ~pawsTextBox ()
 Basic deconstructor. More...
 
- Public Member Functions inherited from pawsWidget
void AddChild (pawsWidget *widget)
 Add a child widget to this widget. More...
 
void AddChild (size_t Index, pawsWidget *widget)
 Add a child widget to this widget at a specified position. More...
 
virtual void BringToTop (pawsWidget *widget)
 Move this widget up the z order to the top. More...
 
virtual double CalcFunction (MathEnvironment *env, const char *functionName, const double *params)
 
virtual void CenterTo (int x, int y)
 Move this widget so that its center is at given location. More...
 
virtual void CenterToMouse ()
 Move this widget so that its center is at mouse pointer, but it is fully on screen. More...
 
void ChangeFontSize (float newSize)
 Change font to new size and reload font to make it take effect. More...
 
virtual bool CheckButtonPressed (int button, int modifiers, pawsWidget *pressedWidget)
 Test button for activity. More...
 
virtual bool CheckButtonReleased (int button, int modifiers, pawsWidget *pressedWidget)
 Test button for activity. More...
 
virtual bool CheckKeyHandled (int)
 Allow pawsButton to simulate button pushes based on keypresses. More...
 
void ClearBackgroundColor ()
 
void ClearMaskingImage ()
 Clears the masking image. More...
 
csRect ClipRect ()
 This returns the current clipping rectangle. More...
 
void ClipToParent (bool allowForBackgroundBorder)
 Determines clipping area to use. More...
 
virtual void Close ()
 Simply calls Hide() unless overidden. More...
 
virtual bool Contains (int x, int y)
 Determines if the coordinates are within this widget. More...
 
virtual void CreateWidgetConfigWindow ()
 Creates a popup window that the user can use to adjust the settings of this window. More...
 
virtual void DeleteChild (pawsWidget *widget)
 Removes the widget from list of children and destructs it. More...
 
void DeleteYourself ()
 Removes and destructs itself. More...
 
virtual void DestroyWidgetConfigWindow ()
 Called by ApplyAlphaOnChildren to remove the config window to prevent weird stuff. More...
 
virtual void Draw3D (iGraphics3D *)
 
virtual void DrawBackground ()
 Draws the background with a color or an image. More...
 
virtual void DrawChildren ()
 Draws all children marked visible. More...
 
void DrawForeground ()
 Does the second part of the drawing drawing the background of the window. More...
 
virtual void DrawMask ()
 Draws the mask picture. More...
 
virtual void DrawToolTip (int x, int y)
 This draws the tool tip if a widget is visible and a tool tip is available. More...
 
void DrawWidgetText (const char *text, int x, int y, int style=-1)
 Draw text in the widget at specified location. More...
 
bool DrawWindow ()
 Does the first part of the drawing. More...
 
virtual void Dump (csString tab="")
 Prints the widget names for the widget and all it's children. More...
 
const char * FindDefaultWidgetStyle (const char *factoryName)
 
pawsWidgetFindWidget (const char *name, bool complain=true)
 Find a child widget of this widget. More...
 
pawsWidgetFindWidget (int id, bool complain=true)
 Find a child widget of this widget. More...
 
pawsWidgetFindWidgetXMLBinding (const char *xmlbinding)
 Find a child widget of this widget with the given XML binding. More...
 
void FormatToolTip (const char *fmt,...)
 Changes the format of a tool tip. More...
 
int GetActualHeight (int myValue=-1)
 Returns the actual Height assuming the passed value was in 800x600 resolution. More...
 
int GetActualWidth (int myValue=-1)
 Returns the actual width assuming the passed value was in 800x600 resolution. More...
 
csString GetBackground ()
 Retrieve the background image name. More...
 
virtual pawsBorderGetBorder ()
 This returns the border created by UseBorder(). More...
 
virtual int GetBorderColour (int which)
 Get the color for this widgets border. More...
 
pawsWidgetGetChild (size_t i)
 Used if you need to loop through the children of a widget. More...
 
size_t GetChildrenCount ()
 Used if you need to loop through the children of a widget. More...
 
const char * GetCloseName ()
 Returns the closeName of this widget. More...
 
virtual csRect GetDefaultFrame ()
 Returns the default csRect. More...
 
iWidgetDataGetExtraData ()
 Grabs extra data stored in the widget. More...
 
float GetFadeSpeed ()
 Gets the fading speed. More...
 
int GetFadeVal ()
 Gets the fade value of this widget. More...
 
const char * GetFilename ()
 Returns the filename. More...
 
virtual bool GetFocusOverridesControls () const
 Test if the widget should intercept all key presses. More...
 
iFont * GetFont (bool scaled=true)
 Gets the current font as an iFont. More...
 
int GetFontShadowColour ()
 Gets the current shadow color. More...
 
float GetFontSize ()
 Gets the current font size. More...
 
int GetFontStyle ()
 Gets the current font style. More...
 
int GetID ()
 Gets the id of a widget. More...
 
int GetLogicalHeight (int myValue)
 
int GetLogicalWidth (int myValue)
 
int GetMaxAlpha ()
 Gets the maximum alpha value of this widget. More...
 
int GetMinAlpha ()
 Gets the minimim alpha value of this widget. More...
 
void GetMinSize (int &width, int &height)
 
const char * GetName ()
 Get the name of this widget. More...
 
pawsWidgetGetParent ()
 Get this widget's parent. More...
 
csString GetPathInWidgetTree ()
 Returns textual description of path to our widget through the widget tree. More...
 
virtual double GetProperty (MathEnvironment *env, const char *ptr)
 
virtual csRect GetScreenFrame ()
 Returns the csRect that defines widget area. More...
 
csString & GetToolTip ()
 Gets the text from a tool tip. More...
 
const char * GetType ()
 Gets the current factory type. More...
 
csRect GetWidgetTextRect (const char *text, int x, int y, int style=-1)
 Get the rectangle containing the text DrawWidgetText will produce. More...
 
virtual const csString & GetXMLBinding ()
 Get the xml nodes of this widget. More...
 
virtual bool HasFocus ()
 Test focus of the widget. More...
 
virtual void Hide ()
 Makes widget invisible and removes focus if widget has current focus. More...
 
virtual void Ignore (bool ig)
 
bool Includes (pawsWidget *widget)
 Returns true if widget equals this, or widget is a child of this. More...
 
bool IsAlwaysOnTop ()
 Tests value of this widgets alwaysOnTop flag. More...
 
bool IsChildOf (pawsWidget *someParent)
 Returns true, if this widget is the child of 'someParent'. More...
 
bool IsConfigurable ()
 Tests if widget settings (alpha, fade, etc) are configurable. More...
 
bool isFadeEnabled ()
 Gets the fade status of this widget. More...
 
bool IsIndirectChild (pawsWidget *widget)
 Returns true, if 'widget' is child of our widget, even if it is indirect. More...
 
bool IsResizable ()
 Test widget to see if it is resizable. More...
 
bool isScalingFont ()
 Returns whether or not font is being auto-scaled. More...
 
bool IsVisible ()
 Is the widget currently set visible? More...
 
virtual bool Load (iDocumentNode *node)
 Load a widget based on its <widget></widget> tag. More...
 
virtual bool LoadAttributes (iDocumentNode *node)
 Load standard widget attributes based on its <widget></widget> tag. More...
 
virtual bool LoadChildren (iDocumentNode *node)
 Load widget children based on subtags of its <widget></widget> tag. More...
 
virtual bool LoadEventScripts (iDocumentNode *node)
 Load event scripts for this widget. More...
 
bool LoadFromFile (const csString &fileName)
 Parses XML file 'fileName', finds first widget tag and Load()s itself from this tag. More...
 
virtual csRect LoadPositions ()
 Get the position of this widget that was stored in a cfg file. More...
 
virtual void LoadSettings ()
 Loads current widget settings from an XML file. More...
 
void MakeFullyVisible ()
 If some part of the widget is not within the rectangle of its parent, then the widget is moved inside (if it is small enough). More...
 
virtual void MouseOver (bool value)
 Sets hasMouseFocus. More...
 
virtual void MoveDelta (int dx, int dy)
 Move a widget by a delta amount. More...
 
virtual void MoveTo (int x, int y)
 Moves this widget and all of its children to a new screen location. More...
 
bool NeedsRender () const
 Whether we need to r2t. More...
 
virtual void NewSubscription (const char *dataname)
 
virtual bool OnButtonPressed (int button, int keyModifier, pawsWidget *widget)
 Called whenever a button is pressed. More...
 
virtual bool OnButtonReleased (int button, int keyModifier, pawsWidget *widget)
 Called whenever a button is released. More...
 
virtual bool OnChange (pawsWidget *widget)
 Called whenever a widget is selected. More...
 
virtual bool OnChildMouseEnter (pawsWidget *child)
 Called when mouse enters a child widget. More...
 
virtual bool OnChildMouseExit (pawsWidget *child)
 Called when a mouse exits a child widget. More...
 
virtual bool OnClipboard (const csString &content)
 Process Clipboard content, as a response to RequestClipboardContent. More...
 
virtual bool OnDoubleClick (int button, int modifiers, int x, int y)
 Manage mouse double click event. More...
 
virtual bool OnJoypadDown (int key, int modifiers)
 Process joypadDown messages. More...
 
virtual bool OnKeyDown (utf32_char keyCode, utf32_char keyChar, int modifiers)
 Process keydown messages. More...
 
virtual void OnListAction (pawsListBox *selected, int status)
 Called whenever an item in a child list box is selected. More...
 
virtual void OnLostFocus ()
 Sets hasFocus false and notifys parent. More...
 
virtual bool OnMenuAction (pawsWidget *widget, const pawsMenuAction &action)
 Called whenever a menu action occurs. More...
 
virtual bool OnMouseDown (int button, int modifiers, int x, int y)
 Manage mouse down event to test for and apply window changes. More...
 
virtual bool OnMouseEnter ()
 Called whenever the mouse enters this widget. More...
 
virtual bool OnMouseExit ()
 Called whenever the mouse leaves this widget. More...
 
virtual bool OnMouseUp (int button, int modifiers, int x, int y)
 Manage mouse up event. More...
 
virtual void OnResize ()
 Sets the new position of the close button. More...
 
virtual bool OnScroll (int scrollDirection, pawsScrollBar *widget)
 Called whenever a window is scrolled. More...
 
virtual bool OnSelected (pawsWidget *widget)
 Called whenever a widget is selected. More...
 
virtual bool ParentDraw () const
 Whether to draw via the parent-child draw tree. More...
 
 pawsWidget ()
 
 pawsWidget (const pawsWidget &origin)
 
virtual void PerformAction (const char *action)
 Does an action based on this string. More...
 
virtual bool PostSetup ()
 This is called after the widget and all of it's children have been created. More...
 
void RecalcScreenPositions ()
 This re-calculates a widget's on screen position to draw based on it's relative position and parent screen location. More...
 
void ReloadWidget ()
 Reloads widget from XML file. More...
 
void RemoveChild (pawsWidget *widget)
 Removes the widget from list of children but does NOT destruct it. More...
 
void RemoveTitle ()
 
virtual void ResetToDefaultFrame ()
 Resets the position, width and height to the default position. More...
 
virtual void Resize (int flags)
 Resize a widget based on the current mouse position. More...
 
virtual void Resize (int dx, int dy, int flags)
 Resize a widget by a delta amount. More...
 
virtual void Resize ()
 Resize a widget based on it's parent's size. More...
 
void RunScriptEvent (PAWS_WIDGET_SCRIPT_EVENTS event)
 Executes any pawsScript associated with the given event. More...
 
virtual void SavePosition ()
 Saves the position of this widget to the config file. More...
 
virtual void SaveSettings ()
 Saves current widget settings to an XML file. More...
 
virtual bool SelfPopulateXML (const char *xmlstr)
 This function parses the xml string and calls SelfPopulate with the resulting DOM structure if valid. More...
 
virtual void SendToBottom (pawsWidget *widget)
 Move this widget down the z order to the bottom. More...
 
void SetAlwaysOnTop (bool value)
 Sets value of this widgets alwaysOnTop flag. More...
 
virtual void SetAttachFlags (int flags)
 Modify attachFlags to control widget construction. More...
 
virtual void SetBackground (const char *imageName)
 Sets the background image, logs error if NULL. More...
 
virtual void SetBackgroundAlpha (int alphaValue)
 Sets the alpha level of the background. More...
 
void SetBackgroundColor (int r, int g, int b)
 Sets the background color. More...
 
void SetColour (int newColour=-2)
 Set text color. More...
 
void SetContextMenu (const csString &fileName)
 Sets name of the PAWS xml-file that describes context menu of our widget. More...
 
void SetDefaultToolTip ()
 Sets the tool tip to the one defined in the XML. More...
 
void SetExtraData (iWidgetData *data)
 Stores extra data into this widget. More...
 
void SetFactory (const char *myfactory)
 Sets the type of factory. More...
 
void SetFade (bool value)
 Used to control the fading feature of the widget. More...
 
void SetFadeSpeed (float speed)
 Sets the fading speed. More...
 
void SetFilename (const char *name)
 Changes filename to the name provided. More...
 
void SetFont (const char *fontName, int Size=0)
 Set font to use programmatically. More...
 
void SetFontScaling (bool value)
 Used to control the font scaling of the widget. More...
 
void SetFontStyle (int style)
 Sets the current font style. More...
 
virtual void SetForceSize (int newWidth, int newHeight)
 Same as above, but does not resize children. More...
 
void SetID (int newID)
 Change the id of a widget. More...
 
void SetMaskingImage (const char *image)
 Sets a masking image which will be drawn after the normal stuff. More...
 
void SetMaxAlpha (int value)
 Sets the maximum alpha of this widget. More...
 
void SetMaxSize (int width, int height)
 Set the max size for height and width. More...
 
void SetMinAlpha (int value)
 Sets the minimim alpha of this widget. More...
 
void SetMinSize (int width, int height)
 Set the minimum height and width to protect the widget from negatives. More...
 
void SetModalState (bool isModal)
 Registers mode with the windowManager. More...
 
void SetMovable (bool value)
 Makes a widget movable. More...
 
void SetName (const char *newName)
 Set the name of this widget. More...
 
void SetNeedsRender (bool needs)
 Marks that we need to r2t. More...
 
void SetParent (pawsWidget *widget)
 Set the owner of this widget. More...
 
virtual void SetProperty (const char *ptr, double value)
 
virtual void SetRelativeFrame (int x, int y, int width, int height)
 Set the size of this widget and it's position relative to the parent. More...
 
virtual void SetRelativeFramePos (int x, int y)
 Set the position of this widget relative to the parent. More...
 
virtual void SetRelativeFrameSize (int width, int height)
 Sets defaultFrame and screenFrame size attributes. More...
 
void SetResizeShow (bool v)
 Sets the showResize flag, controlling if the resize widget should be drawn. More...
 
virtual void SetSize (int newWidth, int newHeight)
 Set the size of a particlar widget. More...
 
void SetTitle (const char *title)
 Sets the border title of this widget. More...
 
bool SetTitle (const char *text, const char *image, const char *align, const char *close_button, const bool shadowTitle=true)
 Sets up the title bar for the widget. More...
 
void SetToolTip (const char *text)
 Changes the text for a tool tip. More...
 
void SetVisibility (bool visible)
 Make the widget visible or hides it. More...
 
virtual void SetXMLBinding (csString &xmlbinding)
 Sets the xml nodes of this widget. More...
 
virtual void Show ()
 Makes widget visible and brings it to the front. More...
 
virtual void ShowBehind ()
 Makes widget visible and brings it to the front but behind widget with current focus. More...
 
virtual void StopResize ()
 Called once the mouse up is done after resizing a widget. More...
 
const char * ToString ()
 
virtual void UseBorder (const char *style=0)
 Creates a new border and links it to the widget. More...
 
virtual pawsWidgetWidgetAt (int x, int y)
 Locate a widget that is at these screen coordindates. More...
 
virtual ~pawsWidget ()
 
- Public Member Functions inherited from iPAWSSubscriber
virtual ~iPAWSSubscriber ()
 
- Public Member Functions inherited from iScriptableVar
virtual ~iScriptableVar ()
 

Static Public Member Functions

static int CountCodePoints (const char *text, int start=0, int len=-1)
 Utility function to calculate number of code points in a substring. More...
 
static int RewindCodePoints (const char *text, int start, int count)
 Utility function to rewind a UTF-8 string by a certain number of codepoints. More...
 
static int SkipCodePoints (const char *text, int start, int count)
 Utility function to skip a UTF-8 string by a certain number of codepoints. More...
 

Protected Member Functions

void CalcLetterSizes ()
 Fills 'letterSizes' array. More...
 
void CalcTextPos ()
 Calculates textX and textY attributes. More...
 
void CalcTextSize (int &width, int &height)
 Calculates size of text. More...
 
- Protected Member Functions inherited from pawsWidget
int CalcChildPosition (pawsWidget *child)
 Calculates the right position in array of children for a given child (depends on always-on-top state). More...
 
bool CreateContextMenu ()
 Creates context menu from file ('contextMenuFile' attribute) More...
 
int GetAttachFlag (const char *flag)
 Convert from string flag to int flag. More...
 
void LoadBorderColours (iDocumentNode *node)
 Loads custom border color preferences. More...
 
bool ReadDefaultWidgetStyles (iDocumentNode *node)
 
int ResizeFlags (int mouseX, int mouseY)
 This will check to see if the mouse is over the resize hot spot. More...
 
void SetCloseButtonPos ()
 Gets button from widget and sets it's location. More...
 

Protected Attributes

int colour
 The colour of the text. More...
 
bool grayed
 Whether the text is currently being grayed out. More...
 
pawsHorizAdjust horizAdjust
 The current horizontal alignment for the text box. More...
 
psPointletterSizes
 Array containing the size of each letter in text (only used when vertical is true) More...
 
csString text
 The text for this box. More...
 
int textWidth
 Width of vertical column of letters (only used when vertical is true) More...
 
int textX
 X-Position of text inside the widget (relative to adjustment) More...
 
int textY
 X-Position of text inside the widget (relative to adjustment) More...
 
pawsVertAdjust vertAdjust
 The current vertical alignment for the text box. More...
 
bool vertical
 Whether the text box is rendering vertically (up-down rather than left-right) More...
 
- Protected Attributes inherited from pawsWidget
int alpha
 The original background alpha. More...
 
int alphaMin
 The minimum background alpha. More...
 
bool alwaysOnTop
 Is this windows painted on top of other windows. More...
 
int attachFlags
 The attachpoints for when a resize takes place. More...
 
int bgColour
 Stores the bgColour for this widget. More...
 
csRef< iPawsImagebgImage
 Background image. More...
 
pawsBorderborder
 border created by GetBorder(). More...
 
int borderColours [5]
 Custom border colors for this window. More...
 
bool borderTitleShadow
 whether the title in the border should be shadow font More...
 
csArray< pawsWidget * > children
 The child widgets. More...
 
csRect clipRect
 Current clipping rectangle. More...
 
pawsButtonclose_widget
 Used in SetTitle() for the new close button. More...
 
csString closeName
 Old name of the widget with "_close" appended by SetName(). More...
 
bool configurable
 Determines if the settings (alpha, fade, etc) of this widget are configurable. More...
 
pawsMenucontextMenu
 Existing context menu of the widget. More...
 
csString contextMenuFile
 Path to the file that describes context menu of our widget (invoked by mouse right-click). More...
 
int defaultFontColour
 Optional color to use when drawing text with this widget. More...
 
int defaultFontShadowColour
 Optional color to use when doing text dropshadows. More...
 
float defaultFontSize
 Default font size. More...
 
csRect defaultFrame
 The default frame for the widget. More...
 
csString defaultToolTip
 Default tool tip string for the widget. More...
 
csHash< csString, csString > defaultWidgetStyles
 
iWidgetDataextraData
 Holds any extra data the widget may need. More...
 
csString factory
 factory name More...
 
bool fade
 Set to false to disable fading. More...
 
float fadeSpeed
 The speed of the fading process. More...
 
float fadeVal
 The direction and percentage of current fade in progress. More...
 
csString filename
 filename to load from or save to. More...
 
csString fontName
 Name of currently selected font. More...
 
float fontSize
 Current font size. More...
 
int fontStyle
 Current font style. More...
 
csRef< iGraphics2D > graphics2D
 The 2D graphics interface. More...
 
bool hasBorderColours
 Flag to indicate using custom border colors. More...
 
bool hasFocus
 Flag for widget focus. More...
 
bool hasMouseFocus
 Flag for mouse over behavior. More...
 
int id
 The id of the widget. More...
 
bool ignore
 Flag determines if WidgetAT() ignores this widget. More...
 
bool isResizable
 Determines if this widget can be resized by user. More...
 
bool keepaspect
 Enforce keeping the default aspect ratio when resizing. More...
 
int margin
 Stores margin value. Used in LoadAttributes(). More...
 
csRef< iPawsImagemaskImage
 Masking image, used for nice-looking stuff. More...
 
int max_height
 Defines the maximum height that the widget can be. More...
 
int max_width
 Defines the maximum width that the widget can be. More...
 
int min_height
 Defines the minimum height that the widget can be. More...
 
int min_width
 Defines the minimum width that the widget can be. More...
 
bool movable
 Determines if this widget is movable. More...
 
csRef< iFont > myFont
 Optional font to use when drawing this widget. More...
 
csString name
 The name of this widget. More...
 
bool needsRender
 Whether we need to do a r2t update. More...
 
pawsWidgetonEnter
 Widget to call if enter is pressed. More...
 
bool overwrite_subscription
 Flag of whether OnUpdateData should overwrite the previous value or add to it. More...
 
pawsWidgetparent
 This widget's parent. More...
 
bool parentDraw
 Whether to draw this widget (different from visible, used to decide if Draw() is called via parent-child tree). More...
 
bool resizeToScreen
 Determines if this widget should be auto resized with screen resolution. More...
 
bool saveWidgetPositions
 Determines if this widget should write/load it's position from a config file. More...
 
bool scaleFont
 Determines whether or not to scale font when a widget it resized. More...
 
csRect screenFrame
 The screen area of the widget. More...
 
pawsScriptscriptEvents [PW_SCRIPT_EVENT_COUNT]
 
bool showOnMouseOver
 Stores status of showOnMouseOver. More...
 
csString showOnMouseOver_image
 Stores the bgimage name if showOnMouseOver is true. More...
 
bool showResize
 If the resize widget should be drawn. More...
 
csString subscribedVar
 The variable that this widget is subscribed to. More...
 
csString subscription_format
 
csArray< pawsWidget * > taborder
 Contains the children for tabbing. More...
 
pawsTitletitleBar
 reference to titleBar object, if any More...
 
csString toolTip
 Tooltip to be displayed. More...
 
bool visible
 Flag to determine visiblity. More...
 
csString xmlbinding
 Used in the SelfPopulate functions to map to xml nodes for each widget. More...
 

Additional Inherited Members

- Public Attributes inherited from pawsWidget
csArray< csString > publishList
 

Detailed Description

A basic text box widget.

Useful for simply displaying text.

Definition at line 42 of file pawstextbox.h.

Member Enumeration Documentation

Various positions to center the text on horizontally.

Enumerator
horizLEFT 

Adjusted to left.

horizRIGHT 

Adjusted to right.

horizCENTRE 

Adjusted to centre.

Definition at line 58 of file pawstextbox.h.

Various positions to center the text on vertically.

Enumerator
vertTOP 

Adjusted to top.

vertBOTTOM 

Adjusted to bottom.

vertCENTRE 

Adjusted to centre.

Definition at line 48 of file pawstextbox.h.

Constructor & Destructor Documentation

pawsTextBox::pawsTextBox ( )

Basic constructor.

virtual pawsTextBox::~pawsTextBox ( )
virtual

Basic deconstructor.

pawsTextBox::pawsTextBox ( const pawsTextBox origin)

Copy constructor.

Member Function Documentation

void pawsTextBox::Adjust ( pawsHorizAdjust  horiz,
pawsVertAdjust  vert 
)

Alters how the text box is laid out in its container.

Parameters
horizSets the horizontal alignment for the text
vertSets the vertical alignment for the text
void pawsTextBox::CalcLetterSizes ( )
protected

Fills 'letterSizes' array.

Can be called only when vertical==true

void pawsTextBox::CalcTextPos ( )
protected

Calculates textX and textY attributes.

void pawsTextBox::CalcTextSize ( int width,
int height 
)
protected

Calculates size of text.

Parameters
widthTarget to store width of text into
heightTarget to store height of text into
static int pawsTextBox::CountCodePoints ( const char *  text,
int  start = 0,
int  len = -1 
)
static

Utility function to calculate number of code points in a substring.

Parameters
textText to calculate on
startIndex to start on
lenLength to perform calculation on or -1 for start to end
Returns
Number of code points
void pawsTextBox::Draw ( )
virtual

Draws the text box.

Reimplemented from pawsWidget.

void pawsTextBox::FormatText ( const char *  fmt,
  ... 
)

Sets the text to display using formatting.

Parameters
fmtThe format to use to format the string to display
virtual int pawsTextBox::GetBorderStyle ( )
inlinevirtual

Gets the border style for the text box.

Returns
Always BORDER_SUNKEN

Reimplemented from pawsWidget.

Definition at line 167 of file pawstextbox.h.

virtual int pawsTextBox::GetFontColour ( )
virtual

Gets the font color based on the set colour and if grayed is set.

Returns
Gray if grayed is true, colour otherwise

Reimplemented from pawsWidget.

const char* pawsTextBox::GetText ( ) const
inline

Gets the text that is displayed by this text box.

Returns
text

Definition at line 119 of file pawstextbox.h.

void pawsTextBox::Grayed ( bool  g)
inline

Sets if the text box is having its text grayed.

Parameters
gOverwrites grayed

Definition at line 176 of file pawstextbox.h.

void pawsTextBox::HorizAdjust ( pawsHorizAdjust  horiz)

Alters how the text box is laid out horizontally in its container.

Parameters
horizSets the horizontal alignment for the text
virtual bool pawsTextBox::OnGainFocus ( bool  )
inlinevirtual

Normal text boxes should not be focused.

Does nothing

Returns
false

Reimplemented from pawsWidget.

Definition at line 158 of file pawstextbox.h.

virtual void pawsTextBox::OnUpdateData ( const char *  dataname,
PAWSData data 
)
virtual

Called whenever subscribed data gets updated Sets the text to either the data's string value or a properly formatted float representation.

Parameters
datanameUnused
dataThe data to update the text with

Reimplemented from pawsWidget.

static int pawsTextBox::RewindCodePoints ( const char *  text,
int  start,
int  count 
)
static

Utility function to rewind a UTF-8 string by a certain number of codepoints.

Parameters
textText to calculate on
startIndex to begin rewinding at
countNumber of code points to rewind by
Returns
Resulting index
bool pawsTextBox::SelfPopulate ( iDocumentNode *  node)
virtual

Sets the text from the node using either the text attribute or the node's content.

Parameters
nodeThe node to pull the text from
Returns
True if data is pulled, false if the node is empty

Reimplemented from pawsWidget.

void pawsTextBox::SetSizeByText ( int  padX,
int  padY 
)

Sets the size of the widget to fit the text that it displays.

Parameters
padXHorizontal padding
padYVertical padding
void pawsTextBox::SetText ( const char *  text)

Sets the text to display.

Parameters
textThe string
bool pawsTextBox::Setup ( iDocumentNode *  node)
virtual

Sets up the text box from a document node
Possible attributes in the node:

  • vertical - yes/no
  • text
    • horizAdjust - CENTRE/RIGHT/LEFT
    • vertAdjust - CENTRE/BOTTOM/TOP
    • string - text
Parameters
nodeThe node to pull the attributes from
Returns
True

Reimplemented from pawsWidget.

void pawsTextBox::SetVertical ( bool  vertical)

Sets if this text box should be rendered vertically (top to bottom)

Parameters
verticalWhether it should be rendered vertically
static int pawsTextBox::SkipCodePoints ( const char *  text,
int  start,
int  count 
)
static

Utility function to skip a UTF-8 string by a certain number of codepoints.

Parameters
textText to calculate on
startIndex to begin rewinding at
countNumber of code points to rewind by
Returns
Resulting index
void pawsTextBox::VertAdjust ( pawsVertAdjust  vert)

Alters how the text box is laid out vertically in its container.

Parameters
vertSets the vertical alignment for the text

Member Data Documentation

int pawsTextBox::colour
protected

The colour of the text.

Definition at line 245 of file pawstextbox.h.

bool pawsTextBox::grayed
protected

Whether the text is currently being grayed out.

Definition at line 248 of file pawstextbox.h.

pawsHorizAdjust pawsTextBox::horizAdjust
protected

The current horizontal alignment for the text box.

Definition at line 251 of file pawstextbox.h.

psPoint* pawsTextBox::letterSizes
protected

Array containing the size of each letter in text (only used when vertical is true)

Definition at line 269 of file pawstextbox.h.

csString pawsTextBox::text
protected

The text for this box.

Definition at line 242 of file pawstextbox.h.

int pawsTextBox::textWidth
protected

Width of vertical column of letters (only used when vertical is true)

Definition at line 266 of file pawstextbox.h.

int pawsTextBox::textX
protected

X-Position of text inside the widget (relative to adjustment)

Definition at line 260 of file pawstextbox.h.

int pawsTextBox::textY
protected

X-Position of text inside the widget (relative to adjustment)

Definition at line 263 of file pawstextbox.h.

pawsVertAdjust pawsTextBox::vertAdjust
protected

The current vertical alignment for the text box.

Definition at line 254 of file pawstextbox.h.

bool pawsTextBox::vertical
protected

Whether the text box is rendering vertically (up-down rather than left-right)

Definition at line 257 of file pawstextbox.h.


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