/* This file is part of Telegram Desktop, the official desktop application for the Telegram messaging service. For license and copyright information please follow this link: https://github.com/telegramdesktop/tdesktop/blob/master/LEGAL */ #pragma once #include "base/object_ptr.h" namespace style { struct RoundCheckbox; } // namespace style namespace Ui { class BoxContent; class GenericBox; class DynamicImage; struct TextWithContext { TextWithEntities text; Text::MarkedContext context; }; struct PaidReactionTop { QString name; std::shared_ptr photo; uint64 barePeerId = 0; int count = 0; Fn click; bool my = false; }; struct PaidReactionBoxArgs { int chosen = 0; int max = 0; std::vector top; QString channel; Fn(rpl::producer amount)> submit; rpl::producer balanceValue; Fn send; }; void PaidReactionsBox( not_null box, PaidReactionBoxArgs &&args); [[nodiscard]] object_ptr MakePaidReactionBox( PaidReactionBoxArgs &&args); [[nodiscard]] QImage GenerateSmallBadgeImage( QString text, const style::icon &icon, QColor bg, QColor fg, const style::RoundCheckbox *borderSt = nullptr); } // namespace Ui