X-Git-Url: http://pileus.org/git/?a=blobdiff_plain;f=gtk%2Fgtkstylecontext.h;h=35655f28d6ffdb97d2136280ffc7b70f65797dd3;hb=a89d420270d1a856e072ed87c365b0176f102e6c;hp=a2ab473546b7a898cc8215e6bfdead12d01c436c;hpb=44da5a0094603b5a07527456e90c211d5936ecd7;p=~andy%2Fgtk diff --git a/gtk/gtkstylecontext.h b/gtk/gtkstylecontext.h index a2ab47354..35655f28d 100644 --- a/gtk/gtkstylecontext.h +++ b/gtk/gtkstylecontext.h @@ -12,22 +12,21 @@ * 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 . */ +#ifndef __GTK_STYLE_CONTEXT_H__ +#define __GTK_STYLE_CONTEXT_H__ + #if !defined (__GTK_H_INSIDE__) && !defined (GTK_COMPILATION) #error "Only can be included directly." #endif -#ifndef __GTK_STYLE_CONTEXT_H__ -#define __GTK_STYLE_CONTEXT_H__ - -#include -#include -#include #include +#include +#include +#include +#include G_BEGIN_DECLS @@ -38,13 +37,13 @@ G_BEGIN_DECLS #define GTK_IS_STYLE_CONTEXT_CLASS(c) (G_TYPE_CHECK_CLASS_TYPE ((c), GTK_TYPE_STYLE_CONTEXT)) #define GTK_STYLE_CONTEXT_GET_CLASS(o) (G_TYPE_INSTANCE_GET_CLASS ((o), GTK_TYPE_STYLE_CONTEXT, GtkStyleContextClass)) -typedef struct _GtkStyleContext GtkStyleContext; typedef struct _GtkStyleContextClass GtkStyleContextClass; +typedef struct _GtkStyleContextPrivate GtkStyleContextPrivate; struct _GtkStyleContext { GObject parent_object; - gpointer priv; + GtkStyleContextPrivate *priv; }; struct _GtkStyleContextClass @@ -52,6 +51,12 @@ struct _GtkStyleContextClass GObjectClass parent_class; void (* changed) (GtkStyleContext *context); + + /* Padding for future expansion */ + void (*_gtk_reserved1) (void); + void (*_gtk_reserved2) (void); + void (*_gtk_reserved3) (void); + void (*_gtk_reserved4) (void); }; /* Default set of properties that GtkStyleContext may contain */ @@ -140,27 +145,54 @@ struct _GtkStyleContextClass */ #define GTK_STYLE_PROPERTY_BACKGROUND_IMAGE "background-image" - /* Predefined set of CSS classes */ /** * GTK_STYLE_CLASS_CELL: * * A CSS class to match content rendered in cell views. + * + * This is used by cell renderers, e.g. in #GtkIconView + * and #GtkTreeView. */ #define GTK_STYLE_CLASS_CELL "cell" +/** + * GTK_STYLE_CLASS_DIM_LABEL: + * + * A CSS class to match dimmed labels. + * + * This should be used for toning down right aligned labels as + * compared to the entry value. + */ +#define GTK_STYLE_CLASS_DIM_LABEL "dim-label" + /** * GTK_STYLE_CLASS_ENTRY: * * A CSS class to match text entries. + * + * This is used by #GtkEntry. */ #define GTK_STYLE_CLASS_ENTRY "entry" +/** + * GTK_STYLE_CLASS_COMBOBOX_ENTRY: + * + * A CSS class to match combobox entries. + * + * This is used by #GtkComboBox. + */ +#define GTK_STYLE_CLASS_COMBOBOX_ENTRY "combobox-entry" + /** * GTK_STYLE_CLASS_BUTTON: * * A CSS class to match buttons. + * + * This is used by #GtkButton and its subclasses, as well + * as various other widget pieces that appear like buttons, + * e.g. the arrows in a #GtkCalendar. */ #define GTK_STYLE_CLASS_BUTTON "button" @@ -168,6 +200,8 @@ struct _GtkStyleContextClass * GTK_STYLE_CLASS_CALENDAR: * * A CSS class to match calendars. + * + * This is not used by GTK+ itself, currently. */ #define GTK_STYLE_CLASS_CALENDAR "calendar" @@ -175,6 +209,8 @@ struct _GtkStyleContextClass * GTK_STYLE_CLASS_SLIDER: * * A CSS class to match sliders. + * + * This is used by #GtkSwitch and #GtkRange and its subclasses. */ #define GTK_STYLE_CLASS_SLIDER "slider" @@ -189,6 +225,8 @@ struct _GtkStyleContextClass * GTK_STYLE_CLASS_RUBBERBAND: * * A CSS class to match the rubberband selection rectangle. + * + * This is used in #GtkIconView and #GtkTreeView. */ #define GTK_STYLE_CLASS_RUBBERBAND "rubberband" @@ -203,6 +241,8 @@ struct _GtkStyleContextClass * GTK_STYLE_CLASS_MENU: * * A CSS class to match popup menus. + * + * This is used in #GtkMenu. */ #define GTK_STYLE_CLASS_MENU "menu" @@ -210,6 +250,8 @@ struct _GtkStyleContextClass * GTK_STYLE_CLASS_MENUBAR: * * A CSS class to menubars. + * + * This is used in #GtkMenuBar. */ #define GTK_STYLE_CLASS_MENUBAR "menubar" @@ -217,6 +259,8 @@ struct _GtkStyleContextClass * GTK_STYLE_CLASS_MENUITEM: * * A CSS class to match menu items. + * + * This is used in #GtkMenuItem and its subclasses. */ #define GTK_STYLE_CLASS_MENUITEM "menuitem" @@ -224,13 +268,39 @@ struct _GtkStyleContextClass * GTK_STYLE_CLASS_TOOLBAR: * * A CSS class to match toolbars. + * + * This is used in #GtkToolbar. */ #define GTK_STYLE_CLASS_TOOLBAR "toolbar" +/** + * GTK_STYLE_CLASS_PRIMARY_TOOLBAR: + * + * A CSS class to match primary toolbars. + * + * This should be used for the 'main' toolbar of an application, + * right below its menubar. + */ +#define GTK_STYLE_CLASS_PRIMARY_TOOLBAR "primary-toolbar" + +/** + * GTK_STYLE_CLASS_INLINE_TOOLBAR: + * + * A CSS class to match inline toolbars. + * + * This should be used for toolbars that are used to hold + * actions below lists, as seen e.g. in the left pane of the + * file chooser. + */ +#define GTK_STYLE_CLASS_INLINE_TOOLBAR "inline-toolbar" + /** * GTK_STYLE_CLASS_RADIO: * * A CSS class to match radio buttons. + * + * This is used in #GtkRadioButton, #GtkRadioMenuItem and + * #GtkCellRendererToggle. */ #define GTK_STYLE_CLASS_RADIO "radio" @@ -238,6 +308,9 @@ struct _GtkStyleContextClass * GTK_STYLE_CLASS_CHECK: * * A CSS class to match check boxes. + * + * This is used in #GtkCheckButton, #GtkCheckMenuItem and + * #GtkCellRendererToggle. */ #define GTK_STYLE_CLASS_CHECK "check" @@ -245,6 +318,8 @@ struct _GtkStyleContextClass * GTK_STYLE_CLASS_DEFAULT: * * A CSS class to match the default widget. + * + * This is used by #GtkButton. */ #define GTK_STYLE_CLASS_DEFAULT "default" @@ -252,6 +327,9 @@ struct _GtkStyleContextClass * GTK_STYLE_CLASS_TROUGH: * * A CSS class to match troughs, as in scrollbars and progressbars. + * + * This is used in #GtkRange and its subclasses, #GtkProgressBar + * and #GtkSwitch. */ #define GTK_STYLE_CLASS_TROUGH "trough" @@ -262,17 +340,49 @@ struct _GtkStyleContextClass */ #define GTK_STYLE_CLASS_SCROLLBAR "scrollbar" +/** + * GTK_STYLE_CLASS_SCROLLBARS_JUNCTION: + * + * A CSS class to match the junction area between an horizontal + * and vertical scrollbar, when they're both shown. + * + * This is used in #GtkScrolledWindow. + */ +#define GTK_STYLE_CLASS_SCROLLBARS_JUNCTION "scrollbars-junction" + /** * GTK_STYLE_CLASS_SCALE: * * A CSS class to match scale widgets. + * + * This is used in #GtkScale. */ #define GTK_STYLE_CLASS_SCALE "scale" +/** + * GTK_STYLE_CLASS_SCALE_HAS_MARKS_ABOVE: + * + * A CSS class to match scale widgets with marks attached, + * all the marks are above for horizontal #GtkScale. + * left for vertical #GtkScale. + */ +#define GTK_STYLE_CLASS_SCALE_HAS_MARKS_ABOVE "scale-has-marks-above" + +/** + * GTK_STYLE_CLASS_SCALE_HAS_MARKS_BELOW: + * + * A CSS class to match scale widgets with marks attached, + * all the marks are below for horizontal #GtkScale, + * right for vertical #GtkScale. + */ +#define GTK_STYLE_CLASS_SCALE_HAS_MARKS_BELOW "scale-has-marks-below" + /** * GTK_STYLE_CLASS_HEADER: * * A CSS class to match a header element. + * + * This is used for the header in #GtkCalendar. */ #define GTK_STYLE_CLASS_HEADER "header" @@ -280,92 +390,160 @@ struct _GtkStyleContextClass * GTK_STYLE_CLASS_ACCELERATOR: * * A CSS class to match an accelerator. + * + * This is used for the accelerator in #GtkAccelLabel. */ #define GTK_STYLE_CLASS_ACCELERATOR "accelerator" +/** + * GTK_STYLE_CLASS_RAISED: + * + * A CSS class to match a raised control, such as a raised + * button on a toolbar. + * + * This should be used in conjunction with #GTK_STYLE_CLASS_PRIMARY_TOOLBAR. + */ +#define GTK_STYLE_CLASS_RAISED "raised" + +/** + * GTK_STYLE_CLASS_LINKED: + * + * A CSS class to match a linked area, such as a box containing buttons + * belonging to the same control. + */ +#define GTK_STYLE_CLASS_LINKED "linked" + /** * GTK_STYLE_CLASS_GRIP: * - * A widget class defining a resize grip + * A CSS class defining a resize grip. + * + * This is used for the resize grip in #GtkWindow. */ #define GTK_STYLE_CLASS_GRIP "grip" /** * GTK_STYLE_CLASS_DOCK: * - * A widget class defining a dock area + * A CSS class defining a dock area. + * + * This is used by #GtkHandleBox. */ #define GTK_STYLE_CLASS_DOCK "dock" /** * GTK_STYLE_CLASS_PROGRESSBAR: * - * A widget class defining a resize grip + * A CSS class to use when rendering activity as a progressbar. + * + * This is used in #GtkProgressBar and when drawing progress + * inside a #GtkEntry or in #GtkCellRendererProgress. */ #define GTK_STYLE_CLASS_PROGRESSBAR "progressbar" /** * GTK_STYLE_CLASS_SPINNER: * - * A widget class defining a spinner + * A CSS class to use when rendering activity as a 'spinner'. + * + * This is used by #GtkSpinner and #GtkCellRendererSpinner. */ #define GTK_STYLE_CLASS_SPINNER "spinner" /** * GTK_STYLE_CLASS_MARK: * - * A widget class defining marks in a widget, such as in scales + * A CSS class defining marks in a widget, such as in scales. + * + * Used in #GtkScale. */ #define GTK_STYLE_CLASS_MARK "mark" /** * GTK_STYLE_CLASS_EXPANDER: * - * A widget class defining an expander, such as those in treeviews + * A CSS class defining an expander, such as those in treeviews. + * + * Used for drawing expanders in #GtkTreeView, GtkExpander and + * #GtkToolItemGroup. */ #define GTK_STYLE_CLASS_EXPANDER "expander" /** * GTK_STYLE_CLASS_SPINBUTTON: * - * A widget class defining an spinbutton + * A CSS class defining an spinbutton. + * + * This is used in #GtkSpinButton. */ #define GTK_STYLE_CLASS_SPINBUTTON "spinbutton" /** * GTK_STYLE_CLASS_NOTEBOOK: * - * A widget class defining a notebook + * A CSS class defining a notebook. + * + * Used in #GtkNotebook. */ #define GTK_STYLE_CLASS_NOTEBOOK "notebook" /** * GTK_STYLE_CLASS_VIEW: * - * A widget class defining a view, such as iconviews or treeviews + * A CSS class defining a view, such as iconviews or treeviews. + * + * This is used in #GtkTreeView, #GtkIconView, #GtkTextView, + * as well as #GtkCalendar. */ #define GTK_STYLE_CLASS_VIEW "view" +/** + * GTK_STYLE_CLASS_SIDEBAR: + * + * A CSS class defining a sidebar, such as the left side in + * a file chooser. + * + * This is used in #GtkFileChooser and in #GtkAssistant. + */ +#define GTK_STYLE_CLASS_SIDEBAR "sidebar" + +/** + * GTK_STYLE_CLASS_IMAGE: + * + * A CSS class defining an image, such as the icon in an entry. + * + * This is used when rendering icons in #GtkEntry. + */ +#define GTK_STYLE_CLASS_IMAGE "image" + /** * GTK_STYLE_CLASS_HIGHLIGHT: * * A CSS class defining a highlighted area, such as headings in - * assistants. + * assistants and calendars. + * + * This is used in #GtkAssistant and #GtkCalendar. */ #define GTK_STYLE_CLASS_HIGHLIGHT "highlight" /** * GTK_STYLE_CLASS_FRAME: * - * A CSS class defining a frame delimiting content, such as GtkFrame - * or the scrolled window frame around the scrollable area. + * A CSS class defining a frame delimiting content, such as + * #GtkFrame or the scrolled window frame around the + * scrollable area. + * + * This is used in #GtkFrame and #GtkScrollbar. */ #define GTK_STYLE_CLASS_FRAME "frame" /** * GTK_STYLE_CLASS_DND: * - * A CSS class for a drag-and-drop indicator + * A CSS class for a drag-and-drop indicator. + * + * This is used when drawing an outline around a potential + * drop target during DND. */ #define GTK_STYLE_CLASS_DND "dnd" @@ -373,55 +551,172 @@ struct _GtkStyleContextClass * GTK_STYLE_CLASS_PANE_SEPARATOR: * * A CSS class for a pane separator, such as those in #GtkPaned. + * + * Used in #GtkPaned. */ #define GTK_STYLE_CLASS_PANE_SEPARATOR "pane-separator" +/** + * GTK_STYLE_CLASS_SEPARATOR: + * + * A CSS class for a separator. + * + * This is used in #GtkSeparator, #GtkSeparatorMenuItem, + * #GtkSeparatorToolItem, and when drawing separators in #GtkTreeView. + */ +#define GTK_STYLE_CLASS_SEPARATOR "separator" + /** * GTK_STYLE_CLASS_INFO: * - * A widget class for an area displaying an informational message, - * such as those in infobars + * A CSS class for an area displaying an informational message, + * such as those in infobars. + * + * This is used by #GtkInfoBar. */ #define GTK_STYLE_CLASS_INFO "info" /** * GTK_STYLE_CLASS_WARNING: * - * A widget class for an area displaying a warning message, - * such as those in infobars + * A CSS class for an area displaying a warning message, + * such as those in infobars. + * + * This is used by #GtkInfoBar. */ #define GTK_STYLE_CLASS_WARNING "warning" /** * GTK_STYLE_CLASS_QUESTION: * - * A widget class for an area displaying a question to the user, - * such as those in infobars + * A CSS class for an area displaying a question to the user, + * such as those in infobars. + * + * This is used by #GtkInfoBar. */ #define GTK_STYLE_CLASS_QUESTION "question" /** * GTK_STYLE_CLASS_ERROR: * - * A widget class for an area displaying an error message, - * such as those in infobars + * A CSS class for an area displaying an error message, + * such as those in infobars. + * + * This is used by #GtkInfoBar. */ #define GTK_STYLE_CLASS_ERROR "error" /** * GTK_STYLE_CLASS_HORIZONTAL: * - * A widget class for horizontally layered widgets. + * A CSS class for horizontally layered widgets. + * + * This is used by widgets implementing #GtkOrientable. */ #define GTK_STYLE_CLASS_HORIZONTAL "horizontal" /** * GTK_STYLE_CLASS_VERTICAL: * - * A widget class for vertically layered widgets. + * A CSS class for vertically layered widgets. + * + * This is used by widgets implementing #GtkOrientable. */ #define GTK_STYLE_CLASS_VERTICAL "vertical" +/** + * GTK_STYLE_CLASS_TOP: + * + * A CSS class to indicate an area at the top of a widget. + * + * This is used by widgets that can render an area in different + * positions, such as tabs in a #GtkNotebook. + */ +#define GTK_STYLE_CLASS_TOP "top" + +/** + * GTK_STYLE_CLASS_BOTTOM: + * + * A CSS class to indicate an area at the bottom of a widget. + * + * This is used by widgets that can render an area in different + * positions, such as tabs in a #GtkNotebook. + */ +#define GTK_STYLE_CLASS_BOTTOM "bottom" + +/** + * GTK_STYLE_CLASS_LEFT: + * + * A CSS class to indicate an area at the left of a widget. + * + * This is used by widgets that can render an area in different + * positions, such as tabs in a #GtkNotebook. + */ +#define GTK_STYLE_CLASS_LEFT "left" + +/** + * GTK_STYLE_CLASS_RIGHT: + * + * A CSS class to indicate an area at the right of a widget. + * + * This is used by widgets that can render an area in different + * positions, such as tabs in a #GtkNotebook. + */ +#define GTK_STYLE_CLASS_RIGHT "right" + +/** + * GTK_STYLE_CLASS_PULSE: + * + * A CSS class to use when rendering a pulse in an indeterminate progress bar. + * + * This is used by #GtkProgressBar and #GtkEntry. + */ +#define GTK_STYLE_CLASS_PULSE "pulse" + +/** + * GTK_STYLE_CLASS_ARROW: + * + * A CSS class used when rendering an arrow element. + * + * Note that #gtk_render_arrow automatically adds this style class + * to the style context when rendering an arrow element. + */ +#define GTK_STYLE_CLASS_ARROW "arrow" + +/** + * GTK_STYLE_CLASS_OSD: + * + * A CSS class used when rendering an OSD (On Screen Display) element, + * on top of another container. + */ +#define GTK_STYLE_CLASS_OSD "osd" + +/** + * GTK_STYLE_CLASS_LEVEL_BAR: + * + * A CSS class used when rendering a level indicator, such + * as a battery charge level, or a password strength. + * + * This is used by #GtkLevelBar. + */ +#define GTK_STYLE_CLASS_LEVEL_BAR "level-bar" + +/** + * GTK_STYLE_CLASS_CURSOR_HANDLE: + * + * A CSS class used when rendering a drag handle for + * text selection. + */ +#define GTK_STYLE_CLASS_CURSOR_HANDLE "cursor-handle" + +/** + * GTK_STYLE_CLASS_INSERTION_CURSOR: + * + * A CSS class used when rendering a drag handle for + * the insertion cursor position. + */ +#define GTK_STYLE_CLASS_INSERTION_CURSOR "insertion-cursor" + /* Predefined set of widget regions */ @@ -453,7 +748,6 @@ struct _GtkStyleContextClass */ #define GTK_STYLE_REGION_TAB "tab" - GType gtk_style_context_get_type (void) G_GNUC_CONST; GtkStyleContext * gtk_style_context_new (void); @@ -474,6 +768,8 @@ void gtk_style_context_remove_provider (GtkStyleContext *context, void gtk_style_context_save (GtkStyleContext *context); void gtk_style_context_restore (GtkStyleContext *context); +GtkCssSection * gtk_style_context_get_section (GtkStyleContext *context, + const gchar *property); void gtk_style_context_get_property (GtkStyleContext *context, const gchar *property, GtkStateFlags state, @@ -489,13 +785,18 @@ void gtk_style_context_set_state (GtkStyleContext *context, GtkStateFlags flags); GtkStateFlags gtk_style_context_get_state (GtkStyleContext *context); +GDK_DEPRECATED_IN_3_6 gboolean gtk_style_context_state_is_running (GtkStyleContext *context, GtkStateType state, gdouble *progress); void gtk_style_context_set_path (GtkStyleContext *context, GtkWidgetPath *path); -G_CONST_RETURN GtkWidgetPath * gtk_style_context_get_path (GtkStyleContext *context); +const GtkWidgetPath * gtk_style_context_get_path (GtkStyleContext *context); +GDK_AVAILABLE_IN_3_4 +void gtk_style_context_set_parent (GtkStyleContext *context, + GtkStyleContext *parent); +GtkStyleContext *gtk_style_context_get_parent (GtkStyleContext *context); GList * gtk_style_context_list_classes (GtkStyleContext *context); @@ -526,7 +827,7 @@ void gtk_style_context_get_style (GtkStyleContext *context, ...); GtkIconSet * gtk_style_context_lookup_icon_set (GtkStyleContext *context, - const gchar *stock_id); + const gchar *stock_id); GdkPixbuf * gtk_icon_set_render_icon_pixbuf (GtkIconSet *icon_set, GtkStyleContext *context, GtkIconSize size); @@ -535,32 +836,46 @@ void gtk_style_context_set_screen (GtkStyleContext *context, GdkScreen *screen); GdkScreen * gtk_style_context_get_screen (GtkStyleContext *context); +GDK_AVAILABLE_IN_3_8 +void gtk_style_context_set_frame_clock (GtkStyleContext *context, + GdkFrameClock *frame_clock); +GDK_AVAILABLE_IN_3_8 +GdkFrameClock *gtk_style_context_get_frame_clock (GtkStyleContext *context); + + +GDK_DEPRECATED_IN_3_8_FOR(gtk_style_context_set_state) void gtk_style_context_set_direction (GtkStyleContext *context, GtkTextDirection direction); +GDK_DEPRECATED_IN_3_8_FOR(gtk_style_context_get_state) GtkTextDirection gtk_style_context_get_direction (GtkStyleContext *context); void gtk_style_context_set_junction_sides (GtkStyleContext *context, - GtkJunctionSides sides); + GtkJunctionSides sides); GtkJunctionSides gtk_style_context_get_junction_sides (GtkStyleContext *context); gboolean gtk_style_context_lookup_color (GtkStyleContext *context, const gchar *color_name, GdkRGBA *color); +GDK_DEPRECATED_IN_3_6 void gtk_style_context_notify_state_change (GtkStyleContext *context, GdkWindow *window, gpointer region_id, GtkStateType state, gboolean state_value); +GDK_DEPRECATED_IN_3_6 void gtk_style_context_cancel_animations (GtkStyleContext *context, gpointer region_id); +GDK_DEPRECATED_IN_3_6 void gtk_style_context_scroll_animations (GtkStyleContext *context, GdkWindow *window, gint dx, gint dy); +GDK_DEPRECATED_IN_3_6 void gtk_style_context_push_animatable_region (GtkStyleContext *context, gpointer region_id); +GDK_DEPRECATED_IN_3_6 void gtk_style_context_pop_animatable_region (GtkStyleContext *context); /* Some helper functions to retrieve most common properties */ @@ -574,9 +889,10 @@ void gtk_style_context_get_border_color (GtkStyleContext *context, GtkStateFlags state, GdkRGBA *color); -const PangoFontDescription * gtk_style_context_get_font (GtkStyleContext *context, - GtkStateFlags state); - +GDK_DEPRECATED_IN_3_8_FOR(gtk_style_context_get) +const PangoFontDescription * + gtk_style_context_get_font (GtkStyleContext *context, + GtkStateFlags state); void gtk_style_context_get_border (GtkStyleContext *context, GtkStateFlags state, GtkBorder *border); @@ -587,114 +903,131 @@ void gtk_style_context_get_margin (GtkStyleContext *context, GtkStateFlags state, GtkBorder *margin); -/* Semi-private API */ -const GValue * _gtk_style_context_peek_style_property (GtkStyleContext *context, - GType widget_type, - GtkStateFlags state, - GParamSpec *pspec); -void _gtk_style_context_invalidate_animation_areas (GtkStyleContext *context); -void _gtk_style_context_coalesce_animation_areas (GtkStyleContext *context, - GtkWidget *widget); +void gtk_style_context_invalidate (GtkStyleContext *context); +void gtk_style_context_reset_widgets (GdkScreen *screen); -void gtk_style_context_invalidate (GtkStyleContext *context); -void gtk_style_context_reset_widgets (GdkScreen *screen); - -void gtk_style_context_set_background (GtkStyleContext *context, - GdkWindow *window); +void gtk_style_context_set_background (GtkStyleContext *context, + GdkWindow *window); /* Paint methods */ -void gtk_render_check (GtkStyleContext *context, - cairo_t *cr, - gdouble x, - gdouble y, - gdouble width, - gdouble height); -void gtk_render_option (GtkStyleContext *context, - cairo_t *cr, - gdouble x, - gdouble y, - gdouble width, - gdouble height); -void gtk_render_arrow (GtkStyleContext *context, - cairo_t *cr, - gdouble angle, - gdouble x, - gdouble y, - gdouble size); -void gtk_render_background (GtkStyleContext *context, - cairo_t *cr, - gdouble x, - gdouble y, - gdouble width, - gdouble height); -void gtk_render_frame (GtkStyleContext *context, - cairo_t *cr, - gdouble x, - gdouble y, - gdouble width, - gdouble height); -void gtk_render_expander (GtkStyleContext *context, - cairo_t *cr, - gdouble x, - gdouble y, - gdouble width, - gdouble height); -void gtk_render_focus (GtkStyleContext *context, - cairo_t *cr, - gdouble x, - gdouble y, - gdouble width, - gdouble height); -void gtk_render_layout (GtkStyleContext *context, - cairo_t *cr, - gdouble x, - gdouble y, - PangoLayout *layout); -void gtk_render_line (GtkStyleContext *context, - cairo_t *cr, - gdouble x0, - gdouble y0, - gdouble x1, - gdouble y1); -void gtk_render_slider (GtkStyleContext *context, - cairo_t *cr, - gdouble x, - gdouble y, - gdouble width, - gdouble height, - GtkOrientation orientation); -void gtk_render_frame_gap (GtkStyleContext *context, - cairo_t *cr, - gdouble x, - gdouble y, - gdouble width, - gdouble height, - GtkPositionType gap_side, - gdouble xy0_gap, - gdouble xy1_gap); -void gtk_render_extension (GtkStyleContext *context, - cairo_t *cr, - gdouble x, - gdouble y, - gdouble width, - gdouble height, - GtkPositionType gap_side); -void gtk_render_handle (GtkStyleContext *context, - cairo_t *cr, - gdouble x, - gdouble y, - gdouble width, - gdouble height); -void gtk_render_activity (GtkStyleContext *context, - cairo_t *cr, - gdouble x, - gdouble y, - gdouble width, - gdouble height); - +void gtk_render_check (GtkStyleContext *context, + cairo_t *cr, + gdouble x, + gdouble y, + gdouble width, + gdouble height); +void gtk_render_option (GtkStyleContext *context, + cairo_t *cr, + gdouble x, + gdouble y, + gdouble width, + gdouble height); +void gtk_render_arrow (GtkStyleContext *context, + cairo_t *cr, + gdouble angle, + gdouble x, + gdouble y, + gdouble size); +void gtk_render_background (GtkStyleContext *context, + cairo_t *cr, + gdouble x, + gdouble y, + gdouble width, + gdouble height); +void gtk_render_frame (GtkStyleContext *context, + cairo_t *cr, + gdouble x, + gdouble y, + gdouble width, + gdouble height); +void gtk_render_expander (GtkStyleContext *context, + cairo_t *cr, + gdouble x, + gdouble y, + gdouble width, + gdouble height); +void gtk_render_focus (GtkStyleContext *context, + cairo_t *cr, + gdouble x, + gdouble y, + gdouble width, + gdouble height); +void gtk_render_layout (GtkStyleContext *context, + cairo_t *cr, + gdouble x, + gdouble y, + PangoLayout *layout); +void gtk_render_line (GtkStyleContext *context, + cairo_t *cr, + gdouble x0, + gdouble y0, + gdouble x1, + gdouble y1); +void gtk_render_slider (GtkStyleContext *context, + cairo_t *cr, + gdouble x, + gdouble y, + gdouble width, + gdouble height, + GtkOrientation orientation); +void gtk_render_frame_gap (GtkStyleContext *context, + cairo_t *cr, + gdouble x, + gdouble y, + gdouble width, + gdouble height, + GtkPositionType gap_side, + gdouble xy0_gap, + gdouble xy1_gap); +void gtk_render_extension (GtkStyleContext *context, + cairo_t *cr, + gdouble x, + gdouble y, + gdouble width, + gdouble height, + GtkPositionType gap_side); +void gtk_render_handle (GtkStyleContext *context, + cairo_t *cr, + gdouble x, + gdouble y, + gdouble width, + gdouble height); +void gtk_render_activity (GtkStyleContext *context, + cairo_t *cr, + gdouble x, + gdouble y, + gdouble width, + gdouble height); GdkPixbuf * gtk_render_icon_pixbuf (GtkStyleContext *context, const GtkIconSource *source, GtkIconSize size); +GDK_AVAILABLE_IN_3_2 +void gtk_render_icon (GtkStyleContext *context, + cairo_t *cr, + GdkPixbuf *pixbuf, + gdouble x, + gdouble y); +GDK_AVAILABLE_IN_3_4 +void gtk_render_insertion_cursor + (GtkStyleContext *context, + cairo_t *cr, + gdouble x, + gdouble y, + PangoLayout *layout, + int index, + PangoDirection direction); +GDK_DEPRECATED_IN_3_4 +void gtk_draw_insertion_cursor (GtkWidget *widget, + cairo_t *cr, + const GdkRectangle *location, + gboolean is_primary, + GtkTextDirection direction, + gboolean draw_arrow); + +/* Accessibility support */ +AtkAttributeSet *_gtk_style_context_get_attributes (AtkAttributeSet *attributes, + GtkStyleContext *context, + GtkStateFlags flags); G_END_DECLS