X-Git-Url: http://pileus.org/git/?a=blobdiff_plain;f=gtk%2Fgtkwidgetprivate.h;h=4542580e41f15ee963ba8612a111ad497461221a;hb=3a86af43fa208786b5c848c09f9c8e1d3f060931;hp=03f25c76ff0234ef9a1618247b5beb308876b809;hpb=2de4405c324e860a158914c53538c6cf4cb6a641;p=~andy%2Fgtk diff --git a/gtk/gtkwidgetprivate.h b/gtk/gtkwidgetprivate.h index 03f25c76f..4542580e4 100644 --- a/gtk/gtkwidgetprivate.h +++ b/gtk/gtkwidgetprivate.h @@ -12,9 +12,7 @@ * Lesser General Public License for more details. * * You should have received a copy of the GNU Lesser General Public - * License along with this library; if not, write to the - * Free Software Foundation, Inc., 59 Temple Place - Suite 330, - * Boston, MA 02111-1307, USA. + * License along with this library. If not, see . */ /* @@ -27,48 +25,14 @@ #ifndef __GTK_WIDGET_PRIVATE_H__ #define __GTK_WIDGET_PRIVATE_H__ -G_BEGIN_DECLS +#include "gtkcsstypesprivate.h" +#include "gtkwidget.h" +#include "gactionmuxer.h" -/* Cache as many ranges of height-for-width - * (or width-for-height) as can be rational - * for a said widget to have, if a label can - * only wrap to 3 lines, only 3 caches will - * ever be allocated for it. - */ -#define GTK_SIZE_REQUEST_CACHED_SIZES (5) - -typedef struct { - gint minimum_size; - gint natural_size; -} CachedSize; - -typedef struct -{ - gint lower_for_size; /* The minimum for_size with the same result */ - gint upper_for_size; /* The maximum for_size with the same result */ - CachedSize cached_size; -} SizeRequest; - -typedef struct { - SizeRequest **widths; - SizeRequest **heights; - - CachedSize cached_width; - CachedSize cached_height; - - guint cached_widths : 3; - guint cached_heights : 3; - guint last_cached_width : 3; - guint last_cached_height : 3; - guint cached_base_width : 1; - guint cached_base_height : 1; -} SizeRequestCache; +G_BEGIN_DECLS void _gtk_widget_set_visible_flag (GtkWidget *widget, gboolean visible); -gboolean _gtk_widget_get_resize_pending (GtkWidget *widget); -void _gtk_widget_set_resize_pending (GtkWidget *widget, - gboolean resize_pending); gboolean _gtk_widget_get_in_reparent (GtkWidget *widget); void _gtk_widget_set_in_reparent (GtkWidget *widget, gboolean in_reparent); @@ -81,25 +45,18 @@ void _gtk_widget_set_shadowed (GtkWidget *widget, gboolean _gtk_widget_get_alloc_needed (GtkWidget *widget); void _gtk_widget_set_alloc_needed (GtkWidget *widget, gboolean alloc_needed); -gboolean _gtk_widget_get_width_request_needed (GtkWidget *widget); -void _gtk_widget_set_width_request_needed (GtkWidget *widget, - gboolean width_request_needed); -gboolean _gtk_widget_get_height_request_needed (GtkWidget *widget); -void _gtk_widget_set_height_request_needed (GtkWidget *widget, - gboolean height_request_needed); - -gboolean _gtk_widget_get_sizegroup_visited (GtkWidget *widget); -void _gtk_widget_set_sizegroup_visited (GtkWidget *widget, - gboolean visited); -gboolean _gtk_widget_get_sizegroup_bumping (GtkWidget *widget); -void _gtk_widget_set_sizegroup_bumping (GtkWidget *widget, - gboolean bumping); + void _gtk_widget_add_sizegroup (GtkWidget *widget, gpointer group); void _gtk_widget_remove_sizegroup (GtkWidget *widget, gpointer group); GSList *_gtk_widget_get_sizegroups (GtkWidget *widget); +void _gtk_widget_add_attached_window (GtkWidget *widget, + GtkWindow *window); +void _gtk_widget_remove_attached_window (GtkWidget *widget, + GtkWindow *window); + void _gtk_widget_override_size_request (GtkWidget *widget, int width, int height, @@ -108,16 +65,22 @@ void _gtk_widget_override_size_request (GtkWidget *widget, void _gtk_widget_restore_size_request (GtkWidget *widget, int old_width, int old_height); +void _gtk_widget_compute_size_for_orientation (GtkWidget *widget, + GtkOrientation orientation, + gint for_size, + gint *minimum_size, + gint *natural_size); gboolean _gtk_widget_get_translation_to_window (GtkWidget *widget, GdkWindow *window, int *x, int *y); -void _gtk_widget_free_cached_sizes (GtkWidget *widget); const gchar* _gtk_widget_get_accel_path (GtkWidget *widget, gboolean *locked); +AtkObject * _gtk_widget_peek_accessible (GtkWidget *widget); + GdkEventExpose * _gtk_cairo_get_event (cairo_t *cr); void _gtk_widget_draw_internal (GtkWidget *widget, @@ -160,6 +123,21 @@ GtkStyle * _gtk_widget_get_style (GtkWidget *widget); void _gtk_widget_set_style (GtkWidget *widget, GtkStyle *style); +typedef gboolean (*GtkCapturedEventHandler) (GtkWidget *widget, GdkEvent *event); + +void _gtk_widget_set_captured_event_handler (GtkWidget *widget, + GtkCapturedEventHandler handler); + +gboolean _gtk_widget_captured_event (GtkWidget *widget, + GdkEvent *event); + +GtkWidgetPath * _gtk_widget_create_path (GtkWidget *widget); +void _gtk_widget_invalidate_style_context (GtkWidget *widget, + GtkCssChange change); +void _gtk_widget_style_context_invalidated (GtkWidget *widget); + +void _gtk_widget_update_parent_muxer (GtkWidget *widget); +GActionMuxer * _gtk_widget_get_action_muxer (GtkWidget *widget); G_END_DECLS