Method
GtkWidgetadd_tick_callback
since: 3.8
Declaration [src]
guint
gtk_widget_add_tick_callback (
GtkWidget* widget,
GtkTickCallback callback,
gpointer user_data,
GDestroyNotify notify
)
Description [src]
Queues an animation frame update and adds a callback to be called
before each frame. Until the tick callback is removed, it will be
called frequently (usually at the frame rate of the output device
or as quickly as the application can be repainted, whichever is
slower). For this reason, is most suitable for handling graphics
that change every frame or every few frames. The tick callback does
not automatically imply a relayout or repaint. If you want a
repaint or relayout, and aren’t changing widget properties that
would trigger that (for example, changing the text of a GtkLabel
),
then you will have to call gtk_widget_queue_resize()
or
gtk_widget_queue_draw_area()
yourself.
gdk_frame_clock_get_frame_time()
should generally be used for timing
continuous animations and
gdk_frame_timings_get_predicted_presentation_time()
if you are
trying to display isolated frames at particular times.
This is a more convenient alternative to connecting directly to the
GdkFrameClock::update
signal of GdkFrameClock
, since you don’t
have to worry about when a GdkFrameClock
is assigned to a widget.
Available since: 3.8
Parameters
callback
-
Type:
GtkTickCallback
Function to call for updating animations.
user_data
-
Type:
gpointer
Data to pass to
callback
.The argument can be NULL
.The data is owned by the caller of the method. notify
-
Type:
GDestroyNotify
Function to call to free
user_data
when the callback is removed.