/* 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 "ui/layers/box_content.h" #include "mtproto/sender.h" namespace Ui { class RadiobuttonGroup; class Radiobutton; class FlatLabel; } // namespace Ui namespace Main { class Session; } // namespace Main class SelfDestructionBox : public Ui::BoxContent { public: enum class Type { Account, Sessions, }; SelfDestructionBox( QWidget*, not_null session, Type type, rpl::producer preloaded); static QString DaysLabel(int days); protected: void prepare() override; private: void gotCurrent(int days); void showContent(); const Type _type; const not_null _session; bool _prepared = false; std::vector _ttlValues; object_ptr _description = { nullptr }; object_ptr _loading; std::shared_ptr _ttlGroup; };