MCPcopy Create free account
hub / github.com/YACReader/yacreader / applyTheme

Method applyTheme

YACReaderLibrary/grid_comics_view.cpp:497–555  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

495}
496
497void GridComicsView::applyTheme(const Theme &theme)
498{
499 QQmlContext *ctxt = view->rootContext();
500 const auto &giv = theme.gridAndInfoView;
501
502 // Grid colors
503 ctxt->setContextProperty("backgroundColor", giv.backgroundColor);
504 ctxt->setContextProperty("backgroundBlurOverlayColor", giv.backgroundBlurOverlayColor);
505 ctxt->setContextProperty("cellColor", giv.cellColor);
506 ctxt->setContextProperty("cellSelectedColor", giv.cellSelectedColor);
507 ctxt->setContextProperty("cellSelectedBorderColor", giv.cellSelectedBorderColor);
508 ctxt->setContextProperty("borderColor", giv.borderColor);
509 ctxt->setContextProperty("itemTitleColor", giv.itemTitleColor);
510 ctxt->setContextProperty("itemDetailsColor", giv.itemDetailsColor);
511 ctxt->setContextProperty("showDropShadow", QVariant(giv.showDropShadow));
512
513 // Info panel colors
514 ctxt->setContextProperty("infoBackgroundColor", giv.infoBackgroundColor);
515 ctxt->setContextProperty("infoMetadataTextColor", giv.infoMetadataTextColor);
516 ctxt->setContextProperty("infoTextColor", giv.infoTextColor);
517
518 // Rating and favorite colors
519 ctxt->setContextProperty("ratingUnselectedColor", giv.ratingUnselectedColor);
520 ctxt->setContextProperty("ratingSelectedColor", giv.ratingSelectedColor);
521 ctxt->setContextProperty("favUncheckedColor", giv.favUncheckedColor);
522 ctxt->setContextProperty("favCheckedColor", giv.favCheckedColor);
523 ctxt->setContextProperty("readTickUncheckedColor", giv.readTickUncheckedColor);
524 ctxt->setContextProperty("readTickCheckedColor", giv.readTickCheckedColor);
525
526 // Current comic banner
527 ctxt->setContextProperty("currentComicBackgroundColor", giv.currentComicBackgroundColor);
528
529 // New item indicator, button colors, links, scrollbars, cover borders, shadows
530 ctxt->setContextProperty("newItemColor", giv.newItemColor);
531 ctxt->setContextProperty("buttonColor", giv.buttonColor);
532 ctxt->setContextProperty("buttonTextColor", giv.buttonTextColor);
533 ctxt->setContextProperty("themeLinkColor", giv.linkColor);
534 ctxt->setContextProperty("themeLinkColorStr", giv.linkColor.name());
535 ctxt->setContextProperty("scrollbarColor", giv.scrollbarColor);
536 ctxt->setContextProperty("scrollbarBorderColor", giv.scrollbarBorderColor);
537 ctxt->setContextProperty("infoScrollbarColor", giv.infoScrollbarColor);
538 ctxt->setContextProperty("comicCoverBorderColor", giv.comicCoverBorderColor);
539 ctxt->setContextProperty("currentComicCoverShadowColor", giv.currentComicCoverShadowColor);
540 ctxt->setContextProperty("buttonShadowColor", giv.buttonShadowColor);
541
542 // Update background config to apply theme cell colors
543 updateBackgroundConfig();
544
545 // Update show info action icon
546 showInfoAction->setIcon(theme.comicsViewToolbar.showComicInfoIcon);
547
548 // Update zoom slider icons (if they exist - created in setToolBar)
549 if (smallZoomLabel) {
550 smallZoomLabel->setPixmap(theme.comicsViewToolbar.smallGridZoomIcon.pixmap(18, 18));
551 }
552 if (bigZoomLabel) {
553 bigZoomLabel->setPixmap(theme.comicsViewToolbar.bigGridZoomIcon.pixmap(18, 18));
554 }

Callers

nothing calls this directly

Calls 4

setIconMethod · 0.80
setPixmapMethod · 0.80
pixmapMethod · 0.80
nameMethod · 0.45

Tested by

no test coverage detected