diff options
author | BogDan Vatra <bogdan@kde.org> | 2013-09-09 17:27:26 +0300 |
---|---|---|
committer | The Qt Project <gerrit-noreply@qt-project.org> | 2013-09-10 11:52:16 +0200 |
commit | d6d119ac6e606a30993bfea1ac3309f74d15bedc (patch) | |
tree | eb4eeb1ad19b3e96e7dfd3d4666e78d2d7c9ca0c /src/widgets/styles/qandroidstyle_p.h | |
parent | b0b786a2f05e9451a65519ab8904f55c35f51b7d (diff) |
Fix Android Style plugin.
Task-number: QTBUG-29565
Change-Id: Iedb861962e3638bcbdf9d9a72a47bebc63b425b9
Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@digia.com>
Reviewed-by: BogDan Vatra <bogdan@kde.org>
Diffstat (limited to 'src/widgets/styles/qandroidstyle_p.h')
-rw-r--r-- | src/widgets/styles/qandroidstyle_p.h | 22 |
1 files changed, 18 insertions, 4 deletions
diff --git a/src/widgets/styles/qandroidstyle_p.h b/src/widgets/styles/qandroidstyle_p.h index 2d9abd65c5..d64e37b9db 100644 --- a/src/widgets/styles/qandroidstyle_p.h +++ b/src/widgets/styles/qandroidstyle_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2012 BogDan Vatra <bogdan@kde.org> +** Copyright (C) 2013 BogDan Vatra <bogdan@kde.org> ** Contact: http://www.qt-project.org/legal ** ** This file is part of the QtWidgets module of the Qt Toolkit. @@ -55,15 +55,15 @@ #include <QtCore/QList> #include <QtCore/QMargins> -#include <QtWidgets/QCommonStyle> #include <QtCore/QHash> #include <QtCore/QVariantMap> +#include "qfusionstyle_p.h" QT_BEGIN_NAMESPACE #if !defined(QT_NO_STYLE_ANDROID) -class Q_WIDGETS_EXPORT QAndroidStyle : public QCommonStyle +class Q_WIDGETS_EXPORT QAndroidStyle : public QFusionStyle { Q_OBJECT @@ -86,7 +86,7 @@ public: QC_TabButton, QC_RatingIndicator, QC_SearchBox, - QC_CustomCOntrol=0xf00, + QC_CustomControl=0xf00, QC_ControlMask=0xfff }; @@ -131,6 +131,7 @@ public: virtual QSize size() const; static AndroidDrawable *fromMap(const QVariantMap &drawable, ItemType itemType); static QMargins extractMargins(const QVariantMap &value); + virtual void setPaddingLeftToSizeWidth(); protected: ItemType m_itemType; QMargins m_padding; @@ -226,6 +227,7 @@ public: virtual void draw(QPainter *painter, const QStyleOption *opt) const; inline const AndroidDrawable *bestAndroidStateMatch(const QStyleOption *opt) const; static int extractState(const QVariantMap &value); + virtual void setPaddingLeftToSizeWidth(); private: typedef QPair<int, const AndroidDrawable *> StateType; @@ -238,12 +240,16 @@ public: AndroidLayerDrawable(const QVariantMap &drawable, QAndroidStyle::ItemType itemType); ~AndroidLayerDrawable(); virtual AndroidDrawableType type() const; + virtual void setFactor(int id, double factor, Qt::Orientation orientation); virtual void draw(QPainter *painter, const QStyleOption *opt) const; AndroidDrawable *layer(int id) const; QSize size() const; private: typedef QPair<int, AndroidDrawable *> LayerType; QList<LayerType> m_layers; + int m_id; + double m_factor; + Qt::Orientation m_orientation; }; class AndroidControl @@ -263,6 +269,7 @@ public: const QWidget *w) const; virtual QMargins padding(); protected: + virtual const AndroidDrawable * backgroundDrawable() const; const AndroidDrawable *m_background; QSize m_minSize; QSize m_maxSize; @@ -276,6 +283,7 @@ public: virtual void drawControl(const QStyleOption *opt, QPainter *p, const QWidget *w); protected: + virtual const AndroidDrawable * backgroundDrawable() const; const AndroidDrawable *m_button; }; @@ -356,7 +364,13 @@ public: virtual QPixmap generatedIconPixmap(QIcon::Mode iconMode, const QPixmap &pixmap, const QStyleOption *opt) const; + int styleHint(StyleHint hint, const QStyleOption *option = 0, const QWidget *widget = 0, + QStyleHintReturn *returnData = 0) const; + virtual QPalette standardPalette() const; + void polish(QWidget *widget); + void unpolish(QWidget *widget); + private: Q_DISABLE_COPY(QAndroidStyle) static ItemType qtControl(QStyle::ComplexControl control); |