10#ifndef INFO_BANNER_WIDGET_H
11#define INFO_BANNER_WIDGET_H
209 QList<BannerSlide> slides_;
215 QMap<BannerSlideType, bool> slide_type_visible_;
216 QTimer *auto_advance_timer_;
217 int auto_advance_ms_;
221 QMap<BannerSlideType, SlideTypeConfig> type_config_;
224 QMap<BannerSlideType, QList<BannerSlide>> slides_by_type_;
227 QMap<BannerSlideType, int> type_offsets_;
229 QColor default_color_start_;
230 QColor default_color_end_;
246 QString resolveI18nField(
const QJsonObject &obj,
247 const QString &field,
248 bool is_custom)
const;
260 void loadSlidesFromResource(
const QString &resource_path,
262 QMap<BannerSlideType, SlideTypeConfig> &file_config,
268 void applySlideFilter();
273 void buildSlideSequence();
283 void advanceRandomSlide();
293 void updateAccessibility();
301 int dotHitTest(
const QPoint &pos)
const;
309 QRect dotRect(
int index)
const;
315 QRect buttonRect()
const;
335 const QString &resource_path,
336 const QString &context,
341 static constexpr int kCardWidth = 300;
342 static constexpr int kCardHeight = 360;
343 static constexpr int kCardHeightCompact = 180;
344 static constexpr int kIllustrationHeight = 120;
345 static constexpr int kContentLeftMargin = 16;
346 static constexpr int kContentRightMargin = 16;
347 static constexpr int kDotRadius = 4;
348 static constexpr int kDotSpacing = 12;
349 static constexpr int kDotBottomMargin = 14;
350 static constexpr int kDefaultAutoAdvanceMs = 8000;
Describes the full content and display metadata for a single banner slide.
Definition info_banner_widget.h:42
int date_day
Definition info_banner_widget.h:53
QString description_sub
Definition info_banner_widget.h:47
QDate date_until
Definition info_banner_widget.h:56
QDate date_from
Definition info_banner_widget.h:55
QString tag
Definition info_banner_widget.h:44
int date_month
Definition info_banner_widget.h:52
QString application
Definition info_banner_widget.h:54
QString body_text
Definition info_banner_widget.h:48
QString url
Definition info_banner_widget.h:50
QString image
Definition info_banner_widget.h:51
QString button_label
Definition info_banner_widget.h:49
QString title
Definition info_banner_widget.h:45
BannerSlideType type
Definition info_banner_widget.h:43
QString description
Definition info_banner_widget.h:46
Per-type display configuration controlling selection, limits, and gradient styling of banner slides.
Definition info_banner_widget.h:63
bool hidden
Definition info_banner_widget.h:67
QColor color_start
Definition info_banner_widget.h:68
QColor color_end
Definition info_banner_widget.h:69
QList< QColor > steps
Definition info_banner_widget.h:71
bool only
Definition info_banner_widget.h:66
bool randomized
Definition info_banner_widget.h:64
int maxdisplay
Definition info_banner_widget.h:65
int color_gradient
Definition info_banner_widget.h:70