From 2eae627be1d6d5c622fe41422b301800a3190778 Mon Sep 17 00:00:00 2001 From: Camil Staps Date: Wed, 23 Oct 2019 16:46:10 +0200 Subject: Add setCSSClassForRange for GtkSheet --- src/Gtk/Widgets/Sheet/Internal.icl | 18 ++++++++++++++++++ 1 file changed, 18 insertions(+) (limited to 'src/Gtk/Widgets/Sheet/Internal.icl') diff --git a/src/Gtk/Widgets/Sheet/Internal.icl b/src/Gtk/Widgets/Sheet/Internal.icl index 69459b6..060d6ab 100644 --- a/src/Gtk/Widgets/Sheet/Internal.icl +++ b/src/Gtk/Widgets/Sheet/Internal.icl @@ -1,5 +1,7 @@ implementation module Gtk.Widgets.Sheet.Internal +import StdEnv + import System._Pointer gtk_sheet_new :: !Int !Int !String !.a -> (!Pointer, !.a) @@ -123,3 +125,19 @@ where set _ _ _ _ _ = code { ccall gtk_sheet_set_cell_text "pIIs:V:A" } + +gtk_sheet_range_set_css_class :: !Pointer !(!Int,!Int) !(!Int,!Int) !String !.a -> .a +gtk_sheet_range_set_css_class sheet (r1,c1) (r2,c2) cls env + # range = IF_INT_64_OR_32 {#c1<<32+r1,c2<<32+r2} {#r1,c1,r2,c2} + = set sheet (get_ptr range + IF_INT_64_OR_32 24 16) (packString cls) env +where + set :: !Pointer !Pointer !String !.a -> .a + set _ _ _ _ = code { + ccall gtk_sheet_range_set_css_class "pps:V:A" + } + + get_ptr :: !{#Int} -> Pointer + get_ptr _ = code { + push_a_b 0 + pop_a 1 + } -- cgit v1.2.3