Warning, file /graphics/glaxnimate/src/gui/widgets/view_transform_widget.hpp was not indexed or was modified since last indexation (in which case cross-reference links may be missing, inaccurate or erroneous).

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 VIEWTRANSFORMWIDGET_H
0008 #define VIEWTRANSFORMWIDGET_H
0009 
0010 #include <QWidget>
0011 #include <memory>
0012 
0013 namespace glaxnimate::gui {
0014 
0015 namespace Ui
0016 {
0017 class ViewTransformWidget;
0018 }
0019 
0020 
0021 class ViewTransformWidget : public QWidget
0022 {
0023     Q_OBJECT
0024 
0025 public:
0026     ViewTransformWidget(QWidget* parent=nullptr);
0027 
0028     ~ViewTransformWidget();
0029 
0030 public Q_SLOTS:
0031     void set_zoom(qreal percent);
0032     void set_angle(qreal radians);
0033     void set_flip(bool flipped);
0034 
0035 Q_SIGNALS:
0036     void zoom_in();
0037     void zoom_out();
0038     void zoom_changed(qreal percent);
0039     void angle_changed(qreal radians);
0040     void view_fit();
0041     void flip_view();
0042 
0043 private Q_SLOTS:
0044     void fuckyoumoc_on_zoom_changed(qreal percent);
0045     void fuckyoumoc_on_angle_changed(qreal degrees);
0046 
0047 protected:
0048     void changeEvent(QEvent *e) override;
0049 
0050 private:
0051     std::unique_ptr<Ui::ViewTransformWidget> d;
0052 };
0053 
0054 
0055 } // namespace glaxnimate::gui
0056 
0057 #endif // VIEWTRANSFORMWIDGET_H