Wt  4.11.1
Public Member Functions | List of all members
Wt::WCssTheme Class Reference

#include <Wt/WCssTheme.h>

Inheritance diagram for Wt::WCssTheme:
[legend]

Public Member Functions

 WCssTheme (const std::string &name)
 Constructor. More...
 
virtual std::string name () const override
 Returns a theme name. More...
 
virtual std::vector< WLinkedCssStyleSheetstyleSheets () const override
 Returns the stylesheets. More...
 
virtual void apply (WWidget *widget, WWidget *child, int widgetRole) const override
 Applies the theme to a child of a composite widget. More...
 
virtual void apply (WWidget *widget, DomElement &element, int elementRole) const override
 Applies the theme to a DOM element that renders a widget. More...
 
virtual std::string disabledClass () const override
 Returns a generic CSS class name for a disabled element. More...
 
virtual std::string activeClass () const override
 Returns a generic CSS class name for an active element. More...
 
virtual std::string utilityCssClass (int utilityCssClassRole) const override
 Returns a generic CSS class name for the chosen role. More...
 
virtual bool canStyleAnchorAsButton () const override
 Returns whether the theme allows for an anchor to be styled as a button. More...
 
virtual void applyValidationStyle (WWidget *widget, const Wt::WValidator::Result &validation, WFlags< ValidationStyleFlag > styles) const override
 Applies a style that indicates the result of validation.
 
- Public Member Functions inherited from Wt::WTheme
 WTheme ()
 Constructor.
 
virtual ~WTheme ()
 Destructor.
 
virtual std::string resourcesUrl () const
 Returns the URL where theme-related resources are stored. More...
 
virtual void serveCss (WStringStream &out) const
 Serves the CSS for the theme. More...
 
virtual void init (WApplication *app) const
 Called when the theme is assigned to a WApplication. More...
 
virtual Side panelCollapseIconSide () const
 Returns which side the WPanel collapse icon should be added on. More...
 
- Public Member Functions inherited from Wt::WObject
void addChild (std::unique_ptr< WObject > child)
 Add a child WObject whose lifetime is determined by this WObject.
 
template<typename Child >
Child * addChild (std::unique_ptr< Child > child)
 Add a child WObject, returning a raw pointer. More...
 
std::unique_ptr< WObjectremoveChild (WObject *child)
 Remove a child WObject, so its lifetime is no longer determined by this WObject.
 
template<typename Child >
std::unique_ptr< Child > removeChild (Child *child)
 Remove a child WObject, so its lifetime is no longer determined by this WObject. More...
 
virtual const std::string id () const
 Returns the (unique) identifier for this object. More...
 
virtual void setObjectName (const std::string &name)
 Sets an object name. More...
 
virtual std::string objectName () const
 Returns the object name. More...
 
void resetLearnedSlots ()
 Resets learned stateless slot implementations. More...
 
template<class T >
void resetLearnedSlot (void(T::*method)())
 Resets a learned stateless slot implementation. More...
 
template<class T >
WStatelessSlot * implementStateless (void(T::*method)())
 Declares a slot to be stateless and learn client-side behaviour on first invocation. More...
 
template<class T >
WStatelessSlot * implementStateless (void(T::*method)(), void(T::*undoMethod)())
 Declares a slot to be stateless and learn client-side behaviour in advance. More...
 
void isNotStateless ()
 Marks the current function as not stateless. More...
 
template<class T >
WStatelessSlot * implementJavaScript (void(T::*method)(), const std::string &jsCode)
 Provides a JavaScript implementation for a method. More...
 
- Public Member Functions inherited from Wt::Core::observable
 observable () noexcept
 Default constructor.
 
virtual ~observable ()
 Destructor. More...
 
template<typename... Args, typename C >
auto bindSafe (void(C::*method)(Args...)) noexcept
 Protects a method call against object destruction. More...
 
template<typename... Args, typename C >
auto bindSafe (void(C::*method)(Args...) const) const noexcept
 Protects a const method call against object destruction. More...
 
template<typename Function >
auto bindSafe (const Function &function) noexcept
 Protects a function against object destruction. More...
 

Additional Inherited Members

- Public Types inherited from Wt::WObject
typedef void(WObject::* Method) ()
 Typedef for a WObject method without arguments.
 
- Protected Member Functions inherited from Wt::WObject
virtual WStatelessSlot * getStateless (Method method)
 On-demand stateless slot implementation. More...
 

Detailed Description

CSS-based theme support. This implements the classic Wt themes, which were available before theme support was customized with the addition of the WTheme class.

The following table shows which style classes are applied by this theme.

WAbstractItemView * .Wt-itemview
.Wt-itemview .Wt-headerdiv the header container
.Wt-itemview .Wt-header the header
.Wt-itemview .Wt-header .Wt-label a header label
.Wt-itemview .Wt-header .Wt-label a header label
.Wt-itemview .Wt-tv-rh resize handle
.Wt-itemview .Wt-tv-sh sort handle
.Wt-itemview .Wt-tv-sh-none sort handle, unsorted
.Wt-itemview .Wt-tv-sh-down sort handle, descending sort
.Wt-itemview .Wt-tv-sh-up sort handle, ascending sort
.Wt-itemview .Wt-selected selected item (or row)
.Wt-itemview .Wt-spacer spacer (briefly visible during scrolling)
WAbstractSpinBox .Wt-spinbox (for the HTML4 implementation)
WCalendar * .Wt-cal
.Wt-cal table.d1 the table (single letter days)
.Wt-cal table.d3 the table (three letter days)
.Wt-cal table.dlong the table (ful day names)
.Wt-cal th.caption a caption cell (containing month/year navigation)
.Wt-cal th week day header cell
.Wt-cal td day cell
.Wt-cal-oom out-of-month day
.Wt-cal-oom out-of-range day (ray < bottom or day > top)
.Wt-cal-sel selected day
.Wt-cal-now today
WDateEdit .Wt-dateedit
.Wt-datepicker the popup
WDatePicker .Wt-datepicker the popup
WDialog .Wt-dialog the dialog
.Wt-dialog .closeicon the close icon in the titlebar
.Wt-dialog .titlebar the titlebar
.Wt-dialog .body the dialog body
.Wt-dialog .footer the dialog footer
WMenuItem .item an unselected item
.itemselected a selected item
.item.Wt-closable a closable item
.item.Wt-separator a separator item
.item.Wt-sectheader a section header item
.item .Wt-icon the item's icon
.item .Wt-chkbox the item's checkbox
.item .closeicon the item's close icon
WMessageBox .Wt-dialog see supra (WDialog)
WPanel .Wt-panel
.Wt-panel .titlebar the titlebar
.Wt-panel .body the body
WPopupMenu .Wt-popupmenu the popup menu; for the items, see supra (WMenuItem)
WPopupWidget .Wt-outset
WProgressBar .Wt-progressbar
.Wt-progressbar .Wt-pgb-bar the bar
.Wt-progressbar .Wt-pgb-label the value label
WPushButton .Wt-btn
WSlider * .Wt-slider-h or .Wt-slider-v for horizontal or vertical slider
.Wt-slider-[hv] .Wt-slider-bg background element
.Wt-slider-[hv] .fill fill to the current value
.Wt-slider-[hv] .handle the slider handle
.Wt-slider-[hv] .Wt-w an additional element for styling
.Wt-slider-[hv] .Wt-e an additional element for styling
WSuggestionPopup .Wt-suggest
.Wt-suggest li an item
.Wt-suggest .active an active item
WTabWidget .Wt-tabs the header, which is a WMenu
WTableView * .Wt-tableview see supra (WAbstractItemView)
.Wt-tableview .Wt-contents the contents area
.Wt-tableview .Wt-contents .Wt-tv-c a contents cell
WTreeNode * .Wt-tree a tree node
.Wt-tree.Wt-trunk a trunk node
.Wt-tree.Wt-end an end node (last node within parent)
.Wt-tree ul children list
.Wt-tree .Wt-ctrl collapse/expand control
.Wt-tree .Wt-ctrl.expand expand control
.Wt-tree .Wt-ctrl.collapse collapse control
.Wt-tree .Wt-ctrl.noexpand an item that cannot be expanded
.Wt-tree .Wt-selected a selected node
.Wt-tree .Wt-label the label
WTreeView * .Wt-treeview see supra (WAbstractItemView)
.Wt-treeview ul a node
.Wt-treeview ul.Wt-tv-root the root node
.Wt-treeview .Wt-tv-row a row of additional cells
.Wt-treeview .Wt-trunk a trunk node
.Wt-treeview .Wt-end an end node (last node within parent)
.Wt-treeview .Wt-ctrl collapse/expand control
.Wt-treeview .Wt-ctrl.expand expand control
.Wt-treeview .Wt-ctrl.collapse collapse control
.Wt-treeview .Wt-ctrl.noexpand an item that cannot be expanded

* CSS selectors for these widgets are currently still hard-coded in the widget itself.

See also
WApplication::setTheme()

Constructor & Destructor Documentation

◆ WCssTheme()

Wt::WCssTheme::WCssTheme ( const std::string &  name)

Constructor.

Creates a classic Wt theme. Wt comes with two CSS themes: "polished" and default. For the bootstrap theme, use WBootstrapTheme.

Member Function Documentation

◆ activeClass()

std::string Wt::WCssTheme::activeClass ( ) const
overridevirtual

Returns a generic CSS class name for an active element.

The CSS class Wt-selected is applied to active classes.

Implements Wt::WTheme.

◆ apply() [1/2]

void Wt::WCssTheme::apply ( WWidget widget,
DomElement element,
int  elementRole 
) const
overridevirtual

Applies the theme to a DOM element that renders a widget.

The element is a rendered representation of the widget, and may be further customized to reflect the theme.

Implements Wt::WTheme.

◆ apply() [2/2]

void Wt::WCssTheme::apply ( WWidget widget,
WWidget child,
int  widgetRole 
) const
overridevirtual

Applies the theme to a child of a composite widget.

The widgetRole indicates the role that child has within the implementation of the widget.

Implements Wt::WTheme.

◆ canStyleAnchorAsButton()

bool Wt::WCssTheme::canStyleAnchorAsButton ( ) const
overridevirtual

Returns whether the theme allows for an anchor to be styled as a button.

Returns false.

Implements Wt::WTheme.

◆ disabledClass()

std::string Wt::WCssTheme::disabledClass ( ) const
overridevirtual

Returns a generic CSS class name for a disabled element.

The CSS class Wt-disabled is applied to disabled classes.

Implements Wt::WTheme.

◆ name()

std::string Wt::WCssTheme::name ( ) const
overridevirtual

Returns a theme name.

Returns a unique name for the theme. This name is used by the default implementation of resourcesUrl() to compute a location for the theme's resources.

Implements Wt::WTheme.

◆ styleSheets()

std::vector< WLinkedCssStyleSheet > Wt::WCssTheme::styleSheets ( ) const
overridevirtual

Returns the stylesheets.

Returns wt.css, plus on IE wt_ie.css, plus on IE6 wt_ie6.css. The style sheets are located in the theme directory in the resources folder.

Implements Wt::WTheme.

◆ utilityCssClass()

std::string Wt::WCssTheme::utilityCssClass ( int  utilityCssClassRole) const
overridevirtual

Returns a generic CSS class name for the chosen role.

See also
WTheme::utilityCssClassRole

Implements Wt::WTheme.