diff options
author | Michael Brockus <55331536+michaelbrockus@users.noreply.github.com> | 2020-11-18 13:02:28 -0800 |
---|---|---|
committer | GitHub <noreply@github.com> | 2020-11-18 23:02:28 +0200 |
commit | 188695f2026a8a5d23d3e586a0f450f57c82a71b (patch) | |
tree | e3b99bffa6548564d85ec5ce94b76ace4d06ffb3 | |
parent | 1c582a9de4cd0e5f332ba5b626034f62baf103c6 (diff) | |
download | meson-188695f2026a8a5d23d3e586a0f450f57c82a71b.zip meson-188695f2026a8a5d23d3e586a0f450f57c82a71b.tar.gz meson-188695f2026a8a5d23d3e586a0f450f57c82a71b.tar.bz2 |
Update Tutorial.md [skip ci]
-rw-r--r-- | docs/markdown/Tutorial.md | 50 |
1 files changed, 38 insertions, 12 deletions
diff --git a/docs/markdown/Tutorial.md b/docs/markdown/Tutorial.md index bf337ba..85e345a 100644 --- a/docs/markdown/Tutorial.md +++ b/docs/markdown/Tutorial.md @@ -29,8 +29,11 @@ example. First we create a file `main.c` which holds the source. It looks like this. ```c -#include<stdio.h> +#include <stdio.h> +// +// main is where all program execution starts +// int main(int argc, char **argv) { printf("Hello there.\n"); return 0; @@ -53,7 +56,7 @@ to initialize the build by going into the source directory and issuing the following commands. ```console -$ meson builddir +$ meson setup builddir ``` We create a separate build directory to hold all of the compiler @@ -110,17 +113,40 @@ create a graphical window instead. We'll use the use GTK+. The new version looks like this. ```c -#include<gtk/gtk.h> -int main(int argc, char **argv) { - GtkWidget *win; - gtk_init(&argc, &argv); - win = gtk_window_new(GTK_WINDOW_TOPLEVEL); - gtk_window_set_title(GTK_WINDOW(win), "Hello there"); - g_signal_connect(win, "destroy", G_CALLBACK(gtk_main_quit), NULL); - gtk_widget_show(win); - gtk_main(); -} +#include <gtk/gtk.h> + +// +// Should provided the active view for a GTK application +// +static void activate(GtkApplication* app, gpointer user_data) +{ + GtkWidget *window; + GtkWidget *label; + + window = gtk_application_window_new (app); + label = gtk_label_new("Hello GNOME!"); + gtk_container_add (GTK_CONTAINER (window), label); + gtk_window_set_title(GTK_WINDOW (window), "Welcome to GNOME"); + gtk_window_set_default_size(GTK_WINDOW (window), 200, 100); + gtk_widget_show_all(window); +} // end of function activate + +// +// main is where all program execution starts +// +int main(int argc, char **argv) +{ + GtkApplication *app; + int status; + + app = gtk_application_new(NULL, 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; +} // end of function main ``` Then we edit the Meson file, instructing it to find and use the GTK+ |