gtkmm: Gtk::TextView Class Reference

gtkmm 4.6.0

Public Member Functions | Static Public Member Functions | Protected Member Functions | Related Functions | List of all members
Gtk::TextView Class Reference
Widgets | Container Widgets | TextView Classes

Multi-line text editing widget. More...

`#include <gtkmm/textview.h>`

Inheritance diagram for Gtk::TextView:
[legend]

## Public Member Functions
| TextView (TextView&& src) noexcept
TextView& | operator= (TextView&& src) noexcept
| TextView (const TextView&)=delete
TextView& | operator= (const TextView&)=delete
| ~TextView () noexcept override
GtkTextView* | gobj ()
| Provides access to the underlying C GObject. More...
const GtkTextView* | gobj () const
| Provides access to the underlying C GObject. More...
| TextView ()
| TextView (const Glib::RefPtr< TextBuffer >& buffer)
void | set_buffer (const Glib::RefPtr< TextBuffer >& buffer)
| Sets buffer as the buffer being displayed by text_view. More...
Glib::RefPtr< TextBuffer > | get_buffer ()
| Returns the `Gtk::TextBuffer` being displayed by this text view. More...
Glib::RefPtr< const TextBuffer > | get_buffer () const
| Returns the `Gtk::TextBuffer` being displayed by this text view. More...
bool | scroll_to (TextBuffer::iterator& iter, double within_margin=0)
| Scrolls the TextView so that iter is on the screen, by scrolling the minimal distance to get the mark onscreen, possibly not scrolling at all. More...
bool | scroll_to (TextBuffer::iterator& iter, double within_margin, double xalign, double yalign)
| Scrolls the TextView so that iter is on the screen, in the position indicated by xalign and yalign, possibly not scrolling at all. More...
void | scroll_to (const Glib::RefPtr< TextBuffer::Mark >& mark, double within_margin=0)
| Scrolls text_view so that mark is on the screen, by scrolling the minimal distance to get the mark onscreen, possibly not scrolling at all. More...
void | scroll_to (const Glib::RefPtr< TextBuffer::Mark >& mark, double within_margin, double xalign, double yalign)
| Scrolls the TextView so that mark is on the screen, in the position indicated by xalign and yalign, possibly not scrolling at all. More...
bool | move_mark_onscreen (const Glib::RefPtr< TextBuffer::Mark >& mark)
| Moves a mark within the buffer so that it's located within the currently-visible text area. More...
bool | place_cursor_onscreen ()
| Moves the cursor to the currently visible region of the buffer. More...
void | get_visible_rect (Gdk::Rectangle& visible_rect) const
| Fills visible_rect with the currently-visible region of the buffer, in buffer coordinates. More...
void | set_cursor_visible (bool setting=true)
| Toggles whether the insertion point should be displayed. More...
bool | get_cursor_visible () const
| Find out whether the cursor should be displayed. More...
void | reset_cursor_blink ()
| Ensures that the cursor is shown. More...
void | get_cursor_locations (const TextBuffer::const_iterator& iter, Gdk::Rectangle& strong, Gdk::Rectangle& weak) const
| Determine the positions of the strong and weak cursors if the insertion point is at iter. More...
void | get_cursor_locations (Gdk::Rectangle& strong, Gdk::Rectangle& weak) const
| A get_cursor_locations() convenience overload. More...
void | get_iter_location (const TextBuffer::const_iterator& iter, Gdk::Rectangle& location) const
| Gets a rectangle which roughly contains the character at iter. More...
bool | get_iter_at_location (TextBuffer::iterator& iter, int x, int y)
| Retrieves the iterator at buffer coordinates x and y. More...
bool | get_iter_at_location (TextBuffer::const_iterator& iter, int x, int y) const
| Retrieves the iterator at buffer coordinates x and y. More...
bool | get_iter_at_position (TextBuffer::iterator& iter, int& trailing, int x, int y)
| Retrieves the iterator pointing to the character at buffer coordinates x and y. More...
bool | get_iter_at_position (TextBuffer::const_iterator& iter, int& trailing, int x, int y) const
| Retrieves the iterator pointing to the character at buffer coordinates x and y. More...
void | get_line_yrange (const TextBuffer::const_iterator& iter, int& y, int& height) const
| Gets the y coordinate of the top of the line containing iter, and the height of the line. More...
void | get_line_at_y (TextBuffer::iterator& target_iter, int y, int& line_top)
| Gets the `Gtk::TextIter` at the start of the line containing the coordinate y. More...
void | get_line_at_y (TextBuffer::const_iterator& target_iter, int y, int& line_top) const
| Gets the `Gtk::TextIter` at the start of the line containing the coordinate y. More...
void | buffer_to_window_coords (TextWindowType win, int buffer_x, int buffer_y, int& window_x, int& window_y) const
| Converts buffer coordinates to window coordinates. More...
void | window_to_buffer_coords (TextWindowType win, int window_x, int window_y, int& buffer_x, int& buffer_y) const
| Converts coordinates on the window identified by win to buffer coordinates. More...
bool | forward_display_line (TextBuffer::iterator& iter)
| Moves the given iter forward by one display (wrapped) line. More...
bool | backward_display_line (TextBuffer::iterator& iter)
| Moves the given iter backward by one display (wrapped) line. More...
bool | forward_display_line_end (TextBuffer::iterator& iter)
| Moves the given iter forward to the next display line end. More...
bool | backward_display_line_start (TextBuffer::iterator& iter)
| Moves the given iter backward to the next display line start. More...
bool | starts_display_line (const TextBuffer::iterator& iter)
| Determines whether iter is at the start of a display line. More...
bool | move_visually (TextBuffer::iterator& iter, int count)
| Move the iterator a given number of characters visually, treating it as the strong cursor position. More...
bool | im_context_filter_keypress (const Glib::RefPtr< Gdk::Event >& event)
| Allow the `Gtk::TextView` input method to internally handle key press and release events. More...
void | reset_im_context ()
| Reset the input method context of the text view if needed. More...
Widget* | get_gutter (TextWindowType win)
| Gets a `Gtk::Widget` that has previously been set as gutter. More...
const Widget* | get_gutter (TextWindowType win) const
| Gets a `Gtk::Widget` that has previously been set as gutter. More...
void | set_gutter (TextWindowType win, Widget& widget)
| Places widget into the gutter specified by win. More...
void | unset_gutter (TextWindowType win)
| Removes a widget from the gutter specified by win. More...
void | add_child_at_anchor (Widget& child, const Glib::RefPtr< TextBuffer::ChildAnchor >& anchor)
| Adds a child widget in the text buffer, at the given anchor. More...
void | add_overlay (Widget& child, int xpos, int ypos)
| Adds child at a fixed coordinate in the `Gtk::TextView`'s text window. More...
void | move_overlay (Widget& child, int xpos, int ypos)
| Updates the position of a child. More...
void | remove (Widget& child)
| Removes a child widget from text_view. More...
void | set_wrap_mode (WrapMode wrap_mode)
| Sets the line wrapping for the view. More...
WrapMode | get_wrap_mode () const
| Gets the line wrapping for the view. More...
void | set_editable (bool setting=true)
| Sets the default editability of the `Gtk::TextView`. More...
bool | get_editable () const
| Returns the default editability of the `Gtk::TextView`. More...
void | set_pixels_above_lines (int pixels_above_lines)
| Sets the default number of blank pixels above paragraphs in text_view. More...
int | get_pixels_above_lines () const
| Gets the default number of pixels to put above paragraphs. More...
void | set_pixels_below_lines (int pixels_below_lines)
| Sets the default number of pixels of blank space to put below paragraphs in text_view. More...
int | get_pixels_below_lines () const
| Gets the default number of pixels to put below paragraphs. More...
void | set_pixels_inside_wrap (int pixels_inside_wrap)
| Sets the default number of pixels of blank space to leave between display/wrapped lines within a paragraph. More...
int | get_pixels_inside_wrap () const
| Gets the default number of pixels to put between wrapped lines inside a paragraph. More...
void | set_justification (Justification justification)
| Sets the default justification of text in text_view. More...
Justification | get_justification () const
| Gets the default justification of paragraphs in text_view. More...
void | set_left_margin (int left_margin)
| Sets the default left margin for text in text_view. More...
int | get_left_margin () const
| Gets the default left margin size of paragraphs in the text_view. More...
void | set_right_margin (int right_margin)
| Sets the default right margin for text in the text view. More...
int | get_right_margin () const
| Gets the default right margin for text in text_view. More...
void | set_top_margin (int top_margin)
| Sets the top margin for text in text_view. More...
int | get_top_margin () const
| Gets the top margin for text in the text_view. More...
void | set_bottom_margin (int bottom_margin)
| Sets the bottom margin for text in text_view. More...
int | get_bottom_margin () const
| Gets the bottom margin for text in the text_view. More...
void | set_indent (int indent)
| Sets the default indentation for paragraphs in text_view. More...
int | get_indent () const
| Gets the default indentation of paragraphs in text_view. More...
void | set_tabs (Pango::TabArray& tabs)
| Sets the default tab stops for paragraphs in text_view. More...
Pango::TabArray | get_tabs () const
| Gets the default tabs for text_view. More...
void | set_overwrite (bool overwrite=true)
| Changes the `Gtk::TextView` overwrite mode. More...
bool | get_overwrite () const
| Returns whether the `Gtk::TextView` is in overwrite mode or not. More...
void | set_accepts_tab (bool accepts_tab=true)
| Sets the behavior of the text widget when the `Tab` key is pressed. More...
bool | get_accepts_tab () const
| Returns whether pressing the `Tab` key inserts a tab characters. More...
void | set_input_purpose (InputPurpose purpose)
| Sets the `input-purpose` of the `Gtk::TextView`. More...
InputPurpose | get_input_purpose () const
| Gets the `input-purpose` of the `Gtk::TextView`. More...
void | set_input_hints (InputHints hints)
| Sets the `input-hints` of the `Gtk::TextView`. More...
InputHints | get_input_hints () const
| Gets the `input-hints` of the `Gtk::TextView`. More...
void | set_monospace (bool monospace=true)
| Sets whether the `Gtk::TextView` should display text in monospace styling. More...
bool | get_monospace () const
| Gets whether the `Gtk::TextView` uses monospace styling. More...
void | set_extra_menu (const Glib::RefPtr< Gio::MenuModel >& model)
| Sets a menu model to add when constructing the context menu for text_view. More...
Glib::RefPtr< Gio::MenuModel > | get_extra_menu ()
| Gets the menu model that gets added to the context menu or `nullptr` if none has been set. More...
Glib::RefPtr< const Gio::MenuModel > | get_extra_menu () const
| Gets the menu model that gets added to the context menu or `nullptr` if none has been set. More...
Glib::RefPtr< Pango::Context > | get_rtl_context ()
| Gets the `Pango::Context` that is used for rendering RTL directed text layouts. More...
Glib::RefPtr< const Pango::Context > | get_rtl_context () const
| Gets the `Pango::Context` that is used for rendering RTL directed text layouts. More...
Glib::RefPtr< Pango::Context > | get_ltr_context ()
| Gets the `Pango::Context` that is used for rendering LTR directed text layouts. More...
Glib::RefPtr< const Pango::Context > | get_ltr_context () const
| Gets the `Pango::Context` that is used for rendering LTR directed text layouts. More...
Glib::SignalProxy< void()> | signal_set_anchor ()
Glib::SignalProxy< void(const Glib::ustring&)> | signal_insert_at_cursor ()
Glib::PropertyProxy< int > | property_pixels_above_lines ()
| Pixels of blank space above paragraphs. More...
Glib::PropertyProxy_ReadOnly< int > | property_pixels_above_lines () const
| Pixels of blank space above paragraphs. More...
Glib::PropertyProxy< int > | property_pixels_below_lines ()
| Pixels of blank space below paragraphs. More...
Glib::PropertyProxy_ReadOnly< int > | property_pixels_below_lines () const
| Pixels of blank space below paragraphs. More...
Glib::PropertyProxy< int > | property_pixels_inside_wrap ()
| Pixels of blank space between wrapped lines in a paragraph. More...
Glib::PropertyProxy_ReadOnly< int > | property_pixels_inside_wrap () const
| Pixels of blank space between wrapped lines in a paragraph. More...
Glib::PropertyProxy< bool > | property_editable ()
| Whether the text can be modified by the user. More...
Glib::PropertyProxy_ReadOnly< bool > | property_editable () const
| Whether the text can be modified by the user. More...
Glib::PropertyProxy< WrapMode > | property_wrap_mode ()
| Whether to wrap lines never, at word boundaries, or at character boundaries. More...
Glib::PropertyProxy_ReadOnly< WrapMode > | property_wrap_mode () const
| Whether to wrap lines never, at word boundaries, or at character boundaries. More...
Glib::PropertyProxy< Justification > | property_justification ()
| Left, right, or center justification. More...
Glib::PropertyProxy_ReadOnly< Justification > | property_justification () const
| Left, right, or center justification. More...
Glib::PropertyProxy< int > | property_left_margin ()
| The default left margin for text in the text view. More...
Glib::PropertyProxy_ReadOnly< int > | property_left_margin () const
| The default left margin for text in the text view. More...
Glib::PropertyProxy< int > | property_right_margin ()
| The default right margin for text in the text view. More...
Glib::PropertyProxy_ReadOnly< int > | property_right_margin () const
| The default right margin for text in the text view. More...
Glib::PropertyProxy< int > | property_top_margin ()
| The top margin for text in the text view. More...
Glib::PropertyProxy_ReadOnly< int > | property_top_margin () const
| The top margin for text in the text view. More...
Glib::PropertyProxy< int > | property_bottom_margin ()
| The bottom margin for text in the text view. More...
Glib::PropertyProxy_ReadOnly< int > | property_bottom_margin () const
| The bottom margin for text in the text view. More...
Glib::PropertyProxy< int > | property_indent ()
| Amount to indent the paragraph, in pixels. More...
Glib::PropertyProxy_ReadOnly< int > | property_indent () const
| Amount to indent the paragraph, in pixels. More...
Glib::PropertyProxy< Pango::TabArray > | property_tabs ()
| Custom tabs for this text. More...
Glib::PropertyProxy_ReadOnly< Pango::TabArray > | property_tabs () const
| Custom tabs for this text. More...
Glib::PropertyProxy< bool > | property_cursor_visible ()
| If the insertion cursor is shown. More...
Glib::PropertyProxy_ReadOnly< bool > | property_cursor_visible () const
| If the insertion cursor is shown. More...
Glib::PropertyProxy< Glib::RefPtr< TextBuffer > > | property_buffer ()
| The buffer which is displayed. More...
Glib::PropertyProxy_ReadOnly< Glib::RefPtr< TextBuffer > > | property_buffer () const
| The buffer which is displayed. More...
Glib::PropertyProxy< bool > | property_overwrite ()
| Whether entered text overwrites existing contents. More...
Glib::PropertyProxy_ReadOnly< bool > | property_overwrite () const
| Whether entered text overwrites existing contents. More...
Glib::PropertyProxy< bool > | property_accepts_tab ()
| Whether Tab will result in a tab character being entered. More...
Glib::PropertyProxy_ReadOnly< bool > | property_accepts_tab () const
| Whether Tab will result in a tab character being entered. More...
Glib::PropertyProxy< Glib::ustring > | property_im_module ()
| Which IM (input method) module should be used for this text_view. More...
Glib::PropertyProxy_ReadOnly< Glib::ustring > | property_im_module () const
| Which IM (input method) module should be used for this text_view. More...
Glib::PropertyProxy< InputPurpose > | property_input_purpose ()
| The purpose of this text field. More...
Glib::PropertyProxy_ReadOnly< InputPurpose > | property_input_purpose () const
| The purpose of this text field. More...
Glib::PropertyProxy< InputHints > | property_input_hints ()
| Additional hints (beyond property_input_purpose()) that allow input methods to fine-tune their behaviour. More...
Glib::PropertyProxy_ReadOnly< InputHints > | property_input_hints () const
| Additional hints (beyond property_input_purpose()) that allow input methods to fine-tune their behaviour. More...
Glib::PropertyProxy< bool > | property_monospace ()
| Whether text should be displayed in a monospace font. More...
Glib::PropertyProxy_ReadOnly< bool > | property_monospace () const
| Whether text should be displayed in a monospace font. More...
Glib::PropertyProxy< Glib::RefPtr< Gio::MenuModel > > | property_extra_menu ()
| A menu model whose contents will be appended to the context menu. More...
Glib::PropertyProxy_ReadOnly< Glib::RefPtr< Gio::MenuModel > > | property_extra_menu () const
| A menu model whose contents will be appended to the context menu. More...
Public Member Functions inherited from Gtk::Widget
| Widget (Widget&& src) noexcept
Widget& | operator= (Widget&& src) noexcept
| Widget (const Widget&)=delete
Widget& | operator= (const Widget&)=delete
| ~Widget () noexcept override
| Destroys the widget. More...
GtkWidget* | gobj ()
| Provides access to the underlying C GObject. More...
const GtkWidget* | gobj () const
| Provides access to the underlying C GObject. More...
Glib::RefPtr< ConstraintTarget > | make_refptr_constrainttarget ()
| Converts this widget to a reference counted Gtk::ConstraintTarget. More...
Glib::RefPtr< const ConstraintTarget > | make_refptr_constrainttarget () const
| Converts this widget to a reference counted Gtk::ConstraintTarget. More...
void | show ()
| Flags a widget to be displayed. More...
void | hide ()
| Reverses the effects of show(). More...
void | queue_draw ()
| Schedules this widget to be redrawn in the paint phase of the current or the next frame. More...
void | queue_resize ()
| Flags a widget to have its size renegotiated. More...
void | queue_allocate ()
| Flags the widget for a rerun of the size_allocate_vfunc() function. More...
void | size_allocate (const Allocation& allocation, int baseline)
| Allocates widget with a transformation that translates the origin to the position in allocation. More...
SizeRequestMode | get_request_mode () const
| Gets whether the widget prefers a height-for-width layout or a width-for-height layout. More...
void | measure (Orientation orientation, int for_size, int& minimum, int& natural, int& minimum_baseline, int& natural_baseline) const
| Measures widget in the orientation orientation and for the given for_size. More...
void | get_preferred_size (Requisition& minimum_size, Requisition& natural_size) const
| Retrieves the minimum and natural size of a widget, taking into account the widget’s preference for height-for-width management. More...
void | set_layout_manager (const Glib::RefPtr< LayoutManager >& layout_manager)
| Sets the layout manager delegate instance that provides an implementation for measuring and allocating the children of widget. More...
void | unset_layout_manager ()
| Undoes the effect of a previous call to set_layout_manager(). More...
Glib::RefPtr< LayoutManager > | get_layout_manager ()
| Retrieves the layout manager used by widget. More...
Glib::RefPtr< const LayoutManager > | get_layout_manager () const
| Retrieves the layout manager used by widget. More...
bool | mnemonic_activate (bool group_cycling)
| Emits the signal_mnemonic_activate() signal. More...
bool | activate ()
| For widgets that can be “activated” (buttons, menu items, etc.) this function activates them. More...
void | set_can_focus (bool can_focus=true)
| Specifies whether the input focus can enter the widget or any of its children. More...
bool | get_can_focus () const
| Determines whether the input focus can enter widget or any of its children. More...
void | set_focusable (bool focusable=true)
| Specifies whether widget can own the input focus. More...
bool | get_focusable () const
| Determines whether widget can own the input focus. More...
bool | has_focus () const
| Determines if the widget has the global input focus. More...
bool | is_focus () const
| Determines if the widget is the focus widget within its toplevel. More...
bool | has_visible_focus () const
| Determines if the widget should show a visible indication that it has the global input focus. More...
bool | grab_focus ()
| Causes widget to have the keyboard focus for the `Gtk::Window` it's inside. More...
void | set_focus_on_click (bool focus_on_click=true)
| Sets whether the widget should grab focus when it is clicked with the mouse. More...
bool | get_focus_on_click () const
| Returns whether the widget should grab focus when it is clicked with the mouse. More...
void | set_can_target (bool can_target=true)
| Sets whether widget can be the target of pointer events. More...
bool | get_can_target () const
| Queries whether widget can be the target of pointer events. More...
bool | has_default () const
| Determines whether widget is the current default widget within its toplevel. More...
void | set_receives_default (bool receives_default=true)
| Specifies whether widget will be treated as the default widget within its toplevel when it has the focus, even if another widget is the default. More...
bool | get_receives_default () const
| Determines whether widget is always treated as the default widget within its toplevel when it has the focus, even if another widget is the default. More...
void | set_name (const Glib::ustring& name)
| Sets a widgets name. More...
void | unset_name ()
Glib::ustring | get_name () const
| Retrieves the name of a widget. More...
void | set_state_flags (StateFlags flags, bool clear=true)
| Turns on flag values in the current widget state. More...
void | unset_state_flags (StateFlags flags)
| Turns off flag values for the current widget state. More...
StateFlags | get_state_flags () const
| Returns the widget state as a flag set. More...
void | set_sensitive (bool sensitive=true)
| Sets the sensitivity of a widget. More...
bool | get_sensitive () const
| Returns the widget’s sensitivity. More...
bool | is_sensitive () const
| Returns the widget’s effective sensitivity. More...
void | set_visible (bool visible=true)
| Sets the visibility state of widget. More...
bool | get_visible () const
| Determines whether the widget is visible. More...
bool | is_visible () const
| Determines whether the widget and all its parents are marked as visible. More...
bool | is_drawable () const
| Determines whether widget can be drawn to. More...
bool | get_realized () const
| Determines whether widget is realized. More...
bool | get_mapped () const
| Whether the widget is mapped. More...
void | set_child_visible (bool visible=true)
| Sets whether widget should be mapped along with its parent. More...
bool | get_child_visible () const
| Gets the value set with set_child_visible(). More...
int | get_allocated_width () const
| Returns the width that has currently been allocated to widget. More...
int | get_allocated_height () const
| Returns the height that has currently been allocated to widget. More...
int | get_allocated_baseline () const
| Returns the baseline that has currently been allocated to widget. More...
Allocation | get_allocation () const
| Retrieves the widget’s location. More...
int | get_width () const
| Returns the content width of the widget. More...
int | get_height () const
| Returns the content height of the widget. More...
int | get_size (Orientation orientation) const
| Returns the content width or height of the widget. More...
Widget* | get_parent ()
| Returns the parent widget of widget. More...
const Widget* | get_parent () const
| Returns the parent widget of widget. More...
Root* | get_root ()
| Returns the `Gtk::Root` widget of widget. More...
const Root* | get_root () const
| Returns the `Gtk::Root` widget of widget. More...
Native* | get_native ()
| Returns the nearest `Gtk::Native` ancestor of widget. More...
const Native* | get_native () const
| Returns the nearest `Gtk::Native` ancestor of widget. More...
bool | child_focus (DirectionType direction)
| Called by widgets as the user moves around the window using keyboard shortcuts. More...
bool | keynav_failed (DirectionType direction)
| Emits the `::keynav-failed` signal on the widget. More...
void | error_bell ()
| Notifies the user about an input-related error on this widget. More...
void | set_size_request (int width=-1, int height=-1)
| Sets the minimum size of a widget. More...
void | get_size_request (int& width, int& height) const
| Gets the size request that was explicitly set for the widget using set_size_request(). More...
void | set_opacity (double opacity)
| Request the widget to be rendered partially transparent. More...
double | get_opacity () const
| #Fetches the requested opacity for this widget. More...
void | set_overflow (Overflow overflow)
| Sets how widget treats content that is drawn outside the widget's content area. More...
Overflow | get_overflow () const
| Returns the widgets overflow value. More...
Widget* | get_ancestor (GType widget_type)
| Gets the first ancestor of widget with type widget_type. More...
const Widget* | get_ancestor (GType widget_type) const
| Gets the first ancestor of widget with type widget_type. More...
int | get_scale_factor () const
| Retrieves the internal scale factor that maps from window coordinates to the actual device pixels. More...
Glib::RefPtr< Gdk::Display > | get_display ()
| Get the `Gdk::Display` for the toplevel window associated with this widget. More...
Glib::RefPtr< const Gdk::Display > | get_display () const
| Get the `Gdk::Display` for the toplevel window associated with this widget. More...
Glib::RefPtr< Settings > | get_settings ()
| Gets the settings object holding the settings used for this widget. More...
Glib::RefPtr< Gdk::Clipboard > | get_clipboard ()
| Gets the clipboard object for widget. More...
Glib::RefPtr< const Gdk::Clipboard > | get_clipboard () const
| Gets the clipboard object for widget. More...
Glib::RefPtr< Gdk::Clipboard > | get_primary_clipboard ()
| Gets the primary clipboard of widget. More...
Glib::RefPtr< const Gdk::Clipboard > | get_primary_clipboard () const
| Gets the primary clipboard of widget. More...
bool | get_hexpand () const
| Gets whether the widget would like any available extra horizontal space. More...
void | set_hexpand (bool expand=true)
| Sets whether the widget would like any available extra horizontal space. More...
bool | get_hexpand_set () const
| Gets whether set_hexpand() has been used to explicitly set the expand flag on this widget. More...
void | set_hexpand_set (bool set=true)
| Sets whether the hexpand flag will be used. More...
bool | get_vexpand () const
| Gets whether the widget would like any available extra vertical space. More...
void | set_vexpand (bool expand=true)
| Sets whether the widget would like any available extra vertical space. More...
bool | get_vexpand_set () const
| Gets whether set_vexpand() has been used to explicitly set the expand flag on this widget. More...
void | set_vexpand_set (bool set=true)
| Sets whether the vexpand flag will be used. More...
bool | compute_expand (Orientation orientation)
| Computes whether a container should give this widget extra space when possible. More...
void | set_expand (bool expand=true)
| Sets whether the widget would like any available extra space in both directions. More...
Align | get_halign () const
| Gets the horizontal alignment of widget. More...
void | set_halign (Align align)
| Sets the horizontal alignment of widget. More...
Align | get_valign () const
| Gets the vertical alignment of widget. More...
void | set_valign (Align align)
| Sets the vertical alignment of widget. More...
int | get_margin_start () const
| Gets the start margin of widget. More...
void | set_margin_start (int margin)
| Sets the start margin of widget. More...
int | get_margin_end () const
| Gets the end margin of widget. More...
void | set_margin_end (int margin)
| Sets the end margin of widget. More...
int | get_margin_top () const
| Gets the top margin of widget. More...
void | set_margin_top (int margin)
| Sets the top margin of widget. More...
int | get_margin_bottom () const
| Gets the bottom margin of widget. More...
void | set_margin_bottom (int margin)
| Sets the bottom margin of widget. More...
void | set_margin (int margin)
| Set all 4 margins to the same value. More...
bool | is_ancestor (Widget& ancestor) const
| Determines whether widget is somewhere inside ancestor, possibly with intermediate containers. More...
bool | translate_coordinates (Widget& dest_widget, double src_x, double src_y, double& dest_x, double& dest_y)
| Translate coordinates relative to src_widget’s allocation to coordinates relative to dest_widget’s allocations. More...
bool | contains (double x, double y) const
| Tests if the point at ( x, y) is contained in widget. More...
Widget* | pick (double x, double y, PickFlags flags=PickFlags::DEFAULT)
| Finds the descendant of widget closest to the point ( x, y). More...
const Widget* | pick (double x, double y, PickFlags flags=PickFlags::DEFAULT) const
| Finds the descendant of widget closest to the point ( x, y). More...
void | add_controller (const Glib::RefPtr< EventController >& controller)
| Adds controller to widget so that it will receive events. More...
void | remove_controller (const Glib::RefPtr< EventController >& controller)
| Removes controller from widget, so that it doesn't process events anymore. More...
Glib::RefPtr< Pango::Context > | create_pango_context ()
| Creates a new `Pango::Context` with the appropriate font map, font options, font description, and base direction for drawing text for this widget. More...
Glib::RefPtr< Pango::Context > | get_pango_context ()
| Gets a `Pango::Context` with the appropriate font map, font description, and base direction for this widget. More...
void | set_font_options (const Cairo::FontOptions& options)
| Sets the `cairo_font_options_t` used for Pango rendering in this widget. More...
void | unset_font_options ()
| Undoes the effect of previous calls to set_font_options(). More...
Cairo::FontOptions | get_font_options () const
| Returns the `cairo_font_options_t` of widget. More...
Glib::RefPtr< Pango::Layout > | create_pango_layout (const Glib::ustring& text)
| Creates a new `Pango::Layout` with the appropriate font map, font description, and base direction for drawing text for this widget. More...
void | set_direction (TextDirection dir)
| Sets the reading direction on a particular widget. More...
TextDirection | get_direction () const
| Gets the reading direction for a particular widget. More...
void | set_cursor (const Glib::RefPtr< Gdk::Cursor >& cursor)
| Sets the cursor to be shown when pointer devices point towards widget. More...
void | set_cursor (const Glib::ustring& name={})
| Sets a named cursor to be shown when pointer devices point towards the widget. More...
Glib::RefPtr< Gdk::Cursor > | get_cursor ()
| Queries the cursor set on widget. More...
Glib::RefPtr< const Gdk::Cursor > | get_cursor () const
| Queries the cursor set on widget. More...
std::vector< Widget* > | list_mnemonic_labels ()
| Returns the widgets for which this widget is the target of a mnemonic. More...
std::vector< const Widget* > | list_mnemonic_labels () const
| Returns the widgets for which this widget is the target of a mnemonic. More...
void | add_mnemonic_label (Widget& label)
| Adds a widget to the list of mnemonic labels for this widget. More...
void | remove_mnemonic_label (Widget& label)
| Removes a widget from the list of mnemonic labels for this widget. More...
bool | drag_check_threshold (int start_x, int start_y, int current_x, int current_y)
| Checks to see if a drag movement has passed the GTK drag threshold. More...
Glib::RefPtr< Gdk::FrameClock > | get_frame_clock ()
| Obtains the frame clock for a widget. More...
Glib::RefPtr< const Gdk::FrameClock > | get_frame_clock () const
| Obtains the frame clock for a widget. More...
void | set_parent (Widget& parent)
| Sets parent as the parent widget of widget. More...
void | unparent ()
| Dissociate widget from its parent. More...
void | map ()
| Causes a widget to be mapped if it isn’t already. More...
void | unmap ()
| Causes a widget to be unmapped if it’s currently mapped. More...
void | trigger_tooltip_query ()
| Triggers a tooltip query on the display where the toplevel of widget is located. More...
void | set_tooltip_text (const Glib::ustring& text)
| Sets text as the contents of the tooltip. More...
Glib::ustring | get_tooltip_text () const
| Gets the contents of the tooltip for widget. More...
void | set_tooltip_markup (const Glib::ustring& markup)
| Sets markup as the contents of the tooltip, which is marked up with the Pango text markup language. More...
Glib::ustring | get_tooltip_markup () const
| Gets the contents of the tooltip for widget. More...
void | set_has_tooltip (bool has_tooltip=TRUE)
| Sets the `has-tooltip` property on widget to has_tooltip. More...
bool | get_has_tooltip () const
| Returns the current value of the `has-tooltip` property. More...
bool | in_destruction () const
| Returns whether the widget is currently being destroyed. More...
Glib::RefPtr< StyleContext > | get_style_context ()
| Returns the style context associated to widget. More...
Glib::RefPtr< const StyleContext > | get_style_context () const
| Returns the style context associated to widget. More...
guint | add_tick_callback (const SlotTick& slot)
| Queues an animation frame update and adds a callback to be called before each frame. More...
void | remove_tick_callback (guint id)
| Removes a tick callback previously registered with add_tick_callback(). More...
void | insert_action_group (const Glib::ustring& name, const Glib::RefPtr< Gio::ActionGroup >& group)
| Inserts group into widget. More...
void | remove_action_group (const Glib::ustring& name)
| Removes a group from the widget. More...
bool | activate_action (const Glib::ustring& name, const Glib::VariantBase& args={})
| Looks up the action in the action groups associated with the widget and its ancestors, and activates it. More...
void | activate_default ()
| Activates the `default.activate` action from widget. More...
void | set_font_map (const Glib::RefPtr< Pango::FontMap >& font_map)
| Sets the font map to use for Pango rendering. More...
Glib::RefPtr< Pango::FontMap > | get_font_map ()
| Gets the font map of widget. More...
Glib::RefPtr< const Pango::FontMap > | get_font_map () const
| Gets the font map of widget. More...
Widget* | get_first_child ()
| Returns the widgets first child. More...
const Widget* | get_first_child () const
| Returns the widgets first child. More...
Widget* | get_last_child ()
| Returns the widgets last child. More...
const Widget* | get_last_child () const
| Returns the widgets last child. More...
Widget* | get_next_sibling ()
| Returns the widgets next sibling. More...
const Widget* | get_next_sibling () const
| Returns the widgets next sibling. More...
Widget* | get_prev_sibling ()
| Returns the widgets previous sibling. More...
const Widget* | get_prev_sibling () const
| Returns the widgets previous sibling. More...
Glib::RefPtr< Gio::ListModel > | observe_children ()
| Returns a `Gio::ListModel` to track the children of widget. More...
Glib::RefPtr< const Gio::ListModel > | observe_children () const
| Returns a `Gio::ListModel` to track the children of widget. More...
Glib::RefPtr< Gio::ListModel > | observe_controllers ()
| Returns a `Gio::ListModel` to track the Gtk::EventControllers of widget. More...
Glib::RefPtr< const Gio::ListModel > | observe_controllers () const
| Returns a `Gio::ListModel` to track the Gtk::EventControllers of widget. More...
void | insert_after (Widget& parent, const Widget& previous_sibling)
| Inserts the Widget into the child widget list of parent after previous_sibling. More...
void | insert_before (Widget& parent, const Widget& next_sibling)
| Inserts the Widget into the child widget list of parent before next_sibling. More...
void | insert_at_start (Widget& parent)
| Inserts the Widget at the beginning of the child widget list of parent. More...
void | insert_at_end (Widget& parent)
| Inserts the Widget at the end of the child widget list of parent. More...
void | snapshot_child (Widget& child, const Glib::RefPtr< Gtk::Snapshot >& snapshot)
| Snapshot the a child of widget. More...
bool | should_layout () const
| Returns whether widget should contribute to the measuring and allocation of its parent. More...
Glib::ustring | get_css_name () const
| Returns the CSS name that is used for self. More...
void | add_css_class (const Glib::ustring& css_class)
| Adds a style class to widget. More...
void | remove_css_class (const Glib::ustring& css_class)
| Removes a style from widget. More...
bool | has_css_class (const Glib::ustring& css_class) const
| Returns whether css_class is currently applied to widget. More...
std::vector< Glib::ustring > | get_css_classes () const
| Returns the list of style classes applied to widget. More...
void | set_css_classes (const std::vector< Glib::ustring >& classes)
| Clear all style classes applied to widget and replace them with classes. More...
Glib::SignalProxy< void()> | signal_show ()
Glib::SignalProxy< void()> | signal_hide ()
Glib::SignalProxy< void()> | signal_map ()
| Emitted on mapping of a widget to the screen. More...
Glib::SignalProxy< void()> | signal_unmap ()
Glib::SignalProxy< void()> | signal_realize ()
| Emitted on realization of a widget. More...
Glib::SignalProxy< void()> | signal_unrealize ()
Glib::SignalProxy< void(Gtk::StateFlags)> | signal_state_flags_changed ()
Glib::SignalProxy< void(TextDirection)> | signal_direction_changed ()
Glib::SignalProxy< bool(bool)> | signal_mnemonic_activate ()
Glib::SignalProxy< bool(int, int, bool, const Glib::RefPtr< Tooltip >&)> | signal_query_tooltip ()
Glib::PropertyProxy< Glib::ustring > | property_name ()
| The name of the widget. More...
Glib::PropertyProxy_ReadOnly< Glib::ustring > | property_name () const
| The name of the widget. More...
Glib::PropertyProxy_ReadOnly< Widget* > | property_parent () const
| The parent widget of this widget. More...
Glib::PropertyProxy_ReadOnly< Root* > | property_root () const
| The `Gtk::Root` widget of the widget tree containing this widget. More...
Glib::PropertyProxy< int > | property_width_request ()
| Override for width request of the widget. More...
Glib::PropertyProxy_ReadOnly< int > | property_width_request () const
| Override for width request of the widget. More...
Glib::PropertyProxy< int > | property_height_request ()
| Override for height request of the widget. More...
Glib::PropertyProxy_ReadOnly< int > | property_height_request () const
| Override for height request of the widget. More...
Glib::PropertyProxy< bool > | property_visible ()
| Whether the widget is visible. More...
Glib::PropertyProxy_ReadOnly< bool > | property_visible () const
| Whether the widget is visible. More...
Glib::PropertyProxy< bool > | property_sensitive ()
| Whether the widget responds to input. More...
Glib::PropertyProxy_ReadOnly< bool > | property_sensitive () const
| Whether the widget responds to input. More...
Glib::PropertyProxy< bool > | property_can_focus ()
| Whether the widget or any of its descendents can accept the input focus. More...
Glib::PropertyProxy_ReadOnly< bool > | property_can_focus () const
| Whether the widget or any of its descendents can accept the input focus. More...
Glib::PropertyProxy_ReadOnly< bool > | property_has_focus () const
| Whether the widget has the input focus. More...
Glib::PropertyProxy< bool > | property_can_target ()
| Whether the widget can receive pointer events. More...
Glib::PropertyProxy_ReadOnly< bool > | property_can_target () const
| Whether the widget can receive pointer events. More...
Glib::PropertyProxy< bool > | property_focus_on_click ()
| Whether the widget should grab focus when it is clicked with the mouse. More...
Glib::PropertyProxy_ReadOnly< bool > | property_focus_on_click () const
| Whether the widget should grab focus when it is clicked with the mouse. More...
Glib::PropertyProxy< bool > | property_focusable ()
| Whether this widget itself will accept the input focus. More...
Glib::PropertyProxy_ReadOnly< bool > | property_focusable () const
| Whether this widget itself will accept the input focus. More...
Glib::PropertyProxy_ReadOnly< bool > | property_has_default () const
| Whether the widget is the default widget. More...
Glib::PropertyProxy< bool > | property_receives_default ()
| Whether the widget will receive the default action when it is focused. More...
Glib::PropertyProxy_ReadOnly< bool > | property_receives_default () const
| Whether the widget will receive the default action when it is focused. More...
Glib::PropertyProxy< Glib::RefPtr< Gdk::Cursor > > | property_cursor ()
| The cursor used by widget. More...
Glib::PropertyProxy_ReadOnly< Glib::RefPtr< Gdk::Cursor > > | property_cursor () const
| The cursor used by widget. More...
Glib::PropertyProxy< bool > | property_has_tooltip ()
| Enables or disables the emission of the signal_query_tooltip() signal on widget. More...
Glib::PropertyProxy_ReadOnly< bool > | property_has_tooltip () const
| Enables or disables the emission of the signal_query_tooltip() signal on widget. More...
Glib::PropertyProxy< Glib::ustring > | property_tooltip_markup ()
| Sets the text of tooltip to be the given string, which is marked up with Pango markup. More...
Glib::PropertyProxy_ReadOnly< Glib::ustring > | property_tooltip_markup () const
| Sets the text of tooltip to be the given string, which is marked up with Pango markup. More...
Glib::PropertyProxy< Glib::ustring > | property_tooltip_text ()
| Sets the text of tooltip to be the given string. More...
Glib::PropertyProxy_ReadOnly< Glib::ustring > | property_tooltip_text () const
| Sets the text of tooltip to be the given string. More...
Glib::PropertyProxy< Align > | property_halign ()
| How to distribute horizontal space if widget gets extra space. More...
Glib::PropertyProxy_ReadOnly< Align > | property_halign () const
| How to distribute horizontal space if widget gets extra space. More...
Glib::PropertyProxy< Align > | property_valign ()
| How to distribute vertical space if widget gets extra space. More...
Glib::PropertyProxy_ReadOnly< Align > | property_valign () const
| How to distribute vertical space if widget gets extra space. More...
Glib::PropertyProxy< int > | property_margin_start ()
| Margin on start of widget, horizontally. More...
Glib::PropertyProxy_ReadOnly< int > | property_margin_start () const
| Margin on start of widget, horizontally. More...
Glib::PropertyProxy< int > | property_margin_end ()
| Margin on end of widget, horizontally. More...
Glib::PropertyProxy_ReadOnly< int > | property_margin_end () const
| Margin on end of widget, horizontally. More...
Glib::PropertyProxy< int > | property_margin_top ()
| Margin on top side of widget. More...
Glib::PropertyProxy_ReadOnly< int > | property_margin_top () const
| Margin on top side of widget. More...
Glib::PropertyProxy< int > | property_margin_bottom ()
| Margin on bottom side of widget. More...
Glib::PropertyProxy_ReadOnly< int > | property_margin_bottom () const
| Margin on bottom side of widget. More...
Glib::PropertyProxy< bool > | property_hexpand ()
| Whether to expand horizontally. More...
Glib::PropertyProxy_ReadOnly< bool > | property_hexpand () const
| Whether to expand horizontally. More...
Glib::PropertyProxy< bool > | property_hexpand_set ()
| Whether to use the `hexpand` property. More...
Glib::PropertyProxy_ReadOnly< bool > | property_hexpand_set () const
| Whether to use the `hexpand` property. More...
Glib::PropertyProxy< bool > | property_vexpand ()
| Whether to expand vertically. More...
Glib::PropertyProxy_ReadOnly< bool > | property_vexpand () const
| Whether to expand vertically. More...
Glib::PropertyProxy< bool > | property_vexpand_set ()
| Whether to use the `vexpand` property. More...
Glib::PropertyProxy_ReadOnly< bool > | property_vexpand_set () const
| Whether to use the `vexpand` property. More...
Glib::PropertyProxy< double > | property_opacity ()
| The requested opacity of the widget. More...
Glib::PropertyProxy_ReadOnly< double > | property_opacity () const
| The requested opacity of the widget. More...
Glib::PropertyProxy< Overflow > | property_overflow ()
| How content outside the widget's content area is treated. More...
Glib::PropertyProxy_ReadOnly< Overflow > | property_overflow () const
| How content outside the widget's content area is treated. More...
Glib::PropertyProxy_ReadOnly< int > | property_scale_factor () const
| The scale factor of the widget. More...
Glib::PropertyProxy_ReadOnly< Glib::ustring > | property_css_name () const
| The name of this widget in the CSS tree. More...
Glib::PropertyProxy< std::vector< Glib::ustring > > | property_css_classes ()
| A list of css classes applied to this widget. More...
Glib::PropertyProxy_ReadOnly< std::vector< Glib::ustring > > | property_css_classes () const
| A list of css classes applied to this widget. More...
Glib::PropertyProxy< Glib::RefPtr< LayoutManager > > | property_layout_manager ()
| The `Gtk::LayoutManager` instance to use to compute the preferred size of the widget, and allocate its children. More...
Glib::PropertyProxy_ReadOnly< Glib::RefPtr< LayoutManager > > | property_layout_manager () const
| The `Gtk::LayoutManager` instance to use to compute the preferred size of the widget, and allocate its children. More...
Public Member Functions inherited from Gtk::Object
| Object (Object&& src) noexcept
Object& | operator= (Object&& src) noexcept
| ~Object () noexcept override
Public Member Functions inherited from Glib::Object
| Object (const Object &)=delete
Object & | operator= (const Object &)=delete
| Object (Object &&src) noexcept
Object & | operator= (Object &&src) noexcept
void * | get_data (const QueryQuark &key)
void | set_data (const Quark &key, void *data)
void | set_data (const Quark &key, void *data, DestroyNotify notify)
void | remove_data (const QueryQuark &quark)
void * | steal_data (const QueryQuark &quark)
Glib::RefPtr< Glib::Object > | wrap (GObject *object, bool take_copy=false)
Public Member Functions inherited from Glib::ObjectBase
| ObjectBase (const ObjectBase &)=delete
ObjectBase & | operator= (const ObjectBase &)=delete
void | set_property_value (const Glib::ustring &property_name, const Glib::ValueBase &value)
void | get_property_value (const Glib::ustring &property_name, Glib::ValueBase &value) const
void | set_property (const Glib::ustring &property_name, const PropertyType &value)
void | get_property (const Glib::ustring &property_name, PropertyType &value) const
PropertyType | get_property (const Glib::ustring &property_name) const
sigc::connection | connect_property_changed (const Glib::ustring &property_name, const sigc::slot< void()> &slot)
sigc::connection | connect_property_changed (const Glib::ustring &property_name, sigc::slot< void()> &&slot)
void | freeze_notify ()
void | thaw_notify ()
virtual void | reference () const
virtual void | unreference () const
GObject * | gobj ()
const GObject * | gobj () const
GObject * | gobj_copy () const
Public Member Functions inherited from Gtk::Accessible
| Accessible (Accessible&& src) noexcept
Accessible& | operator= (Accessible&& src) noexcept
| ~Accessible () noexcept override
GtkAccessible* | gobj ()
| Provides access to the underlying C GObject. More...
const GtkAccessible* | gobj () const
| Provides access to the underlying C GObject. More...
Role | get_accessible_role () const
| Retrieves the `Gtk::Accessible::Role` for the given `Gtk::Accessible`. More...
void | update_state (State state, const Glib::ValueBase& value)
| Updates an accessible state. More...
void | update_property (Property property, const Glib::ValueBase& value)
| Updates an accessible property. More...
void | update_relation (Relation relation, const Glib::ValueBase& value)
| Updates an accessible relation. More...
void | reset_state (State state)
| Resets the accessible state to its default value. More...
void | reset_property (Property property)
| Resets the accessible property to its default value. More...
void | reset_relation (Relation relation)
| Resets the accessible relation to its default value. More...
Glib::PropertyProxy< Role > | property_accessible_role ()
| The accessible role of the given `Gtk::Accessible` implementation. More...
Glib::PropertyProxy_ReadOnly< Role > | property_accessible_role () const
| The accessible role of the given `Gtk::Accessible` implementation. More...
Public Member Functions inherited from Glib::Interface
| Interface ()
| Interface (Interface &&src) noexcept
Interface & | operator= (Interface &&src) noexcept
| Interface (const Glib::Interface_Class &interface_class)
| Interface (GObject *castitem)
| ~Interface () noexcept override
| Interface (const Interface &)=delete
Interface & | operator= (const Interface &)=delete
GObject * | gobj ()
const GObject * | gobj () const
Public Member Functions inherited from Gtk::Buildable
| Buildable (Buildable&& src) noexcept
Buildable& | operator= (Buildable&& src) noexcept
| ~Buildable () noexcept override
GtkBuildable* | gobj ()
| Provides access to the underlying C GObject. More...
const GtkBuildable* | gobj () const
| Provides access to the underlying C GObject. More...
Glib::ustring | get_buildable_id () const
| Gets the ID of the buildable object. More...
Public Member Functions inherited from Gtk::ConstraintTarget
| ConstraintTarget (ConstraintTarget&& src) noexcept
ConstraintTarget& | operator= (ConstraintTarget&& src) noexcept
| ~ConstraintTarget () noexcept override
GtkConstraintTarget* | gobj ()
| Provides access to the underlying C GObject. More...
const GtkConstraintTarget* | gobj () const
| Provides access to the underlying C GObject. More...
Public Member Functions inherited from Gtk::Scrollable
| Scrollable (Scrollable&& src) noexcept
Scrollable& | operator= (Scrollable&& src) noexcept
| ~Scrollable () noexcept override
GtkScrollable* | gobj ()
| Provides access to the underlying C GObject. More...
const GtkScrollable* | gobj () const
| Provides access to the underlying C GObject. More...
Glib::RefPtr< Adjustment > | get_hadjustment ()
| Retrieves the `Gtk::Adjustment` used for horizontal scrolling. More...
Glib::RefPtr< const Adjustment > | get_hadjustment () const
| Retrieves the `Gtk::Adjustment` used for horizontal scrolling. More...
void | set_hadjustment (const Glib::RefPtr< Adjustment >& hadjustment)
| Sets the horizontal adjustment of the `Gtk::Scrollable`. More...
void | unset_hadjustment ()
| This method removes the hadjustment. More...
Glib::RefPtr< Adjustment > | get_vadjustment ()
| Retrieves the `Gtk::Adjustment` used for vertical scrolling. More...
Glib::RefPtr< const Adjustment > | get_vadjustment () const
| Retrieves the `Gtk::Adjustment` used for vertical scrolling. More...
void | set_vadjustment (const Glib::RefPtr< Adjustment >& vadjustment)
| Sets the vertical adjustment of the `Gtk::Scrollable`. More...
void | unset_vadjustment ()
| This method removes the vadjustment. More...
Policy | get_hscroll_policy () const
| Gets the horizontal `Gtk::Scrollable::Policy`. More...
void | set_hscroll_policy (Policy policy)
| Sets the `Gtk::Scrollable::Policy`. More...
Policy | get_vscroll_policy () const
| Gets the vertical `Gtk::Scrollable::Policy`. More...
void | set_vscroll_policy (Policy policy)
| Sets the `Gtk::Scrollable::Policy`. More...
bool | get_border (Border& border) const
| Returns the size of a non-scrolling border around the outside of the scrollable. More...
Glib::PropertyProxy< Glib::RefPtr< Adjustment > > | property_hadjustment ()
| Horizontal `Gtk::Adjustment` of the scrollable widget. More...
Glib::PropertyProxy_ReadOnly< Glib::RefPtr< Adjustment > > | property_hadjustment () const
| Horizontal `Gtk::Adjustment` of the scrollable widget. More...
Glib::PropertyProxy< Glib::RefPtr< Adjustment > > | property_vadjustment ()
| Vertical `Gtk::Adjustment` of the scrollable widget. More...
Glib::PropertyProxy_ReadOnly< Glib::RefPtr< Adjustment > > | property_vadjustment () const
| Vertical `Gtk::Adjustment` of the scrollable widget. More...
Glib::PropertyProxy< Policy > | property_hscroll_policy ()
| Determines when horizontal scrolling should start. More...
Glib::PropertyProxy_ReadOnly< Policy > | property_hscroll_policy () const
| Determines when horizontal scrolling should start. More...
Glib::PropertyProxy< Policy > | property_vscroll_policy ()
| Determines when vertical scrolling should start. More...
Glib::PropertyProxy_ReadOnly< Policy > | property_vscroll_policy () const
| Determines when vertical scrolling should start. More...

## Static Public Member Functions
static GType | get_type ()
| Get the GType for this class, for use with the underlying GObject type system. More...
Static Public Member Functions inherited from Gtk::Widget
static GType | get_type ()
| Get the GType for this class, for use with the underlying GObject type system. More...
static void | set_default_direction (TextDirection dir)
| Sets the default reading direction for widgets. More...
static TextDirection | get_default_direction ()
| Obtains the current default reading direction. More...
Static Public Member Functions inherited from Gtk::Accessible
static void | add_interface (GType gtype_implementer)
static GType | get_type ()
| Get the GType for this class, for use with the underlying GObject type system. More...
Static Public Member Functions inherited from Gtk::Buildable
static void | add_interface (GType gtype_implementer)
static GType | get_type ()
| Get the GType for this class, for use with the underlying GObject type system. More...
Static Public Member Functions inherited from Gtk::ConstraintTarget
static void | add_interface (GType gtype_implementer)
static GType | get_type ()
| Get the GType for this class, for use with the underlying GObject type system. More...
Static Public Member Functions inherited from Gtk::Scrollable
static void | add_interface (GType gtype_implementer)
static GType | get_type ()
| Get the GType for this class, for use with the underlying GObject type system. More...

## Protected Member Functions
virtual void | on_set_anchor ()
| This is a default handler for the signal signal_set_anchor(). More...
virtual void | on_insert_at_cursor (const Glib::ustring& str)
| This is a default handler for the signal signal_insert_at_cursor(). More...
Protected Member Functions inherited from Gtk::Widget
virtual void | root_vfunc ()
virtual void | unroot_vfunc ()
virtual void | size_allocate_vfunc (int width, int height, int baseline)
virtual SizeRequestMode | get_request_mode_vfunc () const
virtual void | measure_vfunc (Orientation orientation, int for_size, int& minimum, int& natural, int& minimum_baseline, int& natural_baseline) const
virtual bool | grab_focus_vfunc ()
virtual void | set_focus_child_vfunc (Widget* child)
| Sets the focused child of widget. More...
virtual void | compute_expand_vfunc (bool& hexpand_p, bool& vexpand_p)
virtual bool | contains_vfunc (double x, double y) const
virtual void | snapshot_vfunc (const Glib::RefPtr< Gtk::Snapshot >& snapshot)
| Widget ()
void | realize ()
| Creates the GDK resources associated with a widget. More...
void | unrealize ()
| Causes a widget to be unrealized (frees all GDK resources associated with the widget). More...
void | realize_if_needed ()
void | set_focus_child (Widget& child)
| Set child as the current focus child of widget. More...
void | unset_focus_child ()
| Unsets the focus child of the widget. More...
Widget* | get_focus_child ()
| Returns the current focus child of widget. More...
const Widget* | get_focus_child () const
| Returns the current focus child of widget. More...
virtual void | on_show ()
| This is a default handler for the signal signal_show(). More...
virtual void | on_hide ()
| This is a default handler for the signal signal_hide(). More...
virtual void | on_map ()
| This is a default handler for the signal signal_map(). More...
virtual void | on_unmap ()
| This is a default handler for the signal signal_unmap(). More...
virtual void | on_realize ()
| This is a default handler for the signal signal_realize(). More...
virtual void | on_unrealize ()
| This is a default handler for the signal signal_unrealize(). More...
virtual void | on_state_flags_changed (Gtk::StateFlags previous_state_flags)
| This is a default handler for the signal signal_state_flags_changed(). More...
virtual void | on_direction_changed (TextDirection direction)
| This is a default handler for the signal signal_direction_changed(). More...
virtual bool | on_mnemonic_activate (bool group_cycling)
| This is a default handler for the signal signal_mnemonic_activate(). More...
virtual bool | on_query_tooltip (int x, int y, bool keyboard_tooltip, const Glib::RefPtr< Tooltip >& tooltip)
| This is a default handler for the signal signal_query_tooltip(). More...
Protected Member Functions inherited from Glib::Object
| Object ()
| Object (const Glib::ConstructParams &construct_params)
| Object (GObject *castitem)
| ~Object () noexcept override
Protected Member Functions inherited from Glib::ObjectBase
| ObjectBase ()
| ObjectBase (const char *custom_type_name)
| ObjectBase (const std::type_info &custom_type_info)
| ObjectBase (ObjectBase &&src) noexcept
ObjectBase & | operator= (ObjectBase &&src) noexcept
virtual | ~ObjectBase () noexcept=0
void | initialize (GObject *castitem)
void | initialize_move (GObject *castitem, Glib::ObjectBase *previous_wrapper)
Protected Member Functions inherited from Gtk::Accessible
| Accessible ()
| You should derive from this class to use it. More...
Protected Member Functions inherited from Gtk::Buildable
| Buildable ()
| You should derive from this class to use it. More...
Protected Member Functions inherited from Gtk::ConstraintTarget
| ConstraintTarget ()
| You should derive from this class to use it. More...
Protected Member Functions inherited from Gtk::Scrollable
| Scrollable ()
| You should derive from this class to use it. More...
virtual bool | get_border_vfunc (Border& border) const

## Related Functions
(Note that these are not member functions.)
Gtk::TextView* | wrap (GtkTextView* object, bool take_copy=false)
| A Glib::wrap() method for this object. More...
Related Functions inherited from Gtk::Widget
Gtk::Widget* | wrap (GtkWidget* object, bool take_copy=false)
| A Glib::wrap() method for this object. More...
Related Functions inherited from Gtk::Accessible
Glib::RefPtr< Gtk::Accessible > | wrap (GtkAccessible* object, bool take_copy=false)
| A Glib::wrap() method for this object. More...
Related Functions inherited from Gtk::Buildable
Glib::RefPtr< Gtk::Buildable > | wrap (GtkBuildable* object, bool take_copy=false)
| A Glib::wrap() method for this object. More...
Related Functions inherited from Gtk::ConstraintTarget
Glib::RefPtr< Gtk::ConstraintTarget > | wrap (GtkConstraintTarget* object, bool take_copy=false)
| A Glib::wrap() method for this object. More...
Related Functions inherited from Gtk::Scrollable
Glib::RefPtr< Gtk::Scrollable > | wrap (GtkScrollable* object, bool take_copy=false)
| A Glib::wrap() method for this object. More...

## Additional Inherited Members
Public Types inherited from Gtk::Widget
using | SlotTick = sigc::slot< bool(const Glib::RefPtr< Gdk::FrameClock >&)>
| Callback type for adding a function to update animations. More...
Public Types inherited from Glib::Object
typedef void(*)(gpointer data | DestroyNotify)
Public Types inherited from Gtk::Accessible
enum class | Role { Role::ALERT , Role::ALERT_DIALOG , Role::BANNER , Role::BUTTON , Role::CAPTION , Role::CELL , Role::CHECKBOX , Role::COLUMN_HEADER , Role::COMBO_BOX , Role::COMMAND , Role::COMPOSITE , Role::DIALOG , Role::DOCUMENT , Role::FEED , Role::FORM , Role::GENERIC , Role::GRID , Role::GRID_CELL , Role::GROUP , Role::HEADING , Role::IMG , Role::INPUT , Role::LABEL , Role::LANDMARK , Role::LEGEND , Role::LINK , Role::LIST , Role::LIST_BOX , Role::LIST_ITEM , Role::LOG , Role::MAIN , Role::MARQUEE , Role::MATH , Role::METER , Role::MENU , Role::MENU_BAR , Role::MENU_ITEM , Role::MENU_ITEM_CHECKBOX , Role::MENU_ITEM_RADIO , Role::NAVIGATION , Role::NONE , Role::NOTE , Role::OPTION , Role::PRESENTATION , Role::PROGRESS_BAR , Role::RADIO , Role::RADIO_GROUP , Role::RANGE , Role::REGION , Role::ROW , Role::ROW_GROUP , Role::ROW_HEADER , Role::SCROLLBAR , Role::SEARCH , Role::SEARCH_BOX , Role::SECTION , Role::SECTION_HEAD , Role::SELECT , Role::SEPARATOR , Role::SLIDER , Role::SPIN_BUTTON , Role::STATUS , Role::STRUCTURE , Role::SWITCH , Role::TAB , Role::TABLE , Role::TAB_LIST , Role::TAB_PANEL , Role::TEXT_BOX , Role::TIME , Role::TIMER , Role::TOOLBAR , Role::TOOLTIP , Role::TREE , Role::TREE_GRID , Role::TREE_ITEM , Role::WIDGET , Role::WINDOW }
| The accessible role for a `Gtk::Accessible` implementation. More...
enum class | State { State::BUSY , State::CHECKED , State::DISABLED , State::EXPANDED , State::HIDDEN , State::INVALID , State::PRESSED , State::SELECTED }
| The possible accessible states of a `Gtk::Accessible`. More...
enum class | Property { Property::AUTOCOMPLETE , Property::DESCRIPTION , Property::HAS_POPUP , Property::KEY_SHORTCUTS , Property::LABEL , Property::LEVEL , Property::MODAL , Property::MULTI_LINE , Property::MULTI_SELECTABLE , Property::ORIENTATION , Property::PLACEHOLDER , Property::READ_ONLY , Property::REQUIRED , Property::ROLE_DESCRIPTION , Property::SORT , Property::VALUE_MAX , Property::VALUE_MIN , Property::VALUE_NOW , Property::VALUE_TEXT }
| The possible accessible properties of a `Gtk::Accessible`. More...
enum class | Relation { Relation::ACTIVE_DESCENDANT , Relation::COL_COUNT , Relation::COL_INDEX , Relation::COL_INDEX_TEXT , Relation::COL_SPAN , Relation::CONTROLS , Relation::DESCRIBED_BY , Relation::DETAILS , Relation::ERROR_MESSAGE , Relation::FLOW_TO , Relation::LABELLED_BY , Relation::OWNS , Relation::POS_IN_SET , Relation::ROW_COUNT , Relation::ROW_INDEX , Relation::ROW_INDEX_TEXT , Relation::ROW_SPAN , Relation::SET_SIZE }
| The possible accessible relations of a `Gtk::Accessible`. More...
Public Types inherited from Gtk::Scrollable
enum class | Policy { Policy::MINIMUM , Policy::NATURAL }
| Defines the policy to be used in a scrollable widget when updating the scrolled window adjustments in a given orientation. More...

## Detailed Description

Multi-line text editing widget.

It displays a Gtk::TextBuffer.

The TextView widget looks like this:

## Constructor & Destructor Documentation

## ◆ TextView() [1/4]

Gtk::TextView::TextView | ( | TextView&& | src | ) |
| noexcept

## ◆ TextView() [2/4]

Gtk::TextView::TextView | ( | const TextView& |  | ) |
| delete

## ◆ ~TextView()

Gtk::TextView::~TextView | ( |  | ) |
| overridenoexcept

## ◆ TextView() [3/4]

Gtk::TextView::TextView | ( |  | ) |

## ◆ TextView() [4/4]

Gtk::TextView::TextView | ( | const Glib::RefPtr< TextBuffer >& | buffer | ) |
| explicit

## Member Function Documentation

## ◆ add_child_at_anchor()

void Gtk::TextView::add_child_at_anchor | ( | Widget& | child,
|  | const Glib::RefPtr< TextBuffer::ChildAnchor >& | anchor
| ) |  |

Adds a child widget in the text buffer, at the given anchor.

Parameters

  child | A `Gtk::Widget`.
  anchor | A `Gtk::TextChildAnchor` in the `Gtk::TextBuffer` for text_view.

## ◆ add_overlay()

void Gtk::TextView::add_overlay | ( | Widget& | child,
|  | int | xpos,
|  | int | ypos
| ) |  |

Adds child at a fixed coordinate in the `Gtk::TextView`'s text window.

The xpos and ypos must be in buffer coordinates (see get_iter_location() to convert to buffer coordinates).

child will scroll with the text view.

If instead you want a widget that will not move with the `Gtk::TextView` contents see `Gtk::Overlay`.

Parameters

  child | A `Gtk::Widget`.
  xpos | X position of child in window coordinates.
  ypos | Y position of child in window coordinates.

## ◆ backward_display_line()

bool Gtk::TextView::backward_display_line | ( | TextBuffer::iterator& | iter | ) |

Moves the given iter backward by one display (wrapped) line.

A display line is different from a paragraph. Paragraphs are separated by newlines or other paragraph separator characters. Display lines are created by line-wrapping a paragraph. If wrapping is turned off, display lines and paragraphs will be the same. Display lines are divided differently for each view, since they depend on the view’s width; paragraphs are the same in all views, since they depend on the contents of the `Gtk::TextBuffer`.

Parameters

  iter | A `Gtk::TextIter`.

Returns
  `true` if iter was moved and is not on the end iterator.

## ◆ backward_display_line_start()

bool Gtk::TextView::backward_display_line_start | ( | TextBuffer::iterator& | iter | ) |

Moves the given iter backward to the next display line start.

A display line is different from a paragraph. Paragraphs are separated by newlines or other paragraph separator characters. Display lines are created by line-wrapping a paragraph. If wrapping is turned off, display lines and paragraphs will be the same. Display lines are divided differently for each view, since they depend on the view’s width; paragraphs are the same in all views, since they depend on the contents of the `Gtk::TextBuffer`.

Parameters

  iter | A `Gtk::TextIter`.

Returns
  `true` if iter was moved and is not on the end iterator.

## ◆ buffer_to_window_coords()

void Gtk::TextView::buffer_to_window_coords | ( | TextWindowType | win,
|  | int | buffer_x,
|  | int | buffer_y,
|  | int & | window_x,
|  | int & | window_y
| ) |  | const

Converts buffer coordinates to window coordinates.

Parameters

  win | A `Gtk::TextWindowType`.
  buffer_x | Buffer x coordinate.
  buffer_y | Buffer y coordinate.
  window_x | Window x coordinate return location.
  window_y | Window y coordinate return location.

## ◆ forward_display_line()

bool Gtk::TextView::forward_display_line | ( | TextBuffer::iterator& | iter | ) |

Moves the given iter forward by one display (wrapped) line.

A display line is different from a paragraph. Paragraphs are separated by newlines or other paragraph separator characters. Display lines are created by line-wrapping a paragraph. If wrapping is turned off, display lines and paragraphs will be the same. Display lines are divided differently for each view, since they depend on the view’s width; paragraphs are the same in all views, since they depend on the contents of the `Gtk::TextBuffer`.

Parameters

  iter | A `Gtk::TextIter`.

Returns
  `true` if iter was moved and is not on the end iterator.

## ◆ forward_display_line_end()

bool Gtk::TextView::forward_display_line_end | ( | TextBuffer::iterator& | iter | ) |

Moves the given iter forward to the next display line end.

A display line is different from a paragraph. Paragraphs are separated by newlines or other paragraph separator characters. Display lines are created by line-wrapping a paragraph. If wrapping is turned off, display lines and paragraphs will be the same. Display lines are divided differently for each view, since they depend on the view’s width; paragraphs are the same in all views, since they depend on the contents of the `Gtk::TextBuffer`.

Parameters

  iter | A `Gtk::TextIter`.

Returns
  `true` if iter was moved and is not on the end iterator.

## ◆ get_accepts_tab()

bool Gtk::TextView::get_accepts_tab | ( |  | ) | const

Returns whether pressing the `Tab` key inserts a tab characters.

See set_accepts_tab().

Returns
  `true` if pressing the Tab key inserts a tab character, `false` if pressing the Tab key moves the keyboard focus.

## ◆ get_bottom_margin()

int Gtk::TextView::get_bottom_margin | ( |  | ) | const

Gets the bottom margin for text in the text_view.

Since gtkmm 3.20:

Returns
  Bottom margin in pixels.

## ◆ get_buffer() [1/2]

Glib::RefPtr< TextBuffer > Gtk::TextView::get_buffer | ( |  | ) |

Returns the `Gtk::TextBuffer` being displayed by this text view.

The reference count on the buffer is not incremented; the caller of this function won’t own a new reference.

Returns
  A `Gtk::TextBuffer`.

## ◆ get_buffer() [2/2]

Glib::RefPtr< const TextBuffer > Gtk::TextView::get_buffer | ( |  | ) | const

Returns the `Gtk::TextBuffer` being displayed by this text view.

The reference count on the buffer is not incremented; the caller of this function won’t own a new reference.

Returns
  A `Gtk::TextBuffer`.

## ◆ get_cursor_locations() [1/2]

void Gtk::TextView::get_cursor_locations | ( | const TextBuffer::const_iterator& | iter,
|  | Gdk::Rectangle& | strong,
|  | Gdk::Rectangle& | weak
| ) |  | const

Determine the positions of the strong and weak cursors if the insertion point is at iter.

The position of each cursor is stored as a zero-width rectangle. The strong cursor location is the location where characters of the directionality equal to the base direction of the paragraph are inserted. The weak cursor location is the location where characters of the directionality opposite to the base direction of the paragraph are inserted.

If iter is `nullptr`, the actual cursor position is used.

Note that if iter happens to be the actual cursor position, and there is currently an IM preedit sequence being entered, the returned locations will be adjusted to account for the preedit cursor’s offset within the preedit sequence.

The rectangle position is in buffer coordinates; use buffer_to_window_coords() to convert these coordinates to coordinates for one of the windows in the text view.

Parameters

  iter | A `Gtk::TextIter`.
  strong | Location to store the strong cursor position.
  weak | Location to store the weak cursor position.

## ◆ get_cursor_locations() [2/2]

void Gtk::TextView::get_cursor_locations | ( | Gdk::Rectangle& | strong,
|  | Gdk::Rectangle& | weak
| ) |  | const

A get_cursor_locations() convenience overload.

## ◆ get_cursor_visible()

bool Gtk::TextView::get_cursor_visible | ( |  | ) | const

Find out whether the cursor should be displayed.

Returns
  Whether the insertion mark is visible.

## ◆ get_editable()

bool Gtk::TextView::get_editable | ( |  | ) | const

Returns the default editability of the `Gtk::TextView`.

Tags in the buffer may override this setting for some ranges of text.

Returns
  Whether text is editable by default.

## ◆ get_extra_menu() [1/2]

Glib::RefPtr< Gio::MenuModel > Gtk::TextView::get_extra_menu | ( |  | ) |

Gets the menu model that gets added to the context menu or `nullptr` if none has been set.

Returns
  The menu model.

## ◆ get_extra_menu() [2/2]

Glib::RefPtr< const Gio::MenuModel > Gtk::TextView::get_extra_menu | ( |  | ) | const

Gets the menu model that gets added to the context menu or `nullptr` if none has been set.

Returns
  The menu model.

## ◆ get_gutter() [1/2]

Widget* Gtk::TextView::get_gutter | ( | TextWindowType | win | ) |

Gets a `Gtk::Widget` that has previously been set as gutter.

See set_gutter().

win must be one of Gtk::TextWindowType::LEFT, Gtk::TextWindowType::RIGHT, Gtk::TextWindowType::TOP, or Gtk::TextWindowType::BOTTOM.

Parameters

  win | A `Gtk::TextWindowType`.

Returns
  A `Gtk::Widget`.

## ◆ get_gutter() [2/2]

const Widget* Gtk::TextView::get_gutter | ( | TextWindowType | win | ) | const

Gets a `Gtk::Widget` that has previously been set as gutter.

See set_gutter().

win must be one of Gtk::TextWindowType::LEFT, Gtk::TextWindowType::RIGHT, Gtk::TextWindowType::TOP, or Gtk::TextWindowType::BOTTOM.

Parameters

  win | A `Gtk::TextWindowType`.

Returns
  A `Gtk::Widget`.

## ◆ get_indent()

int Gtk::TextView::get_indent | ( |  | ) | const

Gets the default indentation of paragraphs in text_view.

Tags in the view’s buffer may override the default. The indentation may be negative.

Returns
  Number of pixels of indentation.

## ◆ get_input_hints()

InputHints Gtk::TextView::get_input_hints | ( |  | ) | const

Gets the `input-hints` of the `Gtk::TextView`.

## ◆ get_input_purpose()

InputPurpose Gtk::TextView::get_input_purpose | ( |  | ) | const

Gets the `input-purpose` of the `Gtk::TextView`.

## ◆ get_iter_at_location() [1/2]

bool Gtk::TextView::get_iter_at_location | ( | TextBuffer::const_iterator& | iter,
|  | int | x,
|  | int | y
| ) |  | const

Retrieves the iterator at buffer coordinates x and y.

Buffer coordinates are coordinates for the entire buffer, not just the currently-displayed portion. If you have coordinates from an event, you have to convert those to buffer coordinates with window_to_buffer_coords().

Parameters

  iter | A `Gtk::TextIter`.
  x | X position, in buffer coordinates.
  y | Y position, in buffer coordinates.

Returns
  `true` if the position is over text.

## ◆ get_iter_at_location() [2/2]

bool Gtk::TextView::get_iter_at_location | ( | TextBuffer::iterator& | iter,
|  | int | x,
|  | int | y
| ) |  |

Retrieves the iterator at buffer coordinates x and y.

Buffer coordinates are coordinates for the entire buffer, not just the currently-displayed portion. If you have coordinates from an event, you have to convert those to buffer coordinates with window_to_buffer_coords().

Parameters

  iter | A `Gtk::TextIter`.
  x | X position, in buffer coordinates.
  y | Y position, in buffer coordinates.

Returns
  `true` if the position is over text.

## ◆ get_iter_at_position() [1/2]

bool Gtk::TextView::get_iter_at_position | ( | TextBuffer::const_iterator& | iter,
|  | int & | trailing,
|  | int | x,
|  | int | y
| ) |  | const

Retrieves the iterator pointing to the character at buffer coordinates x and y.

Buffer coordinates are coordinates for the entire buffer, not just the currently-displayed portion. If you have coordinates from an event, you have to convert those to buffer coordinates with window_to_buffer_coords().

Note that this is different from get_iter_at_location(), which returns cursor locations, i.e. positions between characters.

Parameters

  iter | A `Gtk::TextIter`.
  trailing | If non-`nullptr`, location to store an integer indicating where in the grapheme the user clicked. It will either be zero, or the number of characters in the grapheme. 0 represents the trailing edge of the grapheme.
  x | X position, in buffer coordinates.
  y | Y position, in buffer coordinates.

Returns
  `true` if the position is over text.

## ◆ get_iter_at_position() [2/2]

bool Gtk::TextView::get_iter_at_position | ( | TextBuffer::iterator& | iter,
|  | int & | trailing,
|  | int | x,
|  | int | y
| ) |  |

Retrieves the iterator pointing to the character at buffer coordinates x and y.

Buffer coordinates are coordinates for the entire buffer, not just the currently-displayed portion. If you have coordinates from an event, you have to convert those to buffer coordinates with window_to_buffer_coords().

Note that this is different from get_iter_at_location(), which returns cursor locations, i.e. positions between characters.

Parameters

  iter | A `Gtk::TextIter`.
  trailing | If non-`nullptr`, location to store an integer indicating where in the grapheme the user clicked. It will either be zero, or the number of characters in the grapheme. 0 represents the trailing edge of the grapheme.
  x | X position, in buffer coordinates.
  y | Y position, in buffer coordinates.

Returns
  `true` if the position is over text.

## ◆ get_iter_location()

void Gtk::TextView::get_iter_location | ( | const TextBuffer::const_iterator& | iter,
|  | Gdk::Rectangle& | location
| ) |  | const

Gets a rectangle which roughly contains the character at iter.

The rectangle position is in buffer coordinates; use buffer_to_window_coords() to convert these coordinates to coordinates for one of the windows in the text view.

Parameters

  iter | A `Gtk::TextIter`.
  location | Bounds of the character at iter.

## ◆ get_justification()

Justification Gtk::TextView::get_justification | ( |  | ) | const

Gets the default justification of paragraphs in text_view.

Tags in the buffer may override the default.

Returns
  Default justification.

## ◆ get_left_margin()

int Gtk::TextView::get_left_margin | ( |  | ) | const

Gets the default left margin size of paragraphs in the text_view.

Tags in the buffer may override the default.

Returns
  Left margin in pixels.

## ◆ get_line_at_y() [1/2]

void Gtk::TextView::get_line_at_y | ( | TextBuffer::const_iterator& | target_iter,
|  | int | y,
|  | int & | line_top
| ) |  | const

Gets the `Gtk::TextIter` at the start of the line containing the coordinate y.

y is in buffer coordinates, convert from window coordinates with window_to_buffer_coords(). If non-`nullptr`, line_top will be filled with the coordinate of the top edge of the line.

Parameters

  target_iter | A `Gtk::TextIter`.
  y | A y coordinate.
  line_top | Return location for top coordinate of the line.

## ◆ get_line_at_y() [2/2]

void Gtk::TextView::get_line_at_y | ( | TextBuffer::iterator& | target_iter,
|  | int | y,
|  | int & | line_top
| ) |  |

Gets the `Gtk::TextIter` at the start of the line containing the coordinate y.

y is in buffer coordinates, convert from window coordinates with window_to_buffer_coords(). If non-`nullptr`, line_top will be filled with the coordinate of the top edge of the line.

Parameters

  target_iter | A `Gtk::TextIter`.
  y | A y coordinate.
  line_top | Return location for top coordinate of the line.

## ◆ get_line_yrange()

void Gtk::TextView::get_line_yrange | ( | const TextBuffer::const_iterator& | iter,
|  | int & | y,
|  | int & | height
| ) |  | const

Gets the y coordinate of the top of the line containing iter, and the height of the line.

The coordinate is a buffer coordinate; convert to window coordinates with buffer_to_window_coords().

Parameters

  iter | A `Gtk::TextIter`.
  y | Return location for a y coordinate.
  height | Return location for a height.

## ◆ get_ltr_context() [1/2]

Glib::RefPtr< Pango::Context > Gtk::TextView::get_ltr_context | ( |  | ) |

Gets the `Pango::Context` that is used for rendering LTR directed text layouts.

The context may be replaced when CSS changes occur.

Since gtkmm 4.4:

Returns
  A `Pango::Context`.

## ◆ get_ltr_context() [2/2]

Glib::RefPtr< const Pango::Context > Gtk::TextView::get_ltr_context | ( |  | ) | const

Gets the `Pango::Context` that is used for rendering LTR directed text layouts.

The context may be replaced when CSS changes occur.

Since gtkmm 4.4:

Returns
  A `Pango::Context`.

## ◆ get_monospace()

bool Gtk::TextView::get_monospace | ( |  | ) | const

Gets whether the `Gtk::TextView` uses monospace styling.

Return: `true` if monospace fonts are desired

## ◆ get_overwrite()

bool Gtk::TextView::get_overwrite | ( |  | ) | const

Returns whether the `Gtk::TextView` is in overwrite mode or not.

Returns
  Whether text_view is in overwrite mode or not.

## ◆ get_pixels_above_lines()

int Gtk::TextView::get_pixels_above_lines | ( |  | ) | const

Gets the default number of pixels to put above paragraphs.

Adding this function with get_pixels_below_lines() is equal to the line space between each paragraph.

Returns
  Default number of pixels above paragraphs.

## ◆ get_pixels_below_lines()

int Gtk::TextView::get_pixels_below_lines | ( |  | ) | const

Gets the default number of pixels to put below paragraphs.

The line space is the sum of the value returned by this function and the value returned by get_pixels_above_lines().

Returns
  Default number of blank pixels below paragraphs.

## ◆ get_pixels_inside_wrap()

int Gtk::TextView::get_pixels_inside_wrap | ( |  | ) | const

Gets the default number of pixels to put between wrapped lines inside a paragraph.

Returns
  Default number of pixels of blank space between wrapped lines.

## ◆ get_right_margin()

int Gtk::TextView::get_right_margin | ( |  | ) | const

Gets the default right margin for text in text_view.

Tags in the buffer may override the default.

Returns
  Right margin in pixels.

## ◆ get_rtl_context() [1/2]

Glib::RefPtr< Pango::Context > Gtk::TextView::get_rtl_context | ( |  | ) |

Gets the `Pango::Context` that is used for rendering RTL directed text layouts.

The context may be replaced when CSS changes occur.

Since gtkmm 4.4:

Returns
  A `Pango::Context`.

## ◆ get_rtl_context() [2/2]

Glib::RefPtr< const Pango::Context > Gtk::TextView::get_rtl_context | ( |  | ) | const

Gets the `Pango::Context` that is used for rendering RTL directed text layouts.

The context may be replaced when CSS changes occur.

Since gtkmm 4.4:

Returns
  A `Pango::Context`.

## ◆ get_tabs()

Pango::TabArray Gtk::TextView::get_tabs | ( |  | ) | const

Gets the default tabs for text_view.

Tags in the buffer may override the defaults. The returned array will be empty if "standard" (8-space) tabs are used.

Returns
  Copy of default tab array, or an empty array if "standard" tabs are used.

## ◆ get_top_margin()

int Gtk::TextView::get_top_margin | ( |  | ) | const

Gets the top margin for text in the text_view.

Since gtkmm 3.20:

Returns
  Top margin in pixels.

## ◆ get_type()

static GType Gtk::TextView::get_type | ( |  | ) |
| static

Get the GType for this class, for use with the underlying GObject type system.

## ◆ get_visible_rect()

void Gtk::TextView::get_visible_rect | ( | Gdk::Rectangle& | visible_rect | ) | const

Fills visible_rect with the currently-visible region of the buffer, in buffer coordinates.

Convert to window coordinates with buffer_to_window_coords().

Parameters

  visible_rect | Rectangle to fill.

## ◆ get_wrap_mode()

WrapMode Gtk::TextView::get_wrap_mode | ( |  | ) | const

Gets the line wrapping for the view.

Returns
  The line wrap setting.

## ◆ gobj() [1/2]

GtkTextView * Gtk::TextView::gobj | ( |  | ) |
| inline

Provides access to the underlying C GObject.

## ◆ gobj() [2/2]

const GtkTextView * Gtk::TextView::gobj | ( |  | ) | const
| inline

Provides access to the underlying C GObject.

## ◆ im_context_filter_keypress()

bool Gtk::TextView::im_context_filter_keypress | ( | const Glib::RefPtr< Gdk::Event >& | event | ) |

Allow the `Gtk::TextView` input method to internally handle key press and release events.

If this function returns `true`, then no further processing should be done for this key event. See Gtk::IMContext::filter_keypress().

Note that you are expected to call this function from your handler when overriding key event handling. This is needed in the case when you need to insert your own key handling between the input method and the default key event handling of the `Gtk::TextView`.

[C example ellipted]

Parameters

  event | The key event.

Returns
  `true` if the input method handled the key event.

## ◆ move_mark_onscreen()

bool Gtk::TextView::move_mark_onscreen | ( | const Glib::RefPtr< TextBuffer::Mark >& | mark | ) |

Moves a mark within the buffer so that it's located within the currently-visible text area.

Parameters

  mark | A `Gtk::TextMark`.

Returns
  `true` if the mark moved (wasn’t already onscreen).

## ◆ move_overlay()

void Gtk::TextView::move_overlay | ( | Widget& | child,
|  | int | xpos,
|  | int | ypos
| ) |  |

Updates the position of a child.

See add_overlay().

Parameters

  child | A widget already added with add_overlay().
  xpos | New X position in buffer coordinates.
  ypos | New Y position in buffer coordinates.

## ◆ move_visually()

bool Gtk::TextView::move_visually | ( | TextBuffer::iterator& | iter,
|  | int | count
| ) |  |

Move the iterator a given number of characters visually, treating it as the strong cursor position.

If count is positive, then the new strong cursor position will be count positions to the right of the old cursor position. If count is negative then the new strong cursor position will be count positions to the left of the old cursor position.

In the presence of bi-directional text, the correspondence between logical and visual order will depend on the direction of the current run, and there may be jumps when the cursor is moved off of the end of a run.

Parameters

  iter | A `Gtk::TextIter`.
  count | Number of characters to move (negative moves left, positive moves right).

Returns
  `true` if iter moved and is not on the end iterator.

## ◆ on_insert_at_cursor()

virtual void Gtk::TextView::on_insert_at_cursor | ( | const Glib::ustring & | str | ) |
| protectedvirtual

This is a default handler for the signal signal_insert_at_cursor().

## ◆ on_set_anchor()

virtual void Gtk::TextView::on_set_anchor | ( |  | ) |
| protectedvirtual

This is a default handler for the signal signal_set_anchor().

## ◆ operator=() [1/2]

TextView& Gtk::TextView::operator= | ( | const TextView& |  | ) |
| delete

## ◆ operator=() [2/2]

TextView& Gtk::TextView::operator= | ( | TextView&& | src | ) |
| noexcept

## ◆ place_cursor_onscreen()

bool Gtk::TextView::place_cursor_onscreen | ( |  | ) |

Moves the cursor to the currently visible region of the buffer.

Returns
  `true` if the cursor had to be moved.

## ◆ property_accepts_tab() [1/2]

Glib::PropertyProxy< bool > Gtk::TextView::property_accepts_tab | ( |  | ) |

Whether Tab will result in a tab character being entered.

Default value: `true`

Returns
  A PropertyProxy that allows you to get or set the value of the property, or receive notification when the value of the property changes.

## ◆ property_accepts_tab() [2/2]

Glib::PropertyProxy_ReadOnly< bool > Gtk::TextView::property_accepts_tab | ( |  | ) | const

Whether Tab will result in a tab character being entered.

Default value: `true`

Returns
  A PropertyProxy_ReadOnly that allows you to get the value of the property, or receive notification when the value of the property changes.

## ◆ property_bottom_margin() [1/2]

Glib::PropertyProxy< int > Gtk::TextView::property_bottom_margin | ( |  | ) |

The bottom margin for text in the text view.

Note that this property is confusingly named. In CSS terms, the value set here is padding, and it is applied in addition to the padding from the theme.

Don't confuse this property with Gtk::Widget::property_margin_bottom().

Since gtkmm 2.30:

Default value: 0

Returns
  A PropertyProxy that allows you to get or set the value of the property, or receive notification when the value of the property changes.

## ◆ property_bottom_margin() [2/2]

Glib::PropertyProxy_ReadOnly< int > Gtk::TextView::property_bottom_margin | ( |  | ) | const

The bottom margin for text in the text view.

Note that this property is confusingly named. In CSS terms, the value set here is padding, and it is applied in addition to the padding from the theme.

Don't confuse this property with Gtk::Widget::property_margin_bottom().

Since gtkmm 2.30:

Default value: 0

Returns
  A PropertyProxy_ReadOnly that allows you to get the value of the property, or receive notification when the value of the property changes.

## ◆ property_buffer() [1/2]

Glib::PropertyProxy< Glib::RefPtr< TextBuffer > > Gtk::TextView::property_buffer | ( |  | ) |

The buffer which is displayed.

Returns
  A PropertyProxy that allows you to get or set the value of the property, or receive notification when the value of the property changes.

## ◆ property_buffer() [2/2]

Glib::PropertyProxy_ReadOnly< Glib::RefPtr< TextBuffer > > Gtk::TextView::property_buffer | ( |  | ) | const

The buffer which is displayed.

Returns
  A PropertyProxy_ReadOnly that allows you to get the value of the property, or receive notification when the value of the property changes.

## ◆ property_cursor_visible() [1/2]

Glib::PropertyProxy< bool > Gtk::TextView::property_cursor_visible | ( |  | ) |

If the insertion cursor is shown.

Default value: `true`

Returns
  A PropertyProxy that allows you to get or set the value of the property, or receive notification when the value of the property changes.

## ◆ property_cursor_visible() [2/2]

Glib::PropertyProxy_ReadOnly< bool > Gtk::TextView::property_cursor_visible | ( |  | ) | const

If the insertion cursor is shown.

Default value: `true`

Returns
  A PropertyProxy_ReadOnly that allows you to get the value of the property, or receive notification when the value of the property changes.

## ◆ property_editable() [1/2]

Glib::PropertyProxy< bool > Gtk::TextView::property_editable | ( |  | ) |

Whether the text can be modified by the user.

Default value: `true`

Returns
  A PropertyProxy that allows you to get or set the value of the property, or receive notification when the value of the property changes.

## ◆ property_editable() [2/2]

Glib::PropertyProxy_ReadOnly< bool > Gtk::TextView::property_editable | ( |  | ) | const

Whether the text can be modified by the user.

Default value: `true`

Returns
  A PropertyProxy_ReadOnly that allows you to get the value of the property, or receive notification when the value of the property changes.

## ◆ property_extra_menu() [1/2]

Glib::PropertyProxy< Glib::RefPtr< Gio::MenuModel > > Gtk::TextView::property_extra_menu | ( |  | ) |

A menu model whose contents will be appended to the context menu.

Returns
  A PropertyProxy that allows you to get or set the value of the property, or receive notification when the value of the property changes.

## ◆ property_extra_menu() [2/2]

Glib::PropertyProxy_ReadOnly< Glib::RefPtr< Gio::MenuModel > > Gtk::TextView::property_extra_menu | ( |  | ) | const

A menu model whose contents will be appended to the context menu.

Returns
  A PropertyProxy_ReadOnly that allows you to get the value of the property, or receive notification when the value of the property changes.

## ◆ property_im_module() [1/2]

Glib::PropertyProxy< Glib::ustring > Gtk::TextView::property_im_module | ( |  | ) |

Which IM (input method) module should be used for this text_view.

See Gtk::IMMulticontext.

Setting this to a non-`nullptr` value overrides the system-wide IM module setting. See the GtkSettings Gtk::Settings::property_gtk_im_module() property.

Default value: ""

Returns
  A PropertyProxy that allows you to get or set the value of the property, or receive notification when the value of the property changes.

## ◆ property_im_module() [2/2]

Glib::PropertyProxy_ReadOnly< Glib::ustring > Gtk::TextView::property_im_module | ( |  | ) | const

Which IM (input method) module should be used for this text_view.

See Gtk::IMMulticontext.

Setting this to a non-`nullptr` value overrides the system-wide IM module setting. See the GtkSettings Gtk::Settings::property_gtk_im_module() property.

Default value: ""

Returns
  A PropertyProxy_ReadOnly that allows you to get the value of the property, or receive notification when the value of the property changes.

## ◆ property_indent() [1/2]

Glib::PropertyProxy< int > Gtk::TextView::property_indent | ( |  | ) |

Amount to indent the paragraph, in pixels.

Default value: 0

Returns
  A PropertyProxy that allows you to get or set the value of the property, or receive notification when the value of the property changes.

## ◆ property_indent() [2/2]

Glib::PropertyProxy_ReadOnly< int > Gtk::TextView::property_indent | ( |  | ) | const

Amount to indent the paragraph, in pixels.

Default value: 0

Returns
  A PropertyProxy_ReadOnly that allows you to get the value of the property, or receive notification when the value of the property changes.

## ◆ property_input_hints() [1/2]

Glib::PropertyProxy< InputHints > Gtk::TextView::property_input_hints | ( |  | ) |

Additional hints (beyond property_input_purpose()) that allow input methods to fine-tune their behaviour.

Default value: Gtk::InputHints::NONE

Returns
  A PropertyProxy that allows you to get or set the value of the property, or receive notification when the value of the property changes.

## ◆ property_input_hints() [2/2]

Glib::PropertyProxy_ReadOnly< InputHints > Gtk::TextView::property_input_hints | ( |  | ) | const

Additional hints (beyond property_input_purpose()) that allow input methods to fine-tune their behaviour.

Default value: Gtk::InputHints::NONE

Returns
  A PropertyProxy_ReadOnly that allows you to get the value of the property, or receive notification when the value of the property changes.

## ◆ property_input_purpose() [1/2]

Glib::PropertyProxy< InputPurpose > Gtk::TextView::property_input_purpose | ( |  | ) |

The purpose of this text field.

This property can be used by on-screen keyboards and other input methods to adjust their behaviour.

Default value: Gtk::InputPurpose::FREE_FORM

Returns
  A PropertyProxy that allows you to get or set the value of the property, or receive notification when the value of the property changes.

## ◆ property_input_purpose() [2/2]

Glib::PropertyProxy_ReadOnly< InputPurpose > Gtk::TextView::property_input_purpose | ( |  | ) | const

The purpose of this text field.

This property can be used by on-screen keyboards and other input methods to adjust their behaviour.

Default value: Gtk::InputPurpose::FREE_FORM

Returns
  A PropertyProxy_ReadOnly that allows you to get the value of the property, or receive notification when the value of the property changes.

## ◆ property_justification() [1/2]

Glib::PropertyProxy< Justification > Gtk::TextView::property_justification | ( |  | ) |

Left, right, or center justification.

Default value: Gtk::Justification::LEFT

Returns
  A PropertyProxy that allows you to get or set the value of the property, or receive notification when the value of the property changes.

## ◆ property_justification() [2/2]

Glib::PropertyProxy_ReadOnly< Justification > Gtk::TextView::property_justification | ( |  | ) | const

Left, right, or center justification.

Default value: Gtk::Justification::LEFT

Returns
  A PropertyProxy_ReadOnly that allows you to get the value of the property, or receive notification when the value of the property changes.

## ◆ property_left_margin() [1/2]

Glib::PropertyProxy< int > Gtk::TextView::property_left_margin | ( |  | ) |

The default left margin for text in the text view.

Tags in the buffer may override the default.

Note that this property is confusingly named. In CSS terms, the value set here is padding, and it is applied in addition to the padding from the theme.

Default value: 0

Returns
  A PropertyProxy that allows you to get or set the value of the property, or receive notification when the value of the property changes.

## ◆ property_left_margin() [2/2]

Glib::PropertyProxy_ReadOnly< int > Gtk::TextView::property_left_margin | ( |  | ) | const

The default left margin for text in the text view.

Tags in the buffer may override the default.

Note that this property is confusingly named. In CSS terms, the value set here is padding, and it is applied in addition to the padding from the theme.

Default value: 0

Returns
  A PropertyProxy_ReadOnly that allows you to get the value of the property, or receive notification when the value of the property changes.

## ◆ property_monospace() [1/2]

Glib::PropertyProxy< bool > Gtk::TextView::property_monospace | ( |  | ) |

Whether text should be displayed in a monospace font.

If `true`, set the .monospace style class on the text view to indicate that a monospace font is desired.

Default value: `false`

Returns
  A PropertyProxy that allows you to get or set the value of the property, or receive notification when the value of the property changes.

## ◆ property_monospace() [2/2]

Glib::PropertyProxy_ReadOnly< bool > Gtk::TextView::property_monospace | ( |  | ) | const

Whether text should be displayed in a monospace font.

If `true`, set the .monospace style class on the text view to indicate that a monospace font is desired.

Default value: `false`

Returns
  A PropertyProxy_ReadOnly that allows you to get the value of the property, or receive notification when the value of the property changes.

## ◆ property_overwrite() [1/2]

Glib::PropertyProxy< bool > Gtk::TextView::property_overwrite | ( |  | ) |

Whether entered text overwrites existing contents.

Default value: `false`

Returns
  A PropertyProxy that allows you to get or set the value of the property, or receive notification when the value of the property changes.

## ◆ property_overwrite() [2/2]

Glib::PropertyProxy_ReadOnly< bool > Gtk::TextView::property_overwrite | ( |  | ) | const

Whether entered text overwrites existing contents.

Default value: `false`

Returns
  A PropertyProxy_ReadOnly that allows you to get the value of the property, or receive notification when the value of the property changes.

## ◆ property_pixels_above_lines() [1/2]

Glib::PropertyProxy< int > Gtk::TextView::property_pixels_above_lines | ( |  | ) |

Pixels of blank space above paragraphs.

Default value: 0

Returns
  A PropertyProxy that allows you to get or set the value of the property, or receive notification when the value of the property changes.

## ◆ property_pixels_above_lines() [2/2]

Glib::PropertyProxy_ReadOnly< int > Gtk::TextView::property_pixels_above_lines | ( |  | ) | const

Pixels of blank space above paragraphs.

Default value: 0

Returns
  A PropertyProxy_ReadOnly that allows you to get the value of the property, or receive notification when the value of the property changes.

## ◆ property_pixels_below_lines() [1/2]

Glib::PropertyProxy< int > Gtk::TextView::property_pixels_below_lines | ( |  | ) |

Pixels of blank space below paragraphs.

Default value: 0

Returns
  A PropertyProxy that allows you to get or set the value of the property, or receive notification when the value of the property changes.

## ◆ property_pixels_below_lines() [2/2]

Glib::PropertyProxy_ReadOnly< int > Gtk::TextView::property_pixels_below_lines | ( |  | ) | const

Pixels of blank space below paragraphs.

Default value: 0

Returns
  A PropertyProxy_ReadOnly that allows you to get the value of the property, or receive notification when the value of the property changes.

## ◆ property_pixels_inside_wrap() [1/2]

Glib::PropertyProxy< int > Gtk::TextView::property_pixels_inside_wrap | ( |  | ) |

Pixels of blank space between wrapped lines in a paragraph.

Default value: 0

Returns
  A PropertyProxy that allows you to get or set the value of the property, or receive notification when the value of the property changes.

## ◆ property_pixels_inside_wrap() [2/2]

Glib::PropertyProxy_ReadOnly< int > Gtk::TextView::property_pixels_inside_wrap | ( |  | ) | const

Pixels of blank space between wrapped lines in a paragraph.

Default value: 0

Returns
  A PropertyProxy_ReadOnly that allows you to get the value of the property, or receive notification when the value of the property changes.

## ◆ property_right_margin() [1/2]

Glib::PropertyProxy< int > Gtk::TextView::property_right_margin | ( |  | ) |

The default right margin for text in the text view.

Tags in the buffer may override the default.

Note that this property is confusingly named. In CSS terms, the value set here is padding, and it is applied in addition to the padding from the theme.

Default value: 0

Returns
  A PropertyProxy that allows you to get or set the value of the property, or receive notification when the value of the property changes.

## ◆ property_right_margin() [2/2]

Glib::PropertyProxy_ReadOnly< int > Gtk::TextView::property_right_margin | ( |  | ) | const

The default right margin for text in the text view.

Tags in the buffer may override the default.

Note that this property is confusingly named. In CSS terms, the value set here is padding, and it is applied in addition to the padding from the theme.

Default value: 0

Returns
  A PropertyProxy_ReadOnly that allows you to get the value of the property, or receive notification when the value of the property changes.

## ◆ property_tabs() [1/2]

Glib::PropertyProxy< Pango::TabArray > Gtk::TextView::property_tabs | ( |  | ) |

Custom tabs for this text.

Returns
  A PropertyProxy that allows you to get or set the value of the property, or receive notification when the value of the property changes.

## ◆ property_tabs() [2/2]

Glib::PropertyProxy_ReadOnly< Pango::TabArray > Gtk::TextView::property_tabs | ( |  | ) | const

Custom tabs for this text.

Returns
  A PropertyProxy_ReadOnly that allows you to get the value of the property, or receive notification when the value of the property changes.

## ◆ property_top_margin() [1/2]

Glib::PropertyProxy< int > Gtk::TextView::property_top_margin | ( |  | ) |

The top margin for text in the text view.

Note that this property is confusingly named. In CSS terms, the value set here is padding, and it is applied in addition to the padding from the theme.

Don't confuse this property with Gtk::Widget::property_margin_top().

Since gtkmm 2.30:

Default value: 0

Returns
  A PropertyProxy that allows you to get or set the value of the property, or receive notification when the value of the property changes.

## ◆ property_top_margin() [2/2]

Glib::PropertyProxy_ReadOnly< int > Gtk::TextView::property_top_margin | ( |  | ) | const

The top margin for text in the text view.

Note that this property is confusingly named. In CSS terms, the value set here is padding, and it is applied in addition to the padding from the theme.

Don't confuse this property with Gtk::Widget::property_margin_top().

Since gtkmm 2.30:

Default value: 0

Returns
  A PropertyProxy_ReadOnly that allows you to get the value of the property, or receive notification when the value of the property changes.

## ◆ property_wrap_mode() [1/2]

Glib::PropertyProxy< WrapMode > Gtk::TextView::property_wrap_mode | ( |  | ) |

Whether to wrap lines never, at word boundaries, or at character boundaries.

Default value: Gtk::WrapMode::NONE

Returns
  A PropertyProxy that allows you to get or set the value of the property, or receive notification when the value of the property changes.

## ◆ property_wrap_mode() [2/2]

Glib::PropertyProxy_ReadOnly< WrapMode > Gtk::TextView::property_wrap_mode | ( |  | ) | const

Whether to wrap lines never, at word boundaries, or at character boundaries.

Default value: Gtk::WrapMode::NONE

Returns
  A PropertyProxy_ReadOnly that allows you to get the value of the property, or receive notification when the value of the property changes.

## ◆ remove()

void Gtk::TextView::remove | ( | Widget& | child | ) |

Removes a child widget from text_view.

Parameters

  child | The child to remove.

## ◆ reset_cursor_blink()

void Gtk::TextView::reset_cursor_blink | ( |  | ) |

Ensures that the cursor is shown.

This also resets the time that it will stay blinking (or visible, in case blinking is disabled).

This function should be called in response to user input (e.g. from derived classes that override the textview's event handlers).

## ◆ reset_im_context()

void Gtk::TextView::reset_im_context | ( |  | ) |

Reset the input method context of the text view if needed.

This can be necessary in the case where modifying the buffer would confuse on-going input method behavior.

## ◆ scroll_to() [1/4]

void Gtk::TextView::scroll_to | ( | const Glib::RefPtr< TextBuffer::Mark >& | mark,
|  | double | within_margin,
|  | double | xalign,
|  | double | yalign
| ) |  |

Scrolls the TextView so that mark is on the screen, in the position indicated by xalign and yalign, possibly not scrolling at all.

The effective screen for purposes of this function is reduced by a margin of size within_margin.

Parameters

  mark | An mark pointing to the position that should be made visible by scrolling.
  within_margin | margin as a [0.0,0.5] fraction of screen size.
  xalign | horizontal alignment of mark within visible area. An alignment of 0.0 indicates left, 1.0 indicates right, 0.5 means center.
  yalign | vertical alignment of mark within visible area. An alignment of 0.0 indicates top, 1.0 indicates bottom, 0.5 means center.

## ◆ scroll_to() [2/4]

void Gtk::TextView::scroll_to | ( | const Glib::RefPtr< TextBuffer::Mark >& | mark,
|  | double | within_margin = `0`
| ) |  |

Scrolls text_view so that mark is on the screen, by scrolling the minimal distance to get the mark onscreen, possibly not scrolling at all.

The effective screen for purposes of this function is reduced by a margin of size within_margin.

Parameters

  mark | An mark pointing to the position that should be made visible by scrolling.
  within_margin | margin as a [0.0,0.5] fraction of screen size.

## ◆ scroll_to() [3/4]

bool Gtk::TextView::scroll_to | ( | TextBuffer::iterator& | iter,
|  | double | within_margin,
|  | double | xalign,
|  | double | yalign
| ) |  |

Scrolls the TextView so that iter is on the screen, in the position indicated by xalign and yalign, possibly not scrolling at all.

The effective screen for purposes of this function is reduced by a margin of size within_margin.

Note
  This function uses the currently-computed height of the lines in the text buffer. Note that line heights are computed in an idle handler; so this function may not have the desired effect if it's called before the height computations. To avoid oddness, consider using gtk_text_view_scroll_to_mark() which saves a point to be scrolled to after line validation.

Parameters

  iter | An iterator pointing to the position that should be made visible by scrolling.
  within_margin | margin as a [0.0,0.5] fraction of screen size.
  xalign | horizontal alignment of mark within visible area. An alignment of 0.0 indicates left, 1.0 indicates right, 0.5 means center.
  yalign | vertical alignment of mark within visible area. An alignment of 0.0 indicates top, 1.0 indicates bottom, 0.5 means center.

Returns
  true if scrolling occurred.

## ◆ scroll_to() [4/4]

bool Gtk::TextView::scroll_to | ( | TextBuffer::iterator& | iter,
|  | double | within_margin = `0`
| ) |  |

Scrolls the TextView so that iter is on the screen, by scrolling the minimal distance to get the mark onscreen, possibly not scrolling at all.

The effective screen for purposes of this function is reduced by a margin of size within_margin.

Note
  This function uses the currently-computed height of the lines in the text buffer. Note that line heights are computed in an idle handler; so this function may not have the desired effect if it's called before the height computations. To avoid oddness, consider using gtk_text_view_scroll_to_mark() which saves a point to be scrolled to after line validation.

Parameters

  iter | An iterator pointing to the position that should be made visible by scrolling.
  within_margin | margin as a [0.0,0.5] fraction of screen size.

Returns
  true if scrolling occurred.

## ◆ set_accepts_tab()

void Gtk::TextView::set_accepts_tab | ( | bool | accepts_tab = `true` | ) |

Sets the behavior of the text widget when the `Tab` key is pressed.

If accepts_tab is `true`, a tab character is inserted. If accepts_tab is `false` the keyboard focus is moved to the next widget in the focus chain.

Parameters

  accepts_tab | `true` if pressing the Tab key should insert a tab character, `false`, if pressing the Tab key should move the keyboard focus.

## ◆ set_bottom_margin()

void Gtk::TextView::set_bottom_margin | ( | int | bottom_margin | ) |

Sets the bottom margin for text in text_view.

Note that this function is confusingly named. In CSS terms, the value set here is padding.

Since gtkmm 3.20:

Parameters

  bottom_margin | Bottom margin in pixels.

## ◆ set_buffer()

void Gtk::TextView::set_buffer | ( | const Glib::RefPtr< TextBuffer >& | buffer | ) |

Sets buffer as the buffer being displayed by text_view.

The previous buffer displayed by the text view is unreferenced, and a reference is added to buffer. If you owned a reference to buffer before passing it to this function, you must remove that reference yourself; `Gtk::TextView` will not “adopt” it.

Parameters

  buffer | A `Gtk::TextBuffer`.

## ◆ set_cursor_visible()

void Gtk::TextView::set_cursor_visible | ( | bool | setting = `true` | ) |

Toggles whether the insertion point should be displayed.

A buffer with no editable text probably shouldn’t have a visible cursor, so you may want to turn the cursor off.

Note that this property may be overridden by the Gtk::GtkSettings::property_gtk_keynav_use_caret() setting.

Parameters

  setting | Whether to show the insertion cursor.

## ◆ set_editable()

void Gtk::TextView::set_editable | ( | bool | setting = `true` | ) |

Sets the default editability of the `Gtk::TextView`.

You can override this default setting with tags in the buffer, using the “editable” attribute of tags.

Parameters

  setting | Whether it’s editable.

## ◆ set_extra_menu()

void Gtk::TextView::set_extra_menu | ( | const Glib::RefPtr< Gio::MenuModel > & | model | ) |

Sets a menu model to add when constructing the context menu for text_view.

You can pass `nullptr` to remove a previously set extra menu.

Parameters

  model | A `Gio::MenuModel`.

## ◆ set_gutter()

void Gtk::TextView::set_gutter | ( | TextWindowType | win,
|  | Widget& | widget
| ) |  |

Places widget into the gutter specified by win.

win must be one of Gtk::TextWindowType::LEFT, Gtk::TextWindowType::RIGHT, Gtk::TextWindowType::TOP, or Gtk::TextWindowType::BOTTOM.

Parameters

  win | A `Gtk::TextWindowType`.
  widget | A `Gtk::Widget`.

## ◆ set_indent()

void Gtk::TextView::set_indent | ( | int | indent | ) |

Sets the default indentation for paragraphs in text_view.

Tags in the buffer may override the default.

Parameters

  indent | Indentation in pixels.

## ◆ set_input_hints()

void Gtk::TextView::set_input_hints | ( | InputHints | hints | ) |

Sets the `input-hints` of the `Gtk::TextView`.

The `input-hints` allow input methods to fine-tune their behaviour.

Parameters

  hints | The hints.

## ◆ set_input_purpose()

void Gtk::TextView::set_input_purpose | ( | InputPurpose | purpose | ) |

Sets the `input-purpose` of the `Gtk::TextView`.

The `input-purpose` can be used by on-screen keyboards and other input methods to adjust their behaviour.

Parameters

  purpose | The purpose.

## ◆ set_justification()

void Gtk::TextView::set_justification | ( | Justification | justification | ) |

Sets the default justification of text in text_view.

Tags in the view’s buffer may override the default.

Parameters

  justification | Justification.

## ◆ set_left_margin()

void Gtk::TextView::set_left_margin | ( | int | left_margin | ) |

Sets the default left margin for text in text_view.

Tags in the buffer may override the default.

Note that this function is confusingly named. In CSS terms, the value set here is padding.

Parameters

  left_margin | Left margin in pixels.

## ◆ set_monospace()

void Gtk::TextView::set_monospace | ( | bool | monospace = `true` | ) |

Sets whether the `Gtk::TextView` should display text in monospace styling.

Parameters

  monospace | `true` to request monospace styling.

## ◆ set_overwrite()

void Gtk::TextView::set_overwrite | ( | bool | overwrite = `true` | ) |

Changes the `Gtk::TextView` overwrite mode.

Parameters

  overwrite | `true` to turn on overwrite mode, `false` to turn it off.

## ◆ set_pixels_above_lines()

void Gtk::TextView::set_pixels_above_lines | ( | int | pixels_above_lines | ) |

Sets the default number of blank pixels above paragraphs in text_view.

Tags in the buffer for text_view may override the defaults.

Parameters

  pixels_above_lines | Pixels above paragraphs.

## ◆ set_pixels_below_lines()

void Gtk::TextView::set_pixels_below_lines | ( | int | pixels_below_lines | ) |

Sets the default number of pixels of blank space to put below paragraphs in text_view.

May be overridden by tags applied to text_view’s buffer.

Parameters

  pixels_below_lines | Pixels below paragraphs.

## ◆ set_pixels_inside_wrap()

void Gtk::TextView::set_pixels_inside_wrap | ( | int | pixels_inside_wrap | ) |

Sets the default number of pixels of blank space to leave between display/wrapped lines within a paragraph.

May be overridden by tags in text_view’s buffer.

Parameters

  pixels_inside_wrap | Default number of pixels between wrapped lines.

## ◆ set_right_margin()

void Gtk::TextView::set_right_margin | ( | int | right_margin | ) |

Sets the default right margin for text in the text view.

Tags in the buffer may override the default.

Note that this function is confusingly named. In CSS terms, the value set here is padding.

Parameters

  right_margin | Right margin in pixels.

## ◆ set_tabs()

void Gtk::TextView::set_tabs | ( | Pango::TabArray & | tabs | ) |

Sets the default tab stops for paragraphs in text_view.

Tags in the buffer may override the default.

Parameters

  tabs | Tabs as a `Pango::TabArray`.

## ◆ set_top_margin()

void Gtk::TextView::set_top_margin | ( | int | top_margin | ) |

Sets the top margin for text in text_view.

Note that this function is confusingly named. In CSS terms, the value set here is padding.

Since gtkmm 3.20:

Parameters

  top_margin | Top margin in pixels.

## ◆ set_wrap_mode()

void Gtk::TextView::set_wrap_mode | ( | WrapMode | wrap_mode | ) |

Sets the line wrapping for the view.

Parameters

  wrap_mode | A `Gtk::WrapMode`.

## ◆ signal_insert_at_cursor()

Glib::SignalProxy< void(const Glib::ustring &)> Gtk::TextView::signal_insert_at_cursor | ( |  | ) |

Slot Prototype:
  `void on_my_insert_at_cursor(const Glib::ustring& str)`

Flags: Run Last, Action

Gets emitted when the user initiates the insertion of a fixed string at the cursor.

The signal_insert_at_cursor() signal is a keybinding signal.

This signal has no default bindings.

Parameters

  str | The string to insert.

## ◆ signal_set_anchor()

Glib::SignalProxy< void()> Gtk::TextView::signal_set_anchor | ( |  | ) |

Slot Prototype:
  `void on_my_set_anchor()`

Flags: Run Last, Action

Gets emitted when the user initiates settings the "anchor" mark.

The signal_set_anchor() signal is a keybinding signal which gets emitted when the user initiates setting the "anchor" mark. The "anchor" mark gets placed at the same position as the "insert" mark.

This signal has no default bindings.

## ◆ starts_display_line()

bool Gtk::TextView::starts_display_line | ( | const TextBuffer::iterator& | iter | ) |

Determines whether iter is at the start of a display line.

See forward_display_line() for an explanation of display lines vs. paragraphs.

Parameters

  iter | A `Gtk::TextIter`.

Returns
  `true` if iter begins a wrapped line.

## ◆ unset_gutter()

void Gtk::TextView::unset_gutter | ( | TextWindowType | win | ) |

Removes a widget from the gutter specified by win.

win must be one of Gtk::TextWindowType::LEFT, Gtk::TextWindowType::RIGHT, Gtk::TextWindowType::TOP, or Gtk::TextWindowType::BOTTOM.

Parameters

  win | A Gtk::TextWindowType.

## ◆ window_to_buffer_coords()

void Gtk::TextView::window_to_buffer_coords | ( | TextWindowType | win,
|  | int | window_x,
|  | int | window_y,
|  | int & | buffer_x,
|  | int & | buffer_y
| ) |  | const

Converts coordinates on the window identified by win to buffer coordinates.

Parameters

  win | A `Gtk::TextWindowType`.
  window_x | Window x coordinate.
  window_y | Window y coordinate.
  buffer_x | Buffer x coordinate return location.
  buffer_y | Buffer y coordinate return location.

## Friends And Related Function Documentation

## ◆ wrap()

Gtk::TextView* wrap | ( | GtkTextView * | object,
|  | bool | take_copy = `false`
| ) |  |
| related

A Glib::wrap() method for this object.

Parameters

  object | The C instance.
  take_copy | False if the result should take ownership of the C instance. True if it should take a new copy or ref.

Returns
  A C++ instance that wraps this C instance.