Added ability to open photo editor with saved modifications.

This commit is contained in:
23rd 2021-02-08 06:38:07 +03:00
parent 4d72d20398
commit 85c21ba0e4
4 changed files with 15 additions and 6 deletions

View file

@ -15,9 +15,14 @@ namespace Editor {
PhotoEditor::PhotoEditor( PhotoEditor::PhotoEditor(
not_null<Ui::RpWidget*> parent, not_null<Ui::RpWidget*> parent,
std::shared_ptr<QPixmap> photo) std::shared_ptr<QPixmap> photo,
PhotoModifications modifications)
: RpWidget(parent) : RpWidget(parent)
, _content(base::make_unique_q<PhotoEditorContent>(this, photo)) , _modifications(modifications)
, _content(base::make_unique_q<PhotoEditorContent>(
this,
photo,
modifications))
, _controls(base::make_unique_q<PhotoEditorControls>(this)) { , _controls(base::make_unique_q<PhotoEditorControls>(this)) {
sizeValue( sizeValue(
) | rpl::start_with_next([=](const QSize &size) { ) | rpl::start_with_next([=](const QSize &size) {

View file

@ -22,7 +22,8 @@ class PhotoEditor final : public Ui::RpWidget {
public: public:
PhotoEditor( PhotoEditor(
not_null<Ui::RpWidget*> parent, not_null<Ui::RpWidget*> parent,
std::shared_ptr<QPixmap> photo); std::shared_ptr<QPixmap> photo,
PhotoModifications modifications);
void save(); void save();
rpl::producer<PhotoModifications> done() const; rpl::producer<PhotoModifications> done() const;

View file

@ -13,8 +13,10 @@ namespace Editor {
PhotoEditorContent::PhotoEditorContent( PhotoEditorContent::PhotoEditorContent(
not_null<Ui::RpWidget*> parent, not_null<Ui::RpWidget*> parent,
std::shared_ptr<QPixmap> photo) std::shared_ptr<QPixmap> photo,
: RpWidget(parent) { PhotoModifications modifications)
: RpWidget(parent)
, _modifications(modifications) {
rpl::combine( rpl::combine(
_modifications.value(), _modifications.value(),

View file

@ -17,7 +17,8 @@ class PhotoEditorContent final : public Ui::RpWidget {
public: public:
PhotoEditorContent( PhotoEditorContent(
not_null<Ui::RpWidget*> parent, not_null<Ui::RpWidget*> parent,
std::shared_ptr<QPixmap> photo); std::shared_ptr<QPixmap> photo,
PhotoModifications modifications);
void applyModifications(PhotoModifications modifications); void applyModifications(PhotoModifications modifications);