Viadeo Twitter Google Bookmarks ! Facebook Digg del.icio.us MySpace Yahoo MyWeb Blinklist Netvouz Reddit Simpy StumbleUpon Bookmarks Windows Live Favorites 
Logo Documentation Qt ·  Page d'accueil  ·  Toutes les classes  ·  Classes principales  ·  Annotées  ·  Classes groupées  ·  Modules  ·  Fonctions  · 

QProxyStyle Class

The QProxyStyle class is a convenience class that simplifies dynamically overriding QStyle elements. More...

 #include <QProxyStyle>

Inherits: QCommonStyle.

This class was introduced in Qt 4.6.

Public Types

enum ComplexControl { CC_SpinBox, CC_ComboBox, CC_ScrollBar, CC_Slider, ..., CC_CustomBase }
enum ContentsType { CT_CheckBox, CT_ComboBox, CT_HeaderSection, CT_LineEdit, ..., CT_MdiControls }
enum ControlElement { CE_PushButton, CE_PushButtonBevel, CE_PushButtonLabel, CE_DockWidgetTitle, ..., CE_ShapedFrame }
enum PixelMetric { PM_ButtonMargin, PM_DockWidgetTitleBarButtonMargin, PM_ButtonDefaultIndicator, PM_MenuButtonIndicator, ..., PM_SubMenuOverlap }
enum PrimitiveElement { PE_FrameStatusBar, PE_PanelButtonCommand, PE_FrameDefaultButton, PE_PanelButtonBevel, ..., PE_PanelMenu }
enum RequestSoftwareInputPanel { RSIP_OnMouseClickAndAlreadyFocused, RSIP_OnMouseClick }
enum StandardPixmap { SP_TitleBarMinButton, SP_TitleBarMenuButton, SP_TitleBarMaxButton, SP_TitleBarCloseButton, ..., SP_CustomBase }
flags State
enum StateFlag { State_None, State_Active, State_AutoRaise, State_Children, ..., State_Small }
enum StyleHint { SH_EtchDisabledText, SH_DitherDisabledText, SH_GUIStyle, SH_ScrollBar_ContextMenu, ..., SH_RequestSoftwareInputPanel }
enum SubControl { SC_None, SC_ScrollBarAddLine, SC_ScrollBarSubLine, SC_ScrollBarAddPage, ..., SC_All }
flags SubControls
enum SubElement { SE_PushButtonContents, SE_PushButtonFocusRect, SE_PushButtonLayoutItem, SE_CheckBoxIndicator, ..., SE_ToolBarHandle }

Public Functions

QProxyStyle(QStyle * style = 0)
QStyle()
~QProxyStyle()
virtual ~QStyle()
QStyle * baseStyle() const
int combinedLayoutSpacing(QSizePolicy::ControlTypes controls1, QSizePolicy::ControlTypes controls2, Qt::Orientation orientation, QStyleOption * option = 0, QWidget * widget = 0) const
virtual void drawComplexControl(ComplexControl control, const QStyleOptionComplex * option, QPainter * painter, const QWidget * widget = 0) const = 0
virtual void drawControl(ControlElement element, const QStyleOption * option, QPainter * painter, const QWidget * widget = 0) const = 0
virtual void drawItemPixmap(QPainter * painter, const QRect & rectangle, int alignment, const QPixmap & pixmap) const
virtual void drawItemText(QPainter * painter, const QRect & rectangle, int alignment, const QPalette & palette, 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 = 0
virtual QPixmap generatedIconPixmap(QIcon::Mode iconMode, const QPixmap & pixmap, const QStyleOption * option) const = 0
virtual SubControl hitTestComplexControl(ComplexControl control, const QStyleOptionComplex * option, const QPoint & position, const QWidget * widget = 0) const = 0
virtual QRect itemPixmapRect(const QRect & rectangle, int alignment, const QPixmap & pixmap) const
virtual QRect itemTextRect(const QFontMetrics & metrics, const QRect & rectangle, int alignment, bool enabled, const QString & text) const
int layoutSpacing(QSizePolicy::ControlType control1, QSizePolicy::ControlType control2, Qt::Orientation orientation, const QStyleOption * option = 0, const QWidget * widget = 0) const
virtual int pixelMetric(PixelMetric metric, const QStyleOption * option = 0, const QWidget * widget = 0) const = 0
virtual void polish(QWidget * widget)
virtual void polish(QApplication * application)
virtual void polish(QPalette & palette)
const QStyle * proxy() const
void setBaseStyle(QStyle * style)
virtual QSize sizeFromContents(ContentsType type, const QStyleOption * option, const QSize & contentsSize, const QWidget * widget = 0) const = 0
QIcon standardIcon(StandardPixmap standardIcon, const QStyleOption * option = 0, const QWidget * widget = 0) const
virtual QPalette standardPalette() const
virtual int styleHint(StyleHint hint, const QStyleOption * option = 0, const QWidget * widget = 0, QStyleHintReturn * returnData = 0) const = 0
virtual QRect subControlRect(ComplexControl control, const QStyleOptionComplex * option, SubControl subControl, const QWidget * widget = 0) const = 0
virtual QRect subElementRect(SubElement element, const QStyleOption * option, const QWidget * widget = 0) const = 0
virtual void unpolish(QWidget * widget)
virtual void unpolish(QApplication * application)

Reimplemented Public Functions

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)

Static Public Members

QRect alignedRect(Qt::LayoutDirection direction, Qt::Alignment alignment, const QSize & size, const QRect & rectangle)
int sliderPositionFromValue(int min, int max, int logicalValue, int span, bool upsideDown = false)
int sliderValueFromPosition(int min, int max, int position, int span, bool upsideDown = false)
Qt::Alignment visualAlignment(Qt::LayoutDirection direction, Qt::Alignment alignment)
QPoint visualPos(Qt::LayoutDirection direction, const QRect & boundingRectangle, const QPoint & logicalPosition)
QRect visualRect(Qt::LayoutDirection direction, const QRect & boundingRectangle, const QRect & logicalRectangle)
  • 11 static public members inherited from QObject

Reimplemented Protected Functions

virtual bool event(QEvent * e)
  • 9 protected functions inherited from QObject

Protected Slots

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

Additional Inherited Members

  • 1 property inherited from QObject
  • 1 public slot inherited from QObject
  • 2 signal inherited from QObject
  • 9 protected functions inherited from QObject

Detailed Description

The QProxyStyle class is a convenience class that simplifies dynamically overriding QStyle elements.

A QProxyStyle wraps a QStyle (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 : public QProxyStyle
 {
   public:
     int styleHint(StyleHint hint, const QStyleOption *option = 0,
                   const QWidget *widget = 0, QStyleHintReturn *returnData = 0) const
     {
         if (hint == QStyle::SH_UnderlineShortcut)
             return 0;
         return QProxyStyle::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: The common styles provided by Qt will respect this hint, because they call QStyle::proxy(), but there is no guarantee that QStyle::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 also QStyle.

Member Function Documentation

QProxyStyle::QProxyStyle(QStyle * style = 0)

Constructs a QProxyStyle object for overriding behavior in style or in the current application style if style is 0 (default). Normally style is 0, because you want to override behavior in the system style.

Ownership of style is transferred to QProxyStyle.

QProxyStyle::~QProxyStyle()

Destroys the QProxyStyle object.

QStyle * QProxyStyle::baseStyle() const

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 also setBaseStyle() and QStyle.

void QProxyStyle::drawComplexControl(ComplexControl control, const QStyleOptionComplex * option, QPainter * painter, const QWidget * widget = 0) const [virtual]

Reimplemented from QStyle::drawComplexControl().

void QProxyStyle::drawControl(ControlElement element, const QStyleOption * option, QPainter * painter, const QWidget * widget = 0) const [virtual]

Reimplemented from QStyle::drawControl().

void QProxyStyle::drawItemPixmap(QPainter * painter, const QRect & rect, int alignment, const QPixmap & pixmap) const [virtual]

Reimplemented from QStyle::drawItemPixmap().

void QProxyStyle::drawItemText(QPainter * painter, const QRect & rect, int flags, const QPalette & pal, bool enabled, const QString & text, QPalette::ColorRole textRole = QPalette::NoRole) const [virtual]

Reimplemented from QStyle::drawItemText().

void QProxyStyle::drawPrimitive(PrimitiveElement element, const QStyleOption * option, QPainter * painter, const QWidget * widget = 0) const [virtual]

Reimplemented from QStyle::drawPrimitive().

bool QProxyStyle::event(QEvent * e) [virtual protected]

Reimplemented from QObject::event().

QPixmap QProxyStyle::generatedIconPixmap(QIcon::Mode iconMode, const QPixmap & pixmap, const QStyleOption * opt) const [virtual]

Reimplemented from QStyle::generatedIconPixmap().

SubControl QProxyStyle::hitTestComplexControl(ComplexControl control, const QStyleOptionComplex * option, const QPoint & pos, const QWidget * widget = 0) const [virtual]

Reimplemented from QStyle::hitTestComplexControl().

QRect QProxyStyle::itemPixmapRect(const QRect & r, int flags, const QPixmap & pixmap) const [virtual]

Reimplemented from QStyle::itemPixmapRect().

QRect QProxyStyle::itemTextRect(const QFontMetrics & fm, const QRect & r, int flags, bool enabled, const QString & text) const [virtual]

Reimplemented from QStyle::itemTextRect().

int QProxyStyle::layoutSpacingImplementation(QSizePolicy::ControlType control1, QSizePolicy::ControlType control2, Qt::Orientation orientation, const QStyleOption * option = 0, const QWidget * widget = 0) const [protected slot]

This slot is called by layoutSpacing() to determine the spacing that should be used between control1 and control2 in a layout. orientation specifies whether the controls are laid out side by side or stacked vertically. The option parameter can be used to pass extra information about the parent widget. The widget parameter is optional and can also be used if option is 0.

The default implementation returns -1.

See also layoutSpacing() and combinedLayoutSpacing().

int QProxyStyle::pixelMetric(PixelMetric metric, const QStyleOption * option = 0, const QWidget * widget = 0) const [virtual]

Reimplemented from QStyle::pixelMetric().

void QProxyStyle::polish(QWidget * widget) [virtual]

Reimplemented from QStyle::polish().

void QProxyStyle::polish(QPalette & pal) [virtual]

Reimplemented from QStyle::polish().

void QProxyStyle::polish(QApplication * app) [virtual]

Reimplemented from QStyle::polish().

void QProxyStyle::setBaseStyle(QStyle * style)

Sets the base style that should be proxied.

Ownership of style is transferred to QProxyStyle.

If style is zero, a desktop-dependant style will be assigned automatically.

See also baseStyle().

QSize QProxyStyle::sizeFromContents(ContentsType type, const QStyleOption * option, const QSize & size, const QWidget * widget) const [virtual]

Reimplemented from QStyle::sizeFromContents().

QIcon QProxyStyle::standardIconImplementation(StandardPixmap standardIcon, const QStyleOption * option, const QWidget * widget) const [protected slot]

Returns an icon for the given standardIcon.

Reimplement this slot to provide your own icons in a QStyle subclass. The option argument can be used to pass extra information required to find the appropriate icon. The widget 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 call this slot. This default implementation simply calls standardIcon() with the given parameters.

See also standardIcon().

QPalette QProxyStyle::standardPalette() const [virtual]

Reimplemented from QStyle::standardPalette().

QPixmap QProxyStyle::standardPixmap(StandardPixmap standardPixmap, const QStyleOption * opt, const QWidget * widget = 0) const [virtual]

Reimplemented from QStyle::standardPixmap().

int QProxyStyle::styleHint(StyleHint hint, const QStyleOption * option = 0, const QWidget * widget = 0, QStyleHintReturn * returnData = 0) const [virtual]

Reimplemented from QStyle::styleHint().

QRect QProxyStyle::subControlRect(ComplexControl cc, const QStyleOptionComplex * option, SubControl sc, const QWidget * widget) const [virtual]

Reimplemented from QStyle::subControlRect().

QRect QProxyStyle::subElementRect(SubElement element, const QStyleOption * option, const QWidget * widget) const [virtual]

Reimplemented from QStyle::subElementRect().

void QProxyStyle::unpolish(QWidget * widget) [virtual]

Reimplemented from QStyle::unpolish().

void QProxyStyle::unpolish(QApplication * app) [virtual]

Reimplemented from QStyle::unpolish().

Cette page est une traduction d'une page de la documentation de Qt, écrite par Nokia Corporation and/or its subsidiary(-ies). Les éventuels problèmes résultant d'une mauvaise traduction ne sont pas imputables à Nokia. Qt 5.0-snapshot
Copyright © 2012 Developpez LLC. Tous droits réservés Developpez LLC. Aucune reproduction, même partielle, ne peut être faite de ce site et de l'ensemble de son contenu : textes, documents et images sans l'autorisation expresse de Developpez LLC. Sinon, vous encourez selon la loi jusqu'à 3 ans de prison et jusqu'à 300 000 E de dommages et intérêts. Cette page est déposée à la SACD.
Vous avez déniché une erreur ? Un bug ? Une redirection cassée ? Ou tout autre problème, quel qu'il soit ? Ou bien vous désirez participer à ce projet de traduction ? N'hésitez pas à nous contacter ou par MP !
 
 
 
 
Partenaires

Hébergement Web