mirror of
https://github.com/subsurface/subsurface.git
synced 2024-11-29 13:40:20 +00:00
df156a56c0
The keyword "virtual" signalizes that the function is virtual, i.e. the function of the derived class is called, even if the call is on the parent class. It is not necessary to repeat the "virtual" keyword in derived classes. To highlight derived virtual functions, the keyword "override" should be used instead. It results in a hard compile- error, if no function is overridden, thus avoiding subtle bugs. Replace "virtual" by "override" where appropriate. Moreover, replace Q_DECL_OVERRIDE by override, since we require reasonably recent compilers anyway. Likewise, replace /* reimp */ by "override" for consistency and compiler support. Signed-off-by: Berthold Stoeger <bstoeger@mail.tuwien.ac.at>
45 lines
877 B
C++
45 lines
877 B
C++
// SPDX-License-Identifier: GPL-2.0
|
|
#ifndef STARWIDGET_H
|
|
#define STARWIDGET_H
|
|
|
|
#include <QWidget>
|
|
|
|
enum StarConfig {
|
|
TOTALSTARS = 5
|
|
};
|
|
|
|
class StarWidget : public QWidget {
|
|
Q_OBJECT
|
|
public:
|
|
explicit StarWidget(QWidget *parent = 0, Qt::WindowFlags f = 0);
|
|
int currentStars() const;
|
|
|
|
QSize sizeHint() const override;
|
|
|
|
static const QImage& starActive();
|
|
static const QImage& starInactive();
|
|
|
|
signals:
|
|
void valueChanged(int stars);
|
|
|
|
public
|
|
slots:
|
|
void setCurrentStars(int value);
|
|
void setReadOnly(bool readOnly);
|
|
|
|
protected:
|
|
void mouseReleaseEvent(QMouseEvent *) override;
|
|
void paintEvent(QPaintEvent *) override;
|
|
void focusInEvent(QFocusEvent *) override;
|
|
void focusOutEvent(QFocusEvent *) override;
|
|
void keyPressEvent(QKeyEvent *) override;
|
|
|
|
private:
|
|
int current;
|
|
bool readOnly;
|
|
|
|
static QImage activeStar;
|
|
static QImage inactiveStar;
|
|
};
|
|
|
|
#endif // STARWIDGET_H
|