X-Git-Url: http://pileus.org/git/?a=blobdiff_plain;f=gtk%2Fgtkwidget.h;h=bdf8e5e607f16bb4bd371c3e4e661b4846a7b540;hb=1865b9a1116d166c9abc5c75f5d01270574007c5;hp=2cdc7f3e6f374da7ffd79e1ac975d917ccc86618;hpb=48ff2fc7ed1f418002def55fc496a7f86f9e7ef7;p=~andy%2Fgtk diff --git a/gtk/gtkwidget.h b/gtk/gtkwidget.h index 2cdc7f3e6..bdf8e5e60 100644 --- a/gtk/gtkwidget.h +++ b/gtk/gtkwidget.h @@ -22,13 +22,13 @@ * GTK+ at ftp://ftp.gtk.org/pub/gtk/. */ +#ifndef __GTK_WIDGET_H__ +#define __GTK_WIDGET_H__ + #if !defined (__GTK_H_INSIDE__) && !defined (GTK_COMPILATION) #error "Only can be included directly." #endif -#ifndef __GTK_WIDGET_H__ -#define __GTK_WIDGET_H__ - #include #include #include @@ -86,6 +86,23 @@ typedef GdkRectangle GtkAllocation; typedef void (*GtkCallback) (GtkWidget *widget, gpointer data); +/** + * GtkTickCallback: + * @widget: the widget + * @frame_clock: the frame clock for the widget (same as calling gtk_widget_get_frame_clock()) + * @user_data: user data passed to gtk_widget_add_tick_callback(). + * + * Callback type for adding a function to update animations. See gtk_widget_add_tick_callback(). + * + * Returns: %G_SOURCE_CONTINUE if the tick callback should continue to be called, + * %G_SOURCE_REMOVE if the tick callback should be removed. + * + * Since: 3.8 + */ +typedef gboolean (*GtkTickCallback) (GtkWidget *widget, + GdkFrameClock *frame_clock, + gpointer user_data); + /** * GtkRequisition: * @width: the widget's desired width @@ -473,6 +490,9 @@ void gtk_widget_queue_draw_region (GtkWidget *widget, const cairo_region_t*region); void gtk_widget_queue_resize (GtkWidget *widget); void gtk_widget_queue_resize_no_redraw (GtkWidget *widget); +GDK_AVAILABLE_IN_3_8 +GdkFrameClock* gtk_widget_get_frame_clock (GtkWidget *widget); + GDK_DEPRECATED_IN_3_0_FOR(gtk_widget_get_preferred_size) void gtk_widget_size_request (GtkWidget *widget, GtkRequisition *requisition); @@ -630,6 +650,12 @@ gboolean gtk_widget_get_child_visible (GtkWidget *widget); void gtk_widget_set_window (GtkWidget *widget, GdkWindow *window); GdkWindow * gtk_widget_get_window (GtkWidget *widget); +GDK_AVAILABLE_IN_3_8 +void gtk_widget_register_window (GtkWidget *widget, + GdkWindow *window); +GDK_AVAILABLE_IN_3_8 +void gtk_widget_unregister_window (GtkWidget *widget, + GdkWindow *window); int gtk_widget_get_allocated_width (GtkWidget *widget); int gtk_widget_get_allocated_height (GtkWidget *widget); @@ -664,6 +690,11 @@ void gtk_widget_set_device_events (GtkWidget *widget, void gtk_widget_add_device_events (GtkWidget *widget, GdkDevice *device, GdkEventMask events); +GDK_AVAILABLE_IN_3_8 +void gtk_widget_set_opacity (GtkWidget *widget, + double opacity); +GDK_AVAILABLE_IN_3_8 +double gtk_widget_get_opacity (GtkWidget *widget); void gtk_widget_set_device_enabled (GtkWidget *widget, GdkDevice *device, @@ -892,6 +923,18 @@ void gtk_widget_insert_action_group (GtkWidg const gchar *name, GActionGroup *group); + + +GDK_AVAILABLE_IN_3_8 +guint gtk_widget_add_tick_callback (GtkWidget *widget, + GtkTickCallback callback, + gpointer user_data, + GDestroyNotify notify); + +GDK_AVAILABLE_IN_3_8 +void gtk_widget_remove_tick_callback (GtkWidget *widget, + guint id); + G_END_DECLS #endif /* __GTK_WIDGET_H__ */