diff --git a/gtk/gtkcssprovider.c b/gtk/gtkcssprovider.c index 408f96c343..689a151b2d 100644 --- a/gtk/gtkcssprovider.c +++ b/gtk/gtkcssprovider.c @@ -186,7 +186,9 @@ * * * Refer to the documentation of individual widgets to learn which - * regions and pseudo-classes they define. + * regions and pseudo-classes they define and see + * for a list of all regions + * used by GTK+ widgets. * * * Regions in selectors diff --git a/gtk/gtkstylecontext.c b/gtk/gtkstylecontext.c index 190579d892..292ab12fa7 100644 --- a/gtk/gtkstylecontext.c +++ b/gtk/gtkstylecontext.c @@ -168,6 +168,214 @@ * by the animation. * * + * + * Style classes and regions + * + * Widgets can add style classes to their context, which can be used + * to associate different styles by class (see ). Theme engines can also use style classes to vary their + * rendering. GTK+ has a number of predefined style classes: + * + * + * + * + * Style class + * Macro + * Used by + * + * + * + * + * button + * GTK_STYLE_CLASS_BUTTON + * #GtkButton, #GtkToggleButton, #GtkRadioButton, #GtkCheckButton + * + * + * default + * GTK_STYLE_CLASS_DEFAULT + * #GtkButton + * + * + * check + * GTK_STYLE_CLASS_CHECK + * #GtkCheckButton, #GtkCheckMenuItem, #GtkCellRendererToggle + * + * + * radio + * GTK_STYLE_CLASS_RADIO + * #GtkRadioButton, #GtkRadioMenuItem, #GtkCellRendererToggle + * + * + * arrow + * GTK_STYLE_CLASS_ARROW + * #GtkArrow + * + * + * calendar + * GTK_STYLE_CLASS_CALENDAR + * #GtkCalendar + * + * + * entry + * GTK_STYLE_CLASS_ENTRY + * #GtkEntry + * + * + * cell + * GTK_STYLE_CLASS_CELL + * #GtkCellRendererToggle + * + * + * menu + * GTK_STYLE_CLASS_MENU + * #GtkMenu, #GtkMenuItem, #GtkCheckMenuItem, #GtkRadioMenuItem + * + * + * expander + * GTK_STYLE_CLASS_EXPANDER + * #GtkExpander + * + * + * tooltip + * GTK_STYLE_CLASS_TOOLTIP + * #GtkTooltip + * + * + * frame + * GTK_STYLE_CLASS_FRAME + * #GtkFrame + * + * + * scrolled-window + * + * #GtkScrolledWindow + * + * + * viewport + * + * #GtkViewport + * + * + * trough + * GTK_STYLE_CLASS_TROUGH + * #GtkScrollbar, #GtkProgressBar, #GtkScale + * + * + * progressbar + * GTK_STYLE_CLASS_PROGRESSBAR + * #GtkProgressBar, #GtkCellRendererProgress + * + * + * slider + * GTK_STYLE_CLASS_SLIDER + * #GtkScrollbar, #GtkScale + * + * + * menuitem + * GTK_STYLE_CLASS_MENUITEM + * #GtkMenuItem + * + * + * popup + * + * #GtkMenu + * + * + * accelerator + * GTK_STYLE_CLASS_ACCELERATOR + * #GtkAccelLabel + * + * + * menubar + * GTK_STYLE_CLASS_MENUBAR + * #GtkMenuBar + * + * + * toolbar + * GTK_STYLE_CLASS_TOOLBAR + * #GtkToolbar + * + * + * dock + * GTK_STYLE_CLASS_DOCK + * #GtkHandleBox + * + * + * notebook + * + * #GtkNotebook + * + * + * background + * GTK_STYLE_CLASS_BACKGROUND + * #GtkWindow + * + * + * rubberband + * GTK_STYLE_CLASS_RUBBERBAND + * + * + * + * header + * GTK_STYLE_CLASS_HEADER + * + * + * + * grip + * GTK_STYLE_CLASS_GRIP + * #GtkWindow + * + * + * spinner + * GTK_STYLE_CLASS_SPINNER + * #GtkSpinner + * + * + * + * + * + * + * Widgets can also add regions with flags to their context. + * The regions used by GTK+ widgets are: + * + * + * + * + * Region + * Flags + * Macro + * Used by + * + * + * + * + * row + * even, odd + * GTK_STYLE_REGION_ROW + * #GtkTreeView + * + * + * column + * first, last, sorted + * GTK_STYLE_REGION_COLUMN + * #GtkTreeView + * + * + * column-header + * + * GTK_STYLE_REGION_COLUMN_HEADER + * + * + * + * tab + * even, odd, first, last + * GTK_STYLE_REGION_TAB + * #GtkNotebook + * + * + * + * + * + * * * Custom styling in UI libraries and applications *