void WBootstrapTheme::apply(WWidget *widget, WWidget *child, int widgetRole) const { switch (widgetRole) { case MenuItemIconRole: child->addStyleClass("Wt-icon"); break; case MenuItemCheckBoxRole: child->addStyleClass("Wt-chkbox"); break; case DialogCoverRole: child->addStyleClass("modal-backdrop"); break; case DialogTitleBarRole: child->addStyleClass("modal-header"); break; case DialogBodyRole: child->addStyleClass("modal-body"); break; case DialogFooterRole: child->addStyleClass("modal-footer"); break; case DialogCloseIconRole: { child->addStyleClass("close"); WText *t = dynamic_cast<WText *>(child); t->setText("×"); break; } case TableViewRowContainerRole: { WAbstractItemView *view = dynamic_cast<WAbstractItemView *>(widget); child->toggleStyleClass("Wt-striped", view->alternatingRowColors()); break; } case DatePickerPopupRole: child->addStyleClass("Wt-datepicker"); break; case PanelTitleBarRole: child->addStyleClass("accordion-heading"); break; case PanelCollapseButtonRole: case PanelTitleRole: child->addStyleClass("accordion-toggle"); break; case PanelBodyRole: child->addStyleClass("accordion-inner"); break; case AuthWidgets: WApplication *app = WApplication::instance(); app->builtinLocalizedStrings().useBuiltin (skeletons::AuthBootstrapTheme_xml1); break; } }
void WCssTheme::apply(WWidget *widget, WWidget *child, int widgetRole) const { switch (widgetRole) { case MenuItemIconRole: child->addStyleClass("Wt-icon"); break; case MenuItemCheckBoxRole: child->addStyleClass("Wt-chkbox"); break; case MenuItemCloseRole: widget->addStyleClass("Wt-closable"); child->addStyleClass("closeicon"); break; case DialogCoverRole: child->setStyleClass("Wt-dialogcover"); break; case DialogTitleBarRole: child->addStyleClass("titlebar"); break; case DialogBodyRole: child->addStyleClass("body"); break; case DialogFooterRole: child->addStyleClass("footer"); break; case DialogCloseIconRole: child->addStyleClass("closeicon"); break; case TableViewRowContainerRole: { WAbstractItemView *view = dynamic_cast<WAbstractItemView *>(widget); std::string backgroundImage; if (view->alternatingRowColors()) backgroundImage = "stripes/stripe-"; else backgroundImage = "no-stripes/no-stripe-"; backgroundImage = resourcesUrl() + backgroundImage + boost::lexical_cast<std::string> (static_cast<int>(view->rowHeight().toPixels())) + "px.gif"; child->decorationStyle().setBackgroundImage(WLink(backgroundImage)); break; } case DatePickerPopupRole: child->addStyleClass("Wt-datepicker"); break; case PanelTitleBarRole: child->addStyleClass("titlebar"); break; case PanelBodyRole: child->addStyleClass("body"); break; case AuthWidgets: WApplication *app = WApplication::instance(); app->useStyleSheet(WApplication::relativeResourcesUrl() + "form.css"); app->builtinLocalizedStrings().useBuiltin(skeletons::AuthCssTheme_xml1); break; } }
void WBootstrapTheme::apply(WWidget *widget, WWidget *child, int widgetRole) const { if (!widget->isThemeStyleEnabled()) return; switch (widgetRole) { case MenuItemIcon: child->addStyleClass("Wt-icon"); break; case MenuItemCheckBox: child->setStyleClass("Wt-chkbox"); ((WFormWidget *)child)->label()->addStyleClass("checkbox-inline"); break; case MenuItemClose: { child->addStyleClass("close"); WText *t = dynamic_cast<WText *>(child); t->setText("×"); break; } case DialogContent: if (version_ == BootstrapVersion::v3) child->addStyleClass("modal-content"); break; case DialogCoverWidget: if (version_ == BootstrapVersion::v3) child->addStyleClass("modal-backdrop in"); else child->addStyleClass("modal-backdrop Wt-bootstrap2"); break; case DialogTitleBar: child->addStyleClass("modal-header"); break; case DialogBody: child->addStyleClass("modal-body"); break; case DialogFooter: child->addStyleClass("modal-footer"); break; case DialogCloseIcon: { child->addStyleClass("close"); WText *t = dynamic_cast<WText *>(child); t->setText("×"); break; } case TableViewRowContainer: { WAbstractItemView *view = dynamic_cast<WAbstractItemView *>(widget); child->toggleStyleClass("Wt-striped", view->alternatingRowColors()); break; } case DatePickerPopup: child->addStyleClass("Wt-datepicker"); break; case TimePickerPopup: child->addStyleClass("Wt-timepicker"); break; case PanelTitleBar: child->addStyleClass(classAccordionHeading()); break; case PanelCollapseButton: case PanelTitle: child->addStyleClass("accordion-toggle"); break; case PanelBody: child->addStyleClass(classAccordionInner()); break; case InPlaceEditing: if (version_ == BootstrapVersion::v2) child->addStyleClass("input-append"); else child->addStyleClass("input-group"); break; case NavCollapse: child->addStyleClass(classNavCollapse()); break; case NavBrand: child->addStyleClass(classBrand()); break; case NavbarSearch: child->addStyleClass(classNavbarSearch()); break; case NavbarAlignLeft: child->addStyleClass(classNavbarLeft()); break; case NavbarAlignRight: child->addStyleClass(classNavbarRight()); break; case NavbarMenu: child->addStyleClass(classNavbarMenu()); break; case NavbarBtn: child->addStyleClass(classNavbarBtn()); break; } }