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

40 lines
895 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)
2022-04-28 21:08:55 +01:00
: 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();
2022-04-28 21:08:55 +01:00
}
2021-08-22 20:41:52 +01:00
[[nodiscard]] QSize minimumSizeHint() const override {
return this->getContainerSize();
2022-04-28 21:08:55 +01:00
}
2021-08-22 20:41:52 +01:00
private:
int angle = 90;
2021-08-22 20:41:52 +01:00
[[nodiscard]] QSize getContainerSize() const;
2021-08-22 20:41:52 +01:00
};
}