34e60811eb382042d5c47a893c804c19ee567a0e
[WebKit-https.git] / WebCore / platform / gtk / GtkVersioning.h
1 /*
2  * Copyright (C) 2010 Collabora Ltd.
3  *
4  *  This library is free software; you can redistribute it and/or
5  *  modify it under the terms of the GNU Library General Public
6  *  License as published by the Free Software Foundation; either
7  *  version 2 of the License, or (at your option) any later version.
8  *
9  *  This library is distributed in the hope that it will be useful,
10  *  but WITHOUT ANY WARRANTY; without even the implied warranty of
11  *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
12  *  Library General Public License for more details.
13  *
14  *  You should have received a copy of the GNU Library General Public License
15  *  along with this library; see the file COPYING.LIB.  If not, write to
16  *  the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
17  *  Boston, MA 02110-1301, USA.
18  */
19
20 #ifndef GtkVersioning_h
21 #define GtkVersioning_h
22
23 #include <gtk/gtk.h>
24
25 // Macros to avoid deprecation checking churn
26 #if !GTK_CHECK_VERSION(2, 21, 2)
27 #define gdk_visual_get_depth(visual) (visual)->depth
28 #define gdk_visual_get_bits_per_rgb(visual) (visual)->bits_per_rgb
29 #define gdk_drag_context_get_selected_action(context) (context)->action
30 #define gdk_drag_context_get_actions(context) (context)->actions
31 #endif // GTK_CHECK_VERSION(2, 21, 2)
32
33 #if !GTK_CHECK_VERSION(2, 20, 0)
34 #define gtk_widget_set_realized(widget, TRUE) GTK_WIDGET_SET_FLAGS((widget), GTK_REALIZED)
35 #define gtk_range_get_min_slider_size(range) (range)->min_slider_size
36 #endif // GTK_CHECK_VERSION(2, 20, 0)
37
38 #if !GTK_CHECK_VERSION(2, 19, 0)
39 #define gtk_widget_is_toplevel(widget) GTK_WIDGET_TOPLEVEL(widget)
40 #define gtk_widget_get_realized(widget) GTK_WIDGET_REALIZED(widget)
41 #define gtk_widget_get_has_window(widget) !GTK_WIDGET_NO_WINDOW(widget)
42 #define gtk_widget_get_can_focus(widget) GTK_WIDGET_CAN_FOCUS(widget)
43 #define gtk_widget_is_sensitive(widget) GTK_WIDGET_IS_SENSITIVE(widget)
44 #endif // GTK_CHECK_VERSION(2, 19, 0)
45
46 #if !GTK_CHECK_VERSION(2, 18, 0)
47 #define gtk_widget_set_visible(widget, FALSE) GTK_WIDGET_UNSET_FLAGS((widget), GTK_VISIBLE)
48 #define gtk_widget_set_window(widget, new_window) (widget)->window = (new_window)
49 #define gtk_widget_set_can_focus(widget, TRUE) GTK_WIDGET_SET_FLAGS((widget), GTK_CAN_FOCUS)
50 #define gtk_widget_get_allocation(widget, alloc) (*(alloc) = (widget)->allocation)
51 #define gtk_widget_set_allocation(widget, alloc) ((widget)->allocation = *(alloc))
52 #endif // GTK_CHECK_VERSION(2, 18, 0)
53
54 #if !GTK_CHECK_VERSION(2, 14, 0)
55 #define gtk_widget_get_window(widget) (widget)->window
56 #define gtk_adjustment_get_value(adj) (adj)->value
57 #define gtk_dialog_get_content_area(dialog) (dialog)->vbox
58 #define gtk_dialog_get_action_area(dialog) (dialog)->action_area
59 #define gtk_selection_data_get_length(data) (data)->length
60 #define gtk_selection_data_get_data(data) (data)->data
61 #define gtk_selection_data_get_target(data) (data)->target
62 #define gtk_adjustment_set_page_size(adj, value) (adj)->page_size = value
63
64 void gtk_adjustment_configure(GtkAdjustment* adjustment, gdouble value, gdouble lower, gdouble upper,
65                               gdouble stepIncrement, gdouble pageIncrement, gdouble pageSize);
66
67 void gtk_adjustment_set_value(GtkAdjustment* adjusment, gdouble value);
68 #endif // GTK_CHECK_VERSION(2, 14, 0)
69
70 #endif // GtkVersioning_h