diff --git a/gtk4/paned.c b/gtk4/paned.c
index 7ab87e4..78f8842 100644
--- a/gtk4/paned.c
+++ b/gtk4/paned.c
@@ -11,6 +11,7 @@
* THIS SOFTWARE.
*/
#include <libkc3/assert.h>
+#include <libkc3/s32.h>
#include <libkc3/sym.h>
#include "paned.h"
@@ -36,38 +37,58 @@ GtkWidget ** kc3_gtk4_paned_new (GtkWidget **dest,
return dest;
}
-void kc3_gtk4_paned_set_end_child (GtkPaned **paned,
- GtkWidget **child)
+GtkPaned ** kc3_gtk4_paned_set_end_child (GtkPaned **paned,
+ GtkWidget **child)
{
gtk_paned_set_end_child(GTK_PANED(*paned), GTK_WIDGET(*child));
+ return paned;
}
-void kc3_gtk4_paned_set_resize_end_child (GtkPaned **paned,
- bool value)
+GtkPaned ** kc3_gtk4_paned_set_position (GtkPaned **paned,
+ s_tag *position)
+{
+ s32 p;
+ const s_sym *sym_S32;
+ if (! s32_init_cast(&p, &sym_S32, position)) {
+ err_puts("kc3_gtk4_paned_set_position: invalid position");
+ assert(! "kc3_gtk4_paned_set_position: invalid position");
+ return NULL;
+ }
+ gtk_paned_set_position(GTK_PANED(*paned), p);
+ return paned;
+}
+
+GtkPaned ** kc3_gtk4_paned_set_resize_end_child (GtkPaned **paned,
+ bool value)
{
gtk_paned_set_resize_end_child(GTK_PANED(*paned), value);
+ return paned;
}
-void kc3_gtk4_paned_set_shrink_end_child (GtkPaned **paned,
- bool value)
+GtkPaned ** kc3_gtk4_paned_set_shrink_end_child (GtkPaned **paned,
+ bool value)
{
gtk_paned_set_shrink_end_child(GTK_PANED(*paned), value);
+ return paned;
}
-void kc3_gtk4_paned_set_resize_start_child (GtkPaned **paned,
- bool value)
+GtkPaned ** kc3_gtk4_paned_set_resize_start_child (GtkPaned **paned,
+ bool value)
{
gtk_paned_set_resize_start_child(GTK_PANED(*paned), value);
+ return paned;
}
-void kc3_gtk4_paned_set_shrink_start_child (GtkPaned **paned,
- bool value)
+GtkPaned ** kc3_gtk4_paned_set_shrink_start_child (GtkPaned **paned,
+ bool value)
{
gtk_paned_set_shrink_start_child(GTK_PANED(*paned), value);
+ return paned;
}
-void kc3_gtk4_paned_set_start_child (GtkPaned **paned,
- GtkWidget **child)
+GtkPaned ** kc3_gtk4_paned_set_start_child (GtkPaned **paned,
+ GtkWidget **child)
{
gtk_paned_set_end_child(GTK_PANED(*paned), GTK_WIDGET(*child));
+ return paned;
}
diff --git a/gtk4/paned.h b/gtk4/paned.h
index a28e1a6..6ff12c6 100644
--- a/gtk4/paned.h
+++ b/gtk4/paned.h
@@ -20,13 +20,13 @@ GtkWidget ** kc3_gtk4_paned_new (GtkWidget **widget,
const s_sym * const *orientation);
/* Operators. */
-void kc3_gtk4_paned_set_end_child (GtkPaned **paned,
- GtkWidget **child);
-void kc3_gtk4_paned_set_resize_start_child (GtkPaned **paned,
- bool value);
-void kc3_gtk4_paned_set_shrink_start_child (GtkPaned **paned,
- bool value);
-void kc3_gtk4_paned_set_start_child (GtkPaned **paned,
- GtkWidget **child);
+GtkPaned ** kc3_gtk4_paned_set_end_child (GtkPaned **paned,
+ GtkWidget **child);
+GtkPaned ** kc3_gtk4_paned_set_resize_start_child (GtkPaned **paned,
+ bool value);
+GtkPaned ** kc3_gtk4_paned_set_shrink_start_child (GtkPaned **paned,
+ bool value);
+GtkPaned ** kc3_gtk4_paned_set_start_child (GtkPaned **paned,
+ GtkWidget **child);
#endif /* KC3_GTK4_PANED_H */
diff --git a/ikc3/ikc3.c b/ikc3/ikc3.c
index 3cf2854..2f0c913 100644
--- a/ikc3/ikc3.c
+++ b/ikc3/ikc3.c
@@ -146,6 +146,11 @@ int main (int argc, char **argv)
argc -= 2;
argv += 2;
}
+ else if (argc > 0 && ! strcmp("--trace", *argv)) {
+ g_kc3_env->trace = true;
+ argc--;
+ argv++;
+ }
else if (argc == 1 && ! strcmp("--quit", *argv)) {
r = 0;
goto clean;
diff --git a/kmsg/Makefile b/kmsg/Makefile
index d96a53e..9723d00 100644
--- a/kmsg/Makefile
+++ b/kmsg/Makefile
@@ -1,6 +1,6 @@
run:
- ikc3 --load kmsg.kc3 --quit
+ ikc3 --trace --load kmsg.kc3 --quit
gdb:
gdb ../ikc3/.libs/ikc3_debug
diff --git a/lib/kc3/0.1/gtk4/paned.kc3 b/lib/kc3/0.1/gtk4/paned.kc3
index 8643ada..4a9a2d8 100644
--- a/lib/kc3/0.1/gtk4/paned.kc3
+++ b/lib/kc3/0.1/gtk4/paned.kc3
@@ -7,23 +7,25 @@ defmodule Gtk4.Paned do
def new = cfn Ptr "kc3_gtk4_paned_new" (Result, Sym)
# set_end_child(paned, child)
- def set_end_child = cfn Void "kc3_gtk4_paned_set_end_child" (Ptr,
+ def set_end_child = cfn Ptr "kc3_gtk4_paned_set_end_child" (Ptr,
Ptr)
- def set_resize_end_child =
- cfn Void "kc3_gtk4_paned_set_resize_end_child" (Ptr, Bool)
+ def set_position = cfn Ptr "kc3_gtk4_paned_set_position" (Ptr, Tag)
- def set_shrink_end_child =
- cfn Void "kc3_gtk4_paned_set_shrink_end_child" (Ptr, Bool)
+ def set_resize_end_child =
+ cfn Ptr "kc3_gtk4_paned_set_resize_end_child" (Ptr, Bool)
def set_resize_start_child =
- cfn Void "kc3_gtk4_paned_set_resize_start_child" (Ptr, Bool)
+ cfn Ptr "kc3_gtk4_paned_set_resize_start_child" (Ptr, Bool)
+
+ def set_shrink_end_child =
+ cfn Ptr "kc3_gtk4_paned_set_shrink_end_child" (Ptr, Bool)
def set_shrink_start_child =
- cfn Void "kc3_gtk4_paned_set_shrink_start_child" (Ptr, Bool)
+ cfn Ptr "kc3_gtk4_paned_set_shrink_start_child" (Ptr, Bool)
# set_start_child(paned, child)
- def set_start_child = cfn Void "kc3_gtk4_paned_set_start_child" (Ptr,
+ def set_start_child = cfn Ptr "kc3_gtk4_paned_set_start_child" (Ptr,
Ptr)
end
diff --git a/lib/kc3/0.1/gtk4/widget.kc3 b/lib/kc3/0.1/gtk4/widget.kc3
index 942c91e..8988eac 100644
--- a/lib/kc3/0.1/gtk4/widget.kc3
+++ b/lib/kc3/0.1/gtk4/widget.kc3
@@ -2,6 +2,8 @@ defmodule Gtk4.Widget do
dlopen(__DIR__ + "../gtk4.so")
- # deftype Ptr
+ def set_halign = cfn Ptr "kc3_gtk4_widget_set_halign" (Ptr, Sym)
+
+ def set_size_request = cfn Ptr "kc3_gtk4_widget_set_size_request" (Ptr, Tag, Tag)
end