30 lines
678 B
C
30 lines
678 B
C
|
/*
|
||
|
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
|
||
|
|
||
|
namespace UserpicBuilder {
|
||
|
|
||
|
[[nodiscard]] QImage GenerateGradient(
|
||
|
const QSize &size,
|
||
|
const std::vector<QColor> &colors,
|
||
|
bool circle = true);
|
||
|
|
||
|
struct StartData {
|
||
|
DocumentId documentId = DocumentId(0);
|
||
|
int builderColorIndex = 0;
|
||
|
std::vector<QColor> gradientEditorColors;
|
||
|
};
|
||
|
|
||
|
template <typename Result>
|
||
|
struct BothWayCommunication {
|
||
|
rpl::producer<> triggers;
|
||
|
Fn<void(Result)> result;
|
||
|
};
|
||
|
|
||
|
} // namespace UserpicBuilder
|