#ifndef SHAPEWIDGET_H
#define SHAPEWIDGET_H

#include <QWidget>
#include <QPaintEvent>
#include <QResizeEvent>

class ShapeWidget : public QWidget
{
    Q_OBJECT
public:
    explicit ShapeWidget(QWidget* parent = nullptr);

    void SetMaskCode(int shapeCode, int rotate) {
        m_shapeCode = shapeCode;
        m_rotate = rotate;
    }
    void Rotate(int angle);
    int GetRotate() const { return m_rotate; }
    int GetShapeCode() const { return m_shapeCode; }

    void Shape(int shape);

protected:
    void paintEvent(QPaintEvent* event) override;
    void resizeEvent(QResizeEvent* event) override;

private:
    int m_shapeCode{ 1 };
    int m_rotate{ 0 };
    int m_shapeCodeCount{ 0 };
};

#endif // SHAPEWIDGET_H