qtssproxy.h 945 Bytes
#ifndef CMYCSS_H
#define CMYCSS_H
#include "qtss_global.h"
#include "qstyle.h"
#include "qrenderruleproxy.h"
class QtStyleSheetStyle;

class QTSSSHARED_EXPORT QtSsProxy:public QObject
{
    Q_OBJECT
public:
    QtSsProxy(QStyle *baseStyle = 0);
    QtSsProxy(QtStyleSheetStyle*sstyle):sss(sstyle){}
    static bool canProxy(QStyle*style);
    static QtSsProxy*proxy(QStyle*style);
    void setApplication(QApplication*app);
    void setStyleSheet(const QString&css);
    QRenderRuleProxy renderRule(const QWidget *w, int element, quint64 state=0) const;
    QRenderRuleProxy renderRule(const QWidget *w, const QStyleOption *opt, int pseudoElement = 0) const;
    QRect subControlRect(QStyle::ComplexControl cc, const QStyleOptionComplex *opt, QStyle::SubControl sc,
                         const QWidget *w = 0) const;
    QtStyleSheetStyle* sss;
};
typedef QSharedPointer<QtSsProxy> QtSsProxyPtr;

#endif // CMYCSS_H