Empirical
|
#include <TextArea.h>
Classes | |
class | TextAreaInfo |
Public Types | |
using | INFO_TYPE = TextAreaInfo |
using | return_t = TextArea |
Public Member Functions | |
TextArea (const std::string &in_id="") | |
Build a text area with a specified HTML identifier. More... | |
TextArea (std::function< void(const std::string &)> in_cb, const std::string &in_id="") | |
Build a text area with a specified function to call with every change. More... | |
TextArea (const TextArea &in) | |
Connect to an existing TextArea. More... | |
TextArea (const Widget &in) | |
virtual | ~TextArea () |
const std::string & | GetText () const |
Get the current text in this TextArea. More... | |
TextArea & | SetAutofocus (bool in_af) |
Make this text area have focus by default. More... | |
TextArea & | SetCallback (const std::function< void(const std::string &)> &in_cb) |
Change the callback function for this TextArea. More... | |
TextArea & | SetDisabled (bool in_dis) |
Gray out this text area. More... | |
TextArea & | SetText (const std::string &in_text) |
Set the text contained in the text area. More... | |
bool | HasAutofocus () const |
Does this widget have auto focus set? More... | |
bool | IsDisabled () const |
Is this widget currently disabled? More... | |
return_t & | SetCSS (const std::string &setting, SETTING_TYPE &&value) |
Set a specific CSS value for this widget. More... | |
return_t & | SetCSS (const std::string &setting1, T1 &&val1, const std::string &setting2, T2 &&val2, OTHER_SETTINGS...others) |
Multiple CSS settings can be provided simultaneously. More... | |
return_t & | SetCSS (const Style &in_style) |
return_t & | SetAttr (const std::string &setting, SETTING_TYPE &&value) |
Set a specific Attribute value for this widget. More... | |
return_t & | SetAttr (const std::string &setting1, T1 &&val1, const std::string &setting2, T2 &&val2, OTHER_SETTINGS...others) |
Multiple Attributes can be provided simultaneously. More... | |
return_t & | SetAttr (const Attributes &in_attr) |
return_t & | On (const std::string &event_name, const std::function< void()> &fun) |
return_t & | On (const std::string &event_name, const std::function< void(MouseEvent evt)> &fun) |
return_t & | On (const std::string &event_name, const std::function< void(double, double)> &fun) |
return_t & | OnResize (T &&arg) |
Provide a function to be called when the window is resized. More... | |
return_t & | OnClick (T &&arg) |
Provide a function to be called when the mouse button is clicked in this Widget. More... | |
return_t & | OnDoubleClick (T &&arg) |
Provide a function to be called when the mouse button is double clicked in this Widget. More... | |
return_t & | OnMouseDown (T &&arg) |
Provide a function to be called when the mouse button is pushed down in this Widget. More... | |
return_t & | OnMouseUp (T &&arg) |
Provide a function to be called when the mouse button is released in this Widget. More... | |
return_t & | OnMouseMove (T &&arg) |
Provide a function to be called whenever the mouse moves in this Widget. More... | |
return_t & | OnMouseOut (T &&arg) |
Provide a function to be called whenever the mouse leaves the Widget. More... | |
return_t & | OnMouseOver (T &&arg) |
Provide a function to be called whenever the mouse moves over the Widget. More... | |
return_t & | OnMouseWheel (T &&arg) |
Provide a function to be called whenever the mouse wheel moves in this Widget. More... | |
return_t & | OnKeydown (T &&arg) |
Provide a function to be called whenever a key is pressed down in this Widget. More... | |
return_t & | OnKeypress (T &&arg) |
Provide a function to be called whenever a key is pressed down and released in this Widget. More... | |
return_t & | OnKeyup (T &&arg) |
Provide a function to be called whenever a key is pressed released in this Widget. More... | |
return_t & | OnCopy (T &&arg) |
Provide a function to be called whenever text is copied in this Widget. More... | |
return_t & | OnCut (T &&arg) |
Provide a function to be called whenever text is cut in this Widget. More... | |
return_t & | OnPaste (T &&arg) |
Provide a function to be called whenever text is pasted in this Widget. More... | |
return_t & | SetWidth (double w, const std::string &unit="px") |
return_t & | SetHeight (double h, const std::string &unit="px") |
return_t & | SetSize (double w, double h, const std::string &unit="px") |
return_t & | Center () |
Move this widget to the center of its container. More... | |
return_t & | SetPosition (int x, int y, const std::string &unit="px", const std::string &pos_type="absolute", const std::string &x_anchor="left", const std::string &y_anchor="top") |
Set the x-y position of this widget within its container. More... | |
return_t & | SetPositionRT (int x, int y, const std::string &unit="px") |
Set the x-y position of this Widget within its container, using the TOP-RIGHT as an anchor. More... | |
return_t & | SetPositionRB (int x, int y, const std::string &unit="px") |
Set the x-y position of this Widget within its container, using the BOTTOM-RIGHT as an anchor. More... | |
return_t & | SetPositionLB (int x, int y, const std::string &unit="px") |
Set the x-y position of this Widget within its container, using the BOTTOM-LEFT as an anchor. More... | |
return_t & | SetPositionFixed (int x, int y, const std::string &unit="px") |
Set the x-y position of this Widget, fixed within the browser window. More... | |
return_t & | SetPositionFixedRT (int x, int y, const std::string &unit="px") |
Set the x-y position of the top-right corner this Widget, fixed within the browser window. More... | |
return_t & | SetPositionFixedRB (int x, int y, const std::string &unit="px") |
Set the x-y position of the bottom-right corner this Widget, fixed within the browser window. More... | |
return_t & | SetPositionFixedLB (int x, int y, const std::string &unit="px") |
Set the x-y position of the bottom-left corner this Widget, fixed within the browser window. More... | |
return_t & | SetFloat (const std::string &f="left") |
Set this Widget to float appropriately within its containter. More... | |
return_t & | SetOverflow (const std::string &o="auto") |
Setup how this Widget should handle overflow. More... | |
return_t & | SetScroll () |
Setup how this Widget to always have scrollbars. More... | |
return_t & | SetScrollAuto () |
Setup how this Widget to have scrollbars if needed for overflow. More... | |
return_t & | SetResizable () |
Setup how this Widget to be user-resizable. More... | |
return_t & | SetResizableX () |
Setup how this Widget for the x only to be user-resizable. More... | |
return_t & | SetResizableY () |
Setup how this Widget for the y only to be user-resizable. More... | |
return_t & | SetResizableOff () |
Setup how this Widget to NOT be resizable. More... | |
return_t & | SetFont (const Font &font) |
Provide a Font object to setup the font for this widget. More... | |
return_t & | SetFont (const std::string &font) |
Setup the Font to be used in this Widget. More... | |
return_t & | SetFontSize (int s) |
Setup the size of the Font to be used in this Widget. More... | |
return_t & | SetFontSizeVW (double s) |
Setup the size of the Font to be used in this Widget in units of % of viewport width. More... | |
return_t & | SetCenterText () |
Align text to be centered. More... | |
return_t & | SetBackground (const std::string &v) |
Set the background color of this Widget. More... | |
return_t & | SetColor (const std::string &v) |
Set the foreground color of this Widget. More... | |
return_t & | SetOpacity (double v) |
Set the opacity level of this Widget. More... | |
return_t & | SetBorder (const std::string &border_info) |
Set information about the Widget board. More... | |
return_t & | SetPadding (double p, const std::string &unit="px") |
The the number of pixels (or alternate unit) for the padding around cells (used with Tables) More... | |
bool | IsNull () const |
Test if this widget is valid. More... | |
std::string | InfoTypeName () const |
Some debugging helpers... More... | |
bool | IsInactive () const |
Test if the activity state of this widget is currently INACTIVE. More... | |
bool | IsWaiting () const |
Test if the activity state of this widget is currently WAITING. More... | |
bool | IsFrozen () const |
Test if the activity state of this widget is currently FROZEN. More... | |
bool | IsActive () const |
Test if the activity state of this widget is currently ACTIVE. More... | |
bool | AppendOK () const |
Is it okay to add more internal Widgets into this one? More... | |
void | PreventAppend () |
Disallow further appending to this Widget. More... | |
bool | IsButton () const |
Is this Widget a Button? More... | |
bool | IsCanvas () const |
Is this Widget a Canvas? More... | |
bool | IsImage () const |
Is this Widget an Image? More... | |
bool | IsSelector () const |
Is this Widget a Selector? More... | |
bool | IsDiv () const |
Is this Widget a Div? More... | |
bool | IsTable () const |
Is this Widget a Table? More... | |
bool | IsText () const |
Is this Widget a Text? More... | |
const std::string & | GetID () const |
What is the HTML string ID for this Widget? More... | |
virtual std::string | GetCSS (const std::string &setting) |
virtual bool | HasCSS (const std::string &setting) |
Determine is a CSS trait has been set on this Widget. More... | |
virtual std::string | GetAttr (const std::string &setting) |
Retrieve a specific attribute associated with this Widget. More... | |
virtual bool | HasAttr (const std::string &setting) |
Determine is an attribute has been set on this Widget. More... | |
bool | operator== (const Widget &in) const |
Are two Widgets refering to the same HTML object? More... | |
bool | operator!= (const Widget &in) const |
Are two Widgets refering to differnt HTML objects? More... | |
operator bool () const | |
Conver Widget to bool (I.e., is this Widget active?) More... | |
double | GetXPos () |
Get the X-position of this Widget within its parent. More... | |
double | GetYPos () |
Get the Y-position of this Widget within its parent. More... | |
double | GetWidth () |
Get the width of this Widget on screen. More... | |
double | GetHeight () |
Get the height of this Widget on screen. More... | |
double | GetInnerWidth () |
Get the width of this Widget not including padding. More... | |
double | GetInnerHeight () |
Get the height of this Widget not including padding. More... | |
double | GetOuterWidth () |
Get the width of this Widget including all padding. More... | |
double | GetOuterHeight () |
Get the height of this Widget including all padding. More... | |
void | Activate () |
Make this widget live, so changes occur immediately (once document is ready) More... | |
void | Freeze () |
Record changes internally, but keep static screen until Activate() is called. More... | |
virtual void | Deactivate (bool top_level=true) |
bool | ToggleActive () |
Doggle between Active and Deactivated. More... | |
void | Redraw () |
Clear and redraw the current widget on the screen. More... | |
Widget & | Find (const std::string &test_name) |
Look up previously created elements, by type. More... | |
Widget & | AddDependant (const Widget &w) |
Add a dependant to this Widget that should be redrawn when it is. More... | |
virtual void | PrepareAppend () |
Setup << operator to redirect to Append; option preparation can be overridden. More... | |
template<typename IN_TYPE > | |
Widget | operator<< (IN_TYPE &&in_val) |
std::string | GetInfoType () const |
Debug... More... | |
Protected Types | |
enum | ActivityState { INACTIVE, WAITING, FROZEN, ACTIVE } |
using | WidgetInfo = internal::WidgetInfo |
Protected Member Functions | |
TextAreaInfo * | Info () |
const TextAreaInfo * | Info () const |
TextArea (TextAreaInfo *in_info) | |
virtual void | DoCSS (const std::string &setting, const std::string &value) |
virtual void | DoAttr (const std::string &setting, const std::string &value) |
virtual void | DoListen (const std::string &event_name, size_t fun_id) |
template<typename FWD_TYPE > | |
Widget & | ForwardAppend (FWD_TYPE &&arg) |
If an Append doesn't work with current class, forward it to the parent and try there. More... | |
Widget & | SetInfo (WidgetInfo *in_info) |
Set the information associated with this widget. More... | |
WidgetInfo * | operator-> () |
Internally, we can treat a Widget as a pointer to its WidgetInfo. More... | |
Static Protected Member Functions | |
static WidgetInfo * | Info (const Widget &w) |
Give derived classes the ability to access widget info. More... | |
Protected Attributes | |
WidgetInfo * | info |
Information associated with this widget. More... | |
Static Protected Attributes | |
static const std::string | no_name = "(none)" |
Default name for un-initialized widgets. More... | |
Friends | |
class | TextAreaInfo |
An input field for text data. A function provided at creation time will be called each time the contents of the TextWidget are changed. The current text contents can also always be accessed with the GetText() member function.
|
inherited |
|
protectedinherited |
|
protectedinherited |
|
inlineprotected |
|
inline |
Build a text area with a specified HTML identifier.
|
inline |
Build a text area with a specified function to call with every change.
|
inline |
|
inlinevirtual |
|
inherited |
Make this widget live, so changes occur immediately (once document is ready)
Add a dependant to this Widget that should be redrawn when it is.
|
inherited |
Is it okay to add more internal Widgets into this one?
|
inlineinherited |
Move this widget to the center of its container.
|
virtualinherited |
Record changes internally and REMOVE from screen until Activate is called. (Argument is for recursive, internal use only.)
Reimplemented in emp::web::Div.
|
inlineprotectedvirtualinherited |
Attr-related options may be overridden in derived classes that have multiple attributes. By default DoAttr will track the new information and apply it (if active) to the widget.
|
inlineprotectedvirtualinherited |
CSS-related options may be overridden in derived classes that have multiple styles. By default DoCSS will track the new information and apply it (if active) to the widget.
|
inlineprotectedvirtualinherited |
Listener options may be overridden in derived classes that have multiple listen targets. By default DoListen will track new listens and set them up immediately, if active.
|
inherited |
Look up previously created elements, by type.
|
protectedinherited |
If an Append doesn't work with current class, forward it to the parent and try there.
|
inherited |
Record changes internally, but keep static screen until Activate() is called.
|
virtualinherited |
Retrieve a specific attribute associated with this Widget.
|
virtualinherited |
Retrieve a specific CSS trait associated with this Widget. Note: CSS-related options may be overridden in derived classes that have multiple styles.
Reimplemented in emp::web::TableWidget, emp::web::TableCell, emp::web::TableCol, emp::web::TableColGroup, emp::web::TableRowGroup, and emp::web::TableRow.
|
inherited |
Get the height of this Widget on screen.
|
inherited |
What is the HTML string ID for this Widget?
|
inherited |
Debug...
|
inherited |
Get the height of this Widget not including padding.
|
inherited |
Get the width of this Widget not including padding.
|
inherited |
Get the height of this Widget including all padding.
|
inherited |
Get the width of this Widget including all padding.
|
inline |
Get the current text in this TextArea.
|
inherited |
Get the width of this Widget on screen.
|
inherited |
Get the X-position of this Widget within its parent.
|
inherited |
Get the Y-position of this Widget within its parent.
|
virtualinherited |
Determine is an attribute has been set on this Widget.
|
inline |
Does this widget have auto focus set?
|
virtualinherited |
Determine is a CSS trait has been set on this Widget.
|
inlinestaticprotectedinherited |
Give derived classes the ability to access widget info.
|
inlineprotected |
|
inlineprotected |
|
inherited |
Some debugging helpers...
|
inherited |
Test if the activity state of this widget is currently ACTIVE.
|
inline |
Is this widget currently disabled?
|
inherited |
Test if the activity state of this widget is currently FROZEN.
|
inherited |
Test if the activity state of this widget is currently INACTIVE.
|
inlineinherited |
Test if this widget is valid.
|
inherited |
Test if the activity state of this widget is currently WAITING.
|
inlineinherited |
Provide an event and a function that will be called when that event is triggered. In this case, the function as no arguments.
|
inlineinherited |
Provide an event and a function that will be called when that event is triggered. In this case, the function takes a mouse event as an argument, with full info about mouse.
|
inlineinherited |
Provide an event and a function that will be called when that event is triggered. In this case, the function takes two doubles which will be filled in with mouse coordinates.
|
inlineinherited |
Provide a function to be called when the mouse button is clicked in this Widget.
|
inlineinherited |
Provide a function to be called whenever text is copied in this Widget.
|
inlineinherited |
Provide a function to be called whenever text is cut in this Widget.
|
inlineinherited |
Provide a function to be called when the mouse button is double clicked in this Widget.
|
inlineinherited |
Provide a function to be called whenever a key is pressed down in this Widget.
|
inlineinherited |
Provide a function to be called whenever a key is pressed down and released in this Widget.
|
inlineinherited |
Provide a function to be called whenever a key is pressed released in this Widget.
|
inlineinherited |
Provide a function to be called when the mouse button is pushed down in this Widget.
|
inlineinherited |
Provide a function to be called whenever the mouse moves in this Widget.
|
inlineinherited |
Provide a function to be called whenever the mouse leaves the Widget.
|
inlineinherited |
Provide a function to be called whenever the mouse moves over the Widget.
|
inlineinherited |
Provide a function to be called when the mouse button is released in this Widget.
|
inlineinherited |
Provide a function to be called whenever the mouse wheel moves in this Widget.
|
inlineinherited |
Provide a function to be called whenever text is pasted in this Widget.
|
inlineinherited |
Provide a function to be called when the window is resized.
|
inlineinherited |
|
inlineinherited |
Are two Widgets refering to differnt HTML objects?
|
inlineprotectedinherited |
Internally, we can treat a Widget as a pointer to its WidgetInfo.
|
inherited |
|
inlineinherited |
Are two Widgets refering to the same HTML object?
|
inlinevirtualinherited |
Setup << operator to redirect to Append; option preparation can be overridden.
Reimplemented in emp::web::TableWidget.
|
inherited |
Disallow further appending to this Widget.
|
inherited |
Clear and redraw the current widget on the screen.
|
inlineinherited |
Set a specific Attribute value for this widget.
|
inlineinherited |
Multiple Attributes can be provided simultaneously.
|
inlineinherited |
Allow multiple Attr settings to be provided as a single object. (still go through DoAttr given need for virtual re-routing.)
|
inline |
Make this text area have focus by default.
|
inlineinherited |
Set the background color of this Widget.
|
inlineinherited |
Set information about the Widget board.
|
inline |
Change the callback function for this TextArea.
|
inlineinherited |
Align text to be centered.
|
inlineinherited |
Set the foreground color of this Widget.
|
inlineinherited |
Set a specific CSS value for this widget.
|
inlineinherited |
Multiple CSS settings can be provided simultaneously.
|
inlineinherited |
Allow multiple CSS settings to be provided as a single object. (still go through DoCSS given need for virtual re-routing.)
|
inline |
Gray out this text area.
|
inlineinherited |
Set this Widget to float appropriately within its containter.
|
inlineinherited |
Provide a Font object to setup the font for this widget.
|
inlineinherited |
Setup the Font to be used in this Widget.
|
inlineinherited |
Setup the size of the Font to be used in this Widget.
|
inlineinherited |
Setup the size of the Font to be used in this Widget in units of % of viewport width.
|
inlineinherited |
Update the height of this Widget.
unit | defaults to pixels ("px"), but can also be a measured distance (e.g, "inches") or a percentage("%") |
|
protectedinherited |
Set the information associated with this widget.
|
inlineinherited |
Set the opacity level of this Widget.
|
inlineinherited |
Setup how this Widget should handle overflow.
|
inlineinherited |
The the number of pixels (or alternate unit) for the padding around cells (used with Tables)
|
inlineinherited |
Set the x-y position of this widget within its container.
|
inlineinherited |
Set the x-y position of this Widget, fixed within the browser window.
|
inlineinherited |
Set the x-y position of the bottom-left corner this Widget, fixed within the browser window.
|
inlineinherited |
Set the x-y position of the bottom-right corner this Widget, fixed within the browser window.
|
inlineinherited |
Set the x-y position of the top-right corner this Widget, fixed within the browser window.
|
inlineinherited |
Set the x-y position of this Widget within its container, using the BOTTOM-LEFT as an anchor.
|
inlineinherited |
Set the x-y position of this Widget within its container, using the BOTTOM-RIGHT as an anchor.
|
inlineinherited |
Set the x-y position of this Widget within its container, using the TOP-RIGHT as an anchor.
|
inlineinherited |
Setup how this Widget to be user-resizable.
|
inlineinherited |
Setup how this Widget to NOT be resizable.
|
inlineinherited |
Setup how this Widget for the x only to be user-resizable.
|
inlineinherited |
Setup how this Widget for the y only to be user-resizable.
|
inlineinherited |
Setup how this Widget to always have scrollbars.
|
inlineinherited |
Setup how this Widget to have scrollbars if needed for overflow.
|
inlineinherited |
Update the size (width and height) of this widget.
unit | defaults to pixels ("px"), but can also be a measured distance (e.g, "inches") or a percentage("%") |
|
inline |
Set the text contained in the text area.
|
inlineinherited |
Update the width of this Widget.
unit | defaults to pixels ("px"), but can also be a measured distance (e.g, "inches") or a percentage("%") |
|
inherited |
Doggle between Active and Deactivated.
|
friend |
|
protectedinherited |
Information associated with this widget.
|
staticprotectedinherited |
Default name for un-initialized widgets.