From 43cd5030ab55966f71154551406b3edf08d1fb5e Mon Sep 17 00:00:00 2001 From: Camil Staps Date: Mon, 25 Nov 2019 15:00:48 +0100 Subject: Add scrollToCell for GtkSheet --- src/Gtk/Widgets/Sheet.icl | 11 +++++++++++ 1 file changed, 11 insertions(+) (limited to 'src/Gtk/Widgets/Sheet.icl') diff --git a/src/Gtk/Widgets/Sheet.icl b/src/Gtk/Widgets/Sheet.icl index c28816f..a1a8c1f 100644 --- a/src/Gtk/Widgets/Sheet.icl +++ b/src/Gtk/Widgets/Sheet.icl @@ -102,6 +102,17 @@ setActiveCell row col sheet=:(GtkSheet s) = toState (gtk_sheet_set_active_cell s row col) >>| pure sheet +scrollToCell :: !GtkSheetScrollMode !Int !Int !GtkSheet -> GtkM GtkSheet +scrollToCell scroll_mode row col sheet=:(GtkSheet s) = + toState (gtk_sheet_moveto s row col row_align col_align) >>| + pure sheet +where + (row_align,col_align) = case scroll_mode of + CellInTopLeft -> (0,0) + CellInTopRight -> (0,1) + CellInBottomLeft -> (1,0) + CellInBottomRight -> (1,1) + getEntry :: !GtkSheet -> GtkM GtkEntry getEntry (GtkSheet s) = toStateR (gtk_sheet_get_entry s) >>= \e -> -- cgit v1.2.3