TGUI
1.1
|
#include <TGUI/Widgets/TextArea.hpp>
Public Types | |
using | Ptr = std::shared_ptr< TextArea > |
Shared widget pointer. | |
using | ConstPtr = std::shared_ptr< const TextArea > |
Shared constant widget pointer. | |
![]() | |
using | Ptr = std::shared_ptr< Widget > |
Shared widget pointer. | |
using | ConstPtr = std::shared_ptr< const Widget > |
Shared constant widget pointer. | |
Public Member Functions | |
TextArea (const char *typeName=StaticWidgetType, bool initRenderer=true) | |
TGUI_NODISCARD TextAreaRenderer * | getSharedRenderer () override |
Returns the renderer, which gives access to functions that determine how the widget is displayed. | |
TGUI_NODISCARD const TextAreaRenderer * | getSharedRenderer () const override |
TGUI_NODISCARD TextAreaRenderer * | getRenderer () override |
Returns the renderer, which gives access to functions that determine how the widget is displayed. | |
void | setSize (const Layout2d &size) override |
Changes the size of the text area. | |
void | setText (String text) |
Changes the text of the text area. | |
void | addText (String text) |
Appends some text to the text that was already in the text area. | |
TGUI_NODISCARD String | getText () const |
Returns the text of the text area. | |
void | setDefaultText (const String &text) |
Changes the default text of the text area. This is the text drawn when the text area is empty. | |
TGUI_NODISCARD const String & | getDefaultText () const |
Returns the default text of the text area. This is the text drawn when the text area is empty. | |
void | setSelectedText (std::size_t selectionStartIndex, std::size_t selectionEndIndex) |
Changes which part of the text is selected. | |
TGUI_NODISCARD String | getSelectedText () const |
Returns the text that you currently have selected. | |
TGUI_NODISCARD std::size_t | getSelectionStart () const |
Returns the index where the selection starts. | |
TGUI_NODISCARD std::size_t | getSelectionEnd () const |
Returns the index where the selection ends. | |
void | setMaximumCharacters (std::size_t maxChars=0) |
Changes the maximum character limit. | |
TGUI_NODISCARD std::size_t | getMaximumCharacters () const |
Returns the maximum character limit. | |
void | setTabString (String tabText) |
Changes the string that is inserted when the Tab key is pressed. | |
TGUI_NODISCARD String | getTabString () const |
Returns the string that is inserted when the Tab key is pressed. | |
void | setCaretPosition (std::size_t charactersBeforeCaret) |
Sets the blinking caret to after a specific character. | |
TGUI_NODISCARD std::size_t | getCaretPosition () const |
Returns after which character the blinking cursor is currently located. | |
TGUI_NODISCARD std::size_t | getCaretLine () const |
Returns which line the blinking cursor is currently located on. | |
TGUI_NODISCARD std::size_t | getCaretColumn () const |
Returns which column the blinking cursor is currently located on. | |
void | setReadOnly (bool readOnly=true) |
Makes the text area read-only or make it writable again. | |
TGUI_NODISCARD bool | isReadOnly () const |
Checks if the text area read-only or writable. | |
void | setVerticalScrollbarPolicy (Scrollbar::Policy policy) |
Changes when the vertical scrollbar should be displayed. | |
TGUI_NODISCARD Scrollbar::Policy | getVerticalScrollbarPolicy () const |
Returns when the vertical scrollbar should be displayed. | |
void | setHorizontalScrollbarPolicy (Scrollbar::Policy policy) |
Changes when the horizontal scrollbar should be displayed. | |
TGUI_NODISCARD Scrollbar::Policy | getHorizontalScrollbarPolicy () const |
Returns when the horizontal scrollbar should be displayed. | |
TGUI_NODISCARD std::size_t | getLinesCount () const |
Returns the amount of lines that the text occupies in the TextArea. | |
void | setFocused (bool focused) override |
Focus or unfocus the widget. | |
void | enableMonospacedFontOptimization (bool enable=true) |
Changes whether an optimization is made that only works when using a monospaced font. | |
void | setVerticalScrollbarValue (unsigned int value) |
Changes the thumb position of the vertical scrollbar. | |
TGUI_NODISCARD unsigned int | getVerticalScrollbarValue () const |
Returns the thumb position of the vertical scrollbar. | |
void | setHorizontalScrollbarValue (unsigned int value) |
Changes the thumb position of the horizontal scrollbar. | |
TGUI_NODISCARD unsigned int | getHorizontalScrollbarValue () const |
Returns the thumb position of the horizontal scrollbar. | |
TGUI_NODISCARD bool | isMouseOnWidget (Vector2f pos) const override |
Returns whether the mouse position (which is relative to the parent widget) lies on top of the widget. | |
bool | leftMousePressed (Vector2f pos) override |
Called by the parent when the left mouse button goes down on top of the widget. | |
void | leftMouseReleased (Vector2f pos) override |
void | mouseMoved (Vector2f pos) override |
void | keyPressed (const Event::KeyEvent &event) override |
bool | canHandleKeyPress (const Event::KeyEvent &event) override |
Called by the parent of the widget to check if keyPressed would process the event. | |
void | textEntered (char32_t key) override |
bool | scrolled (float delta, Vector2f pos, bool touch) override |
Called by the parent on scroll event (either from mouse wheel of from two finger scrolling on a touchscreen) | |
void | mouseNoLongerOnWidget () override |
void | leftMouseButtonNoLongerDown () override |
virtual void | setSize (const Layout2d &size) |
Changes the size of the widget. | |
void | setSize (Layout width, Layout height) |
Changes the size of the widget. | |
![]() | |
Widget (const char *typeName, bool initRenderer) | |
Widget (const Widget &) | |
Copy constructor. | |
Widget (Widget &&) noexcept | |
Move constructor. | |
virtual | ~Widget () |
Destructor. | |
Widget & | operator= (const Widget &) |
Overload of copy assignment operator. | |
Widget & | operator= (Widget &&) noexcept |
Move assignment. | |
void | setRenderer (std::shared_ptr< RendererData > rendererData) |
Sets a new renderer for the widget. The renderer determines how the widget looks. | |
virtual void | setPosition (const Layout2d &position) |
sets the position of the widget | |
void | setPosition (Layout x, Layout y) |
Sets the position of the widget. | |
TGUI_NODISCARD Vector2f | getPosition () const |
Gets the position of the widget. | |
void | setSize (Layout width, Layout height) |
Changes the size of the widget. | |
void | setWidth (Layout width) |
Changes the width of the widget. | |
void | setHeight (Layout height) |
Changes the height of the widget. | |
TGUI_NODISCARD Vector2f | getSize () const |
Returns the size of the widget. | |
virtual TGUI_NODISCARD Vector2f | getFullSize () const |
Returns the entire size that the widget is using. | |
virtual TGUI_NODISCARD Vector2f | getAbsolutePosition (Vector2f offset={}) const |
Get the absolute position of the widget instead of the relative position to its parent. | |
virtual TGUI_NODISCARD Vector2f | getWidgetOffset () const |
Returns the distance between the position where the widget is drawn and where the widget is placed. | |
void | setAutoLayout (AutoLayout layout) |
TGUI_NODISCARD AutoLayout | getAutoLayout () const |
void | setOrigin (float x, float y) |
Sets the origin point on which the position, scale and rotation is based. | |
void | setOrigin (Vector2f origin) |
Sets the origin point on which the position, scale and rotation is based. | |
TGUI_NODISCARD Vector2f | getOrigin () const |
Returns the relative origin point on which the position, scale and rotation is based. | |
void | setScale (Vector2f scaleFactors) |
Sets the scaling to be applied to the widget. | |
void | setScale (Vector2f scaleFactors, Vector2f origin) |
Sets the scaling to be applied to the widget. | |
void | setScale (float scaleFactor) |
Sets the scaling to be applied to the widget. | |
void | setScale (float scaleFactor, Vector2f origin) |
Sets the scaling to be applied to the widget. | |
TGUI_NODISCARD Vector2f | getScale () const |
Returns the scaling to be applied to the widget. | |
TGUI_NODISCARD Vector2f | getScaleOrigin () const |
Returns the origin used for scaling. | |
void | setRotation (float angle) |
Sets the rotation to be applied to the widget. | |
void | setRotation (float angle, Vector2f origin) |
Sets the rotation to be applied to the widget. | |
TGUI_NODISCARD float | getRotation () const |
Returns the rotation to be applied to the widget. | |
TGUI_NODISCARD Vector2f | getRotationOrigin () const |
Returns the origin used for rotations. | |
void | showWithEffect (ShowEffectType type, Duration duration) |
Shows the widget by introducing it with an animation. | |
void | hideWithEffect (ShowEffectType type, Duration duration) |
Hides the widget by making it leave with an animation. | |
void | moveWithAnimation (Layout2d position, Duration duration) |
Moves the widget from its current position to the given position, over a given duration. | |
void | resizeWithAnimation (Layout2d size, Duration duration) |
Resizes the widget from its current size to the given size, over a given duration. | |
virtual void | setVisible (bool visible) |
Shows or hides a widget. | |
TGUI_NODISCARD bool | isVisible () const |
Returns true when the widget is visible. | |
virtual void | setEnabled (bool enabled) |
Enables or disables the widget. | |
TGUI_NODISCARD bool | isEnabled () const |
Returns true when the widget is enabled. | |
TGUI_NODISCARD bool | isFocused () const |
Returns true when the widget is focused and false otherwise. | |
TGUI_NODISCARD const String & | getWidgetType () const |
Returns the type of the widget. | |
TGUI_NODISCARD Container * | getParent () const |
Returns a pointer to the parent widget. | |
TGUI_NODISCARD BackendGui * | getParentGui () const |
Returns a pointer to the gui to which this widget belongs. | |
TGUI_NODISCARD bool | isAnimationPlaying () const |
Returns whether there is an active animation (started with showWithEffect or hideWithEffect) | |
void | moveToFront () |
Places the widget before all other widgets. | |
void | moveToBack () |
Places the widget behind all other widgets. | |
void | setUserData (Any userData) |
Stores some data into the widget. | |
template<typename DataType > | |
TGUI_NODISCARD DataType | getUserData () const |
Returns data stored in the widget. | |
TGUI_NODISCARD bool | hasUserData () const |
Returns whether data stored in the widget. | |
void | setInheritedFont (const Font &font) |
Sets the font of the widget that is used when no font is set in the renderer. | |
TGUI_NODISCARD const Font & | getInheritedFont () const |
Returns the font of the widget that is used when no font is set in the renderer. | |
void | setInheritedOpacity (float opacity) |
Sets the opacity of the widget that will be multiplied with the opacity set in the renderer. | |
TGUI_NODISCARD float | getInheritedOpacity () const |
Returns the opacity of the widget that is multiplied with the opacity set in the renderer. | |
void | setTextSize (unsigned int size) |
Changes the character size of text in this widget if it uses text. | |
TGUI_NODISCARD unsigned int | getTextSize () const |
Returns the character size of text in this widget. | |
void | setToolTip (Widget::Ptr toolTip) |
Sets the tool tip that should be displayed when hovering over the widget. | |
TGUI_NODISCARD Widget::Ptr | getToolTip () const |
Returns the tool tip that is displayed when hovering over the widget. | |
void | setWidgetName (const String &name) |
Changes the name of a widget. | |
TGUI_NODISCARD String | getWidgetName () const |
Returns the name of a widget. | |
void | setMouseCursor (Cursor::Type cursor) |
Changes which mouse cursor is shown when hovering over the widget. | |
TGUI_NODISCARD Cursor::Type | getMouseCursor () const |
Returns which mouse cursor is shown when hovering over the widget. | |
void | setFocusable (bool focusable) |
Changes whether a widget could be focused. | |
TGUI_NODISCARD bool | isFocusable () const |
Returns whether a widget could be focused. | |
void | setNavigationUp (const Widget::Ptr &widgetAbove) |
Changes which widget should become focused when navigating upwards from this widget. | |
TGUI_NODISCARD Widget::Ptr | getNavigationUp () const |
Returns which widget would become focused when navigating upwards from this widget. | |
void | setNavigationDown (const Widget::Ptr &widgetBelow) |
Changes which widget should become focused when navigating downwards from this widget. | |
TGUI_NODISCARD Widget::Ptr | getNavigationDown () const |
Returns which widget would become focused when navigating downwards from this widget. | |
void | setNavigationLeft (const Widget::Ptr &widgetLeft) |
Changes which widget should become focused when navigating to the left from this widget. | |
TGUI_NODISCARD Widget::Ptr | getNavigationLeft () const |
Returns which widget would become focused when navigating to the left from this widget. | |
void | setNavigationRight (const Widget::Ptr &widgetRight) |
Changes which widget should become focused when navigating to the right from this widget. | |
TGUI_NODISCARD Widget::Ptr | getNavigationRight () const |
Returns which widget would become focused when navigating to the right from this widget. | |
void | finishAllAnimations () |
Makes all animations of the widget finish immediately. | |
virtual TGUI_NODISCARD bool | canGainFocus () const |
Returns whether the widget can currently gain focus. | |
TGUI_NODISCARD bool | isContainer () const |
Returns whether the widget is a container widget or not. | |
TGUI_NODISCARD bool | isDraggableWidget () const |
Returns whether the widget has something to drag (e.g. slider or scrollbar thumbs) | |
TGUI_NODISCARD bool | isMouseDown () const |
Returns whether the left mouse button has been pressed on top of the widget. | |
virtual void | setParent (Container *parent) |
void | setAutoLayoutUpdateEnabled (bool enabled) |
virtual void | rightMousePressed (Vector2f pos) |
virtual void | rightMouseReleased (Vector2f pos) |
virtual void | mouseReleased (Event::MouseButton button, Vector2f pos) |
virtual void | rightMouseButtonNoLongerDown () |
virtual TGUI_NODISCARD Widget::Ptr | askToolTip (Vector2f mousePos) |
TGUI_NODISCARD const Layout2d & | getPositionLayout () const |
TGUI_NODISCARD const Layout2d & | getSizeLayout () const |
void | bindPositionLayout (Layout *layout) |
void | unbindPositionLayout (Layout *layout) |
void | bindSizeLayout (Layout *layout) |
void | unbindSizeLayout (Layout *layout) |
template<typename WidgetType > | |
TGUI_NODISCARD std::shared_ptr< const WidgetType > | cast () const |
Downcast const widget. | |
template<typename WidgetType > | |
TGUI_NODISCARD std::shared_ptr< WidgetType > | cast () |
Downcast widget. | |
void | rendererChangedCallback (const String &property) |
Static Public Member Functions | |
static TGUI_NODISCARD TextArea::Ptr | create () |
Creates a new text area widget. | |
static TGUI_NODISCARD TextArea::Ptr | copy (const TextArea::ConstPtr &textArea) |
Makes a copy of another text area. | |
Public Attributes | |
SignalString | onTextChange = {"TextChanged"} |
The text was changed. Optional parameter: new text. | |
Signal | onSelectionChange = {"SelectionChanged"} |
Selected text changed. | |
Signal | onCaretPositionChange = {"CaretPositionChanged"} |
Caret position changed. | |
![]() | |
SignalVector2f | onPositionChange = {"PositionChanged"} |
The position of the widget changed. Optional parameter: new position. | |
SignalVector2f | onSizeChange = {"SizeChanged"} |
The size of the widget changed. Optional parameter: new size. | |
Signal | onFocus = {"Focused"} |
The widget was focused. | |
Signal | onUnfocus = {"Unfocused"} |
The widget was unfocused. | |
Signal | onMouseEnter = {"MouseEntered"} |
The mouse entered the widget. | |
Signal | onMouseLeave = {"MouseLeft"} |
The mouse left the widget. | |
SignalShowEffect | onShowEffectFinish = {"ShowEffectFinished"} |
A show or hide effect finished. Optional parameters: effect type, new widget visibility or both. | |
SignalAnimationType | onAnimationFinish = {"AnimationFinished"} |
An animation has finished. | |
Static Public Attributes | |
static constexpr const char | StaticWidgetType [] = "TextArea" |
Type name of the widget. | |
Protected Member Functions | |
TGUI_NODISCARD Vector2< std::size_t > | findCaretPosition (Vector2f position) const |
TGUI_NODISCARD std::size_t | getIndexOfSelectionPos (Vector2< std::size_t > selectionPos) const |
void | deleteSelectedCharacters () |
void | insertTextAtCaretPosition (String text) |
void | rearrangeText (bool keepSelection, const bool emitCaretChangedPosition=true) |
void | updateScrollbars () |
void | updateSelectionTexts () |
void | backspaceKeyPressed () |
void | deleteKeyPressed () |
void | copySelectedTextToClipboard () |
void | cutSelectedTextToClipboard () |
void | pasteTextFromClipboard () |
void | selectAllText () |
void | moveCaretPageUp () |
void | moveCaretPageDown () |
void | moveCaretLeft (bool shiftPressed) |
void | moveCaretRight (bool shiftPressed) |
void | moveCaretWordBegin () |
void | moveCaretWordEnd () |
void | draw (BackendRenderTarget &target, RenderStates states) const override |
Draw the widget to a render target. | |
TGUI_NODISCARD Vector2f | getInnerSize () const |
bool | updateTime (Duration elapsedTime) override |
void | recalculatePositions () |
void | recalculateVisibleLines () |
TGUI_NODISCARD Signal & | getSignal (String signalName) override |
Retrieves a signal based on its name. | |
void | rendererChanged (const String &property) override |
Function called when one of the properties of the renderer is changed. | |
TGUI_NODISCARD std::unique_ptr< DataIO::Node > | save (SavingRenderersMap &renderers) const override |
Saves the widget as a tree node in order to save it to a file. | |
void | load (const std::unique_ptr< DataIO::Node > &node, const LoadingRenderersMap &renderers) override |
Loads the widget from a tree of nodes. | |
void | updateTextSize () override |
Called when the text size is changed (either by setTextSize or via the renderer) | |
TGUI_NODISCARD Widget::Ptr | clone () const override |
Makes a copy of the widget if you don't know its exact type. | |
void | updateSelEnd (const Vector2< std::size_t > &newValue) |
![]() | |
virtual void | mouseEnteredWidget () |
This function is called when the mouse enters the widget. | |
virtual void | mouseLeftWidget () |
This function is called when the mouse leaves the widget. | |
void | recalculateBoundPositionLayouts () |
Calls recalculateValue() on each layout in m_boundPositionLayouts. | |
void | recalculateBoundSizeLayouts () |
Calls recalculateValue() on each layout in m_boundSizeLayouts. | |
Protected Attributes | |
String | m_text |
float | m_lineHeight = 24 |
float | m_maxLineWidth = 0 |
std::vector< String > | m_lines |
std::size_t | m_maxChars = 0 |
std::size_t | m_topLine = 1 |
std::size_t | m_visibleLines = 1 |
Vector2< std::size_t > | m_selStart |
Vector2< std::size_t > | m_selEnd |
std::pair< Vector2< std::size_t >, Vector2< std::size_t > > | m_lastSelection |
Vector2f | m_caretPosition |
bool | m_caretVisible = true |
String | m_tabText = U"\t" |
Text | m_textBeforeSelection |
Text | m_textSelection1 |
Text | m_textSelection2 |
Text | m_textAfterSelection1 |
Text | m_textAfterSelection2 |
Text | m_defaultText |
std::vector< FloatRect > | m_selectionRects |
CopiedSharedPtr< ScrollbarChildWidget > | m_verticalScrollbar |
CopiedSharedPtr< ScrollbarChildWidget > | m_horizontalScrollbar |
Scrollbar::Policy | m_verticalScrollbarPolicy = Scrollbar::Policy::Automatic |
Scrollbar::Policy | m_horizontalScrollbarPolicy = Scrollbar::Policy::Never |
bool | m_possibleDoubleClick = false |
bool | m_readOnly = false |
bool | m_monospacedFontOptimizationEnabled = false |
Sprite | m_spriteBackground |
Borders | m_bordersCached |
Padding | m_paddingCached |
Color | m_borderColorCached |
Color | m_backgroundColorCached |
Color | m_caretColorCached |
Color | m_selectedTextBackgroundColorCached |
float | m_caretWidthCached = 1 |
![]() | |
String | m_type |
String | m_name |
Layout2d | m_position |
Stores the position of this widget. | |
Layout2d | m_size |
Stores the size of this widget. | |
unsigned int | m_textSize = 0 |
Vector2f | m_origin |
Optional< Vector2f > | m_rotationOrigin |
Optional< Vector2f > | m_scaleOrigin |
Vector2f | m_scaleFactors = {1, 1} |
float | m_rotationDeg = 0 |
Vector2f | m_prevPosition |
Vector2f | m_prevSize |
std::unordered_set< Layout * > | m_boundPositionLayouts |
std::unordered_set< Layout * > | m_boundSizeLayouts |
bool | m_enabled = true |
Stores the flag indicating whether this widget is enabled. | |
bool | m_visible = true |
Stores the flag indicating whether this widget is visible. | |
Container * | m_parent = nullptr |
BackendGui * | m_parentGui = nullptr |
bool | m_mouseHover = false |
bool | m_mouseDown = false |
bool | m_focused = false |
bool | m_focusable = true |
std::weak_ptr< Widget > | m_navWidgetUp |
std::weak_ptr< Widget > | m_navWidgetDown |
std::weak_ptr< Widget > | m_navWidgetRight |
std::weak_ptr< Widget > | m_navWidgetLeft |
Duration | m_animationTimeElapsed |
bool | m_containerWidget = false |
Widget::Ptr | m_toolTip = nullptr |
aurora::CopiedPtr< WidgetRenderer > | m_renderer = nullptr |
std::vector< std::unique_ptr< priv::Animation > > | m_showAnimations |
Font | m_inheritedFont |
float | m_inheritedOpacity = 1 |
Any | m_userData |
Cursor::Type | m_mouseCursor = Cursor::Type::Arrow |
AutoLayout | m_autoLayout = AutoLayout::Manual |
bool | m_autoLayoutUpdateEnabled = true |
Font | m_fontCached = Font::getGlobalFont() |
float | m_opacityCached = 1 |
bool | m_transparentTextureCached = false |
unsigned int | m_textSizeCached = 0 |
Additional Inherited Members | |
![]() | |
using | SavingRenderersMap = std::map< const Widget *, std::pair< std::unique_ptr< DataIO::Node >, String > > |
using | LoadingRenderersMap = std::map< String, std::shared_ptr< RendererData > > |
Text area widget.
A text area is a multi-line input box which supports word-wrap and a vertical scrollbar. If you are looking for a single line input field then check out the EditBox class.
void tgui::TextArea::addText | ( | String | text | ) |
Appends some text to the text that was already in the text area.
text | Text that will be added to the text that is already in the text area |
|
overridevirtual |
Called by the parent of the widget to check if keyPressed would process the event.
event | Key event that took place |
Reimplemented from tgui::Widget.
|
overrideprotectedvirtual |
Makes a copy of the widget if you don't know its exact type.
This function should only be used when you don't know the type of the widget. If you know what kind of widget you are copying, you should use the copy function.
Implements tgui::Widget.
|
static |
Makes a copy of another text area.
textArea | The other text area |
|
static |
Creates a new text area widget.
|
overrideprotectedvirtual |
Draw the widget to a render target.
target | Render target to draw to |
states | Current render states |
Implements tgui::Widget.
void tgui::TextArea::enableMonospacedFontOptimization | ( | bool | enable = true | ) |
Changes whether an optimization is made that only works when using a monospaced font.
enable | Whether the optimization should be enabled |
Rearranging text when a horizontal scrollbar is enabled can be almost as expensive as the word-wrap which is performed when there is no horizontal scrollbar. When using a monospaced font there is no need for such expensive calculation. Call this function when using a monospaced font to make changing the text faster.
This function has no effect when the horizontal scrollbar is disabled (default).
TGUI_NODISCARD std::size_t tgui::TextArea::getCaretColumn | ( | ) | const |
Returns which column the blinking cursor is currently located on.
This function will take word-wrap into account. So, if a caret is on a line that is currently wrapping, the caret will still register as being on the same line even if that line spans many lines in the TextArea.
If the caret is at the beginning of a line, the value will be 1.
TGUI_NODISCARD std::size_t tgui::TextArea::getCaretLine | ( | ) | const |
Returns which line the blinking cursor is currently located on.
This function will take word-wrap into account. So, if a caret is on a line that is currently wrapping, the caret will still register as being on the same line even if that line spans many lines in the TextArea.
If the value is at the top, the value will be 1.
TGUI_NODISCARD std::size_t tgui::TextArea::getCaretPosition | ( | ) | const |
Returns after which character the blinking cursor is currently located.
This function is an alias for getSelectionEnd.
TGUI_NODISCARD const String & tgui::TextArea::getDefaultText | ( | ) | const |
Returns the default text of the text area. This is the text drawn when the text area is empty.
TGUI_NODISCARD Scrollbar::Policy tgui::TextArea::getHorizontalScrollbarPolicy | ( | ) | const |
Returns when the horizontal scrollbar should be displayed.
The default policy is Never, which means word-wrap will be used to keep the text within the TextArea.
TGUI_NODISCARD unsigned int tgui::TextArea::getHorizontalScrollbarValue | ( | ) | const |
Returns the thumb position of the horizontal scrollbar.
TGUI_NODISCARD std::size_t tgui::TextArea::getLinesCount | ( | ) | const |
Returns the amount of lines that the text occupies in the TextArea.
Note that this is the amount of lines after word-wrap is applied.
TGUI_NODISCARD std::size_t tgui::TextArea::getMaximumCharacters | ( | ) | const |
Returns the maximum character limit.
There is no character limit by default.
|
overridevirtual |
Returns the renderer, which gives access to functions that determine how the widget is displayed.
Reimplemented from tgui::Widget.
TGUI_NODISCARD String tgui::TextArea::getSelectedText | ( | ) | const |
Returns the text that you currently have selected.
TGUI_NODISCARD std::size_t tgui::TextArea::getSelectionEnd | ( | ) | const |
Returns the index where the selection ends.
The selection end always equals the caret position.
Note that the start of the selection may be behind the end of the selection when the user selected the text from right to left or from bottom to top.
TGUI_NODISCARD std::size_t tgui::TextArea::getSelectionStart | ( | ) | const |
Returns the index where the selection starts.
When no text is selected, this function returns the same getSelectionEnd.
Note that the start of the selection may be behind the end of the selection when the user selected the text from right to left or from bottom to top.
|
overridevirtual |
Reimplemented from tgui::Widget.
|
overridevirtual |
Returns the renderer, which gives access to functions that determine how the widget is displayed.
Reimplemented from tgui::Widget.
Retrieves a signal based on its name.
signalName | Name of the signal |
Exception | when the name does not match any signal |
Reimplemented from tgui::Widget.
TGUI_NODISCARD String tgui::TextArea::getTabString | ( | ) | const |
Returns the string that is inserted when the Tab key is pressed.
Defaults to "\t".
TGUI_NODISCARD String tgui::TextArea::getText | ( | ) | const |
Returns the text of the text area.
TGUI_NODISCARD Scrollbar::Policy tgui::TextArea::getVerticalScrollbarPolicy | ( | ) | const |
Returns when the vertical scrollbar should be displayed.
The default policy is Automatic, which means it only shows when the text doesn't fit inside the TextArea.
TGUI_NODISCARD unsigned int tgui::TextArea::getVerticalScrollbarValue | ( | ) | const |
Returns the thumb position of the vertical scrollbar.
|
overridevirtual |
Returns whether the mouse position (which is relative to the parent widget) lies on top of the widget.
Implements tgui::Widget.
TGUI_NODISCARD bool tgui::TextArea::isReadOnly | ( | ) | const |
Checks if the text area read-only or writable.
When the text area is read-only, you can no longer delete characters and type text. Selecting text, copying text and even calling the setText function will still work.
|
overridevirtual |
Reimplemented from tgui::Widget.
|
overridevirtual |
Reimplemented from tgui::Widget.
|
overridevirtual |
Called by the parent when the left mouse button goes down on top of the widget.
pos | Mouse position in view coordinates relative to the parent widget |
Reimplemented from tgui::Widget.
|
overridevirtual |
Reimplemented from tgui::Widget.
|
overrideprotectedvirtual |
Loads the widget from a tree of nodes.
Reimplemented from tgui::Widget.
|
overridevirtual |
Reimplemented from tgui::Widget.
|
overridevirtual |
Reimplemented from tgui::Widget.
|
overrideprotectedvirtual |
Function called when one of the properties of the renderer is changed.
property | Name of the property that was changed |
Reimplemented from tgui::Widget.
|
overrideprotectedvirtual |
Saves the widget as a tree node in order to save it to a file.
Reimplemented from tgui::Widget.
|
overridevirtual |
Called by the parent on scroll event (either from mouse wheel of from two finger scrolling on a touchscreen)
delta | Scroll offset (positive is up, negative is down). High-precision mice may use non-integral offsets. |
pos | Mouse position, or the initial position of the touch events |
touch | Was this a touch event or a mouse wheel scroll? |
Reimplemented from tgui::Widget.
void tgui::TextArea::setCaretPosition | ( | std::size_t | charactersBeforeCaret | ) |
Sets the blinking caret to after a specific character.
charactersBeforeCaret | The new position |
This function will set both the selection start and selection end to the requested value.
void tgui::TextArea::setDefaultText | ( | const String & | text | ) |
Changes the default text of the text area. This is the text drawn when the text area is empty.
text | The new default text |
|
overridevirtual |
Focus or unfocus the widget.
focused | Is the widget focused? |
When a widget is focused, the previously focused widget will be unfocused.
Reimplemented from tgui::Widget.
void tgui::TextArea::setHorizontalScrollbarPolicy | ( | Scrollbar::Policy | policy | ) |
Changes when the horizontal scrollbar should be displayed.
policy | The policy for displaying the horizontal scrollbar |
The default policy is Never, which means word-wrap will be used to keep the text within the TextArea.
void tgui::TextArea::setHorizontalScrollbarValue | ( | unsigned int | value | ) |
Changes the thumb position of the horizontal scrollbar.
value | New value of the horizontal scrollbar |
void tgui::TextArea::setMaximumCharacters | ( | std::size_t | maxChars = 0 | ) |
Changes the maximum character limit.
maxChars | The new character limit. Set it to 0 to disable the limit |
This character limit is disabled by default.
void tgui::TextArea::setReadOnly | ( | bool | readOnly = true | ) |
Makes the text area read-only or make it writable again.
readOnly | Should the text area be read-only? |
When the text area is read-only, you can no longer delete characters and type text. Selecting text, copying text and even calling the setText function will still work.
void tgui::TextArea::setSelectedText | ( | std::size_t | selectionStartIndex, |
std::size_t | selectionEndIndex | ||
) |
Changes which part of the text is selected.
selectionStartIndex | Amount of characters before the start of the selection |
selectionEndIndex | Amount of characters before the end of the selection |
|
virtual |
Changes the size of the widget.
size | Size of the widget |
Usage examples:
Reimplemented from tgui::Widget.
|
overridevirtual |
Changes the size of the text area.
This size does not include the borders.
size | The new size of the text area |
Reimplemented from tgui::Widget.
Changes the size of the widget.
width | Width of the widget |
height | Height of the widget |
void tgui::TextArea::setTabString | ( | String | tabText | ) |
Changes the string that is inserted when the Tab key is pressed.
tabText | The string to insert when Tab is pressed. |
Defaults to "\t".
void tgui::TextArea::setText | ( | String | text | ) |
Changes the text of the text area.
text | New text |
void tgui::TextArea::setVerticalScrollbarPolicy | ( | Scrollbar::Policy | policy | ) |
Changes when the vertical scrollbar should be displayed.
policy | The policy for displaying the vertical scrollbar |
The default policy is Automatic, which means it only shows when the text doesn't fit inside the TextArea.
void tgui::TextArea::setVerticalScrollbarValue | ( | unsigned int | value | ) |
Changes the thumb position of the vertical scrollbar.
value | New value of the vertical scrollbar |
|
overridevirtual |
Reimplemented from tgui::Widget.
|
overrideprotectedvirtual |
Called when the text size is changed (either by setTextSize or via the renderer)
Reimplemented from tgui::Widget.
|
overrideprotectedvirtual |
Reimplemented from tgui::Widget.