info_userpic_emoji_builder_widget.h 967 B

12345678910111213141516171819202122232425262728293031323334353637383940
  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. namespace Ui {
  9. class RpWidget;
  10. class VerticalLayout;
  11. } // namespace Ui
  12. namespace Window {
  13. class SessionController;
  14. } // namespace Window
  15. namespace UserpicBuilder {
  16. struct StartData;
  17. struct Result;
  18. template <typename Result>
  19. struct BothWayCommunication;
  20. not_null<Ui::VerticalLayout*> CreateUserpicBuilder(
  21. not_null<Ui::RpWidget*> parent,
  22. not_null<Window::SessionController*> controller,
  23. StartData data,
  24. BothWayCommunication<UserpicBuilder::Result> communication);
  25. [[nodiscard]] not_null<Ui::RpWidget*> CreateEmojiUserpic(
  26. not_null<Ui::RpWidget*> parent,
  27. const QSize &size,
  28. rpl::producer<not_null<DocumentData*>> document,
  29. rpl::producer<int> colorIndex,
  30. bool isForum);
  31. } // namespace UserpicBuilder