summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorCamil Staps2019-10-30 19:46:22 +0100
committerCamil Staps2019-10-30 19:46:22 +0100
commit0d02a6b850e51f1e6e6efa438901a816b62e009d (patch)
treedb58388122509960991cb5eb22c2cf2afd180e76
parentAdd GtkEntryCompletion (diff)
Add getEntry for GtkSheet
-rw-r--r--src/Gtk/Widgets/Sheet.dcl5
-rw-r--r--src/Gtk/Widgets/Sheet.icl5
-rw-r--r--src/Gtk/Widgets/Sheet/Internal.dcl6
-rw-r--r--src/Gtk/Widgets/Sheet/Internal.icl5
4 files changed, 20 insertions, 1 deletions
diff --git a/src/Gtk/Widgets/Sheet.dcl b/src/Gtk/Widgets/Sheet.dcl
index a3bc2ad..2541242 100644
--- a/src/Gtk/Widgets/Sheet.dcl
+++ b/src/Gtk/Widgets/Sheet.dcl
@@ -15,7 +15,8 @@ from Gtk.Tune import class tune
from Gtk.Types import :: GtkCSSClass, :: GtkJustification
from Gtk.Widgets import
class gtkWidget, :: GtkWidget,
- class gtkContainer, :: GtkContainer
+ class gtkContainer, :: GtkContainer,
+ :: GtkEntry
import Gtk.Widgets.Sheet.Signal
@@ -46,6 +47,8 @@ isRowVisible :: !Int !GtkSheet -> GtkM Bool
getActiveCell :: !GtkSheet -> GtkM (Maybe (Int,Int))
setActiveCell :: !Int !Int !GtkSheet -> GtkM GtkSheet
+getEntry :: !GtkSheet -> GtkM GtkEntry
+
:: GtkSheetColumnResizability
= ColumnsResizable
| ColumnsFixedSize
diff --git a/src/Gtk/Widgets/Sheet.icl b/src/Gtk/Widgets/Sheet.icl
index 521e3ee..36d0b4d 100644
--- a/src/Gtk/Widgets/Sheet.icl
+++ b/src/Gtk/Widgets/Sheet.icl
@@ -102,6 +102,11 @@ setActiveCell row col sheet=:(GtkSheet s) =
toState (gtk_sheet_set_active_cell s row col) >>|
pure sheet
+getEntry :: !GtkSheet -> GtkM GtkEntry
+getEntry (GtkSheet s) =
+ toStateR (gtk_sheet_get_entry s) >>= \e ->
+ pure (GtkEntry e)
+
instance tune GtkSheet GtkSheetColumnResizability
where
tune setting sheet=:(GtkSheet s) =
diff --git a/src/Gtk/Widgets/Sheet/Internal.dcl b/src/Gtk/Widgets/Sheet/Internal.dcl
index f765427..f799d00 100644
--- a/src/Gtk/Widgets/Sheet/Internal.dcl
+++ b/src/Gtk/Widgets/Sheet/Internal.dcl
@@ -6,9 +6,12 @@ from System._Pointer import :: Pointer
gtk_sheet_new :: !Int !Int !String !.a -> (!Pointer, !.a)
+gtk_sheet_get_entry :: !Pointer !.a -> (!Pointer, !.a)
+
gtk_sheet_freeze :: !Pointer !.a -> .a
gtk_sheet_unfreeze :: !Pointer !.a -> .a
+// Rows
gtk_sheet_add_rows :: !Pointer !Int !.a -> .a
gtk_sheet_insert_rows :: !Pointer !Int !Int !.a -> .a
gtk_sheet_delete_rows :: !Pointer !Int !Int !.a -> .a
@@ -19,6 +22,7 @@ gtk_sheet_rows_set_resizable :: !Pointer !Bool !.a -> .a
gtk_sheet_rows_set_sensitivity :: !Pointer !Bool !.a -> .a
gtk_sheet_row_visible :: !Pointer !Int !.a -> (!Bool, !.a)
+// Columns
gtk_sheet_add_columns :: !Pointer !Int !.a -> .a
gtk_sheet_insert_columns :: !Pointer !Int !Int !.a -> .a
gtk_sheet_delete_columns :: !Pointer !Int !Int !.a -> .a
@@ -28,6 +32,7 @@ gtk_sheet_column_set_justification :: !Pointer !Int !Int !.a -> .a
gtk_sheet_columns_set_resizable :: !Pointer !Bool !.a -> .a
gtk_sheet_columns_set_sensitivity :: !Pointer !Bool !.a -> .a
+// Cells
gtk_sheet_cell_clear :: !Pointer !Int !Int !.a -> .a
gtk_sheet_cell_delete :: !Pointer !Int !Int !.a -> .a
gtk_sheet_cell_get_text :: !Pointer !Int !Int !.a -> (!Maybe String, !.a)
@@ -35,5 +40,6 @@ gtk_sheet_get_active_cell :: !Pointer !.a -> (!(!Int, !Int), !.a)
gtk_sheet_set_active_cell :: !Pointer !Int !Int !.a -> .a
gtk_sheet_set_cell_text :: !Pointer !Int !Int !String !.a -> .a
+// Ranges
gtk_sheet_range_set_css_class :: !Pointer !(!Int,!Int) !(!Int,!Int) !String !.a -> .a
gtk_sheet_range_set_editable :: !Pointer !(!Int,!Int) !(!Int,!Int) !Bool !.a -> .a
diff --git a/src/Gtk/Widgets/Sheet/Internal.icl b/src/Gtk/Widgets/Sheet/Internal.icl
index 670f590..9717cb1 100644
--- a/src/Gtk/Widgets/Sheet/Internal.icl
+++ b/src/Gtk/Widgets/Sheet/Internal.icl
@@ -13,6 +13,11 @@ where
ccall gtk_sheet_new "IIs:p:A"
}
+gtk_sheet_get_entry :: !Pointer !.a -> (!Pointer, !.a)
+gtk_sheet_get_entry sheet env = code {
+ ccall gtk_sheet_get_entry "p:p:A"
+}
+
gtk_sheet_freeze :: !Pointer !.a -> .a
gtk_sheet_freeze sheet env = code {
ccall gtk_sheet_freeze "p:V:A"