⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 qstyle.h

📁 著名的A780系列,E680系列的SDK开发包
💻 H
字号:
/****************************************************************************** $Id: qt/src/kernel/qstyle.h   2.3.6   edited 2002-10-02 $**** Definition of QStyle class**** Created : 980616**** Copyright (C) 1992-2000 Trolltech AS.  All rights reserved.**** This file is part of the kernel module of the Qt GUI Toolkit.**** This file may be distributed under the terms of the Q Public License** as defined by Trolltech AS of Norway and appearing in the file** LICENSE.QPL included in the packaging of this file.**** This file may be distributed and/or modified under the terms of the** GNU General Public License version 2 as published by the Free Software** Foundation and appearing in the file LICENSE.GPL included in the** packaging of this file.**** Licensees holding valid Qt Enterprise Edition or Qt Professional Edition** licenses may use this file in accordance with the Qt Commercial License** Agreement provided with the Software.**** This file is provided AS IS with NO WARRANTY OF ANY KIND, INCLUDING THE** WARRANTY OF DESIGN, MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.**** See http://www.trolltech.com/pricing.html or email sales@trolltech.com for**   information about Qt Commercial License Agreements.** See http://www.trolltech.com/qpl/ for QPL licensing information.** See http://www.trolltech.com/gpl/ for GPL licensing information.**** Contact info@trolltech.com if any conditions of this licensing are** not clear to you.************************************************************************/#ifndef QSTYLE_H#define QSTYLE_H#ifndef QT_H#include "qwindowdefs.h"#include "qobject.h"#include "qbrush.h"#endif // QT_H#ifndef QT_NO_STYLEclass QButton;class QPushButton;class QScrollBar;class QTabBar;class QTab;class QPopupMenu;class QMenuItem;class QToolButton;#ifdef QSKINSTYLEclass QLayout;#endifclass Q_EXPORT QStyle: public QObject{    Q_OBJECT    GUIStyle gs;private:    QStyle(GUIStyle);    QStyle();    friend class QCommonStyle;public:    virtual ~QStyle();#ifndef QT_NO_COMPAT    operator GUIStyle() const { return gs; }    int operator==(GUIStyle s) const { return gs==s; }    int operator!=(GUIStyle s) const { return gs!=s; }#endif    GUIStyle guiStyle() const { return gs; }    // abstract section    virtual void polish( QWidget* );    virtual void unPolish( QWidget* );    virtual void polish( QApplication*);    virtual void unPolish( QApplication*);    virtual void polish( QPalette&);    virtual QRect itemRect( QPainter *p, int x, int y, int w, int h,		    int flags, bool enabled,		    const QPixmap *pixmap,		    const QString& text, int len=-1 ); // ### const 3.0#if defined(QT_EZX_MUNGE)    /* New (inserted) virtual methods - ORDER IS IMPORTANT */    virtual void drawProgressBackground(QPainter*, QRect, QColorGroup&);    virtual void drawProgressAmount(QPainter*, QRect, QRect,				    int, int, int, int, QColorGroup&);    virtual void drawDialogBackground(QPainter*, int, int, int, int, QBrush&);    virtual void drawLineEditBackground(QPainter*, int, int, int, int,					QBrush&);#endif /* defined(QT_EZX_MUNGE) */    virtual void drawItem( QPainter *p, int x, int y, int w, int h,		    int flags, const QColorGroup &g, bool enabled,		    const QPixmap *pixmap, const QString& text,			   int len=-1, const QColor* penColor = 0 );    virtual void drawSeparator( QPainter *p, int x1, int y1, int x2, int y2,		     const QColorGroup &g, bool sunken = TRUE,		     int lineWidth = 1, int midLineWidth = 0 );    virtual void drawRect( QPainter *p, int x, int y, int w, int h,		    const QColor &, int lineWidth = 1,		    const QBrush *fill = 0 );    virtual void drawRectStrong( QPainter *p, int x, int y, int w, int h,		     const QColorGroup &, bool sunken=FALSE,		     int lineWidth = 1, int midLineWidth = 0,		     const QBrush *fill = 0 );    virtual void drawButton( QPainter *p, int x, int y, int w, int h,		     const QColorGroup &g, bool sunken = FALSE,		     const QBrush *fill = 0 ) = 0;    virtual QRect buttonRect( int x, int y, int w, int h); // ### const 3.0    virtual void drawButtonMask( QPainter *p, int x, int y, int w, int h);    virtual void drawBevelButton( QPainter *p, int x, int y, int w, int h,		     const QColorGroup &g, bool sunken = FALSE,		     const QBrush *fill = 0 ) = 0;    QRect bevelButtonRect( int x, int y, int w, int h); // ### virtual/const 3.0    virtual void drawToolButton( QPainter *p, int x, int y, int w, int h,		     const QColorGroup &g, bool sunken = FALSE,		     const QBrush *fill = 0 );    void drawToolButton( QToolButton* btn, QPainter *p); // ##### virtual in 3.0    QRect toolButtonRect(  int x, int y, int w, int h); // ### virtual/const 3.0    virtual void drawPanel( QPainter *p, int x, int y, int w, int h,		    const QColorGroup &, bool sunken=FALSE,		    int lineWidth = 1, const QBrush *fill = 0 );    virtual void drawPopupPanel( QPainter *p, int x, int y, int w, int h,				 const QColorGroup &,  int lineWidth = 2,				 const QBrush *fill = 0 );    virtual void drawArrow( QPainter *p, Qt::ArrowType type, bool down,		     int x, int y, int w, int h,		     const QColorGroup &g, bool enabled, const QBrush *fill = 0 ) = 0;    // "radio button"    virtual QSize exclusiveIndicatorSize() const = 0;    virtual void drawExclusiveIndicator( QPainter* p, int x, int y, int w, int h,		    const QColorGroup &g, bool on, bool down = FALSE, bool enabled = TRUE ) = 0;    virtual void drawExclusiveIndicatorMask( QPainter *p, int x, int y, int w, int h, bool on);    // "check box"    virtual QSize indicatorSize() const = 0;    virtual void drawIndicator( QPainter* p, int x, int y, int w, int h, const QColorGroup &g,				int state, bool down = FALSE, bool enabled = TRUE ) = 0;    virtual void drawIndicatorMask( QPainter *p, int x, int y, int w, int h, int state);    // focus    virtual void drawFocusRect( QPainter*, const QRect &,				const QColorGroup &, const QColor* bg = 0,				bool = FALSE ) = 0;    // concrete section depending on Qt's widget cluster ( The line is hard to draw sometimes)    // "combo box"    virtual void drawComboButton( QPainter *p, int x, int y, int w, int h,				  const QColorGroup &g, bool sunken = FALSE,				  bool editable = FALSE,				  bool enabled = TRUE,				  const QBrush *fill = 0 ) = 0;    virtual QRect comboButtonRect( int x, int y,		    int w, int h) = 0; // ### const 3.0    virtual QRect comboButtonFocusRect( int x, int y,		    int w, int h) = 0; // ### const 3.0    virtual void drawComboButtonMask( QPainter *p, int x, int y, int w, int h) = 0;    // push buttons    virtual void drawPushButton( QPushButton* btn, QPainter *p) = 0;    // virtual void drawPushButtonMask(QPushButton *btn, QPainter *p) = 0; // missing, add 3.0    virtual void drawPushButtonLabel( QPushButton* btn, QPainter *p) = 0;    QRect pushButtonContentsRect( QPushButton* btn ); // ### virtual/const 3.0    int menuButtonIndicatorWidth( int h ); // ### virtual/const 3.0    virtual void getButtonShift( int &x, int &y) = 0; // ### const 3.0    // frame    virtual int defaultFrameWidth() const = 0;    // tabbars    virtual void tabbarMetrics( const QTabBar*,		    int&, int&, int& ) = 0; // ### const 3.0    virtual void drawTab( QPainter*, const QTabBar*, QTab*, bool selected ) = 0;    virtual void drawTabMask( QPainter*, const QTabBar*, QTab*, bool selected ) = 0;    // scrollbars    enum ScrollControl { AddLine = 0x1 , SubLine  = 0x2 , AddPage = 0x4,			 SubPage = 0x8 , First = 0x10, Last = 0x20,			 Slider  = 0x40, NoScroll = 0x80 };    virtual void scrollBarMetrics( const QScrollBar*,		    int&, int&, int&, int&) = 0; // ### const 3.0    virtual void drawScrollBarControls( QPainter*,  const QScrollBar*,					int sliderStart, uint controls,					uint activeControl ) = 0;    virtual ScrollControl scrollBarPointOver( const QScrollBar*,					int sliderStart, const QPoint& ) = 0;    // sliders    virtual int sliderLength() const = 0;    virtual void drawSlider( QPainter *p,			     int x, int y, int w, int h,			     const QColorGroup &g,			     Orientation, bool tickAbove, bool tickBelow) = 0;    virtual void drawSliderMask( QPainter *p,				 int x, int y, int w, int h,				 Orientation, bool tickAbove, bool tickBelow) = 0;    virtual void drawSliderGroove( QPainter *p,				   int x, int y, int w, int h,				   const QColorGroup& g, QCOORD c,				   Orientation ) = 0;    virtual void drawSliderGrooveMask( QPainter *p,				       int x, int y, int w, int h,				       QCOORD c,				       Orientation ) = 0;    virtual int maximumSliderDragDistance() const = 0;    virtual int splitterWidth() const = 0;    virtual void drawSplitter( QPainter *p,			     int x, int y, int w, int h,			     const QColorGroup &g,			     Orientation) = 0;    virtual void drawCheckMark( QPainter *p, int x, int y, int w, int h,				const QColorGroup &g,				bool act, bool dis ) = 0;    virtual void polishPopupMenu( QPopupMenu* ) = 0;    virtual int extraPopupMenuItemWidth( bool checkable, int maxpmw,				QMenuItem* mi,				const QFontMetrics& fm  ) = 0; // ### const 3.0    virtual int popupSubmenuIndicatorWidth(				const QFontMetrics& fm  ) = 0; // ### const 3.0    virtual int popupMenuItemHeight( bool checkable,				QMenuItem* mi,				const QFontMetrics& fm  ) = 0; // ### const 3.0    virtual void drawPopupMenuItem( QPainter* p, bool checkable,				    int maxpmw, int tab, QMenuItem* mi,				    const QPalette& pal,				    bool act, bool enabled,				    int x, int y, int w, int h) = 0;    void drawMenuBarItem( QPainter* p, int x, int y, int w, int h, //### virtual in 3.0				    QMenuItem* mi, QColorGroup& g,				    bool enabled, bool active );    // Binary compatibility contortions, to become virtual in 3.0    QSize scrollBarExtent(); // ### const 3.0    int buttonDefaultIndicatorWidth() const;    int buttonMargin() const; // ### virtual 3.0    int toolBarHandleExtent() const; // ### virtual 3.0    int toolBarHandleExtend() const; // obsolete    int sliderThickness() const ; // ### virtual 3.0    void drawToolBarHandle( QPainter *p, const QRect &r,			    Qt::Orientation orientation,			    bool highlight, const QColorGroup &cg,			    bool drawBorder = FALSE ); // ### virtual 3.0protected:    void setScrollBarExtent( int w, int h=-1 ); // ### remove 3.0    void setButtonDefaultIndicatorWidth( int w ); // ### remove 3.0    void setButtonMargin( int w ); // ### remove 3.0    void setSliderThickness(int t); // ### remove 3.0private:	// Disabled copy constructor and operator=#if defined(Q_DISABLE_COPY)    QStyle( const QStyle & );    QStyle& operator=( const QStyle & );#endif    /*     * Below was copied from Qt 2.3.10, in the interest of     * compatibility with Qtopia/OPIE.     */public:    // Not in Qt 2.3.7    enum PixelMetric {	    ComboBoxFocusMargin,	    ComboBoxTextHMargin,	    ComboBoxTextVMargin,	    ComboBoxTextVMarginExtra,	    LineEditTextHMargin,	    LineEditTextVMargin,	    SpinBoxButtonScale,	    SpinBoxHMargin,	    SpinBoxVMargin,	    SpinBoxHExtraScale,	    IdealHeightLimit,	    IdealHeight,	    CheckBoxGap,	    TabHMargin,	    LastPixelMetric };    int pixelMetric(PixelMetric) const { return ComboBoxFocusMargin; }    // Not in Qt 2.3.7    enum ExtendedColor {	    AlternateBase,	    LastExtendedColor };    QBrush extendedBrush(ExtendedColor) const { return QBrush(); }    // Not in Qt 2.3.7    void setExtendedBrush(ExtendedColor, const QBrush &) {}protected:    // Not in Qt 2.3.7    void setPixelMetric(PixelMetric, int) {}};#endif // QT_NO_STYLE#endif // QSTYLE_H

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -