/
ArtemNech
/
simpleOpenGL
Обзор
Документация
Войти
/
ArtemNech
/
simpleOpenGL
Код
Запросы
0
Задачи
Вики
Пакеты
0
Релизы
0
CI/CD
Аналитика
Безопасность
develop
backend/CScaleBox.h
59 строк
1 KB
Artem Nechitaylenko
initial
16 май 2026, 12:48
16 май 2026, 12:48
0d3ac6c
Код
Авторство
О чём код?
// // Created by artem on 1/9/25. // #ifndef NYM_PROJECT_CSCALEBOX_H #define NYM_PROJECT_CSCALEBOX_H #include <QObject> #include <QDoubleSpinBox> #define difference_ 20.0f class CPainter; /** * @brief visual scale managing */ class CScaleBox : public QObject { Q_OBJECT public: explicit CScaleBox(CPainter * painter); ~CScaleBox() override; QRectF * rect(); QImage * image(); void doubleClicked(); float get_value() const; signals: void scale_changed_by_user(const float &value); public slots: void resized(int w, int h); void set_value(const float &value); protected slots: void hide_dsb(); protected: private: float m_scale{100.0f}; QDoubleSpinBox * m_dsb; CPainter * m_painter; QSizeF m_size{}; QSizeF m_ogl_size{}; QRectF m_rect{}; QImage m_image; QPointF m_position{}; void update_position(); void update_data(); }; #endif //NYM_PROJECT_CSCALEBOX_H