Iridescence 1.00
Embedded Graphic Framework
Loading...
Searching...
No Matches
DsEdit Class Reference

#include <ds_edit.h>

Inheritance diagram for DsEdit:
[legend]

Classes

class  FloatValidator
 FloatValidator is a class implementing validation for real numbers (floating point). More...
 
class  Listener
 Listener is an interface class that receives events from the edit view. More...
 
class  SignedIntegerValidator
 SignedIntegerValidator is a class implementing validation for a signed integer input. More...
 
class  UnsignedIntegerValidator
 UnsignedIntegerValidator is a class implementing validation for an unsigned integer input. More...
 
class  Validator
 Base class for the validators. More...
 

Public Member Functions

 DsEdit (DsView *parent, const DsPoint &pos, const DsSize &size, size_t text_capacity)
 Creates a DsEdit object.
 
void setMaxTextLength (size_t length)
 Sets the maximum text length allowed in the edit box.
 
size_t getMaxTextLength (void) const
 Returns the maximum text length allowed in the edit box.
 
size_t getTextLength (void) const
 Returns the actual text length of the edit box.
 
void setHint (const char *text)
 Sets the hint text.
 
void setHintColor (DsColor color)
 Sets the hint text color.
 
void setHintFont (const ds_bitmap_font_t *font)
 Sets the hint text font.
 
void setTextColor (DsColor color)
 Sets the text color.
 
void setTextFont (const ds_bitmap_font_t *font)
 Sets the text font.
 
void setPasswordMode (bool password_mode)
 Sets the edit view password mode.
 
void setListener (Listener *listener)
 Sets the DsEdit event listener.
 
int64_t getValueAsSigned (void) const
 Returns the edit view text interpreted as a signed integer.
 
uint64_t getValueAsUnsigned (void) const
 Returns the edit view text interpreted as an unsigned integer.
 
float getValueAsFloat (void) const
 Returns the edit view text interpreted as a floating point number.
 
const char * getValueAsString (void) const
 Returns the edit view string.
 
void setValidator (Validator *validator)
 Sets the value validator object.
 
void setInvalidValue (void)
 Sets the DsEdit state as invalid. This will trigger a callback to DsEdit::Listener::onEditBoxValidation().
 
bool isValidValue (void) const
 Is the DsEdit value valid?
 
void validateValue (void)
 Runs the value validation.
 
void setValue (const char *format,...)
 Sets the DsEdit value using the printf() format.
 
void setValue (const char *format, va_list args)
 Sets the DsEdit value using the vprintf() format.
 
void clear (void)
 Clears the DsEdit value.
 
- Public Member Functions inherited from DsView
 DsView (DsView *parent, const DsPoint &pos=DsPoint(), const DsSize &size=DsSize())
 Creates a DsView with an optional position and size.
 
 DsView (DsView *parent, DsOrientation layout_orientation)
 Creates a DsView with the auto-layout mode active. This view can align it's children automatically.
 
void addChild (DsView *view)
 Adds a child to the current DsView.
 
void removeChild (DsView *view)
 Removes a child to the current DsView.
 
void removeAllChildren (void)
 Removes all children of the current DsView.
 
void bringFront (void)
 Brings the current view to the top of the drawing order.
 
void sendBack (void)
 Sends the current view to the bottom of the drawing order.
 
DsViewgetParent (void) const
 Returns the parent of the current view.
 
void setParent (DsView *parent)
 Sets a new parent to the view.
 
const DsPointgetPosition (void) const
 Returns the position of the view in parent coordinates.
 
DsFPoint getCenterPoint (void) const
 Returns the center point of the view in current coordinates.
 
DsPoint translatePositionInParentCoordinates (const DsView *parent, DsPoint pos) const
 Translates position (x, y) in parent coordinate system.
 
DsPoint translatePositionInParentCoordinates (uint32_t parent_level, DsPoint pos) const
 Translates position (x, y) in parent coordinate system.
 
DsPoint getPositionInParentCoordinates (const DsView *parent) const
 Returns the position in the parent's coordinate system.
 
void setPosition (const DsPoint &pos)
 Sets the position of the view in parent coordinates.
 
void setCenterPosition (const DsPoint &pos)
 Sets the position of the center of the view in parent coordinates.
 
void centerVertically (DsView *view)
 Aligns vertically the center of the current view with the center of another view.
 
void centerHorizontally (DsView *view)
 Aligns horizontally the center of the current view with the center of another view.
 
const DsSizegetParentSize (void) const
 Returns the size of the parent view.
 
const DsSizegetSize (void) const
 Returns the size of the view.
 
void setMinimumSize (const DsSize &size)
 Returns the minimum size of the view.
 
void setSize (const DsSize &size)
 Sets the size of the view.
 
void setWidth (int32_t width)
 Sets the width of the view.
 
void setHeight (int32_t height)
 Sets the height of the view.
 
DsRect getRegion (void) const
 Returns a rectangle describing the space occupied by the current view in it's own coordinate system (X and Y coordinates are 0).
 
DsRect getRegionInParentCoordinates (const DsView *parent) const
 Returns a rectangle describing the space occupied by the current view in the parent's coordinate system.
 
void alignInParent (void)
 Aligns the view relative to it's parent.
 
void alignInParent (const DsAlignment &alignment, int32_t padding_top, int32_t padding_left, int32_t padding_bottom, int32_t padding_right)
 Aligns the view relative to it's parent.
 
DsViewsetPaddingTop (int16_t padding, uint16_t proportion=0)
 Sets the top padding used by the auto-layout.
 
DsViewsetPaddingBottom (int16_t padding, uint16_t proportion=0)
 Sets the bottom padding used by the auto-layout.
 
DsViewsetPaddingLeft (int32_t padding, uint16_t proportion=0)
 Sets the left padding used by the auto-layout.
 
DsViewsetPaddingRight (int16_t padding, uint16_t proportion=0)
 Sets the right padding used by the auto-layout.
 
DsViewsetPadding (int16_t padding, uint16_t proportion=0)
 Sets the padding used by the auto-layout.
 
DsViewsetPaddingHorizontal (int16_t padding, uint16_t proportion=0)
 Sets the horizontal padding used by the auto-layout.
 
DsViewsetPaddingVertical (int16_t padding, uint16_t proportion=0)
 Sets the vertical padding used by the auto-layout.
 
DsViewsetProportion (uint32_t proportion)
 Sets the view proportion used by the auto-layout.
 
DsAlignment getParentAlignment (void) const
 Returns parent alignment mode of the view.
 
DsViewsetParentAlignment (const DsAlignment &alignment)
 Sets parent alignment mode of the view.
 
void reserveSpace (bool state)
 Configures if during auto-layout the view will reserve space even if it's hidden.
 
void setAutoLayout (DsOrientation orientation, bool enable)
 Enables or disables the auto-layout mode and sets the primary orientation.
 
virtual DsSize fitContent (void)
 Calculates the minimum size required by the view.
 
void doLayout (void)
 Runs the auto-layout algorithm.
 
void setBackgroundColor (DsColor color)
 Sets the background color of the view.
 
void setBackgroundImage (const DsSurface *surface)
 Sets the background image.
 
void setPanelColor (DsColor color)
 Sets the color of the panel.
 
void setPanelBorderColor (DsColor color)
 Sets the color of the panel border.
 
void setPanelCornerRadius (uint16_t radius)
 Sets the radius of the panel corners.
 
void setPanelBorderThickness (uint8_t thickness)
 Sets the thickness of the panel border.
 
DsScreengetScreen (void)
 Returns a reference to the screen to which this view belongs.
 
bool isFocused (void)
 Is the view focused?
 
bool getIsVisible (void) const
 Is the view visibility enabled?
 
bool isVisible (void) const
 Is the view actually visible on the screen?
 
bool isParentVisible (void) const
 Is the parent view actually visible on the screen?
 
bool show (void)
 Shortcut to setVisible(true).
 
bool hide (void)
 Shortcut to setVisible(false).
 
bool setVisible (bool is_visible)
 Changes the visibility of the view.
 
virtual void onShow (void)
 This virtual method is called when the view becomes visible on the screen.
 
virtual void onHide (void)
 This virtual method is called when the view becomes invisible (hidden) on the screen.
 
void enable (bool state)
 Enables or disables the view.
 
bool isEnabled (void) const
 Is the view enabled?
 
void enableTouch (bool state)
 Enables or disables processing of touch events.
 
bool isTouchEnabled (void) const
 Is the view enabled to process touch events?
 
void sendTap (DsPoint pos)
 Sends a tap event to the view.
 
void setOnTapCallback (const lambda< void(const DsPoint &p)> &cb)
 Sets the lambda to be executed when the user taps on the view.
 
void setOnLongTapCallback (const lambda< void(const DsPoint &p)> &cb)
 Sets the lambda to be executed when the user taps the view and holds for a specific time (set with setLongTapDetection()).
 
void setOnTouchActiveCallback (const lambda< void(const DsPoint &p)> &cb)
 Sets the lambda to be executed when the user touches the view.
 
void setOnTouchReleaseCallback (const lambda< void(void)> &cb)
 Sets the lambda to be executed when the user touch is released.
 
void setLongTapDetection (uint32_t delay_ms)
 Configures the long tap detection.
 
bool isInputInside (void) const
 Returns if there is user input (touch) inside the view.
 
const DsPointgetTouchPosition (void) const
 Returns the location of the user touch input inside the view.
 
void enableHorizontalScroll (bool state)
 Enables or disables the horizontal scroll of the view contents.
 
void enableVerticalScroll (bool state)
 Enables or disables the vertical scroll of the view contents.
 
void setScrollbarColor (DsColor color)
 Configure the color of the scroll bars.
 
virtual void invalidate (void)
 Invalidates the view.
 
virtual void invalidateRegion (DsRect region)
 Invalidates only a region of the view.
 
void addStateObserver (StateObserver *observer)
 Adds a state observer object.
 
void removeStateObserver (StateObserver *observer)
 Removes a state observer object.
 

Additional Inherited Members

- Protected Member Functions inherited from DsView
virtual void onChildAdd (DsView *child)
 This virtual method will be called when a new child had been added to the view.
 
virtual void onSizeChange (void)
 This virtual method will be called when the size of the view changes.
 
virtual void onPaintOver (DsRenderer &renderer)
 This virtual method will be called when the view needs to repaint it's content, but after the view and it's children had been painted.
 
virtual bool onTouch (const DsTouchEvent &event)
 This virtual method will be called when there is touch user input.
 
virtual void onVSync (void)
 This virtual method is be called at every vertical sync period.
 
void inputCapture (void)
 Captures the touch input.
 
bool isInputCaptured (void) const
 Is the input captured?
 
void skipInput (void)
 Skips receiving touch inputs until the end of the current touch event.
 
void forAllChildren (const lambda< void(DsView *child)> &lambda)
 Calls the supplied lambda for every view in the children list.
 
void forAllChildrenBackwards (const lambda< void(DsView *child)> &lambda)
 Calls the supplied lambda for every view in the children list.
 
- Protected Attributes inherited from DsView
DsPoint mScrollPosition
 
DsPoint mPreviousScrollPosition
 
DsPoint mScrollPositionBase
 
DsColor mScrollbarColor
 
DsPoint mTouchPos
 
uint32_t mTouchTimestamp
 

Detailed Description

DsEdit is a class representing an edit box view.

An edit box can receive text input from the user. DsEdit also has functionality to validate the input based on it's type (integer, floating point, ...).

Constructor & Destructor Documentation

◆ DsEdit()

DsEdit::DsEdit ( DsView parent,
const DsPoint pos,
const DsSize size,
size_t  text_capacity 
)

Creates a DsEdit object.

Parameters
parentThe parent view
posThe position of the view in the parent coordinate system
sizeThe size of the view
text_capacityText capacity. The internal space for holding the text input will be allocated to store this number of characters.

Member Function Documentation

◆ getMaxTextLength()

size_t DsEdit::getMaxTextLength ( void  ) const

Returns the maximum text length allowed in the edit box.

Returns
Maximum text length

◆ getTextLength()

size_t DsEdit::getTextLength ( void  ) const

Returns the actual text length of the edit box.

Returns
Actual text length

◆ getValueAsFloat()

float DsEdit::getValueAsFloat ( void  ) const

Returns the edit view text interpreted as a floating point number.

If the text value is not a valid floating point number, the return value is not valid.

Returns
Floating point value

◆ getValueAsSigned()

int64_t DsEdit::getValueAsSigned ( void  ) const

Returns the edit view text interpreted as a signed integer.

If the text value is not a valid signed integer, the return value is not valid.

Returns
Signed integer value

◆ getValueAsString()

const char * DsEdit::getValueAsString ( void  ) const

Returns the edit view string.

Returns
C string

◆ getValueAsUnsigned()

uint64_t DsEdit::getValueAsUnsigned ( void  ) const

Returns the edit view text interpreted as an unsigned integer.

If the text value is not a valid unsigned integer, the return value is not valid.

Returns
Unsigned integer value

◆ isValidValue()

bool DsEdit::isValidValue ( void  ) const

Is the DsEdit value valid?

This method will make use of the configured validator object to determine if the DsEdit value is valid or not.

Returns
True if the value is valid and can be safely returned using a getValueAs...() methods

◆ setHint()

void DsEdit::setHint ( const char *  text)

Sets the hint text.

Parameters
textHint text

◆ setHintColor()

void DsEdit::setHintColor ( DsColor  color)

Sets the hint text color.

Parameters
colorHint text color

◆ setHintFont()

void DsEdit::setHintFont ( const ds_bitmap_font_t font)

Sets the hint text font.

Parameters
fontHint text font

◆ setListener()

void DsEdit::setListener ( Listener listener)

Sets the DsEdit event listener.

Parameters
listenerPointer to a user implemented object of type derived from DsEdit::Listener

◆ setMaxTextLength()

void DsEdit::setMaxTextLength ( size_t  length)

Sets the maximum text length allowed in the edit box.

Parameters
lengthMaximum text length

◆ setPasswordMode()

void DsEdit::setPasswordMode ( bool  password_mode)

Sets the edit view password mode.

Parameters
password_modeIf true the edit box is in password mode (all characters replaced with dots)

◆ setTextColor()

void DsEdit::setTextColor ( DsColor  color)

Sets the text color.

Parameters
colorText color

◆ setTextFont()

void DsEdit::setTextFont ( const ds_bitmap_font_t font)

Sets the text font.

Parameters
fontHint font

◆ setValidator()

void DsEdit::setValidator ( Validator validator)

Sets the value validator object.

Parameters
validatorPointer to a user implemented object of type derived from DsEdit::Validator

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