Moved out Type of ministars from class to separated enum class.

This commit is contained in:
23rd 2025-07-02 09:55:50 +03:00
parent b0971601b1
commit f2f5ffd861
10 changed files with 23 additions and 19 deletions

View file

@ -327,7 +327,7 @@ void SendCreditsBox(
const auto ministars = box->lifetime().make_state<MiniStars>( const auto ministars = box->lifetime().make_state<MiniStars>(
ministarsContainer, ministarsContainer,
false, false,
Ui::Premium::MiniStars::Type::BiStars); Ui::Premium::MiniStarsType::BiStars);
ministars->setColorOverride(Ui::Premium::CreditsIconGradientStops()); ministars->setColorOverride(Ui::Premium::CreditsIconGradientStops());
ministarsContainer->paintRequest( ministarsContainer->paintRequest(

View file

@ -107,7 +107,7 @@ ServiceBox::ServiceBox(
if (_content->buttonMinistars()) { if (_content->buttonMinistars()) {
_button.stars = std::make_unique<Ui::Premium::ColoredMiniStars>( _button.stars = std::make_unique<Ui::Premium::ColoredMiniStars>(
[=](const QRect &) { repaint(); }, [=](const QRect &) { repaint(); },
Ui::Premium::MiniStars::Type::SlowStars); Ui::Premium::MiniStarsType::SlowStars);
_button.lastFg = std::make_unique<QColor>(); _button.lastFg = std::make_unique<QColor>();
} }
} }

View file

@ -99,7 +99,7 @@ ButtonPart::ButtonPart(
, _link(std::move(link)) , _link(std::move(link))
, _stars([=](const QRect &) { , _stars([=](const QRect &) {
repaint(); repaint();
}, Ui::Premium::MiniStars::Type::SlowStars) }, Ui::Premium::MiniStarsType::SlowStars)
, _repaint(std::move(repaint)) { , _repaint(std::move(repaint)) {
} }

View file

@ -92,7 +92,7 @@ void GiftButton::setDescriptor(const GiftDescriptor &descriptor, Mode mode) {
return; return;
} }
auto player = base::take(_player); auto player = base::take(_player);
const auto starsType = Ui::Premium::MiniStars::Type::SlowStars; const auto starsType = Ui::Premium::MiniStarsType::SlowStars;
_mediaLifetime.destroy(); _mediaLifetime.destroy();
unsubscribe(); unsubscribe();

View file

@ -443,7 +443,7 @@ void AddMiniStars(
const auto stars = widget->lifetime().make_state<ColoredMiniStars>( const auto stars = widget->lifetime().make_state<ColoredMiniStars>(
widget, widget,
false, false,
Ui::Premium::MiniStars::Type::BiStars); Ui::Premium::MiniStarsType::BiStars);
stars->setColorOverride(Ui::Premium::CreditsIconGradientStops()); stars->setColorOverride(Ui::Premium::CreditsIconGradientStops());
widget->resize(boxWidth - photoSize, photoSize * heightRatio); widget->resize(boxWidth - photoSize, photoSize * heightRatio);
content->sizeValue( content->sizeValue(

View file

@ -14,9 +14,13 @@ https://github.com/telegramdesktop/tdesktop/blob/master/LEGAL
namespace Ui { namespace Ui {
namespace Premium { namespace Premium {
namespace {
using Type = MiniStarsType;
constexpr auto kDeformationMax = 0.1; constexpr auto kDeformationMax = 0.1;
} // namespace
MiniStars::MiniStars( MiniStars::MiniStars(
Fn<void(const QRect &r)> updateCallback, Fn<void(const QRect &r)> updateCallback,
bool opaque, bool opaque,

View file

@ -14,19 +14,19 @@ https://github.com/telegramdesktop/tdesktop/blob/master/LEGAL
namespace Ui { namespace Ui {
namespace Premium { namespace Premium {
class MiniStars final { enum class MiniStarsType {
public:
enum class Type {
MonoStars, MonoStars,
BiStars, BiStars,
SlowStars, SlowStars,
DiamondStars, DiamondStars,
}; };
class MiniStars final {
public:
MiniStars( MiniStars(
Fn<void(const QRect &r)> updateCallback, Fn<void(const QRect &r)> updateCallback,
bool opaque = false, bool opaque = false,
Type type = Type::MonoStars); MiniStarsType type = MiniStarsType::MonoStars);
void paint(QPainter &p, const QRectF &rect); void paint(QPainter &p, const QRectF &rect);
void setPaused(bool paused); void setPaused(bool paused);

View file

@ -226,7 +226,7 @@ bool CollectibleEmoji::readyInDefaultState() {
ColoredMiniStars::ColoredMiniStars( ColoredMiniStars::ColoredMiniStars(
not_null<Ui::RpWidget*> parent, not_null<Ui::RpWidget*> parent,
bool optimizeUpdate, bool optimizeUpdate,
MiniStars::Type type) MiniStarsType type)
: _ministars( : _ministars(
optimizeUpdate optimizeUpdate
? Fn<void(const QRect &)>([=](const QRect &r) { ? Fn<void(const QRect &)>([=](const QRect &r) {
@ -239,7 +239,7 @@ ColoredMiniStars::ColoredMiniStars(
ColoredMiniStars::ColoredMiniStars( ColoredMiniStars::ColoredMiniStars(
Fn<void(const QRect &)> update, Fn<void(const QRect &)> update,
MiniStars::Type type) MiniStarsType type)
: _ministars(update, true, type) { : _ministars(update, true, type) {
} }

View file

@ -25,8 +25,8 @@ public:
ColoredMiniStars( ColoredMiniStars(
not_null<Ui::RpWidget*> parent, not_null<Ui::RpWidget*> parent,
bool optimizeUpdate, bool optimizeUpdate,
MiniStars::Type type = MiniStars::Type::MonoStars); MiniStarsType type = MiniStarsType::MonoStars);
ColoredMiniStars(Fn<void(const QRect &)> update, MiniStars::Type type); ColoredMiniStars(Fn<void(const QRect &)> update, MiniStarsType type);
void setSize(const QSize &size); void setSize(const QSize &size);
void setPosition(QPoint position); void setPosition(QPoint position);

View file

@ -116,8 +116,8 @@ TopBar::TopBar(
this, this,
descriptor.optimizeMinistars, descriptor.optimizeMinistars,
(_logo == u"diamond"_q) (_logo == u"diamond"_q)
? MiniStars::Type::DiamondStars ? MiniStarsType::DiamondStars
: MiniStars::Type::BiStars) { : MiniStarsType::BiStars) {
std::move( std::move(
descriptor.title descriptor.title
) | rpl::start_with_next([=](QString text) { ) | rpl::start_with_next([=](QString text) {