Files
BionxControl/bctoggleswitch.h
Christoph Holzheuer 7993247027 cleanups.
2026-02-09 16:03:09 +01:00

39 lines
814 B
C++

#ifndef BC_TOGGLESWITCH_H
#define BC_TOGGLESWITCH_H
#include <QAbstractButton>
// Vorwärtsdeklaration spart Include-Zeit
class QPropertyAnimation;
class BCToggleSwitch : public QAbstractButton
{
Q_OBJECT
// Property für die Animation (0.0 bis 1.0)
Q_PROPERTY(float position READ position WRITE setPosition)
public:
explicit BCToggleSwitch(QWidget *parent = nullptr);
// Getter & Setter für die Animations-Property
float position() const;
void setPosition(float pos);
QSize sizeHint() const override;
protected:
void paintEvent(QPaintEvent *event) override;
void enterEvent(QEnterEvent *event) override;
void leaveEvent(QEvent *event) override;
private:
float m_position; // 0.0 = Aus, 1.0 = An
QPropertyAnimation* m_animation;
};
#endif // BC_TOGGLESWITCH_H