summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorCamil Staps2019-10-25 08:49:23 +0200
committerCamil Staps2019-10-25 08:49:23 +0200
commita4311ae9c4bde85a060d918e33991dba50915f6c (patch)
treed7ebaae42ffa964b2b8060dc7b5c8dba6999dd55
parentAdd GtkCheckMenuItem (diff)
Add hide function for widgets and ptr instances for GtkFrame and GtkTextBuffer
-rw-r--r--src/Gtk/Internal.dcl1
-rw-r--r--src/Gtk/Internal.icl5
-rw-r--r--src/Gtk/Widgets.dcl3
-rw-r--r--src/Gtk/Widgets.icl12
4 files changed, 21 insertions, 0 deletions
diff --git a/src/Gtk/Internal.dcl b/src/Gtk/Internal.dcl
index b73b843..8cadd66 100644
--- a/src/Gtk/Internal.dcl
+++ b/src/Gtk/Internal.dcl
@@ -86,6 +86,7 @@ gtk_text_view_set_wrap_mode :: !Pointer !Int !.a -> .a
gtk_widget_destroy :: !Pointer !.a -> .a
gtk_widget_get_screen :: !Pointer !.a -> (!Pointer, !.a)
gtk_widget_get_style_context :: !Pointer !.a -> (!Pointer, !.a)
+gtk_widget_hide :: !Pointer !.a -> .a
gtk_widget_set_margin_bottom :: !Pointer !Int !.a -> .a
gtk_widget_set_margin_left :: !Pointer !Int !.a -> .a
gtk_widget_set_margin_right :: !Pointer !Int !.a -> .a
diff --git a/src/Gtk/Internal.icl b/src/Gtk/Internal.icl
index d0993bf..0691bc9 100644
--- a/src/Gtk/Internal.icl
+++ b/src/Gtk/Internal.icl
@@ -390,6 +390,11 @@ gtk_widget_get_style_context widget env = code {
ccall gtk_widget_get_style_context "p:p:A"
}
+gtk_widget_hide :: !Pointer !.a -> .a
+gtk_widget_hide widget env = code {
+ ccall gtk_widget_hide "p:V:A"
+}
+
gtk_widget_set_margin_bottom :: !Pointer !Int !.a -> .a
gtk_widget_set_margin_bottom widget padding env = code {
ccall gtk_widget_set_margin_bottom "pI:V:A"
diff --git a/src/Gtk/Widgets.dcl b/src/Gtk/Widgets.dcl
index a04929c..13ee89c 100644
--- a/src/Gtk/Widgets.dcl
+++ b/src/Gtk/Widgets.dcl
@@ -55,6 +55,7 @@ getFileWithDialog :: !GtkWindow !GtkFileChooserAction !(Maybe String) -> GtkM (M
:: GtkFrame
instance gtkWidget GtkFrame
instance gtkContainer GtkFrame
+instance ptr GtkFrame
newFrame :: !GtkLabel !w -> GtkM GtkFrame | gtkWidget w
framed :: !GtkLabel !(GtkM w) -> GtkM (w, GtkFrame) | gtkWidget w
@@ -118,6 +119,7 @@ startSpinner :: !GtkSpinner -> GtkM GtkSpinner
stopSpinner :: !GtkSpinner -> GtkM GtkSpinner
:: GtkTextBuffer
+instance ptr GtkTextBuffer
setText :: !String !GtkTextBuffer -> GtkM GtkTextBuffer
setMarkup :: !String !GtkTextBuffer -> GtkM GtkTextBuffer
@@ -140,6 +142,7 @@ instance gtkWidget GtkWidget
instance ptr GtkWidget
show :: !w -> GtkM w | gtkWidget w
+hide :: !w -> GtkM w | gtkWidget w
destroy :: !w -> GtkM () | gtkWidget w
addCSSClass :: !GtkCSSClass !w -> GtkM w | gtkWidget w
diff --git a/src/Gtk/Widgets.icl b/src/Gtk/Widgets.icl
index f9fb9a3..e726bfd 100644
--- a/src/Gtk/Widgets.icl
+++ b/src/Gtk/Widgets.icl
@@ -98,6 +98,10 @@ where
instance gtkWidget GtkFrame where gtkWidget f = f
instance gtkContainer GtkFrame where gtkContainer f = f
+instance ptr GtkFrame
+where
+ toPtr f = f
+ fromPtr f = f
newFrame :: !GtkLabel !w -> GtkM GtkFrame | gtkWidget w
newFrame label widget =
@@ -225,6 +229,11 @@ stopSpinner spinner = toState (gtk_spinner_stop spinner) >>| pure spinner
:: GtkTextBuffer :== Pointer
+instance ptr GtkTextBuffer
+where
+ toPtr b = b
+ fromPtr b = b
+
setText :: !String !GtkTextBuffer -> GtkM GtkTextBuffer
setText s buffer =
toState (gtk_text_buffer_set_text buffer s (size s)) >>|
@@ -276,6 +285,9 @@ where
show :: !w -> GtkM w | gtkWidget w
show widget = toState (gtk_widget_show (gtkWidget widget)) >>| pure widget
+hide :: !w -> GtkM w | gtkWidget w
+hide widget = toState (gtk_widget_hide (gtkWidget widget)) >>| pure widget
+
destroy :: !w -> GtkM () | gtkWidget w
destroy widget = toState (gtk_widget_destroy (gtkWidget widget))