17 Q_PROPERTY(QString stylePath READ stylePath WRITE setStylePath NOTIFY stylePathChanged FINAL)
18 Q_PROPERTY(QString themeName READ themeName WRITE setThemeName NOTIFY themeNameChanged FINAL)
19 Q_PROPERTY(QStringList themeNames READ themeNames NOTIFY stylePathChanged FINAL)
20 Q_PROPERTY(QStringList customThemeNames READ customThemeNames NOTIFY stylePathChanged FINAL)
24 explicit QStyleKitStyle(
const QString &filePath);
25 ~QStyleKitStyle() override;
27 QString stylePath()
const;
28 void setStylePath(
const QString &filePath);
29 QString themeName()
const;
30 void setThemeName(
const QString &themeName);
31 QStringList themeNames()
const;
32 QStringList customThemeNames()
const;
34 void drawPrimitive(PrimitiveElement pe,
const QStyleOption *opt, QPainter *p,
35 const QWidget *w =
nullptr)
const override;
36 void drawControl(ControlElement element,
const QStyleOption *opt, QPainter *p,
37 const QWidget *w =
nullptr)
const override;
38 QRect subElementRect(SubElement r,
const QStyleOption *opt,
const QWidget *widget =
nullptr)
const override;
39 void drawComplexControl(ComplexControl cc,
const QStyleOptionComplex *opt, QPainter *p,
40 const QWidget *w =
nullptr)
const override;
41 SubControl hitTestComplexControl(ComplexControl cc,
const QStyleOptionComplex *opt,
42 const QPoint &pt,
const QWidget *w =
nullptr)
const override;
43 QRect subControlRect(ComplexControl cc,
const QStyleOptionComplex *opt, SubControl sc,
44 const QWidget *w =
nullptr)
const override;
45 QSize sizeFromContents(ContentsType ct,
const QStyleOption *opt,
46 const QSize &contentsSize,
const QWidget *widget =
nullptr)
const override;
48 int pixelMetric(PixelMetric m,
const QStyleOption *opt =
nullptr,
const QWidget *widget =
nullptr)
const override;
50 int styleHint(StyleHint sh,
const QStyleOption *opt =
nullptr,
const QWidget *w =
nullptr,
51 QStyleHintReturn *shret =
nullptr)
const override;
53 QPalette standardPalette()
const override;
54 void polish(QWidget *widget) override;
55 void polish(QApplication *application) override;
56 void polish(QPalette &palette) override;
57 void unpolish(QWidget *widget) override;
58 void unpolish(QApplication *application) override;
61 bool eventFilter(QObject *watched, QEvent *event) override;
62 bool event(QEvent *event) override;
65 void stylePathChanged();
66 void themeNameChanged();
69 Q_DISABLE_COPY_MOVE(QStyleKitStyle)
70 Q_DECLARE_PRIVATE(QStyleKitStyle)