Print GtkTextView Text

How can I print (e.g. on a shortcut) text in a GtkTextView? For GtkLabel and GtkEntry, there are gtk_label_get_text () and gtk_entry_get_text (), but for GtkTextView?

+3
source share
2 answers

You can:

GtkTextIter start, end;
GtkTextBuffer *buffer = gtk_text_view_get_buffer (text_view);
gchar *text;

gtk_text_buffer_get_bounds (buffer, &start, &end);
text = gtk_text_buffer_get_text (buffer, &start, &end, FALSE);

Do not forget g_free (text)when you no longer need.

+3
source

Based on a double answer, for quick copy / paste:

char *get_text_of_textview(GtkWidget *text_view) {
    GtkTextIter start, end;
    GtkTextBuffer *buffer = gtk_text_view_get_buffer((GtkTextView *)text_view);
    gchar *text;
    gtk_text_buffer_get_bounds(buffer, &start, &end);
    text = gtk_text_buffer_get_text(buffer, &start, &end, FALSE);
    return text;
}
+1
source

Source: https://habr.com/ru/post/1745453/


All Articles