add documentation and examples

This commit is contained in:
r4
2022-05-21 18:57:25 +02:00
parent d2923b5302
commit 23d6b123ed
5 changed files with 251 additions and 1 deletions

52
examples/example-gtk4.c Executable file
View File

@@ -0,0 +1,52 @@
#!cscript -s $(pkg-config --cflags --libs gtk4)
#include <gtk/gtk.h>
static void
print_hello (GtkWidget *widget,
gpointer data)
{
g_print ("Hello World\n");
}
static void
activate (GtkApplication *app,
gpointer user_data)
{
GtkWidget *window;
GtkWidget *button;
GtkWidget *box;
window = gtk_application_window_new (app);
gtk_window_set_title (GTK_WINDOW (window), "Window");
gtk_window_set_default_size (GTK_WINDOW (window), 200, 200);
box = gtk_box_new (GTK_ORIENTATION_VERTICAL, 0);
gtk_widget_set_halign (box, GTK_ALIGN_CENTER);
gtk_widget_set_valign (box, GTK_ALIGN_CENTER);
gtk_window_set_child (GTK_WINDOW (window), box);
button = gtk_button_new_with_label ("Hello World");
g_signal_connect (button, "clicked", G_CALLBACK (print_hello), NULL);
g_signal_connect_swapped (button, "clicked", G_CALLBACK (gtk_window_destroy), window);
gtk_box_append (GTK_BOX (box), button);
gtk_widget_show (window);
}
int
main (int argc,
char **argv)
{
GtkApplication *app;
int status;
app = gtk_application_new ("org.gtk.example", G_APPLICATION_FLAGS_NONE);
g_signal_connect (app, "activate", G_CALLBACK (activate), NULL);
status = g_application_run (G_APPLICATION (app), argc, argv);
g_object_unref (app);
return status;
}

8
examples/example-multi-base.c Executable file
View File

@@ -0,0 +1,8 @@
#!cscript -s example-multi-ext.c
#include <stdio.h>
extern const char *external_string;
int main() {
printf("%s\n", external_string);
}

View File

@@ -0,0 +1 @@
const char *external_string = "Hello, world!";

14
examples/example-simple.c Executable file
View File

@@ -0,0 +1,14 @@
#!cscript -s
#include <stdio.h>
int main(int argc, char *argv[]) {
printf("Program name: %s\n", argv[0]);
if (argc <= 1) {
printf("No arguments given\n");
} else {
for (size_t i = 1; i < argc; i++) {
printf("Argument %zu: %s\n", i, argv[i]);
}
}
}