65 void setCompactMode(
bool compact);
66 bool isCompactMode()
const;
67 void setSlideTypeVisible(BannerSlideType type,
bool visible);
68 void setAutoAdvanceInterval(
unsigned seconds);
69 void applySlideFilter();
70 bool hasVisibleSlides()
const;
72 QSize sizeHint()
const override;
73 QSize minimumSizeHint()
const override;
78 void paintEvent(QPaintEvent *event)
override;
79 void mousePressEvent(QMouseEvent *event)
override;
80 void mouseMoveEvent(QMouseEvent *event)
override;
81 void leaveEvent(QEvent *event)
override;
82 void changeEvent(QEvent *event)
override;
83 bool event(QEvent *event)
override;
86 QList<BannerSlide> slides_;
90 QMap<BannerSlideType, bool> slide_type_visible_;
91 QTimer *auto_advance_timer_;
95 QMap<BannerSlideType, SlideTypeConfig> type_config_;
97 QMap<BannerSlideType, QList<BannerSlide>> slides_by_type_;
99 QMap<BannerSlideType, int> type_offsets_;
101 QColor default_color_start_;
102 QColor default_color_end_;
105 QString resolveI18nField(
const QJsonObject &obj,
106 const QString &field,
107 bool is_custom)
const;
108 void loadSlidesFromResource(
const QString &resource_path,
110 QMap<BannerSlideType, SlideTypeConfig> &file_config,
111 QMap<BannerSlideType, QList<BannerSlide>> &file_slides);
112 void buildSlideSequence();
119 void updateAccessibility();
120 int dotHitTest(
const QPoint &pos)
const;
121 QRect dotRect(
int index)
const;
122 QRect buttonRect()
const;
123 static BannerSlideType typeFromString(
const QString &type_str);
124 static BannerSlideType validTypeFromString(
const QString &type_str,
125 const QString &resource_path,
126 const QString &context,
130 static constexpr int kCardWidth = 300;
131 static constexpr int kCardHeight = 360;
132 static constexpr int kCardHeightCompact = 180;
133 static constexpr int kIllustrationHeight = 120;
134 static constexpr int kContentLeftMargin = 16;
135 static constexpr int kContentRightMargin = 16;
136 static constexpr int kDotRadius = 4;
137 static constexpr int kDotSpacing = 12;
138 static constexpr int kDotBottomMargin = 14;
139 static constexpr int kDefaultAutoAdvanceMs = 8000;