
We bake cookies in your browser for a better experience. Using this site means that you consent.Read More
TheQProxyStyle class is a convenience class that simplifies dynamically overridingQStyle elements.More...
| Header: | #include <QProxyStyle> |
| Since: | Qt 4.6 |
| Inherits: | QCommonStyle |
| QProxyStyle(QStyle * style = 0) | |
| ~QProxyStyle() | |
| QStyle * | baseStyle() const |
| void | setBaseStyle(QStyle * style) |
| virtual void | drawComplexControl(ComplexControl control, const QStyleOptionComplex * option, QPainter * painter, const QWidget * widget = 0) const |
| virtual void | drawControl(ControlElement element, const QStyleOption * option, QPainter * painter, const QWidget * widget = 0) const |
| virtual void | drawItemPixmap(QPainter * painter, const QRect & rect, int alignment, const QPixmap & pixmap) const |
| virtual void | drawItemText(QPainter * painter, const QRect & rect, int flags, const QPalette & pal, bool enabled, const QString & text, QPalette::ColorRole textRole = QPalette::NoRole) const |
| virtual void | drawPrimitive(PrimitiveElement element, const QStyleOption * option, QPainter * painter, const QWidget * widget = 0) const |
| virtual QPixmap | generatedIconPixmap(QIcon::Mode iconMode, const QPixmap & pixmap, const QStyleOption * opt) const |
| virtual SubControl | hitTestComplexControl(ComplexControl control, const QStyleOptionComplex * option, const QPoint & pos, const QWidget * widget = 0) const |
| virtual QRect | itemPixmapRect(const QRect & r, int flags, const QPixmap & pixmap) const |
| virtual QRect | itemTextRect(const QFontMetrics & fm, const QRect & r, int flags, bool enabled, const QString & text) const |
| virtual int | pixelMetric(PixelMetric metric, const QStyleOption * option = 0, const QWidget * widget = 0) const |
| virtual void | polish(QWidget * widget) |
| virtual void | polish(QPalette & pal) |
| virtual void | polish(QApplication * app) |
| virtual QSize | sizeFromContents(ContentsType type, const QStyleOption * option, const QSize & size, const QWidget * widget) const |
| virtual QPalette | standardPalette() const |
| virtual QPixmap | standardPixmap(StandardPixmap standardPixmap, const QStyleOption * opt, const QWidget * widget = 0) const |
| virtual int | styleHint(StyleHint hint, const QStyleOption * option = 0, const QWidget * widget = 0, QStyleHintReturn * returnData = 0) const |
| virtual QRect | subControlRect(ComplexControl cc, const QStyleOptionComplex * option, SubControl sc, const QWidget * widget) const |
| virtual QRect | subElementRect(SubElement element, const QStyleOption * option, const QWidget * widget) const |
| virtual void | unpolish(QWidget * widget) |
| virtual void | unpolish(QApplication * app) |
| virtual bool | event(QEvent * e) |
| int | layoutSpacingImplementation(QSizePolicy::ControlType control1, QSizePolicy::ControlType control2, Qt::Orientation orientation, const QStyleOption * option = 0, const QWidget * widget = 0) const |
| QIcon | standardIconImplementation(StandardPixmap standardIcon, const QStyleOption * option, const QWidget * widget) const |
TheQProxyStyle class is a convenience class that simplifies dynamically overridingQStyle elements.
AQProxyStyle wraps aQStyle (usually the default system style) for the purpose of dynamically overriding painting or other specific style behavior.
The following example shows how to override the shortcut underline behavior on any platform:
#include "textedit.h"#include <QApplication>#include <QProxyStyle>class MyProxyStyle :publicQProxyStyle{public:int styleHint(StyleHint hint,constQStyleOption*option=0,constQWidget*widget=0,QStyleHintReturn*returnData=0)const {if (hint==QStyle::SH_UnderlineShortcut)return0;returnQProxyStyle::styleHint(hint, option, widget, returnData); }};int main(int argc,char**argv){ Q_INIT_RESOURCE(textedit);QApplication a(argc, argv); a.setStyle(new MyProxyStyle); TextEdit mw; mw.resize(700,800); mw.show();//...}
Warning: Thecommon styles provided by Qt will respect this hint, because they callQStyle::proxy(), but there is no guarantee thatQStyle::proxy() will be called for user defined or system controlled styles. It would not work on a Mac, for example, where menus are handled by the operating system.
See alsoQStyle.
Constructs aQProxyStyle object for overriding behavior instyle or in the current applicationstyle ifstyle is 0 (default). Normallystyle is 0, because you want to override behavior in the system style.
Ownership ofstyle is transferred toQProxyStyle.
Destroys theQProxyStyle object.
Returns the proxy base style object. If no base style is set on the proxy style,QProxyStyle will create an instance of the application style instead.
See alsosetBaseStyle() andQStyle.
[virtual]void QProxyStyle::drawComplexControl(ComplexControl control, constQStyleOptionComplex * option,QPainter * painter, constQWidget * widget = 0) constReimplemented fromQStyle::drawComplexControl().
[virtual]void QProxyStyle::drawControl(ControlElement element, constQStyleOption * option,QPainter * painter, constQWidget * widget = 0) constReimplemented fromQStyle::drawControl().
[virtual]void QProxyStyle::drawItemPixmap(QPainter * painter, constQRect & rect,int alignment, constQPixmap & pixmap) constReimplemented fromQStyle::drawItemPixmap().
[virtual]void QProxyStyle::drawItemText(QPainter * painter, constQRect & rect,int flags, constQPalette & pal,bool enabled, constQString & text,QPalette::ColorRole textRole = QPalette::NoRole) constReimplemented fromQStyle::drawItemText().
[virtual]void QProxyStyle::drawPrimitive(PrimitiveElement element, constQStyleOption * option,QPainter * painter, constQWidget * widget = 0) constReimplemented fromQStyle::drawPrimitive().
[virtual protected]bool QProxyStyle::event(QEvent * e)Reimplemented fromQObject::event().
[virtual]QPixmap QProxyStyle::generatedIconPixmap(QIcon::Mode iconMode, constQPixmap & pixmap, constQStyleOption * opt) constReimplemented fromQStyle::generatedIconPixmap().
[virtual]SubControl QProxyStyle::hitTestComplexControl(ComplexControl control, constQStyleOptionComplex * option, constQPoint & pos, constQWidget * widget = 0) constReimplemented fromQStyle::hitTestComplexControl().
[virtual]QRect QProxyStyle::itemPixmapRect(constQRect & r,int flags, constQPixmap & pixmap) constReimplemented fromQStyle::itemPixmapRect().
[virtual]QRect QProxyStyle::itemTextRect(constQFontMetrics & fm, constQRect & r,int flags,bool enabled, constQString & text) constReimplemented fromQStyle::itemTextRect().
[protected slot]int QProxyStyle::layoutSpacingImplementation(QSizePolicy::ControlType control1,QSizePolicy::ControlType control2,Qt::Orientation orientation, constQStyleOption * option = 0, constQWidget * widget = 0) constThis slot is called bylayoutSpacing() to determine the spacing that should be used betweencontrol1 andcontrol2 in a layout.orientation specifies whether the controls are laid out side by side or stacked vertically. Theoption parameter can be used to pass extra information about the parent widget. Thewidget parameter is optional and can also be used ifoption is 0.
The default implementation returns -1.
See alsolayoutSpacing() andcombinedLayoutSpacing().
[virtual]int QProxyStyle::pixelMetric(PixelMetric metric, constQStyleOption * option = 0, constQWidget * widget = 0) constReimplemented fromQStyle::pixelMetric().
[virtual]void QProxyStyle::polish(QWidget * widget)Reimplemented fromQStyle::polish().
[virtual]void QProxyStyle::polish(QPalette & pal)Reimplemented fromQStyle::polish().
[virtual]void QProxyStyle::polish(QApplication * app)Reimplemented fromQStyle::polish().
Sets the base style that should be proxied.
Ownership ofstyle is transferred toQProxyStyle.
If style is zero, a desktop-dependant style will be assigned automatically.
See alsobaseStyle().
[virtual]QSize QProxyStyle::sizeFromContents(ContentsType type, constQStyleOption * option, constQSize & size, constQWidget * widget) constReimplemented fromQStyle::sizeFromContents().
[protected slot]QIcon QProxyStyle::standardIconImplementation(StandardPixmap standardIcon, constQStyleOption * option, constQWidget * widget) constReturns an icon for the givenstandardIcon.
Reimplement this slot to provide your own icons in aQStyle subclass. Theoption argument can be used to pass extra information required to find the appropriate icon. Thewidget argument is optional and can also be used to help find the icon.
Note:Because of binary compatibility constraints,standardIcon() introduced in Qt 4.1 is not virtual. Therefore it must dynamically detect and callthis slot. This default implementation simply callsstandardIcon() with the given parameters.
See alsostandardIcon().
[virtual]QPalette QProxyStyle::standardPalette() constReimplemented fromQStyle::standardPalette().
[virtual]QPixmap QProxyStyle::standardPixmap(StandardPixmap standardPixmap, constQStyleOption * opt, constQWidget * widget = 0) constReimplemented fromQStyle::standardPixmap().
[virtual]int QProxyStyle::styleHint(StyleHint hint, constQStyleOption * option = 0, constQWidget * widget = 0,QStyleHintReturn * returnData = 0) constReimplemented fromQStyle::styleHint().
[virtual]QRect QProxyStyle::subControlRect(ComplexControl cc, constQStyleOptionComplex * option,SubControl sc, constQWidget * widget) constReimplemented fromQStyle::subControlRect().
[virtual]QRect QProxyStyle::subElementRect(SubElement element, constQStyleOption * option, constQWidget * widget) constReimplemented fromQStyle::subElementRect().
[virtual]void QProxyStyle::unpolish(QWidget * widget)Reimplemented fromQStyle::unpolish().
[virtual]void QProxyStyle::unpolish(QApplication * app)Reimplemented fromQStyle::unpolish().
© 2016 The Qt Company Ltd. Documentation contributions included herein are the copyrights of their respective owners. The documentation provided herein is licensed under the terms of theGNU Free Documentation License version 1.3 as published by the Free Software Foundation. Qt and respective logos are trademarks of The Qt Company Ltd. in Finland and/or other countries worldwide. All other trademarks are property of their respective owners.