#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <gtk/gtk.h>
static gboolean on_draw_event(GtkWidget widget, cairo_t cr, gpointer user_data)
{
// Draw a line from (10, 10) to (100, 100)
cairo_move_to(cr, 10, 10);
cairo_line_to(cr, 100, 100);
cairo_stroke(cr);
return FALSE;
}
int main(int argc, char *argv[])
{
GtkWidget *window;
GtkWidget *darea;
gtk_init(&argc, &argv);
window = gtk_window_new(GTK_WINDOW_TOPLEVEL);
darea = gtk_drawing_area_new();
gtk_container_add(GTK_CONTAINER(window), darea);
g_signal_connect(G_OBJECT(darea), "draw", G_CALLBACK(on_draw_event), NULL);
g_signal_connect(window, "destroy", G_CALLBACK(gtk_main_quit), NULL);
gtk_widget_show_all(window);
gtk_main();
return 0;
}