edit_forum_topic_box.h 992 B

1234567891011121314151617181920212223242526272829303132333435363738394041
  1. /*
  2. This file is part of Telegram Desktop,
  3. the official desktop application for the Telegram messaging service.
  4. For license and copyright information please follow this link:
  5. https://github.com/telegramdesktop/tdesktop/blob/master/LEGAL
  6. */
  7. #pragma once
  8. #include "ui/layers/generic_box.h"
  9. class History;
  10. namespace Data {
  11. struct TopicIconDescriptor;
  12. enum class CustomEmojiSizeTag : uchar;
  13. } // namespace Data
  14. namespace Ui::Text {
  15. class CustomEmoji;
  16. } // namespace Ui::Text
  17. namespace Window {
  18. class SessionController;
  19. } // namespace Window
  20. void NewForumTopicBox(
  21. not_null<Ui::GenericBox*> box,
  22. not_null<Window::SessionController*> controller,
  23. not_null<History*> forum);
  24. void EditForumTopicBox(
  25. not_null<Ui::GenericBox*> box,
  26. not_null<Window::SessionController*> controller,
  27. not_null<History*> forum,
  28. MsgId rootId);
  29. [[nodiscard]] std::unique_ptr<Ui::Text::CustomEmoji> MakeTopicIconEmoji(
  30. Data::TopicIconDescriptor descriptor,
  31. Fn<void()> repaint,
  32. Data::CustomEmojiSizeTag tag);