Files
BloomPatched/src/Insight/UserInterfaces/InsightWindow/Widgets/RotatableLabel.hpp

38 lines
873 B
C++
Raw Normal View History

2021-08-22 20:41:52 +01:00
#pragma once
#include <QLabel>
#include <QSize>
namespace Bloom::Widgets
{
class RotatableLabel: public QLabel
{
Q_OBJECT
2021-08-22 20:41:52 +01:00
public:
RotatableLabel(const QString& text, QWidget* parent): QLabel(text, parent) {};
RotatableLabel(int angleDegrees, const QString& text, QWidget* parent)
: QLabel(text, parent), angle(angleDegrees) {};
void setAngle(int angleDegrees) {
this->angle = angleDegrees;
}
2021-08-22 20:41:52 +01:00
protected:
void paintEvent(QPaintEvent* event) override;
[[nodiscard]] QSize sizeHint() const override {
return this->getContainerSize();
};
[[nodiscard]] QSize minimumSizeHint() const override {
return this->getContainerSize();
};
private:
int angle = 90;
2021-08-22 20:41:52 +01:00
[[nodiscard]] QSize getContainerSize() const;
2021-08-22 20:41:52 +01:00
};
}