#include <multiline_text.hpp>
| Public Member Functions | |
| multiline_text (const implementation::builder_multiline_text &builder) | |
| bool | can_wrap () const override | 
| See widget::can_wrap.  More... | |
| void | save_to_history () | 
| Saves the text in the widget to the history.  More... | |
| void | set_history (const std::string &id) | 
| void | set_max_input_length (const std::size_t length) | 
| void | set_hint_data (const std::string &text, const std::string &image) | 
| void | clear () | 
| point | get_cursor_pos () | 
| int | get_line_end_pos () | 
| point | get_text_end_pos () | 
| void | goto_end_of_line (const bool select=false) override | 
| Inherited from text_box_base.  More... | |
| void | goto_start_of_line (const bool select=false) override | 
| Inherited from text_box_base.  More... | |
| void | goto_end_of_data (const bool select=false) override | 
| Inherited from text_box_base.  More... | |
| void | goto_start_of_data (const bool select=false) override | 
| Inherited from text_box_base.  More... | |
| virtual bool | get_link_aware () const override | 
| See styled_widget::get_link_aware.  More... | |
| void | set_link_aware (bool l) | 
|  Public Member Functions inherited from gui2::text_box_base | |
| text_box_base (const implementation::builder_styled_widget &builder, const std::string &control_type) | |
| ~text_box_base () | |
| virtual void | set_active (const bool active) override | 
| See styled_widget::set_active.  More... | |
| virtual bool | get_active () const override | 
| See styled_widget::get_active.  More... | |
| virtual unsigned | get_state () const override | 
| See styled_widget::get_state.  More... | |
| void | set_maximum_length (const std::size_t maximum_length) | 
| std::size_t | get_length () const | 
| Wrapper function, see font::pango_text::get_length.  More... | |
| std::vector< std::string > | get_lines () | 
| Wrapper function, see font::pango_text::get_lines.  More... | |
| PangoLayoutLine * | get_line (int index) | 
| Wrapper function, see font::pango_text::get_line.  More... | |
| int | get_line_number (const unsigned offset) | 
| Wrapper function, see font::pango_text::index_to_line_x.  More... | |
| point | get_cursor_pos_from_index (const unsigned offset) const | 
| Wrapper function, see font::pango_text::get_cursor_pos_from_index.  More... | |
| unsigned | get_lines_count () const | 
| Wrapper function, see font::pango_text::get_lines_count.  More... | |
| void | set_highlight_area (const unsigned start_offset, const unsigned end_offset, const color_t &color) | 
| Wrapper function, sets the area between column start and end offset to be highlighted in a specific color.  More... | |
| virtual void | set_value (const std::string &text) | 
| The set_value is virtual for the password_box class.  More... | |
| std::string | get_value () const | 
| const std::string & | text () const | 
| std::string | plain_text () | 
| template<typename Func > | |
| void | on_modified (const Func &f) | 
| Registers a NOTIFY_MODIFIED handler.  More... | |
| void | set_selection (std::size_t start, int length) | 
| Sets or clears the text selection.  More... | |
| void | set_editable (bool editable) | 
| Set or unset whether text can be edited or not Text can only be copied and scrolled through when editable is false.  More... | |
| bool | is_editable () const | 
| Check whether text can be edited or not.  More... | |
| bool | is_composing () const | 
| void | interrupt_composition () | 
|  Public Member Functions inherited from gui2::styled_widget | |
| styled_widget (const implementation::builder_styled_widget &builder, const std::string &control_type) | |
| Constructor.  More... | |
| virtual void | set_members (const widget_item &data) | 
| Sets the members of the styled_widget.  More... | |
| bool | disable_click_dismiss () const override | 
| See widget::disable_click_dismiss.  More... | |
| virtual iteration::walker_ptr | create_walker () override | 
| See widget::create_walker.  More... | |
| point | get_config_minimum_size () const | 
| Gets the minimum size as defined in the config.  More... | |
| point | get_config_default_size () const | 
| Gets the default size as defined in the config.  More... | |
| point | get_config_maximum_size () const | 
| Gets the best size as defined in the config.  More... | |
| virtual unsigned | get_characters_per_line () const | 
| Returns the number of characters per line.  More... | |
| virtual color_t | get_link_color () const | 
| Returns the color string to be used with links.  More... | |
| virtual void | layout_initialize (const bool full_initialization) override | 
| See widget::layout_initialize.  More... | |
| virtual void | request_reduce_width (const unsigned maximum_width) override | 
| See widget::request_reduce_width.  More... | |
| virtual void | request_reduce_height (const unsigned maximum_height) override | 
| See widget::request_reduce_height.  More... | |
| virtual widget * | find_at (const point &coordinate, const bool must_be_active) override | 
| See widget::find_at.  More... | |
| virtual const widget * | find_at (const point &coordinate, const bool must_be_active) const override | 
| See widget::find_at.  More... | |
| widget * | find (const std::string_view id, const bool must_be_active) override | 
| See widget::find.  More... | |
| const widget * | find (const std::string_view id, const bool must_be_active) const override | 
| See widget::find.  More... | |
| bool | get_use_tooltip_on_label_overflow () const | 
| void | set_use_tooltip_on_label_overflow (const bool use_tooltip=true) | 
| const t_string & | get_label () const | 
| virtual void | set_label (const t_string &text) | 
| virtual void | set_use_markup (bool use_markup) | 
| bool | get_use_markup () const | 
| const t_string & | tooltip () const | 
| void | set_tooltip (const t_string &tooltip) | 
| const t_string & | help_message () const | 
| void | set_help_message (const t_string &help_message) | 
| std::vector< canvas > & | get_canvases () | 
| canvas & | get_canvas (const unsigned index) | 
| virtual void | set_text_alignment (const PangoAlignment text_alignment) | 
| PangoAlignment | get_text_alignment () const | 
| void | set_text_ellipse_mode (const PangoEllipsizeMode ellipse_mode) | 
| PangoEllipsizeMode | get_text_ellipse_mode () const | 
| Get the text's ellipsize mode.  More... | |
|  Public Member Functions inherited from gui2::widget | |
| widget (const widget &)=delete | |
| widget & | operator= (const widget &)=delete | 
| widget () | |
| widget (const builder_widget &builder) | |
| Constructor.  More... | |
| virtual | ~widget () override | 
| void | set_id (const std::string &id) | 
| const std::string & | id () const | 
| window * | get_window () | 
| Get the parent window.  More... | |
| const window * | get_window () const | 
| The constant version of get_window.  More... | |
| grid * | get_parent_grid () | 
| Get the parent grid.  More... | |
| const grid * | get_parent_grid () const | 
| void | set_parent (widget *parent) | 
| widget * | parent () | 
| virtual void | demand_reduce_width (const unsigned maximum_width) | 
| Tries to reduce the width of a widget.  More... | |
| virtual void | demand_reduce_height (const unsigned maximum_height) | 
| Tries to reduce the height of a widget.  More... | |
| point | get_best_size () const | 
| Gets the best size for the widget.  More... | |
| virtual bool | can_mouse_focus () const | 
| Whether the mouse move/click event go 'through' this widget.  More... | |
| virtual void | set_origin (const point &origin) | 
| Sets the origin of the widget.  More... | |
| virtual void | set_size (const point &size) | 
| Sets the size of the widget.  More... | |
| virtual void | move (const int x_offset, const int y_offset) | 
| Moves a widget.  More... | |
| virtual void | set_horizontal_alignment (const std::string &alignment) | 
| Sets the horizontal alignment of the widget within its parent grid.  More... | |
| virtual void | set_vertical_alignment (const std::string &alignment) | 
| Sets the horizontal alignment of the widget within its parent grid.  More... | |
| virtual void | layout_children () | 
| Allows a widget to update its children.  More... | |
| point | get_origin () const | 
| Returns the screen origin of the widget.  More... | |
| point | get_size () const | 
| Returns the size of the widget.  More... | |
| rect | get_rectangle () const | 
| Gets the bounding rectangle of the widget on the screen.  More... | |
| int | get_x () const | 
| int | get_y () const | 
| unsigned | get_width () const | 
| unsigned | get_height () const | 
| void | set_linked_group (const std::string &linked_group) | 
| std::string | get_linked_group () const | 
| rect | calculate_blitting_rectangle () const | 
| Calculates the blitting rectangle of the widget.  More... | |
| rect | calculate_clipping_rectangle () const | 
| Calculates the clipping rectangle of the widget.  More... | |
| bool | draw_background () | 
| Draws the background of a widget.  More... | |
| void | draw_children () | 
| Draws the children of a widget.  More... | |
| bool | draw_foreground () | 
| Draws the foreground of the widget.  More... | |
| rect | get_dirty_rectangle () const | 
| Gets the dirty rectangle of the widget.  More... | |
| virtual void | set_visible_rectangle (const rect &rectangle) | 
| Sets the visible rectangle for a widget.  More... | |
| void | queue_redraw () | 
| Indicates that this widget should be redrawn.  More... | |
| void | queue_redraw (const rect ®ion) | 
| Indicate that specific region of the screen should be redrawn.  More... | |
| void | set_visible (const visibility visible) | 
| visibility | get_visible () const | 
| void | set_visible (bool visible) | 
| Sets widget to visible if visible is true, else invisible.  More... | |
| redraw_action | get_drawing_action () const | 
| void | set_debug_border_mode (const debug_border debug_border_mode) | 
| void | set_debug_border_color (const color_t debug_border_color) | 
| virtual bool | has_widget (const widget &widget) const | 
| Does the widget contain the widget.  More... | |
| template<class T > | |
| T * | find_widget (const std::string_view id, const bool must_be_active, const bool must_exist) | 
| Gets a widget with the wanted id.  More... | |
| template<class T > | |
| const T * | find_widget (const std::string_view id, const bool must_be_active, const bool must_exist) const | 
| template<class T > | |
| T & | find_widget (const std::string_view id, const bool must_be_active=false) | 
| Gets a widget with the wanted id.  More... | |
| template<class T > | |
| const T & | find_widget (const std::string_view id, const bool must_be_active=false) const | 
|  Public Member Functions inherited from gui2::event_executor | |
| event_executor () | |
| virtual | ~event_executor () | 
| void | set_wants_mouse_hover (const bool hover=true) | 
| bool | wants_mouse_hover () const | 
| void | set_wants_mouse_left_double_click (const bool click=true) | 
| bool | wants_mouse_left_double_click () const | 
| void | set_wants_mouse_middle_double_click (const bool click=true) | 
| bool | wants_mouse_middle_double_click () const | 
| event_executor & | set_wants_mouse_right_double_click (const bool click=true) | 
| bool | wants_mouse_right_double_click () const | 
|  Public Member Functions inherited from gui2::event::dispatcher | |
| dispatcher () | |
| virtual | ~dispatcher () | 
| void | connect () | 
| Connects the dispatcher to the event handler.  More... | |
| void | disconnect () | 
| Disconnects the dispatcher from the event handler.  More... | |
| bool | is_connected () const | 
| Return whether the dispatcher is currently connected.  More... | |
| bool | has_event (const ui_event event, const event_queue_type event_type) | 
| bool | fire (const ui_event event, widget &target) | 
| Fires an event which has no extra parameters.  More... | |
| bool | fire (const ui_event event, widget &target, const point &coordinate) | 
| Fires an event which takes a coordinate parameter.  More... | |
| bool | fire (const ui_event event, widget &target, const SDL_Keycode key, const SDL_Keymod modifier, const std::string &unicode) | 
| Fires an event which takes keyboard parameters.  More... | |
| bool | fire (const ui_event event, widget &target, const point &pos, const point &distance) | 
| Fires an event which takes touch-motion parameters.  More... | |
| bool | fire (const ui_event event, widget &target, const point ¢er, float dTheta, float dDist, uint8_t numFingers) | 
| Fires an event which takes touch-gesture parameters.  More... | |
| bool | fire (const ui_event event, widget &target, void *) | 
| Fires an event which takes notification parameters.  More... | |
| bool | fire (const ui_event event, widget &target, const message &msg) | 
| Fires an event which takes message parameters.  More... | |
| bool | fire (const ui_event event, widget &target, const SDL_Event &sdlevent) | 
| Fires an event that's a raw SDL event.  More... | |
| bool | fire (const ui_event event, widget &target, const std::string &text, int32_t start, int32_t len) | 
| Fires an event which takes text input parameters.  More... | |
| template<ui_event E, typename F > | |
| void | connect_signal (const F &func, const queue_position position=back_child) | 
| Adds a callback to the appropriate queue based on event type.  More... | |
| template<ui_event E, typename F > | |
| void | disconnect_signal (const F &func, const queue_position position=back_child) | 
| Removes a callback from the appropriate queue based on event type.  More... | |
| void | capture_mouse () | 
| Captures the mouse.  More... | |
| void | release_mouse () | 
| Releases the mouse capture.  More... | |
| void | set_mouse_behavior (const mouse_behavior mouse_behavior) | 
| mouse_behavior | get_mouse_behavior () const | 
| void | set_want_keyboard_input (const bool want_keyboard_input) | 
| bool | get_want_keyboard_input () const | 
| template<typename Func > | |
| void | register_hotkey (const hotkey::HOTKEY_COMMAND id, Func &&function) | 
| Registers a hotkey.  More... | |
| bool | execute_hotkey (const hotkey::HOTKEY_COMMAND id) | 
| Executes a hotkey.  More... | |
|  Public Member Functions inherited from enable_lua_ptr< widget > | |
| enable_lua_ptr (widget *tp) | |
| enable_lua_ptr (enable_lua_ptr &&o) | |
| The weak_ptrs are pointing to o's shared_ptr's control block, so to keep existing weak_ptrs valid the existing control block is reused instead of replaced.  More... | |
| enable_lua_ptr & | operator= (enable_lua_ptr &&o) | 
| Static Public Member Functions | |
| static const std::string & | type () | 
| Static type getter that does not rely on the widget being constructed.  More... | |
| Protected Member Functions | |
| virtual void | place (const point &origin, const point &size) override | 
| See widget::place.  More... | |
| virtual void | update_canvas () override | 
| See styled_widget::update_canvas.  More... | |
| void | insert_char (const std::string &unicode) override | 
| Inherited from text_box_base.  More... | |
| void | set_cursor (const std::size_t offset, const bool select) override | 
| Inherited from text_box_base.  More... | |
|  Protected Member Functions inherited from gui2::text_box_base | |
| std::size_t | get_composition_length () const | 
| Get length of composition text by IME.  More... | |
| void | select_all () | 
| Selects all text.  More... | |
| virtual void | copy_selection () | 
| Copies the current selection.  More... | |
| point | get_cursor_position (const unsigned column, const unsigned line=0) const | 
| point | get_column_line (const point &position) const | 
| void | set_font_family (font::family_class fclass) | 
| void | set_font_size (const unsigned font_size) | 
| void | set_font_style (const font::pango_text::FONT_STYLE font_style) | 
| void | set_maximum_width (const int width) | 
| void | set_maximum_height (const int height, const bool multiline) | 
| void | set_ellipse_mode (const PangoEllipsizeMode ellipse_mode) | 
| std::size_t | get_selection_start () const | 
| void | set_selection_start (const std::size_t selection_start) | 
| std::size_t | get_selection_length () const | 
| void | set_selection_length (const int selection_length) | 
| std::size_t | get_composition_start () const | 
| virtual void | handle_commit (bool &handled, const std::string &unicode) | 
| virtual void | handle_editing (bool &handled, const std::string &unicode, int32_t start, int32_t length) | 
| SDL_TEXTEDITING handler.  More... | |
|  Protected Member Functions inherited from gui2::styled_widget | |
| virtual point | calculate_best_size () const override | 
| See widget::calculate_best_size.  More... | |
| resolution_definition_ptr | get_config () | 
| resolution_definition_const_ptr | get_config () const | 
| template<typename T > | |
| std::shared_ptr< const typename T::resolution > | cast_config_to () const | 
| Casts the current resolution definition config to the respective type of a derived widget.  More... | |
| unsigned int | get_text_font_size () const | 
| Resolves and returns the text_font_size.  More... | |
| int | get_text_maximum_width () const | 
| Returns the maximum width available for the text.  More... | |
| int | get_text_maximum_height () const | 
| Returns the maximum height available for the text.  More... | |
| virtual bool | impl_draw_background () override | 
| See widget::impl_draw_background.  More... | |
| virtual bool | impl_draw_foreground () override | 
| See widget::impl_draw_foreground.  More... | |
| std::string | get_label_token (const point &position, std::string_view delimiters=" \n\r\t") const | 
| Exposes font::pango_text::get_token, for the text label of this styled_widget.  More... | |
| std::string | get_label_link (const point &position) const | 
|  Protected Member Functions inherited from gui2::widget | |
| void | set_layout_size (const point &size) | 
| const point & | layout_size () const | 
| void | clear_layout_size () | 
| Throws away layout_size_.  More... | |
| Private Member Functions | |
| void | paste_selection () override | 
| Inherited from text_box_base.  More... | |
| void | delete_char (const bool before_cursor) override | 
| Inherited from text_box_base.  More... | |
| void | delete_selection () override | 
| Inherited from text_box_base.  More... | |
| void | handle_mouse_selection (point mouse, const bool start_selection) | 
| void | update_offsets () | 
| Updates text_x_offset_ and text_y_offset_.  More... | |
| unsigned | get_line_end_offset (unsigned line_no) | 
| Utility function to calculate the offset of the end of the line.  More... | |
| unsigned | get_line_start_offset (unsigned line_no) | 
| Utility function to calculate the offset of the end of the line.  More... | |
| void | update_layout () | 
| Update layout.  More... | |
| void | handle_key_up_arrow (SDL_Keymod, bool &handled) override | 
| Inherited from text_box_base.  More... | |
| void | handle_key_down_arrow (SDL_Keymod, bool &handled) override | 
| Inherited from text_box_base.  More... | |
| void | handle_key_left_arrow (SDL_Keymod modifier, bool &handled) override | 
| Inherited from text_box_base.  More... | |
| void | handle_key_right_arrow (SDL_Keymod modifier, bool &handled) override | 
| Inherited from text_box_base.  More... | |
| bool | history_up () | 
| Goes one item up in the history.  More... | |
| bool | history_down () | 
| Goes one item down in the history.  More... | |
| void | handle_key_tab (SDL_Keymod modifier, bool &handled) override | 
| Inherited from text_box_base.  More... | |
| void | handle_key_enter (SDL_Keymod modifier, bool &handled) override | 
| Inherited from text_box_base.  More... | |
| void | handle_key_clear_line (SDL_Keymod modifier, bool &handled) override | 
| Inherited from text_box_base.  More... | |
| virtual const std::string & | get_control_type () const override | 
| Inherited from styled_widget, implemented by REGISTER_WIDGET.  More... | |
| void | signal_handler_mouse_motion (const event::ui_event event, bool &handled, const point &coordinate) | 
| void | signal_handler_left_button_down (const event::ui_event event, bool &handled) | 
| void | signal_handler_left_button_up (const event::ui_event event, bool &handled) | 
| void | signal_handler_left_button_double_click (const event::ui_event event, bool &handled) | 
| Private Attributes | |
| text_history | history_ | 
| The history text for this widget.  More... | |
| std::size_t | max_input_length_ | 
| The maximum length of the text input.  More... | |
| unsigned | text_x_offset_ | 
| The x offset in the widget where the text starts.  More... | |
| unsigned | text_y_offset_ | 
| The y offset in the widget where the text starts.  More... | |
| unsigned | text_height_ | 
| The height of the text itself.  More... | |
| bool | dragging_ | 
| Is the mouse in dragging mode, this affects selection in mouse move.  More... | |
| bool | link_aware_ | 
| Whether the text area is link aware, rendering links with special formatting and handling click events.  More... | |
| std::string | hint_text_ | 
| Helper text to display (such as "Search") if the text box is empty.  More... | |
| std::string | hint_image_ | 
| Image (such as a magnifying glass) that accompanies the help text.  More... | |
| Friends | |
| struct | implementation::builder_multiline_text | 
| Additional Inherited Members | |
|  Public Types inherited from gui2::text_box_base | |
| enum | state_t { ENABLED , DISABLED , FOCUSED , HOVERED } | 
| Note the order of the states must be the same as defined in settings.hpp.  More... | |
|  Public Types inherited from gui2::widget | |
| enum class | visibility { visible , hidden , invisible } | 
| Visibility settings done by the user.  More... | |
| enum class | redraw_action { full , partly , none } | 
| Visibility set by the engine.  More... | |
| enum class | debug_border { none , outline , fill } | 
|  Public Types inherited from gui2::event::dispatcher | |
| enum | event_queue_type { pre = 1 , child = 2 , post = 4 } | 
| enum | queue_position { front_pre_child , back_pre_child , front_child , back_child , front_post_child , back_post_child } | 
| The position where to add a new callback in the signal handler.  More... | |
| enum class | mouse_behavior { all , hit , none } | 
| The behavior of the mouse events.  More... | |
Definition at line 31 of file multiline_text.hpp.
| 
 | explicit | 
Definition at line 44 of file multiline_text.cpp.
References signal_handler_left_button_double_click(), signal_handler_left_button_down(), signal_handler_left_button_up(), and signal_handler_mouse_motion().
| 
 | inlineoverridevirtual | 
See widget::can_wrap.
Reimplemented from gui2::widget.
Definition at line 39 of file multiline_text.hpp.
| 
 | inline | 
Definition at line 70 of file multiline_text.hpp.
References gui2::text_box_base::set_value().
| 
 | overrideprivatevirtual | 
Inherited from text_box_base.
Implements gui2::text_box_base.
Definition at line 177 of file multiline_text.cpp.
References delete_selection(), gui2::text_box_base::get_selection_start(), gui2::text_box_base::is_editable(), set_cursor(), and gui2::text_box_base::set_selection_length().
| 
 | overrideprivatevirtual | 
Inherited from text_box_base.
Implements gui2::text_box_base.
Definition at line 192 of file multiline_text.cpp.
References utf8::erase(), gui2::text_box_base::get_selection_length(), gui2::text_box_base::get_selection_start(), gui2::text_box_base::get_value(), gui2::text_box_base::is_editable(), set_cursor(), gui2::text_box_base::set_value(), editor::start(), and update_layout().
Referenced by delete_char().
| 
 | overrideprivatevirtual | 
Inherited from styled_widget, implemented by REGISTER_WIDGET.
Implements gui2::styled_widget.
Referenced by signal_handler_mouse_motion().
| 
 | inline | 
Definition at line 75 of file multiline_text.hpp.
References gui2::text_box_base::get_cursor_position(), and gui2::text_box_base::get_selection_start().
| 
 | private | 
Utility function to calculate the offset of the end of the line.
Definition at line 238 of file multiline_text.cpp.
References gui2::text_box_base::get_line(), and draw::line().
Referenced by get_line_end_pos(), goto_end_of_line(), handle_key_down_arrow(), and handle_key_up_arrow().
| 
 | inline | 
Definition at line 80 of file multiline_text.hpp.
References gui2::text_box_base::get_cursor_position(), get_line_end_offset(), gui2::text_box_base::get_line_number(), and gui2::text_box_base::get_selection_start().
| 
 | private | 
Utility function to calculate the offset of the end of the line.
Definition at line 243 of file multiline_text.cpp.
References gui2::text_box_base::get_line().
Referenced by goto_start_of_line(), handle_key_down_arrow(), handle_key_up_arrow(), and handle_mouse_selection().
| 
 | inlineoverridevirtual | 
See styled_widget::get_link_aware.
Reimplemented from gui2::styled_widget.
Definition at line 147 of file multiline_text.hpp.
References link_aware_.
Referenced by signal_handler_left_button_down(), signal_handler_mouse_motion(), and update_canvas().
| 
 | inline | 
Definition at line 86 of file multiline_text.hpp.
References gui2::text_box_base::get_cursor_position(), and gui2::text_box_base::get_length().
| 
 | inlineoverridevirtual | 
Inherited from text_box_base.
Reimplemented from gui2::text_box_base.
Definition at line 133 of file multiline_text.hpp.
References gui2::text_box_base::goto_end_of_data(), and update_layout().
| 
 | inlineoverridevirtual | 
Inherited from text_box_base.
Implements gui2::text_box_base.
Definition at line 119 of file multiline_text.hpp.
References get_line_end_offset(), gui2::text_box_base::get_line_number(), gui2::text_box_base::get_selection_start(), and set_cursor().
| 
 | inlineoverridevirtual | 
Inherited from text_box_base.
Reimplemented from gui2::text_box_base.
Definition at line 140 of file multiline_text.hpp.
References gui2::text_box_base::goto_start_of_data(), and update_layout().
| 
 | inlineoverridevirtual | 
Inherited from text_box_base.
Implements gui2::text_box_base.
Definition at line 126 of file multiline_text.hpp.
References gui2::text_box_base::get_line_number(), get_line_start_offset(), gui2::text_box_base::get_selection_start(), and set_cursor().
| 
 | overrideprivatevirtual | 
Inherited from text_box_base.
Implements gui2::text_box_base.
Definition at line 327 of file multiline_text.cpp.
References gui2::text_box_base::set_value().
| 
 | overrideprivatevirtual | 
Inherited from text_box_base.
Unmodified Handled. Control Ignored. Shift Ignored. Alt Ignored.
Implements gui2::text_box_base.
Definition at line 334 of file multiline_text.cpp.
References DBG_GUI_E, gui2::text_box_base::get_length(), get_line_end_offset(), gui2::text_box_base::get_line_number(), get_line_start_offset(), gui2::text_box_base::get_lines_count(), gui2::text_box_base::get_selection_length(), gui2::text_box_base::get_selection_start(), LOG_SCOPE_HEADER, gui2::widget::queue_redraw(), set_cursor(), and update_canvas().
| 
 | overrideprivatevirtual | 
Inherited from text_box_base.
Reimplemented from gui2::text_box_base.
Definition at line 318 of file multiline_text.cpp.
References insert_char(), and gui2::text_box_base::is_editable().
| 
 | inlineoverrideprivatevirtual | 
Inherited from text_box_base.
Unmodified Handled. Control Ignored. Shift Ignored. Alt Ignored.
Reimplemented from gui2::text_box_base.
Definition at line 262 of file multiline_text.hpp.
References gui2::text_box_base::handle_key_left_arrow(), and update_layout().
| 
 | inlineoverrideprivatevirtual | 
Inherited from text_box_base.
Unmodified Handled. Control Ignored. Shift Ignored. Alt Ignored.
Reimplemented from gui2::text_box_base.
Definition at line 276 of file multiline_text.hpp.
References gui2::text_box_base::handle_key_right_arrow(), and update_layout().
| 
 | overrideprivatevirtual | 
Inherited from text_box_base.
Reimplemented from gui2::text_box_base.
Definition at line 299 of file multiline_text.cpp.
References history_down(), history_up(), insert_char(), and gui2::text_box_base::is_editable().
| 
 | overrideprivatevirtual | 
Inherited from text_box_base.
Unmodified Handled. Control Ignored. Shift Ignored. Alt Ignored.
Implements gui2::text_box_base.
Definition at line 361 of file multiline_text.cpp.
References DBG_GUI_E, gui2::text_box_base::get_length(), get_line_end_offset(), gui2::text_box_base::get_line_number(), get_line_start_offset(), gui2::text_box_base::get_selection_length(), gui2::text_box_base::get_selection_start(), LOG_SCOPE_HEADER, gui2::widget::queue_redraw(), set_cursor(), and update_canvas().
| 
 | private | 
Definition at line 214 of file multiline_text.cpp.
References dragging_, gui2::text_box_base::get_column_line(), font::get_line_spacing_factor(), get_line_start_offset(), gui2::text_box_base::get_lines_count(), gui2::widget::get_origin(), draw::line(), gui2::widget::queue_redraw(), set_cursor(), text_height_, text_x_offset_, text_y_offset_, and update_canvas().
Referenced by signal_handler_left_button_down(), and signal_handler_mouse_motion().
| 
 | private | 
Goes one item down in the history.
Definition at line 286 of file multiline_text.cpp.
References gui2::text_history::down(), gui2::text_history::get_enabled(), gui2::text_box_base::get_value(), history_, and gui2::text_box_base::set_value().
Referenced by handle_key_tab().
| 
 | private | 
Goes one item up in the history.
Definition at line 273 of file multiline_text.cpp.
References gui2::text_history::get_enabled(), gui2::text_box_base::get_value(), history_, gui2::text_box_base::set_value(), and gui2::text_history::up().
Referenced by handle_key_tab().
| 
 | inlineoverrideprotectedvirtual | 
Inherited from text_box_base.
Reimplemented from gui2::text_box_base.
Definition at line 103 of file multiline_text.hpp.
References gui2::text_box_base::insert_char(), and update_layout().
Referenced by handle_key_enter(), and handle_key_tab().
| 
 | inlineoverrideprivatevirtual | 
Inherited from text_box_base.
Reimplemented from gui2::text_box_base.
Definition at line 156 of file multiline_text.hpp.
References gui2::text_box_base::paste_selection(), and update_layout().
| 
 | overrideprotectedvirtual | 
See widget::place.
Reimplemented from gui2::styled_widget.
Definition at line 85 of file multiline_text.cpp.
References gui2::styled_widget::get_text_maximum_height(), gui2::styled_widget::get_text_maximum_width(), max_input_length_, gui2::styled_widget::place(), gui2::text_box_base::set_maximum_height(), gui2::text_box_base::set_maximum_length(), gui2::text_box_base::set_maximum_width(), utf8::size(), and update_offsets().
| 
 | inline | 
Saves the text in the widget to the history.
Definition at line 45 of file multiline_text.hpp.
References gui2::text_box_base::get_value(), history_, and gui2::text_history::push().
| 
 | inlineoverrideprotectedvirtual | 
Inherited from text_box_base.
Reimplemented from gui2::text_box_base.
Definition at line 110 of file multiline_text.hpp.
References gui2::text_box_base::set_cursor(), and update_layout().
Referenced by delete_char(), delete_selection(), goto_end_of_line(), goto_start_of_line(), handle_key_down_arrow(), handle_key_up_arrow(), and handle_mouse_selection().
| 
 | inline | 
Definition at line 62 of file multiline_text.hpp.
References hint_image_, hint_text_, gui2::text_box_base::text(), and update_canvas().
| 
 | inline | 
Definition at line 52 of file multiline_text.hpp.
References gui2::text_history::get_history(), and history_.
| void gui2::multiline_text::set_link_aware | ( | bool | l | ) | 
Definition at line 76 of file multiline_text.cpp.
References link_aware_, gui2::widget::queue_redraw(), and update_canvas().
Referenced by gui2::scroll_text::finalize_subclass().
| 
 | inline | 
Definition at line 57 of file multiline_text.hpp.
References max_input_length_.
| 
 | private | 
Definition at line 456 of file multiline_text.cpp.
References DBG_GUI_E, LOG_HEADER, and gui2::text_box_base::select_all().
Referenced by multiline_text().
| 
 | private | 
Definition at line 413 of file multiline_text.cpp.
References _(), gui2::dialogs::message::auto_close, gui2::window::capture_and_show_keyboard(), desktop::clipboard::copy_to_clipboard(), DBG_GUI_E, gui2::styled_widget::get_label_link(), get_link_aware(), gui2::get_mouse_position(), gui2::widget::get_origin(), gui2::widget::get_window(), handle_mouse_selection(), LOG_HEADER, gui2::window::mouse_capture(), gui2::OK, desktop::open_object(), desktop::open_object_is_supported(), gui2::show_message(), and gui2::dialogs::message::yes_no_buttons.
Referenced by multiline_text().
| 
 | private | 
Definition at line 446 of file multiline_text.cpp.
References DBG_GUI_E, dragging_, and LOG_HEADER.
Referenced by multiline_text().
| 
 | private | 
Definition at line 389 of file multiline_text.cpp.
References DBG_GUI_E, dragging_, get_control_type(), gui2::styled_widget::get_label_link(), get_link_aware(), gui2::widget::get_origin(), handle_mouse_selection(), cursor::HYPERLINK, cursor::IBEAM, gui2::widget::id(), and cursor::set().
Referenced by multiline_text().
| 
 | static | 
Static type getter that does not rely on the widget being constructed.
| 
 | overrideprotectedvirtual | 
See styled_widget::update_canvas.
Reimplemented from gui2::styled_widget.
Definition at line 98 of file multiline_text.cpp.
References gui2::styled_widget::get_canvases(), gui2::text_box_base::get_composition_length(), gui2::text_box_base::get_composition_start(), gui2::text_box_base::get_cursor_pos_from_index(), gui2::text_box_base::get_cursor_position(), get_link_aware(), gui2::text_box_base::get_selection_length(), gui2::text_box_base::get_selection_start(), gui2::styled_widget::get_text_maximum_height(), gui2::styled_widget::get_text_maximum_width(), gui2::styled_widget::get_use_markup(), gui2::text_box_base::get_value(), hint_image_, hint_text_, gui2::text_box_base::is_editable(), max_input_length_, gui2::text_box_base::plain_text(), gui2::text_box_base::set_maximum_length(), utf8::size(), editor::start(), text_x_offset_, and text_y_offset_.
Referenced by handle_key_down_arrow(), handle_key_up_arrow(), handle_mouse_selection(), set_hint_data(), set_link_aware(), and update_offsets().
| 
 | inlineprivate | 
Update layout.
To be called when text size changes
Definition at line 228 of file multiline_text.hpp.
References gui2::text_box_base::get_value(), gui2::widget::get_window(), gui2::window::invalidate_layout(), and gui2::styled_widget::set_label().
Referenced by delete_selection(), goto_end_of_data(), goto_start_of_data(), handle_key_left_arrow(), handle_key_right_arrow(), insert_char(), paste_selection(), and set_cursor().
| 
 | private | 
Updates text_x_offset_ and text_y_offset_.
Definition at line 247 of file multiline_text.cpp.
References wfl::map_formula_callable::add(), gui2::styled_widget::get_canvases(), gui2::widget::get_height(), font::get_max_height(), gui2::styled_widget::get_text_font_size(), gui2::widget::get_width(), text_height_, text_x_offset_, text_y_offset_, and update_canvas().
Referenced by place().
| 
 | friend | 
Definition at line 33 of file multiline_text.hpp.
| 
 | private | 
Is the mouse in dragging mode, this affects selection in mouse move.
Definition at line 203 of file multiline_text.hpp.
Referenced by handle_mouse_selection(), signal_handler_left_button_up(), and signal_handler_mouse_motion().
| 
 | private | 
Image (such as a magnifying glass) that accompanies the help text.
Definition at line 215 of file multiline_text.hpp.
Referenced by set_hint_data(), and update_canvas().
| 
 | private | 
Helper text to display (such as "Search") if the text box is empty.
Definition at line 212 of file multiline_text.hpp.
Referenced by set_hint_data(), and update_canvas().
| 
 | private | 
The history text for this widget.
Definition at line 172 of file multiline_text.hpp.
Referenced by history_down(), history_up(), save_to_history(), and set_history().
| 
 | private | 
Whether the text area is link aware, rendering links with special formatting and handling click events.
Definition at line 209 of file multiline_text.hpp.
Referenced by get_link_aware(), and set_link_aware().
| 
 | private | 
The maximum length of the text input.
Definition at line 175 of file multiline_text.hpp.
Referenced by place(), set_max_input_length(), and update_canvas().
| 
 | private | 
The height of the text itself.
Needed to determine whether a click is on the text.
Definition at line 197 of file multiline_text.hpp.
Referenced by handle_mouse_selection(), and update_offsets().
| 
 | private | 
The x offset in the widget where the text starts.
This value is needed to translate a location in the widget to a location in the text.
Definition at line 183 of file multiline_text.hpp.
Referenced by handle_mouse_selection(), update_canvas(), and update_offsets().
| 
 | private | 
The y offset in the widget where the text starts.
Needed to determine whether a click is on the text.
Definition at line 190 of file multiline_text.hpp.
Referenced by handle_mouse_selection(), update_canvas(), and update_offsets().