File indexing completed on 2025-02-02 04:11:25

0001 /*
0002  * SPDX-FileCopyrightText: 2019-2023 Mattia Basaglia <dev@dragon.best>
0003  *
0004  * SPDX-License-Identifier: GPL-3.0-or-later
0005  */
0006 
0007 #ifndef RESIZEDIALOG_H
0008 #define RESIZEDIALOG_H
0009 
0010 #include <QDialog>
0011 #include <memory>
0012 
0013 #include "model/assets/composition.hpp"
0014 
0015 namespace glaxnimate::gui {
0016 
0017 class ResizeDialog : public QDialog
0018 {
0019     Q_OBJECT
0020 
0021 public:
0022     ResizeDialog(QWidget* parent = nullptr);
0023 
0024     ~ResizeDialog();
0025 
0026     void resize_composition(model::Composition* comp);
0027 
0028 protected:
0029     void changeEvent ( QEvent* e ) override;
0030 
0031 private Q_SLOTS:
0032     void width_changed(int w);
0033     void height_changed(int h);
0034     void lock_changed(bool locked);
0035 
0036 private:
0037     class Private;
0038     std::unique_ptr<Private> d;
0039 };
0040 
0041 } // namespace glaxnimate::gui
0042 
0043 #endif // RESIZEDIALOG_H