diff options
author | Camil Staps | 2019-10-24 10:21:16 +0200 |
---|---|---|
committer | Camil Staps | 2019-10-24 10:21:16 +0200 |
commit | 5756df53b06d35707d2af742f71cb81a40c4a032 (patch) | |
tree | 98208e4bd37d037641bd2b6515341c12cc12bfbd /src/Gtk/Widgets.icl | |
parent | Add GtkJustification for columns of GtkSheet (diff) |
Add setMarkup for GtkTextBuffer
Diffstat (limited to 'src/Gtk/Widgets.icl')
-rw-r--r-- | src/Gtk/Widgets.icl | 23 |
1 files changed, 18 insertions, 5 deletions
diff --git a/src/Gtk/Widgets.icl b/src/Gtk/Widgets.icl index adb655e..b7e4798 100644 --- a/src/Gtk/Widgets.icl +++ b/src/Gtk/Widgets.icl @@ -200,11 +200,24 @@ stopSpinner spinner = toState (gtk_spinner_stop spinner) >>| pure spinner :: GtkTextBuffer :== Pointer -insertAtCursor :: !String !GtkTextBuffer -> GtkM () -insertAtCursor s buffer = toState (gtk_text_buffer_insert_at_cursor buffer s (size s)) - -setText :: !String !GtkTextBuffer -> GtkM () -setText s buffer = toState (gtk_text_buffer_set_text buffer s (size s)) +setText :: !String !GtkTextBuffer -> GtkM GtkTextBuffer +setText s buffer = + toState (gtk_text_buffer_set_text buffer s (size s)) >>| + pure buffer + +setMarkup :: !String !GtkTextBuffer -> GtkM GtkTextBuffer +setMarkup s buffer = + toStateR (gtk_text_buffer_get_start_iter buffer) >>= \start -> + toStateR (gtk_text_buffer_get_end_iter buffer) >>= \end -> + toState (gtk_text_buffer_delete buffer start end) >>| + toStateR (gtk_text_buffer_get_start_iter buffer) >>= \start -> + toState (gtk_text_buffer_insert_markup buffer start s) >>| + pure buffer + +insertAtCursor :: !String !GtkTextBuffer -> GtkM GtkTextBuffer +insertAtCursor s buffer = + toState (gtk_text_buffer_insert_at_cursor buffer s (size s)) >>| + pure buffer :: GtkTextView :== Pointer |