  | 
  
    MPLABĀ® Harmony Graphics Suite
    
   | 
 
 
 
 
Go to the documentation of this file.
   46 #ifndef LEGATO_TEXTFIELD_H 
   47 #define LEGATO_TEXTFIELD_H 
   51 #if LE_TEXTFIELD_WIDGET_ENABLED == 1 
   56 typedef struct leTextFieldWidget leTextFieldWidget;
 
   69 typedef void (*leTextFieldWidget_TextChangedCallback)(leTextFieldWidget*);
 
   82 typedef void (*leTextFieldWidget_FocusChangedCallback)(leTextFieldWidget*, 
leBool);
 
   84 typedef struct leTextFieldWidget leTextFieldWidget;
 
   90 #define LE_TEXTFIELDWIDGET_VTABLE(THIS_TYPE) \ 
   91     LE_EDITWIDGET_VTABLE(THIS_TYPE) \ 
   93     uint32_t   (*getCursorDelay)(const THIS_TYPE* _this); \ 
   94     leResult   (*setCursorDelay)(THIS_TYPE* _this, uint32_t dt); \ 
   95     leBool     (*getCursorEnabled)(const THIS_TYPE* _this); \ 
   96     leResult   (*setCursorEnabled)(THIS_TYPE* _this, leBool en); \ 
   97     uint32_t   (*getCursorPosition)(const THIS_TYPE* _this); \ 
   98     leResult   (*setCursorPosition)(THIS_TYPE* _this, uint32_t pos); \ 
   99     const leString* (*getString)(const THIS_TYPE* txt); \ 
  100     leResult   (*setString)(THIS_TYPE* _this, const leString* str); \ 
  101     leFont*    (*getFont)(const THIS_TYPE* _this); \ 
  102     leResult   (*setFont)(THIS_TYPE* _this, const leFont* fnt); \ 
  103     leString*  (*getHintString)(const THIS_TYPE* txt); \ 
  104     leResult   (*setHintString)(THIS_TYPE* _this, const leString* str); \ 
  105     leResult   (*setClearValueOnFirstEdit)(THIS_TYPE* _this, leBool clr); \ 
  106     leTextFieldWidget_TextChangedCallback (*getTextChangedEventCallback)(const THIS_TYPE* _this); \ 
  107     leResult   (*setTextChangedEventCallback)(THIS_TYPE* _this, leTextFieldWidget_TextChangedCallback cb); \ 
  108     leTextFieldWidget_FocusChangedCallback (*getFocusChangedEventCallback)(const THIS_TYPE* _this); \ 
  109     leResult   (*setFocusChangedEventCallback)(THIS_TYPE* _this, leTextFieldWidget_FocusChangedCallback cb); \ 
  111 typedef struct leTextFieldWidgetVTable
 
  113     LE_TEXTFIELDWIDGET_VTABLE(leTextFieldWidget)
 
  114 } leTextFieldWidgetVTable; 
 
  132 typedef struct leTextFieldWidget
 
  136     const leTextFieldWidgetVTable* fn;
 
  142     uint32_t cursorDelay; 
 
  148     leTextFieldWidget_TextChangedCallback textChangedEvent; 
 
  149     leTextFieldWidget_FocusChangedCallback focusChangedEvent; 
 
  169 LIB_EXPORT leTextFieldWidget* leTextFieldWidget_New();
 
  181 LIB_EXPORT 
void leTextFieldWidget_Constructor(leTextFieldWidget* wgt);
 
  185 #define THIS_TYPE struct leWidget 
  199 virtual uint32_t getCursorDelay(
const leTextFieldWidget* _this);
 
  215 virtual leResult setCursorDelay(leTextFieldWidget* _this,
 
  229 virtual leBool getCursorEnabled(
const leTextFieldWidget* _this);
 
  244 virtual leResult setCursorEnabled(leTextFieldWidget* _this,
 
  259 virtual uint32_t getCursorPosition(
const leTextFieldWidget* _this);
 
  275 virtual leResult setCursorPosition(leTextFieldWidget* _this,
 
  291 virtual const leString* getString(
const leTextFieldWidget* txt);
 
  307 virtual leResult setString(leTextFieldWidget* _this,
 
  352 virtual leString* getHintString(
const leTextFieldWidget* _this);
 
  368 virtual leResult setHintString(leTextFieldWidget* _this,
 
  385 virtual leResult setClearValueOnFirstEdit(leTextFieldWidget* _this,
 
  399 virtual leTextFieldWidget_TextChangedCallback getTextChangedEventCallback
 
  400                                             (
const leTextFieldWidget* _this);
 
  415 virtual leResult setTextChangedEventCallback(leTextFieldWidget* _this,
 
  416                                              leTextFieldWidget_TextChangedCallback cb);
 
  428 virtual leTextFieldWidget_FocusChangedCallback getFocusChangedEventCallback
 
  429                                                 (
const leTextFieldWidget* _this);
 
  444 virtual leResult setFocusChangedEventCallback(leTextFieldWidget* _this,
 
  445                                               leTextFieldWidget_FocusChangedCallback cb);
 
  450 #endif // LE_TEXTFIELD_WIDGET_ENABLED 
  
Defines common math functions for general use.
 
Error functions, macros and definitions.
 
This struct represents a dynamic string.
Definition: legato_dynamicstring.h:60
 
leResult
This enum represents function call results.
Definition: legato_common.h:134
 
LIB_EXPORT uint32_t lePercentWholeRounded(uint32_t l, uint32_t r)
Calculate percent whole rounded.
Definition: legato_math.c:204
 
This struct represents a rectangle.
Definition: legato_common.h:405
 
LIB_EXPORT leResult leSetEditWidget(leEditWidget *widget)
Set edit widget.
Definition: legato_state.c:526
 
Memory functions and definitions.
 
LIB_EXPORT uint32_t lePercentOf(uint32_t num, uint32_t percent)
Calculate percent of a number.
Definition: legato_math.c:218
 
@ LE_VALIGN_MIDDLE
Definition: legato_common.h:183
 
This struct represents a font object.
Definition: legato_font.h:136
 
This struct represents a string.
Definition: legato_string.h:108
 
leBool
This enum represents booleans.
Definition: legato_common.h:157
 
virtual leResult setFont(leString *_this, const leFont *font)
Set font.
 
@ LE_FALSE
Definition: legato_common.h:158
 
LIB_EXPORT void leDynamicString_Constructor(leDynamicString *str)
Consructs a dynamic string.
Definition: legato_dynamicstring.c:41
 
LIB_EXPORT leEditWidget * leGetEditWidget()
Get edit widget.
Definition: legato_state.c:521
 
General internal utilities for the library.
 
Fixed string functions and definitions.
 
Textfield Widget functions and definitions.
 
@ LE_HALIGN_LEFT
Definition: legato_common.h:207
 
void leUtils_RectToScreenSpace(const leWidget *widget, leRect *rect)
Convert rectangle from widget local space to screen space.
Definition: legato_utils.c:151
 
Dynamic string functions and definitions.
 
The header file joins all header files used in the graphics object library.
 
virtual leFont * getFont(const leString *_this)
Get font.
 
leColor leScheme_GetRenderColor(const leScheme *schm, leSchemeColor clr)
Gets a scheme render color for the current layer color mode.
Definition: legato_scheme.c:68
 
@ LE_TRUE
Definition: legato_common.h:159
 
virtual void clear(leString *_this)
Clear string.
 
Common macros and definitions used by Legato.
 
const leStringVTable * fn
Definition: legato_string.h:109
 
virtual void destructor(leString *_this)
Destruct string.
 
void leUtils_ArrangeRectangleRelative(leRect *sub, leRect obj, leRect bounds, leHAlignment hAlignment, leVAlignment vAlignment, leRelativePosition position, uint8_t leftMargin, uint8_t topMargin, uint8_t rightMargin, uint8_t bottomMargin, uint16_t rectMargin)
Calculates the position of a rectangle within the given bounds.
Definition: legato_utils.c:286
 
This structure represents a integer Cartesian point.
Definition: legato_common.h:357