Note that there are some explanatory texts on larger screens.

plurals
  1. PO
    text
    copied!<pre><code>/* (c) 2010 Virgoptrex. Feel Free to use. Leave credits intact */ #include gtk/gtk.h gint t=0; gboolean expose_event_callback (GtkWidget *widget, GdkEventExpose *event, gpointer data) { //g_object_ref_sink (widget-&gt;window); // gdk_drawable_ref (widget-&gt;window); gdk_draw_arc (widget-&gt;window, widget-&gt;style-&gt;fg_gc[GTK_WIDGET_STATE (widget)], TRUE, 0, 0, widget-&gt;allocation.width, widget-&gt;allocation.height, 0, 64 * 18*t); //gdk_drawable_unref (widget-&gt;window); return TRUE; } static gboolean time_handler(GtkWidget *widget) { gtk_widget_queue_draw(GTK_WIDGET(widget)); if (t&lt;20) { t++; } else if (t &gt;=20) { t=0; } printf("hello %d\n",t); return TRUE; } int main( int argc, char *argv[] ) { GtkWidget *window; GtkWidget *aspect_frame; GtkWidget *drawing_area; gtk_init (&amp;argc, &amp;argv); window = gtk_window_new (GTK_WINDOW_TOPLEVEL); gtk_window_set_title (GTK_WINDOW (window), "Aspect Frame"); g_signal_connect (G_OBJECT (window), "destroy", G_CALLBACK (gtk_main_quit), NULL); gtk_container_set_border_width (GTK_CONTAINER (window), 10); /* Create an aspect_frame and add it to our toplevel window */ aspect_frame = gtk_aspect_frame_new ("2x1", /* label */ 0.5, /* center x */ 0.5, /* center y */ 2, /* xsize/ysize = 2 */ FALSE /* ignore child's aspect */); gtk_container_add (GTK_CONTAINER (window), aspect_frame); gtk_widget_show (aspect_frame); /* Now add a child widget to the aspect frame */ drawing_area = gtk_drawing_area_new (); /* Ask for a 200x200 window, but the AspectFrame will give us a 200x100 * window since we are forcing a 2x1 aspect ratio */ gtk_widget_set_size_request (drawing_area, 200, 200); gtk_container_add (GTK_CONTAINER (aspect_frame), drawing_area); gtk_widget_show (drawing_area); g_signal_connect (G_OBJECT (drawing_area), "expose_event", G_CALLBACK (expose_event_callback), NULL); g_timeout_add(100, (GSourceFunc) time_handler, (gpointer)drawing_area); gtk_widget_show (window); gtk_main (); return 0; } </code></pre>
 

Querying!

 
Guidance

SQuiL has stopped working due to an internal error.

If you are curious you may find further information in the browser console, which is accessible through the devtools (F12).

Reload