diff options
Diffstat (limited to 'tqtinterface/qt4/src/kernel/tqstyle.cpp')
-rw-r--r-- | tqtinterface/qt4/src/kernel/tqstyle.cpp | 2186 |
1 files changed, 0 insertions, 2186 deletions
diff --git a/tqtinterface/qt4/src/kernel/tqstyle.cpp b/tqtinterface/qt4/src/kernel/tqstyle.cpp deleted file mode 100644 index b2861b0..0000000 --- a/tqtinterface/qt4/src/kernel/tqstyle.cpp +++ /dev/null @@ -1,2186 +0,0 @@ -/**************************************************************************** -** -** Implementation of TQStyle class -** -** Created : 981231 -** -** Copyright (C) 1998-2008 Trolltech ASA. All rights reserved. -** -** This file is part of the kernel module of the TQt GUI Toolkit. -** -** This file may be used under the terms of the GNU General -** Public License versions 2.0 or 3.0 as published by the Free -** Software Foundation and appearing in the files LICENSE.GPL2 -** and LICENSE.GPL3 included in the packaging of this file. -** Alternatively you may (at your option) use any later version -** of the GNU General Public License if such license has been -** publicly approved by Trolltech ASA (or its successors, if any) -** and the KDE Free TQt Foundation. -** -** Please review the following information to ensure GNU General -** Public Licensing requirements will be met: -** http://trolltech.com/products/qt/licenses/licensing/opensource/. -** If you are unsure which license is appropriate for your use, please -** review the following information: -** http://trolltech.com/products/qt/licenses/licensing/licensingoverview -** or contact the sales department at sales@trolltech.com. -** -** This file may be used under the terms of the Q Public License as -** defined by Trolltech ASA and appearing in the file LICENSE.TQPL -** included in the packaging of this file. Licensees holding valid TQt -** Commercial licenses may use this file in accordance with the TQt -** Commercial License Agreement provided with the Software. -** -** This file is provided "AS IS" with NO WARRANTY OF ANY KIND, -** INCLUDING THE WARRANTIES OF DESIGN, MERCHANTABILITY AND FITNESS FOR -** A PARTICULAR PURPOSE. Trolltech reserves all rights not granted -** herein. -** -**********************************************************************/ - -#include "tqstyle.h" -#ifndef TQT_NO_STYLE -#include "tqapplication.h" -#include "tqpainter.h" -#include "tqbitmap.h" -#include "tqpixmapcache.h" - -#include <limits.h> - -#ifdef USE_QT4 - -// // Default implementations in case Qt4 style objects are being used -// int TQStyle::tqpixelMetric( QStyle::PixelMetric metric, const TQWidget *widget ) const { -// // return QStyle::pixelMetric(metric, 0, widget); -// printf("[WARNING] TQStyle::tqpixelMetric( QStyle::PixelMetric metric, const TQWidget *widget ) const unimplemented\n\r"); -// return 0; -// } -// -// // End default implementations - -bool TQStyle::isA( const char *classname ) const -{ - if (tqstrcmp(classname, metaObject()->className()) == 0) return true; - else { - TQString cn = metaObject()->className(); - if (cn[0] == 'T') - cn = cn.remove(0,1); - return (tqstrcmp(classname, cn.ascii()) == 0); - } -} - -bool TQStyle::inherits( const char *classname ) const { - if (QStyle::inherits(classname)) return true; - else { - TQString cn = classname; - if (cn[0] != 'T') - cn = cn.prepend('T'); - return QStyle::inherits(cn.ascii()); - } -} - -//const char *TQStyle::name(const char *defaultName) const { -// TQString s = objectName(); -// return s.isEmpty()?defaultName:s.latin1_helper(); -//} - -const char *TQStyle::tqname() const { - if (dynamic_cast<const TQStyle*>(static_cast<const QStyle*>(static_cast<const QObject*>(this)))) { - static_object_name = TQT_OBJECT_NAME_HANDLER(objectName()); - return static_object_name.ascii(); - } - else { - printf("[WARNING] Attempted to call TQStyle::tqname() on an object without a constructed TQStyle object or base object. Returning \"\"\n\r"); - return ""; - } -} - -const char *TQStyle::name() const { - if (dynamic_cast<const TQStyle*>(static_cast<const QStyle*>(static_cast<const QObject*>(this)))) { - static_object_name = TQT_OBJECT_NAME_HANDLER(objectName()); - return static_object_name.ascii(); - } - else { - printf("[WARNING] Attempted to call TQStyle::name() on an object without a constructed TQStyle object or base object. Returning \"\"\n\r"); - return ""; - } -} - -TQMetaObject *TQStyle::tqmetaObject() const { - return TQT_TQOBJECT_CONST(this)->tqmetaObject(); -} - -/*! - Returns the appropriate area (see below) within rectangle \a r in - which to draw the \a text or \a pixmap using painter \a p. If \a - len is -1 (the default) all the \a text is drawn; otherwise only - the first \a len characters of \a text are drawn. The text is - aligned in accordance with the tqalignment \a flags (see - \l{TQt::AlignmentFlags}). The \a enabled bool indicates whether or - not the item is enabled. - - If \a r is larger than the area needed to render the \a text the - rectangle that is returned will be offset within \a r in - accordance with the tqalignment \a flags. For example if \a flags is - \c AlignCenter the returned rectangle will be centered within \a - r. If \a r is smaller than the area needed the rectangle that is - returned will be \e larger than \a r (the smallest rectangle large - enough to render the \a text or \a pixmap). - - By default, if both the text and the pixmap are not null, the - pixmap is drawn and the text is ignored. -*/ -TQRect TQStyle::tqitemRect( QPainter *p, const QRect &r, - int flags, bool enabled, const QPixmap *pixmap, - const QString& text, int len ) const -{ - TQRect result; - int x = r.x(); - int y = r.y(); - int w = r.width(); - int h = r.height(); - TQt::GUIStyle gs = (TQt::GUIStyle)tqstyleHint( SH_GUIStyle ); - - if ( pixmap ) { - if ( (flags & TQt::AlignVCenter) == TQt::AlignVCenter ) - y += h/2 - pixmap->height()/2; - else if ( (flags & TQt::AlignBottom) == TQt::AlignBottom) - y += h - pixmap->height(); - if ( (flags & TQt::AlignRight) == TQt::AlignRight ) - x += w - pixmap->width(); - else if ( (flags & TQt::AlignHCenter) == TQt::AlignHCenter ) - x += w/2 - pixmap->width()/2; - else if ( (flags & TQt::AlignLeft) != TQt::AlignLeft && TQApplication::reverseLayout() ) - x += w - pixmap->width(); - result = TQRect(x, y, pixmap->width(), pixmap->height()); - } else if ( !text.isNull() && p ) { - result = TQT_TQPAINTER(p)->boundingRect( x, y, w, h, flags, text, len ); - if ( gs == TQt::WindowsStyle && !enabled ) { - result.setWidth(result.width()+1); - result.setHeight(result.height()+1); - } - } else { - result = TQRect(x, y, w, h); - } - - return result; -} - -/*! - Draws the \a text or \a pixmap in rectangle \a r using painter \a - p and color group \a g. The pen color is specified with \a - penColor. The \a enabled bool indicates whether or not the item is - enabled; when reimplementing this bool should influence how the - item is drawn. If \a len is -1 (the default) all the \a text is - drawn; otherwise only the first \a len characters of \a text are - drawn. The text is aligned and wrapped according to the tqalignment - \a flags (see \l{TQt::AlignmentFlags}). - - By default, if both the text and the pixmap are not null, the - pixmap is drawn and the text is ignored. -*/ -void TQStyle::drawItem( TQPainter *p, const TQRect &r, - int flags, const TQColorGroup &g, bool enabled, - const TQPixmap *pixmap, const TQString& text, int len, - const TQColor* penColor ) const -{ - int x = r.x(); - int y = r.y(); - int w = r.width(); - int h = r.height(); - TQt::GUIStyle gs = (TQt::GUIStyle)tqstyleHint( SH_GUIStyle ); - - p->setPen( penColor?*penColor:g.foreground() ); - if ( pixmap ) { - TQPixmap pm( *pixmap ); - bool clip = (flags & TQt::DontClip) == 0; - if ( clip ) { - if ( pm.width() < w && pm.height() < h ) { - clip = FALSE; - } else { - p->save(); - TQRegion cr = TQRect(x, y, w, h); - if (p->hasClipping()) - cr &= p->clipRegion(TQPainter::CoordPainter); - p->setClipRegion(cr); - } - } - if ( (flags & TQt::AlignVCenter) == TQt::AlignVCenter ) - y += h/2 - pm.height()/2; - else if ( (flags & TQt::AlignBottom) == TQt::AlignBottom) - y += h - pm.height(); - if ( (flags & TQt::AlignRight) == TQt::AlignRight ) - x += w - pm.width(); - else if ( (flags & TQt::AlignHCenter) == TQt::AlignHCenter ) - x += w/2 - pm.width()/2; - else if ( ((flags & TQt::AlignLeft) != TQt::AlignLeft) && TQApplication::reverseLayout() ) // AlignAuto && rightToLeft - x += w - pm.width(); - - if ( !enabled ) { - if ( pm.mask() ) { // pixmap with a mask - if ( !pm.selfMask() ) { // mask is not pixmap itself - TQPixmap pmm( *pm.mask() ); - pmm.setMask( *((TQBitmap *)&pmm) ); - pm = pmm; - } - } else if ( pm.depth() == 1 ) { // monochrome pixmap, no mask - pm.setMask( *((TQBitmap *)&pm) ); -#ifndef TQT_NO_IMAGE_HEURISTIC_MASK - } else { // color pixmap, no mask - TQString k; - k.sprintf( "$qt-drawitem-%x", pm.serialNumber() ); - TQPixmap *mask = TQPixmapCache::find(k); - bool del=FALSE; - if ( !mask ) { - mask = new TQPixmap( pm.createHeuristicMask() ); - mask->setMask( *((TQBitmap*)mask) ); - del = !TQPixmapCache::insert( k, mask ); - } - pm = *mask; - if (del) delete mask; -#endif - } - if ( gs == TQt::WindowsStyle ) { - p->setPen( g.light() ); - p->drawPixmap( x+1, y+1, pm ); - p->setPen( g.text() ); - } - } - p->drawPixmap( x, y, pm ); - if ( clip ) - p->restore(); - } else if ( !text.isNull() ) { - if ( gs == TQt::WindowsStyle && !enabled ) { - p->setPen( g.light() ); - p->drawText( x+1, y+1, w, h, flags, text, len ); - p->setPen( g.text() ); - } - p->drawText( x, y, w, h, flags, text, len ); - } -} - -/*! - Initializes the appearance of a widget. - - This function is called for every widget at some point after it - has been fully created but just \e before it is shown the very - first time. - - Reasonable actions in this function might be to call - TQWidget::setBackgroundMode() for the widget. An example of highly - unreasonable use would be setting the tqgeometry! Reimplementing - this function gives you a back-door through which you can change - the appearance of a widget. With TQt 3.0's style engine you will - rarely need to write your own polish(); instead reimplement - drawItem(), drawPrimitive(), etc. - - The TQWidget::inherits() function may provide enough information to - allow class-specific customizations. But be careful not to - hard-code things too much because new TQStyle subclasses are - expected to work reasonably with all current and \e future - widgets. - - \sa unPolish() -*/ -void TQStyle::polish( TQWidget*) -{ -} - -/*! - Undoes the initialization of a widget's appearance. - - This function is the counterpart to polish. It is called for every - polished widget when the style is dynamically changed. The former - style has to unpolish its settings before the new style can polish - them again. - - \sa polish() -*/ -void TQStyle::unPolish( TQWidget*) -{ -} - -/*! - \overload - Late initialization of the TQApplication object. - - \sa unPolish() -*/ -void TQStyle::polish( TQApplication*) -{ -} - -/*! - \overload - - Undoes the application polish. - - \sa polish() -*/ -void TQStyle::unPolish( TQApplication*) -{ -} - -/*! - \overload - - The style may have certain requirements for color palettes. In - this function it has the chance to change the palette according to - these requirements. - - \sa TQPalette, TQApplication::setPalette() -*/ -void TQStyle::polish( TQPalette&) -{ -} - -#else // USE_QT4 - -class TQStylePrivate -{ -public: - TQStylePrivate() - { - } -}; - -/*! - \class TQStyleOption tqstyle.h - \brief The TQStyleOption class specifies optional parameters for TQStyle functions. - \ingroup appearance - - Some TQStyle functions take an optional argument specifying extra - information that is required for a paritical primitive or control. - So that the TQStyle class can be extended, TQStyleOption is used to - provide a variable-argument for these options. - - The TQStyleOption class has constructors for each type of optional - argument, and this set of constructors may be extended in future - TQt releases. There are also corresponding access functions that - return the optional arguments: these too may be extended. - - For each constructor, you should refer to the documentation of the - TQStyle functions to see the meaning of the arguments. - - When calling TQStyle functions from your own widgets, you must only - pass the default TQStyleOption or the argument that TQStyle is - documented to accept. For example, if the function expects - TQStyleOption(TQMenuItem *, int), passing TQStyleOption(TQMenuItem *) - leaves the optional integer argument uninitialized. - - When subclassing TQStyle, you must similarly only expect the - default or documented arguments. The other arguments will have - uninitialized values. - - If you make your own TQStyle subclasses and your own widgets, you - can make a subclass of TQStyleOption to pass additional arguments - to your TQStyle subclass. You will need to cast the "const - TQStyleOption&" argument to your subclass, so be sure your style - has been called from your widget. -*/ - -/*! - \enum TQStyleOption::StyleOptionDefault - - This enum value can be passed as the optional argument to any - TQStyle function. - - \value Default -*/ - -/*! - \fn TQStyleOption::TQStyleOption(StyleOptionDefault) - - The default option. This can always be passed as the optional - argument to TQStyle functions. -*/ - -/*! - \fn TQStyleOption::TQStyleOption(int) - - Pass one integer, \a in1. For example, headerSection. -*/ - -/*! - \fn TQStyleOption::TQStyleOption(int, int) - - Pass two integers, \a in1 and \a in2. For example, linewidth and - midlinewidth. -*/ - -/*! - \fn TQStyleOption::TQStyleOption(int, int, int, int) - - Pass four integers, \a in1, \a in2, \a in3 and \a in4. -*/ - -/*! - \fn TQStyleOption::TQStyleOption(TQMenuItem*) - - Pass a menu item, \a m. -*/ - -/*! - \fn TQStyleOption::TQStyleOption(TQMenuItem*, int) - - Pass a menu item and an integer, \a m and \a in1. -*/ - -/*! - \fn TQStyleOption::TQStyleOption(TQMenuItem*, int, int) - - Pass a menu item and two integers, \a m, \a in1 and \a in2. -*/ - -/*! - \fn TQStyleOption::TQStyleOption(const TQColor&) - - Pass a color, \a c. -*/ - -/*! - \fn TQStyleOption::TQStyleOption(TQTab*) - - Pass a TQTab, \a t. -*/ - -/*! - \fn TQStyleOption::TQStyleOption(TQListViewItem*) - - Pass a TQListViewItem, \a i. -*/ - -/*! - \fn TQStyleOption::TQStyleOption(TQt::ArrowType) - - Pass an TQt::ArrowType, \a a. -*/ - -/*! - \fn TQStyleOption::TQStyleOption(TQCheckListItem* i) - - Pass a TQCheckListItem, \a i. -*/ - -/*! - \fn TQStyleOption::TQStyleOption( const TQRect &r ) - - Pass a TQRect, \a r. -*/ - -/*! - \fn TQStyleOption::TQStyleOption( TQWidget *w ) - - Pass a TQWidget, \a w. -*/ - -/*! - \fn bool TQStyleOption::isDefault() const - - Returns TRUE if the option was constructed with the default - constructor; otherwise returns FALSE. -*/ - -/*! - \fn int TQStyleOption::day() const - - Returns the index of the day in the month if the appropriate - constructor was called; otherwise the return value is undefined. -*/ - -/*! - \fn int TQStyleOption::lineWidth() const - - Returns the line width if the appropriate constructor was called; - otherwise the return value is undefined. -*/ - -/*! - \fn int TQStyleOption::midLineWidth() const - - Returns the mid-line width if the appropriate constructor was - called; otherwise the return value is undefined. -*/ - -/*! - \fn int TQStyleOption::frameShape() const - - Returns a TQFrame::Shape value if the appropriate constructor was - called; otherwise the return value is undefined. -*/ - -/*! - \fn int TQStyleOption::frameShadow() const - - Returns a TQFrame::Shadow value if the appropriate constructor was - called; otherwise the return value is undefined. -*/ - -/*! - \fn TQMenuItem* TQStyleOption::menuItem() const - - Returns a menu item if the appropriate constructor was called; - otherwise the return value is undefined. -*/ - -/*! - \fn int TQStyleOption::maxIconWidth() const - - Returns the maximum width of the menu item check area if the - appropriate constructor was called; otherwise the return value is - undefined. -*/ - -/*! - \fn int TQStyleOption::tabWidth() const - - Returns the tab indent width if the appropriate constructor was - called; otherwise the return value is undefined. -*/ - -/*! - \fn int TQStyleOption::headerSection() const - - Returns the header section if the appropriate constructor was - called; otherwise the return value is undefined. -*/ - -/*! - \fn const TQColor& TQStyleOption::color() const - - Returns a color if the appropriate constructor was called; - otherwise the return value is undefined. -*/ - -/*! - \fn TQTab* TQStyleOption::tab() const - - Returns a TQTabBar tab if the appropriate constructor was called; - otherwise the return value is undefined. -*/ - -/*! - \fn TQListViewItem* TQStyleOption::listViewItem() const - - Returns a TQListView item if the appropriate constructor was - called; otherwise the return value is undefined. -*/ - -/*! - \fn TQt::ArrowType TQStyleOption::arrowType() const - - Returns an arrow type if the appropriate constructor was called; - otherwise the return value is undefined. -*/ - -/*! - \fn TQCheckListItem* TQStyleOption::checkListItem() const - - Returns a check list item if the appropriate constructor was - called; otherwise the return value is undefined. -*/ - -/*! - \fn TQRect TQStyleOption::rect() const - - Returns a rectangle if the appropriate constructor was called; - otherwise the return value is undefined. -*/ - -/*! - \fn TQWidget* TQStyleOption::widget() const - - Returns a pointer to a widget if the appropriate constructor was called; - otherwise the return value is undefined. -*/ - -/*! - \class TQStyle tqstyle.h - \brief The TQStyle class specifies the look and feel of a GUI. - \ingroup appearance - - A large number of GUI elements are common to many widgets. The - TQStyle class allows the look of these elements to be modified - across all widgets that use the TQStyle functions. It also - provides two feel options: Motif and Windows. - - Although it is not possible to fully enumerate the look of - graphical elements and the feel of widgets in a GUI, TQStyle - provides a considerable amount of control and customisability. - - In TQt 1.x the look and feel option for widgets was specified by a - single value: the GUIStyle. Starting with TQt 2.0, this notion was - expanded to allow the look to be specified by virtual drawing - functions. - - Derived classes may reimplement some or all of the drawing - functions to modify the look of all widgets that use those - functions. - - Languages written from right to left (such as Arabic and Hebrew) - usually also mirror the whole tqlayout of widgets. If you design a - style, you should take special care when drawing asymmetric - elements to make sure that they also look correct in a mirrored - tqlayout. You can start your application with \c -reverse to check - the mirrored tqlayout. Also notice, that for a reversed tqlayout, the - light usually comes from top right instead of top left. - - The actual reverse tqlayout is performed automatically when - possible. However, for the sake of flexibility, the translation - cannot be performed everywhere. The documentation for each - function in the TQStyle API states whether the function - expects/returns logical or screen coordinates. Using logical - coordinates (in ComplexControls, for example) provides great - flexibility in controlling the look of a widget. Use tqvisualRect() - when necessary to translate logical coordinates into screen - coordinates for drawing. - - In TQt versions prior to 3.0, if you wanted a low level route into - changing the appearance of a widget, you would reimplement - polish(). With the new 3.0 style engine the recommended approach - is to reimplement the draw functions, for example drawItem(), - drawPrimitive(), tqdrawControl(), tqdrawControlMask(), - tqdrawComplexControl() and tqdrawComplexControlMask(). Each of these - functions is called with a range of parameters that provide - information that you can use to determine how to draw them, e.g. - style flags, rectangle, color group, etc. - - For information on changing elements of an existing style or - creating your own style see the \link customstyles.html Style - overview\endlink. - - Styles can also be created as \link plugins-howto.html - plugins\endlink. -*/ - -/*! - \enum TQt::GUIStyle - - \obsolete - - \value WindowsStyle - \value MotifStyle - \value MacStyle - \value Win3Style - \value PMStyle -*/ - -/*! - \enum TQt::UIEffect - - \value UI_General - \value UI_AnimateMenu - \value UI_FadeMenu - \value UI_AnimateCombo - \value UI_AnimateTooltip - \value UI_FadeTooltip - \value UI_AnimateToolBox Reserved -*/ - -/*! - Constructs a TQStyle. -*/ -TQStyle::TQStyle() -{ - d = new TQStylePrivate; -} - -/*! - Destroys the style and frees all allocated resources. -*/ -TQStyle::~TQStyle() -{ - delete d; - d = 0; -} - -/* - \fn GUIStyle TQStyle::guiStyle() const - \obsolete - - Returns an indicator to the additional "feel" component of a - style. Current supported values are TQt::WindowsStyle and TQt::MotifStyle. -*/ - - - -/*! - Initializes the appearance of a widget. - - This function is called for every widget at some point after it - has been fully created but just \e before it is shown the very - first time. - - Reasonable actions in this function might be to call - TQWidget::setBackgroundMode() for the widget. An example of highly - unreasonable use would be setting the tqgeometry! Reimplementing - this function gives you a back-door through which you can change - the appearance of a widget. With TQt 3.0's style engine you will - rarely need to write your own polish(); instead reimplement - drawItem(), drawPrimitive(), etc. - - The TQWidget::inherits() function may provide enough information to - allow class-specific customizations. But be careful not to - hard-code things too much because new TQStyle subclasses are - expected to work reasonably with all current and \e future - widgets. - - \sa unPolish() -*/ -void TQStyle::polish( TQWidget*) -{ -} - -/*! - Undoes the initialization of a widget's appearance. - - This function is the counterpart to polish. It is called for every - polished widget when the style is dynamically changed. The former - style has to unpolish its settings before the new style can polish - them again. - - \sa polish() -*/ -void TQStyle::unPolish( TQWidget*) -{ -} - - -/*! - \overload - Late initialization of the TQApplication object. - - \sa unPolish() -*/ -void TQStyle::polish( TQApplication*) -{ -} - -/*! - \overload - - Undoes the application polish. - - \sa polish() -*/ -void TQStyle::unPolish( TQApplication*) -{ -} - -/*! - \overload - - The style may have certain requirements for color palettes. In - this function it has the chance to change the palette according to - these requirements. - - \sa TQPalette, TQApplication::setPalette() -*/ -void TQStyle::polish( TQPalette&) -{ -} - -/*! - Polishes the popup menu according to the GUI style. This usually - means setting the mouse tracking - (\l{TQPopupMenu::setMouseTracking()}) and whether the menu is - checkable by default (\l{TQPopupMenu::setCheckable()}). -*/ -void TQStyle::polishPopupMenu( TQPopupMenu *) -{ -} - -/*! - Returns the appropriate area (see below) within rectangle \a r in - which to draw the \a text or \a pixmap using painter \a p. If \a - len is -1 (the default) all the \a text is drawn; otherwise only - the first \a len characters of \a text are drawn. The text is - aligned in accordance with the tqalignment \a flags (see - \l{TQt::AlignmentFlags}). The \a enabled bool indicates whether or - not the item is enabled. - - If \a r is larger than the area needed to render the \a text the - rectangle that is returned will be offset within \a r in - accordance with the tqalignment \a flags. For example if \a flags is - \c AlignCenter the returned rectangle will be centered within \a - r. If \a r is smaller than the area needed the rectangle that is - returned will be \e larger than \a r (the smallest rectangle large - enough to render the \a text or \a pixmap). - - By default, if both the text and the pixmap are not null, the - pixmap is drawn and the text is ignored. -*/ -TQRect TQStyle::tqitemRect( TQPainter *p, const TQRect &r, - int flags, bool enabled, const TQPixmap *pixmap, - const TQString& text, int len ) const -{ - TQRect result; - int x = r.x(); - int y = r.y(); - int w = r.width(); - int h = r.height(); - GUIStyle gs = (GUIStyle)tqstyleHint( SH_GUIStyle ); - - if ( pixmap ) { - if ( (flags & TQt::AlignVCenter) == TQt::AlignVCenter ) - y += h/2 - pixmap->height()/2; - else if ( (flags & TQt::AlignBottom) == TQt::AlignBottom) - y += h - pixmap->height(); - if ( (flags & TQt::AlignRight) == TQt::AlignRight ) - x += w - pixmap->width(); - else if ( (flags & TQt::AlignHCenter) == TQt::AlignHCenter ) - x += w/2 - pixmap->width()/2; - else if ( (flags & TQt::AlignLeft) != TQt::AlignLeft && TQApplication::reverseLayout() ) - x += w - pixmap->width(); - result = TQRect(x, y, pixmap->width(), pixmap->height()); - } else if ( !text.isNull() && p ) { - result = p->boundingRect( x, y, w, h, flags, text, len ); - if ( gs == TQt::WindowsStyle && !enabled ) { - result.setWidth(result.width()+1); - result.setHeight(result.height()+1); - } - } else { - result = TQRect(x, y, w, h); - } - - return result; -} - - -/*! - Draws the \a text or \a pixmap in rectangle \a r using painter \a - p and color group \a g. The pen color is specified with \a - penColor. The \a enabled bool indicates whether or not the item is - enabled; when reimplementing this bool should influence how the - item is drawn. If \a len is -1 (the default) all the \a text is - drawn; otherwise only the first \a len characters of \a text are - drawn. The text is aligned and wrapped according to the tqalignment - \a flags (see \l{TQt::AlignmentFlags}). - - By default, if both the text and the pixmap are not null, the - pixmap is drawn and the text is ignored. -*/ -void TQStyle::drawItem( TQPainter *p, const TQRect &r, - int flags, const TQColorGroup &g, bool enabled, - const TQPixmap *pixmap, const TQString& text, int len, - const TQColor* penColor ) const -{ - int x = r.x(); - int y = r.y(); - int w = r.width(); - int h = r.height(); - GUIStyle gs = (GUIStyle)tqstyleHint( SH_GUIStyle ); - - p->setPen( penColor?*penColor:g.foreground() ); - if ( pixmap ) { - TQPixmap pm( *pixmap ); - bool clip = (flags & TQt::DontClip) == 0; - if ( clip ) { - if ( pm.width() < w && pm.height() < h ) { - clip = FALSE; - } else { - p->save(); - TQRegion cr = TQRect(x, y, w, h); - if (p->hasClipping()) - cr &= p->clipRegion(TQPainter::CoordPainter); - p->setClipRegion(cr); - } - } - if ( (flags & TQt::AlignVCenter) == TQt::AlignVCenter ) - y += h/2 - pm.height()/2; - else if ( (flags & TQt::AlignBottom) == TQt::AlignBottom) - y += h - pm.height(); - if ( (flags & TQt::AlignRight) == TQt::AlignRight ) - x += w - pm.width(); - else if ( (flags & TQt::AlignHCenter) == TQt::AlignHCenter ) - x += w/2 - pm.width()/2; - else if ( ((flags & TQt::AlignLeft) != TQt::AlignLeft) && TQApplication::reverseLayout() ) // AlignAuto && rightToLeft - x += w - pm.width(); - - if ( !enabled ) { - if ( pm.mask() ) { // pixmap with a mask - if ( !pm.selfMask() ) { // mask is not pixmap itself - TQPixmap pmm( *pm.mask() ); - pmm.setMask( *((TQBitmap *)&pmm) ); - pm = pmm; - } - } else if ( pm.depth() == 1 ) { // monochrome pixmap, no mask - pm.setMask( *((TQBitmap *)&pm) ); -#ifndef TQT_NO_IMAGE_HEURISTIC_MASK - } else { // color pixmap, no mask - TQString k; - k.sprintf( "$qt-drawitem-%x", pm.serialNumber() ); - TQPixmap *mask = TQPixmapCache::find(k); - bool del=FALSE; - if ( !mask ) { - mask = new TQPixmap( pm.createHeuristicMask() ); - mask->setMask( *((TQBitmap*)mask) ); - del = !TQPixmapCache::insert( k, mask ); - } - pm = *mask; - if (del) delete mask; -#endif - } - if ( gs == TQt::WindowsStyle ) { - p->setPen( g.light() ); - p->drawPixmap( x+1, y+1, pm ); - p->setPen( g.text() ); - } - } - p->drawPixmap( x, y, pm ); - if ( clip ) - p->restore(); - } else if ( !text.isNull() ) { - if ( gs == TQt::WindowsStyle && !enabled ) { - p->setPen( g.light() ); - p->drawText( x+1, y+1, w, h, flags, text, len ); - p->setPen( g.text() ); - } - p->drawText( x, y, w, h, flags, text, len ); - } -} - -/*! - \enum TQStyle::PrimitiveElement - - This enum represents the PrimitiveElements of a style. A - PrimitiveElement is a common GUI element, such as a checkbox - indicator or pushbutton bevel. - - \value PE_ButtonCommand button used to initiate an action, for - example, a TQPushButton. - \value PE_ButtonDefault this button is the default button, e.g. - in a dialog. - \value PE_ButtonBevel generic button bevel. - \value PE_ButtonTool tool button, for example, a TQToolButton. - \value PE_ButtonDropDown drop down button, for example, a tool - button that displays a popup menu, for example, TQPopupMenu. - - - \value PE_FocusRect generic focus indicator. - - - \value PE_ArrowUp up arrow. - \value PE_ArrowDown down arrow. - \value PE_ArrowRight right arrow. - \value PE_ArrowLeft left arrow. - - - \value PE_SpinWidgetUp up symbol for a spin widget, for example a - TQSpinBox. - \value PE_SpinWidgetDown down symbol for a spin widget. - \value PE_SpinWidgetPlus increase symbol for a spin widget. - \value PE_SpinWidgetMinus decrease symbol for a spin widget. - - - \value PE_Indicator on/off indicator, for example, a TQCheckBox. - \value PE_IndicatorMask bitmap mask for an indicator. - \value PE_ExclusiveIndicator exclusive on/off indicator, for - example, a TQRadioButton. - \value PE_ExclusiveIndicatorMask bitmap mask for an exclusive indicator. - - - \value PE_DockWindowHandle tear off handle for dock windows and - toolbars, for example \l{TQDockWindow}s and \l{TQToolBar}s. - \value PE_DockWindowSeparator item separator for dock window and - toolbar contents. - \value PE_DockWindowResizeHandle resize handle for dock windows. - - \value PE_Splitter splitter handle; see also TQSplitter. - - - \value PE_Panel generic panel frame; see also TQFrame. - \value PE_PanelPopup panel frame for popup windows/menus; see also - TQPopupMenu. - \value PE_PanelMenuBar panel frame for menu bars. - \value PE_PanelDockWindow panel frame for dock windows and toolbars. - \value PE_PanelTabWidget panel frame for tab widgets. - \value PE_PanelLineEdit panel frame for line edits. - \value PE_PanelGroupBox panel frame for group boxes. - - \value PE_TabBarBase area below tabs in a tab widget, for example, - TQTab. - - - \value PE_HeaderSection section of a list or table header; see also - TQHeader. - \value PE_HeaderArrow arrow used to indicate sorting on a list or table - header - \value PE_tqStatusBarSection section of a status bar; see also - TQStatusBar. - - - \value PE_GroupBoxFrame frame around a group box; see also - TQGroupBox. - \value PE_WindowFrame frame around a MDI window or a docking window - - - \value PE_Separator generic separator. - - - \value PE_SizeGrip window resize handle; see also TQSizeGrip. - - - \value PE_CheckMark generic check mark; see also TQCheckBox. - - - \value PE_ScrollBarAddLine scrollbar line increase indicator - (i.e. scroll down); see also TQScrollBar. - \value PE_ScrollBarSubLine scrollbar line decrease indicator (i.e. scroll up). - \value PE_ScrollBarAddPage scolllbar page increase indicator (i.e. page down). - \value PE_ScrollBarSubPage scrollbar page decrease indicator (i.e. page up). - \value PE_ScrollBarSlider scrollbar slider - \value PE_ScrollBarFirst scrollbar first line indicator (i.e. home). - \value PE_ScrollBarLast scrollbar last line indicator (i.e. end). - - - \value PE_ProgressBarChunk section of a progress bar indicator; see - also TQProgressBar. - - \value PE_CheckListController controller part of a listview item - \value PE_CheckListIndicator checkbox part of a listview item - \value PE_CheckListExclusiveIndicator radiobutton part of a listview item - \value PE_RubberBand rubber band used in such things as iconview - - \value PE_CustomBase base value for custom PrimitiveElements. - All values above this are reserved for custom use. Custom - values must be greater than this value. - - \sa drawPrimitive() -*/ -/*! \enum TQStyle::SFlags - \internal -*/ -/*! \enum TQStyle::SCFlags - \internal -*/ - -/*! - \enum TQStyle::StyleFlags - - This enum represents flags for drawing PrimitiveElements. Not all - primitives use all of these flags. Note that these flags may mean - different things to different primitives. For an explanation of - the relationship between primitives and their flags, as well as - the different meanings of the flags, see the \link - customstyles.html Style overview\endlink. - - \value Style_Default - \value Style_Enabled - \value Style_Raised - \value Style_Sunken - \value Style_Off - \value Style_NoChange - \value Style_On - \value Style_Down - \value Style_Horizontal - \value Style_HasFocus - \value Style_Top - \value Style_Bottom - \value Style_FocusAtBorder - \value Style_AutoRaise - \value Style_MouseOver - \value Style_Up - \value Style_Selected - \value Style_HasFocus - \value Style_Active - \value Style_ButtonDefault - - \sa drawPrimitive() -*/ - -/*! - \fn void TQStyle::drawPrimitive( PrimitiveElement pe, TQPainter *p, const TQRect &r, const TQColorGroup &cg, SFlags flags, const TQStyleOption& opt) const - - Draws the style PrimitiveElement \a pe using the painter \a p in - the area \a r. Colors are used from the color group \a cg. - - The rect \a r should be in screen coordinates. - - The \a flags argument is used to control how the PrimitiveElement - is drawn. Multiple flags can be OR'ed together. - - For example, a pressed button would be drawn with the flags \c - Style_Enabled and \c Style_Down. - - The \a opt argument can be used to control how various - PrimitiveElements are drawn. Note that \a opt may be the default - value even for PrimitiveElements that make use of extra options. - When \a opt is non-default, it is used as follows: - - \table - \header \i PrimitiveElement \i Options \i Notes - \row \i \l PE_FocusRect - \i \l TQStyleOption ( const \l TQColor & bg ) - \list - \i opt.\link TQStyleOption::color() color\endlink() - \endlist - \i \e bg is the background color on which the focus rect is being drawn. - \row \i12 \l PE_Panel - \i12 \l TQStyleOption ( int linewidth, int midlinewidth ) - \list - \i opt.\link TQStyleOption::lineWidth() lineWidth\endlink() - \i opt.\link TQStyleOption::midLineWidth() midLineWidth\endlink() - \endlist - \i \e linewidth is the line width for drawing the panel. - \row \i \e midlinewidth is the mid-line width for drawing the panel. - \row \i12 \l PE_PanelPopup - \i12 \l TQStyleOption ( int linewidth, int midlinewidth ) - \list - \i opt.\link TQStyleOption::lineWidth() lineWidth\endlink() - \i opt.\link TQStyleOption::midLineWidth() midLineWidth\endlink() - \endlist - \i \e linewidth is the line width for drawing the panel. - \row \i \e midlinewidth is the mid-line width for drawing the panel. - \row \i12 \l PE_PanelMenuBar - \i12 \l TQStyleOption ( int linewidth, int midlinewidth ) - \list - \i opt.\link TQStyleOption::lineWidth() lineWidth\endlink() - \i opt.\link TQStyleOption::midLineWidth() midLineWidth\endlink() - \endlist - \i \e linewidth is the line width for drawing the panel. - \row \i \e midlinewidth is the mid-line width for drawing the panel. - \row \i12 \l PE_PanelDockWindow - \i12 \l TQStyleOption ( int linewidth, int midlinewidth ) - \list - \i opt.\link TQStyleOption::lineWidth() lineWidth\endlink() - \i opt.\link TQStyleOption::midLineWidth() midLineWidth\endlink() - \endlist - \i \e linewidth is the line width for drawing the panel. - \row \i \e midlinewidth is the mid-line width for drawing the panel. - \row \i14 \l PE_GroupBoxFrame - \i14 \l TQStyleOption ( int linewidth, int midlinewidth, int tqshape, int shadow ) - \list - \i opt.\link TQStyleOption::lineWidth() lineWidth\endlink() - \i opt.\link TQStyleOption::midLineWidth() midLineWidth\endlink() - \i opt.\link TQStyleOption::frameShape() frameShape\endlink() - \i opt.\link TQStyleOption::frameShadow() frameShadow\endlink() - \endlist - \i \e linewidth is the line width for the group box. - \row \i \e midlinewidth is the mid-line width for the group box. - \row \i \e tqshape is the \link TQFrame::frameShape frame tqshape \endlink - for the group box. - \row \i \e shadow is the \link TQFrame::frameShadow frame shadow \endlink - for the group box. - \endtable - - - For all other \link TQStyle::PrimitiveElement - PrimitiveElements\endlink, \a opt is unused. - - \sa StyleFlags -*/ - -/*! - \enum TQStyle::ControlElement - - This enum represents a ControlElement. A ControlElement is part of - a widget that performs some action or displays information to the - user. - - \value CE_PushButton the bevel and default indicator of a TQPushButton. - \value CE_PushButtonLabel the label (iconset with text or pixmap) - of a TQPushButton. - - \value CE_CheckBox the indicator of a TQCheckBox. - \value CE_CheckBoxLabel the label (text or pixmap) of a TQCheckBox. - - \value CE_RadioButton the indicator of a TQRadioButton. - \value CE_RadioButtonLabel the label (text or pixmap) of a TQRadioButton. - - \value CE_TabBarTab the tab within a TQTabBar (a TQTab). - \value CE_TabBarLabel the label within a TQTab. - - \value CE_ProgressBarGroove the groove where the progress - indicator is drawn in a TQProgressBar. - \value CE_ProgressBarContents the progress indicator of a TQProgressBar. - \value CE_ProgressBarLabel the text label of a TQProgressBar. - - \value CE_PopupMenuItem a menu item in a TQPopupMenu. - \value CE_PopupMenuScroller scrolling areas in a popumenu when the - style supports scrolling. - \value CE_PopupMenuHorizontalExtra extra frame area set aside with PM_PopupMenuFrameHorizontalExtra - \value CE_PopupMenuVerticalExtra extra frame area set aside with PM_PopupMenuFrameVerticalExtra - - \value CE_MenuBarItem a menu item in a TQMenuBar. - - \value CE_ToolButtonLabel a tool button's label. - - \value CE_MenuBarEmptyArea the empty area of a TQMenuBar. - \value CE_DockWindowEmptyArea the empty area of a TQDockWindow. - - \value CE_ToolBoxTab the toolbox's tab area - \value CE_HeaderLabel the header's label - - \value CE_CustomBase base value for custom ControlElements. All values above - this are reserved for custom use. Therefore, custom values must be - greater than this value. - - \sa tqdrawControl() -*/ - -/*! - \fn void TQStyle::tqdrawControl( ControlElement element, TQPainter *p, const TQWidget *widget, const TQRect &r, const TQColorGroup &cg, SFlags how, const TQStyleOption& opt) const - - Draws the ControlElement \a element using the painter \a p in the - area \a r. Colors are used from the color group \a cg. - - The rect \a r should be in screen coordinates. - - The \a how argument is used to control how the ControlElement is - drawn. Multiple flags can be OR'ed together. See the table below - for an explanation of which flags are used with the various - ControlElements. - - The \a widget argument is a pointer to a TQWidget or one of its - subclasses. The widget can be cast to the appropriate type based - on the value of \a element. The \a opt argument can be used to - pass extra information required when drawing the ControlElement. - Note that \a opt may be the default value even for ControlElements - that can make use of the extra options. See the table below for - the appropriate \a widget and \a opt usage: - - \table - \header \i ControlElement<br>\& Widget Cast - \i Style Flags - \i Notes - \i Options - \i Notes - - \row \i16 \l{CE_PushButton}(const \l TQPushButton *) - - and - - \l{CE_PushButtonLabel}(const \l TQPushButton *) - \i \l Style_Enabled \i Set if the button is enabled. - \i16 Unused. - \i16 - \row \i \l Style_HasFocus \i Set if the button has input focus. - \row \i \l Style_Raised \i Set if the button is not down, not on and not flat. - \row \i \l Style_On \i Set if the button is a toggle button and toggled on. - \row \i \l Style_Down \i Set if the button is down (i.e., the mouse button or - space bar is pressed on the button). - \row \i \l Style_ButtonDefault \i Set if the button is a default button. - - \row \i16 \l{CE_CheckBox}(const \l TQCheckBox *) - - and - - \l{CE_CheckBoxLabel}(const \l TQCheckBox *) - - \i \l Style_Enabled \i Set if the checkbox is enabled. - \i16 Unused. - \i16 - \row \i \l Style_HasFocus \i Set if the checkbox has input focus. - \row \i \l Style_On \i Set if the checkbox is checked. - \row \i \l Style_Off \i Set if the checkbox is not checked. - \row \i \l Style_NoChange \i Set if the checkbox is in the NoChange state. - \row \i \l Style_Down \i Set if the checkbox is down (i.e., the mouse button or - space bar is pressed on the button). - - \row \i15 \l{CE_RadioButton}(const TQRadioButton *) - - and - - \l{CE_RadioButtonLabel}(const TQRadioButton *) - \i \l Style_Enabled \i Set if the radiobutton is enabled. - \i15 Unused. - \i15 - \row \i \l Style_HasFocus \i Set if the radiobutton has input focus. - \row \i \l Style_On \i Set if the radiobutton is checked. - \row \i \l Style_Off \i Set if the radiobutton is not checked. - \row \i \l Style_Down \i Set if the radiobutton is down (i.e., the mouse - button or space bar is pressed on the radiobutton). - - \row \i12 \l{CE_TabBarTab}(const \l TQTabBar *) - - and - - \l{CE_TabBarLabel}(const \l TQTabBar *) - - \i \l Style_Enabled \i Set if the tabbar and tab is enabled. - \i12 \l TQStyleOption ( \l TQTab *t ) - \list - \i opt.\link TQStyleOption::tab() tab\endlink() - \endlist - \i12 \e t is the TQTab being drawn. - \row \i \l Style_Selected \i Set if the tab is the current tab. - - \row \i12 \l{CE_ProgressBarGroove}(const TQProgressBar *) - - and - - \l{CE_ProgressBarContents}(const TQProgressBar *) - - and - - \l{CE_ProgressBarLabel}(const TQProgressBar *) - - \i \l Style_Enabled \i Set if the progressbar is enabled. - \i12 Unused. - \i12 - \row \i \l Style_HasFocus \i Set if the progressbar has input focus. - - \row \i13 \l{CE_PopupMenuItem}(const \l TQPopupMenu *) - \i \l Style_Enabled \i Set if the menuitem is enabled. - \i13 \l TQStyleOption ( TQMenuItem *mi, int tabwidth, int maxpmwidth ) - \list - \i opt.\link TQStyleOption::menuItem() menuItem\endlink() - \i opt.\link TQStyleOption::tabWidth() tabWidth\endlink() - \i opt.\link TQStyleOption::maxIconWidth() maxIconWidth\endlink() - \endlist - \i \e mi is the menu item being drawn. TQMenuItem is currently an - internal class. - \row \i \l Style_Active \i Set if the menuitem is the current item. - \i \e tabwidth is the width of the tab column where key accelerators - are drawn. - \row \i \l Style_Down \i Set if the menuitem is down (i.e., the mouse button - or space bar is pressed). - \i \e maxpmwidth is the maximum width of the check column where - checkmarks and iconsets are drawn. - - \row \i14 \l{CE_MenuBarItem}(const \l TQMenuBar *) - \i \l Style_Enabled \i Set if the menuitem is enabled - \i14 \l TQStyleOption ( TQMenuItem *mi ) - \list - \i opt.\link TQStyleOption::menuItem() menuItem\endlink() - \endlist - \i14 \e mi is the menu item being drawn. - \row \i \l Style_Active \i Set if the menuitem is the current item. - \row \i \l Style_Down \i Set if the menuitem is down (i.e., a mouse button or - the space bar is pressed). - \row \i \l Style_HasFocus \i Set if the menubar has input focus. - - \row \i17 \l{CE_ToolButtonLabel}(const \l TQToolButton *) - \i \l Style_Enabled \i Set if the toolbutton is enabled. - \i17 \l TQStyleOption ( \l ArrowType t ) - \list - \i opt.\link TQStyleOption::arrowType() arrowType\endlink() - \endlist - \i17 When the tool button only contains an arrow, \e t is the - arrow's type. - \row \i \l Style_HasFocus \i Set if the toolbutton has input focus. - \row \i \l Style_Down \i Set if the toolbutton is down (i.e., a - mouse button or the space is pressed). - \row \i \l Style_On \i Set if the toolbutton is a toggle button - and is toggled on. - \row \i \l Style_AutoRaise \i Set if the toolbutton has auto-raise enabled. - \row \i \l Style_MouseOver \i Set if the mouse pointer is over the toolbutton. - \row \i \l Style_Raised \i Set if the button is not down, not on and doesn't - contain the mouse when auto-raise is enabled. - \endtable - - \sa ControlElement, StyleFlags -*/ - -/*! - \fn void TQStyle::tqdrawControlMask( ControlElement element, TQPainter *p, const TQWidget *widget, const TQRect &r, const TQStyleOption& opt) const - - Draw a bitmask for the ControlElement \a element using the painter - \a p in the area \a r. See tqdrawControl() for an explanation of the - use of the \a widget and \a opt arguments. - - The rect \a r should be in screen coordinates. - - \sa tqdrawControl(), ControlElement -*/ - -/*! - \enum TQStyle::SubRect - - This enum represents a sub-area of a widget. Style implementations - would use these areas to draw the different parts of a widget. - - \value SR_PushButtonContents area containing the label (iconset - with text or pixmap). - \value SR_PushButtonFocusRect area for the focus rect (usually - larger than the contents rect). - - \value SR_CheckBoxIndicator area for the state indicator (e.g. check mark). - \value SR_CheckBoxContents area for the label (text or pixmap). - \value SR_CheckBoxFocusRect area for the focus indicator. - - - \value SR_RadioButtonIndicator area for the state indicator. - \value SR_RadioButtonContents area for the label. - \value SR_RadioButtonFocusRect area for the focus indicator. - - - \value SR_ComboBoxFocusRect area for the focus indicator. - - - \value SR_SliderFocusRect area for the focus indicator. - - - \value SR_DockWindowHandleRect area for the tear-off handle. - - - \value SR_ProgressBarGroove area for the groove. - \value SR_ProgressBarContents area for the progress indicator. - \value SR_ProgressBarLabel area for the text label. - - - \value SR_ToolButtonContents area for the tool button's label. - - \value SR_DialogButtonAccept area for a dialog's accept button. - \value SR_DialogButtonReject area for a dialog's reject button. - \value SR_DialogButtonApply area for a dialog's apply button. - \value SR_DialogButtonHelp area for a dialog's help button. - \value SR_DialogButtonAll area for a dialog's all button. - \value SR_DialogButtonRetry area for a dialog's retry button. - \value SR_DialogButtonAbort area for a dialog's abort button. - \value SR_DialogButtonIgnore area for a dialog's ignore button. - \value SR_DialogButtonCustom area for a dialog's custom widget area (in button row). - - \value SR_ToolBoxTabContents area for a toolbox tab's icon and label - - \value SR_CustomBase base value for custom ControlElements. All values above - this are reserved for custom use. Therefore, custom values must be - greater than this value. - - \sa subRect() -*/ - -/*! - \fn TQRect TQStyle::subRect( SubRect subrect, const TQWidget *widget ) const; - - Returns the sub-area \a subrect for the \a widget in logical - coordinates. - - The \a widget argument is a pointer to a TQWidget or one of its - subclasses. The widget can be cast to the appropriate type based - on the value of \a subrect. See the table below for the - appropriate \a widget casts: - - \table - \header \i SubRect \i Widget Cast - \row \i \l SR_PushButtonContents \i (const \l TQPushButton *) - \row \i \l SR_PushButtonFocusRect \i (const \l TQPushButton *) - \row \i \l SR_CheckBoxIndicator \i (const \l TQCheckBox *) - \row \i \l SR_CheckBoxContents \i (const \l TQCheckBox *) - \row \i \l SR_CheckBoxFocusRect \i (const \l TQCheckBox *) - \row \i \l SR_RadioButtonIndicator \i (const \l TQRadioButton *) - \row \i \l SR_RadioButtonContents \i (const \l TQRadioButton *) - \row \i \l SR_RadioButtonFocusRect \i (const \l TQRadioButton *) - \row \i \l SR_ComboBoxFocusRect \i (const \l TQComboBox *) - \row \i \l SR_DockWindowHandleRect \i (const \l TQWidget *) - \row \i \l SR_ProgressBarGroove \i (const \l TQProgressBar *) - \row \i \l SR_ProgressBarContents \i (const \l TQProgressBar *) - \row \i \l SR_ProgressBarLabel \i (const \l TQProgressBar *) - \endtable - - The tear-off handle (SR_DockWindowHandleRect) for TQDockWindow - is a private class. Use TQWidget::parentWidget() to access the - TQDockWindow: - - \code - if ( !widget->parentWidget() ) - return; - const TQDockWindow *dw = (const TQDockWindow *) widget->parentWidget(); - \endcode - - \sa SubRect -*/ - -/*! - \enum TQStyle::ComplexControl - - This enum represents a ComplexControl. ComplexControls have - different behaviour depending upon where the user clicks on them - or which keys are pressed. - - \value CC_SpinWidget - \value CC_ComboBox - \value CC_ScrollBar - \value CC_Slider - \value CC_ToolButton - \value CC_TitleBar - \value CC_ListView - - - \value CC_CustomBase base value for custom ControlElements. All - values above this are reserved for custom use. Therefore, - custom values must be greater than this value. - - \sa SubControl tqdrawComplexControl() -*/ - -/*! - \enum TQStyle::SubControl - - This enum represents a SubControl within a ComplexControl. - - \value SC_None special value that matches no other SubControl. - - - \value SC_ScrollBarAddLine scrollbar add line (i.e. down/right - arrow); see also TQScrollbar. - \value SC_ScrollBarSubLine scrollbar sub line (i.e. up/left arrow). - \value SC_ScrollBarAddPage scrollbar add page (i.e. page down). - \value SC_ScrollBarSubPage scrollbar sub page (i.e. page up). - \value SC_ScrollBarFirst scrollbar first line (i.e. home). - \value SC_ScrollBarLast scrollbar last line (i.e. end). - \value SC_ScrollBarSlider scrollbar slider handle. - \value SC_ScrollBarGroove special subcontrol which contains the - area in which the slider handle may move. - - - \value SC_SpinWidgetUp spinwidget up/increase; see also TQSpinBox. - \value SC_SpinWidgetDown spinwidget down/decrease. - \value SC_SpinWidgetFrame spinwidget frame. - \value SC_SpinWidgetEditField spinwidget edit field. - \value SC_SpinWidgetButtonField spinwidget button field. - - - \value SC_ComboBoxEditField combobox edit field; see also TQComboBox. - \value SC_ComboBoxArrow combobox arrow - \value SC_ComboBoxFrame combobox frame - \value SC_ComboBoxListBoxPopup combobox list box - - \value SC_SliderGroove special subcontrol which contains the area - in which the slider handle may move. - \value SC_SliderHandle slider handle. - \value SC_SliderTickmarks slider tickmarks. - - - \value SC_ToolButton tool button; see also TQToolbutton. - \value SC_ToolButtonMenu subcontrol for opening a popup menu in a - tool button; see also TQPopupMenu. - - - \value SC_TitleBarSysMenu system menu button (i.e. restore, close, etc.). - \value SC_TitleBarMinButton minimize button. - \value SC_TitleBarMaxButton maximize button. - \value SC_TitleBarCloseButton close button. - \value SC_TitleBarLabel window title label. - \value SC_TitleBarNormalButton normal (restore) button. - \value SC_TitleBarShadeButton shade button. - \value SC_TitleBarUnshadeButton unshade button. - - - \value SC_ListView the list view area. - \value SC_ListViewBranch (internal) - \value SC_ListViewExpand expand item (i.e. show/hide child items). - - - \value SC_All special value that matches all SubControls. - - - \sa ComplexControl -*/ - -/*! - \fn void TQStyle::tqdrawComplexControl( ComplexControl control, TQPainter *p, const TQWidget *widget, const TQRect &r, const TQColorGroup &cg, SFlags how, SCFlags sub, SCFlags subActive, const TQStyleOption& opt ) const - - Draws the ComplexControl \a control using the painter \a p in the - area \a r. Colors are used from the color group \a cg. The \a sub - argument specifies which SubControls to draw. Multiple SubControls - can be OR'ed together. The \a subActive argument specifies which - SubControl is active. - - The rect \a r should be in logical coordinates. Reimplementations - of this function should use tqvisualRect() to change the logical - coordinates into screen coordinates when using drawPrimitive() and - tqdrawControl(). - - The \a how argument is used to control how the ComplexControl is - drawn. Multiple flags can OR'ed together. See the table below for - an explanation of which flags are used with the various - ComplexControls. - - The \a widget argument is a pointer to a TQWidget or one of its - subclasses. The widget can be cast to the appropriate type based - on the value of \a control. The \a opt argument can be used to - pass extra information required when drawing the ComplexControl. - Note that \a opt may be the default value even for ComplexControls - that can make use of the extra options. See the table below for - the appropriate \a widget and \a opt usage: - - \table - \header \i ComplexControl<br>\& Widget Cast - \i Style Flags - \i Notes - \i Options - \i Notes - - \row \i12 \l{CC_SpinWidget}(const TQSpinWidget *) - \i \l Style_Enabled \i Set if the spinwidget is enabled. - \i12 Unused. - \i12 - \row \i \l Style_HasFocus \i Set if the spinwidget has input focus. - - \row \i12 \l{CC_ComboBox}(const \l TQComboBox *) - \i \l Style_Enabled \i Set if the combobox is enabled. - \i12 Unused. - \i12 - \row \i \l Style_HasFocus \i Set if the combobox has input focus. - - \row \i12 \l{CC_ScrollBar}(const \l TQScrollBar *) - \i \l Style_Enabled \i Set if the scrollbar is enabled. - \i12 Unused. - \i12 - \row \i \l Style_HasFocus \i Set if the scrollbar has input focus. - - \row \i12 \l{CC_Slider}(const \l TQSlider *) - \i \l Style_Enabled \i Set if the slider is enabled. - \i12 Unused. - \i12 - - \row \i \l Style_HasFocus \i Set if the slider has input focus. - - \row \i16 \l{CC_ToolButton}(const \l TQToolButton *) - \i \l Style_Enabled \i Set if the toolbutton is enabled. - \i16 \l TQStyleOption ( \l ArrowType t ) - \list - \i opt.\link TQStyleOption::arrowType() arrowType\endlink() - \endlist - \i16 When the tool button only contains an arrow, \e t is the - arrow's type. - \row \i \l Style_HasFocus \i Set if the toolbutton has input focus. - \row \i \l Style_Down \i Set if the toolbutton is down (ie. mouse - button or space pressed). - \row \i \l Style_On \i Set if the toolbutton is a toggle button - and is toggled on. - \row \i \l Style_AutoRaise \i Set if the toolbutton has auto-raise enabled. - \row \i \l Style_Raised \i Set if the button is not down, not on and doesn't - contain the mouse when auto-raise is enabled. - - \row \i \l{CC_TitleBar}(const \l TQWidget *) - \i \l Style_Enabled \i Set if the titlebar is enabled. - \i Unused. - \i - - \row \i \l{CC_ListView}(const \l TQListView *) - \i \l Style_Enabled \i Set if the titlebar is enabled. - \i \l TQStyleOption ( \l TQListViewItem *item ) - \list - \i opt.\link TQStyleOption::listViewItem() listViewItem\endlink() - \endlist - \i \e item is the item that needs branches drawn - \endtable - - \sa ComplexControl, SubControl -*/ - -/*! - \fn void TQStyle::tqdrawComplexControlMask( ComplexControl control, TQPainter *p, const TQWidget *widget, const TQRect &r, const TQStyleOption& opt) const - - Draw a bitmask for the ComplexControl \a control using the painter - \a p in the area \a r. See tqdrawComplexControl() for an explanation - of the use of the \a widget and \a opt arguments. - - The rect \a r should be in logical coordinates. Reimplementations - of this function should use tqvisualRect() to change the logical - corrdinates into screen coordinates when using drawPrimitive() and - tqdrawControl(). - - \sa tqdrawComplexControl() ComplexControl -*/ - -/*! - \fn TQRect TQStyle::querySubControlMetrics( ComplexControl control, const TQWidget *widget, SubControl subcontrol, const TQStyleOption& opt = TQStyleOption::Default ) const; - - Returns the rect for the SubControl \a subcontrol for \a widget in - logical coordinates. - - The \a widget argument is a pointer to a TQWidget or one of its - subclasses. The widget can be cast to the appropriate type based - on the value of \a control. The \a opt argument can be used to - pass extra information required when drawing the ComplexControl. - Note that \a opt may be the default value even for ComplexControls - that can make use of the extra options. See tqdrawComplexControl() - for an explanation of the \a widget and \a opt arguments. - - \sa tqdrawComplexControl(), ComplexControl, SubControl -*/ - -/*! - \fn SubControl TQStyle::querySubControl( ComplexControl control, const TQWidget *widget, const TQPoint &pos, const TQStyleOption& opt = TQStyleOption::Default ) const; - - Returns the SubControl for \a widget at the point \a pos. The \a - widget argument is a pointer to a TQWidget or one of its - subclasses. The widget can be cast to the appropriate type based - on the value of \a control. The \a opt argument can be used to - pass extra information required when drawing the ComplexControl. - Note that \a opt may be the default value even for ComplexControls - that can make use of the extra options. See tqdrawComplexControl() - for an explanation of the \a widget and \a opt arguments. - - Note that \a pos is passed in screen coordinates. When using - querySubControlMetrics() to check for hits and misses, use - tqvisualRect() to change the logical coordinates into screen - coordinates. - - \sa tqdrawComplexControl(), ComplexControl, SubControl, querySubControlMetrics() -*/ - -/*! - \enum TQStyle::PixelMetric - - This enum represents a PixelMetric. A PixelMetric is a style - dependent size represented as a single pixel value. - - \value PM_ButtonMargin amount of whitespace between pushbutton - labels and the frame. - \value PM_ButtonDefaultIndicator width of the default-button indicator frame. - \value PM_MenuButtonIndicator width of the menu button indicator - proportional to the widget height. - \value PM_ButtonShiftHorizontal horizontal contents shift of a - button when the button is down. - \value PM_ButtonShiftVertical vertical contents shift of a button when the - button is down. - - \value PM_DefaultFrameWidth default frame width, usually 2. - \value PM_SpinBoxFrameWidth frame width of a spin box. - \value PM_MDIFrameWidth frame width of an MDI window. - \value PM_MDIMinimizedWidth width of a minimized MSI window. - - \value PM_MaximumDragDistance Some feels require the scrollbar or - other sliders to jump back to the original position when the - mouse pointer is too far away while dragging. A value of -1 - disables this behavior. - - \value PM_ScrollBarExtent width of a vertical scrollbar and the - height of a horizontal scrollbar. - \value PM_ScrollBarSliderMin the minimum height of a vertical - scrollbar's slider and the minimum width of a horiztonal - scrollbar slider. - - \value PM_SliderThickness total slider thickness. - \value PM_SliderControlThickness thickness of the slider handle. - \value PM_SliderLength length of the slider. - \value PM_SliderTickmarkOffset the offset between the tickmarks - and the slider. - \value PM_SliderSpaceAvailable the available space for the slider to move. - - \value PM_DockWindowSeparatorExtent width of a separator in a - horiztonal dock window and the height of a separator in a - vertical dock window. - \value PM_DockWindowHandleExtent width of the handle in a - horizontal dock window and the height of the handle in a - vertical dock window. - \value PM_DockWindowFrameWidth frame width of a dock window. - - \value PM_MenuBarFrameWidth frame width of a menubar. - - \value PM_MenuBarItemSpacing spacing between menubar items. - \value PM_ToolBarItemSpacing spacing between toolbar items. - - \value PM_TabBarTabOverlap number of pixels the tabs should overlap. - \value PM_TabBarTabHSpace extra space added to the tab width. - \value PM_TabBarTabVSpace extra space added to the tab height. - \value PM_TabBarBaseHeight height of the area between the tab bar - and the tab pages. - \value PM_TabBarBaseOverlap number of pixels the tab bar overlaps - the tab bar base. - \value PM_TabBarScrollButtonWidth - \value PM_TabBarTabShiftHorizontal horizontal pixel shift when a - tab is selected. - \value PM_TabBarTabShiftVertical vertical pixel shift when a - tab is selected. - - \value PM_ProgressBarChunkWidth width of a chunk in a progress bar indicator. - - \value PM_SplitterWidth width of a splitter. - - \value PM_TitleBarHeight height of the title bar. - \value PM_PopupMenuFrameHorizontalExtra additional border, e.g. for panels - \value PM_PopupMenuFrameVerticalExtra additional border, e.g. for panels - - \value PM_IndicatorWidth width of a check box indicator. - \value PM_IndicatorHeight height of a checkbox indicator. - \value PM_ExclusiveIndicatorWidth width of a radio button indicator. - \value PM_ExclusiveIndicatorHeight height of a radio button indicator. - - \value PM_PopupMenuScrollerHeight height of the scroller area in a popupmenu. - \value PM_PopupMenuScrollerHeight height of the scroller area in a popupmenu. - \value PM_CheckListButtonSize area (width/height) of the - checkbox/radiobutton in a TQCheckListItem - \value PM_CheckListControllerSize area (width/height) of the - controller in a TQCheckListItem - - \value PM_DialogButtonsSeparator distance between buttons in a dialog buttons widget. - \value PM_DialogButtonsButtonWidth minimum width of a button in a dialog buttons widget. - \value PM_DialogButtonsButtonHeight minimum height of a button in a dialog buttons widget. - - \value PM_HeaderMarkSize - \value PM_HeaderGripMargin - \value PM_HeaderMargin - - \value PM_CustomBase base value for custom ControlElements. All - values above this are reserved for custom use. Therefore, - custom values must be greater than this value. - - - \sa tqpixelMetric() -*/ - -/*! - \fn int TQStyle::tqpixelMetric( PixelMetric metric, const TQWidget *widget = 0 ) const; - - Returns the pixel metric for \a metric. The \a widget argument is - a pointer to a TQWidget or one of its subclasses. The widget can be - cast to the appropriate type based on the value of \a metric. Note - that \a widget may be zero even for PixelMetrics that can make use - of \a widget. See the table below for the appropriate \a widget - casts: - - \table - \header \i PixelMetric \i Widget Cast - \row \i \l PM_SliderControlThickness \i (const \l TQSlider *) - \row \i \l PM_SliderLength \i (const \l TQSlider *) - \row \i \l PM_SliderTickmarkOffset \i (const \l TQSlider *) - \row \i \l PM_SliderSpaceAvailable \i (const \l TQSlider *) - \row \i \l PM_TabBarTabOverlap \i (const \l TQTabBar *) - \row \i \l PM_TabBarTabHSpace \i (const \l TQTabBar *) - \row \i \l PM_TabBarTabVSpace \i (const \l TQTabBar *) - \row \i \l PM_TabBarBaseHeight \i (const \l TQTabBar *) - \row \i \l PM_TabBarBaseOverlap \i (const \l TQTabBar *) - \endtable -*/ - -/*! - \enum TQStyle::ContentsType - - This enum represents a ContentsType. It is used to calculate sizes - for the contents of various widgets. - - \value CT_PushButton - \value CT_CheckBox - \value CT_RadioButton - \value CT_ToolButton - \value CT_ComboBox - \value CT_Splitter - \value CT_DockWindow - \value CT_ProgressBar - \value CT_PopupMenuItem - \value CT_TabBarTab - \value CT_Slider - \value CT_Header - \value CT_LineEdit - \value CT_MenuBar - \value CT_SpinBox - \value CT_SizeGrip - \value CT_TabWidget - \value CT_DialogButtons - - \value CT_CustomBase base value for custom ControlElements. All - values above this are reserved for custom use. Custom values - must be greater than this value. - - \sa sizeFromContents() -*/ - -/*! - \fn TQSize TQStyle::sizeFromContents( ContentsType contents, const TQWidget *widget, const TQSize &contentsSize, const TQStyleOption& opt = TQStyleOption::Default ) const; - - Returns the size of \a widget based on the contents size \a - contentsSize. - - The \a widget argument is a pointer to a TQWidget or one of its - subclasses. The widget can be cast to the appropriate type based - on the value of \a contents. The \a opt argument can be used to - pass extra information required when calculating the size. Note - that \a opt may be the default value even for ContentsTypes that - can make use of the extra options. See the table below for the - appropriate \a widget and \a opt usage: - - \table - \header \i ContentsType \i Widget Cast \i Options \i Notes - \row \i \l CT_PushButton \i (const \l TQPushButton *) \i Unused. \i - \row \i \l CT_CheckBox \i (const \l TQCheckBox *) \i Unused. \i - \row \i \l CT_RadioButton \i (const \l TQRadioButton *) \i Unused. \i - \row \i \l CT_ToolButton \i (const \l TQToolButton *) \i Unused. \i - \row \i \l CT_ComboBox \i (const \l TQComboBox *) \i Unused. \i - \row \i \l CT_Splitter \i (const \l TQSplitter *) \i Unused. \i - \row \i \l CT_DockWindow \i (const \l TQDockWindow *) \i Unused. \i - \row \i \l CT_ProgressBar \i (const \l TQProgressBar *) \i Unused. \i - \row \i \l CT_PopupMenuItem \i (const TQPopupMenu *) - \i \l TQStyleOption ( TQMenuItem *mi ) - \list - \i opt.\link TQStyleOption::menuItem() menuItem\endlink() - \endlist - \i \e mi is the menu item to use when calculating the size. - TQMenuItem is currently an internal class. - \endtable -*/ - -/*! - \enum TQStyle::StyleHint - - This enum represents a StyleHint. A StyleHint is a general look - and/or feel hint. - - \value SH_EtchDisabledText disabled text is "etched" like Windows. - - \value SH_GUIStyle the GUI style to use. - - \value SH_ScrollBar_BackgroundMode the background mode for a - TQScrollBar. Possible values are any of those in the \link - TQt::BackgroundMode BackgroundMode\endlink enum. - - \value SH_ScrollBar_MiddleClickAbsolutePosition a boolean value. - If TRUE, middle clicking on a scrollbar causes the slider to - jump to that position. If FALSE, the middle clicking is - ignored. - - \value SH_ScrollBar_LeftClickAbsolutePosition a boolean value. - If TRUE, left clicking on a scrollbar causes the slider to - jump to that position. If FALSE, the left clicking will - behave as appropriate for each control. - - \value SH_ScrollBar_ScrollWhenPointerLeavesControl a boolean - value. If TRUE, when clicking a scrollbar SubControl, holding - the mouse button down and moving the pointer outside the - SubControl, the scrollbar continues to scroll. If FALSE, the - scollbar stops scrolling when the pointer leaves the - SubControl. - - \value SH_TabBar_Alignment the tqalignment for tabs in a - TQTabWidget. Possible values are \c TQt::AlignLeft, \c - TQt::AlignCenter and \c TQt::AlignRight. - - \value SH_Header_ArrowAlignment the placement of the sorting - indicator may appear in list or table headers. Possible values - are \c TQt::Left or \c TQt::Right. - - \value SH_Slider_SnapToValue sliders snap to values while moving, - like Windows - - \value SH_Slider_SloppyKeyEvents key presses handled in a sloppy - manner, i.e. left on a vertical slider subtracts a line. - - \value SH_ProgressDialog_CenterCancelButton center button on - progress dialogs, like Motif, otherwise right aligned. - - \value SH_ProgressDialog_TextLabelAlignment TQt::AlignmentFlags -- - text label tqalignment in progress dialogs; Center on windows, - Auto|VCenter otherwise. - - \value SH_PrintDialog_RightAlignButtons right align buttons in - the print dialog, like Windows. - - \value SH_MainWindow_SpaceBelowMenuBar 1 or 2 pixel space between - the menubar and the dockarea, like Windows. - - \value SH_FontDialog_SelectAssociatedText select the text in the - line edit, or when selecting an item from the listbox, or when - the line edit receives focus, like Windows. - - \value SH_PopupMenu_AllowActiveAndDisabled allows disabled menu - items to be active. - - \value SH_PopupMenu_SpaceActivatesItem pressing Space activates - the item, like Motif. - - \value SH_PopupMenu_SubMenuPopupDelay the number of milliseconds - to wait before opening a submenu; 256 on windows, 96 on Motif. - - \value SH_PopupMenu_Scrollable whether popupmenu's must support - scrolling. - - \value SH_PopupMenu_SloppySubMenus whether popupmenu's must support - sloppy submenu; as implemented on Mac OS. - - \value SH_ScrollView_FrameOnlyAroundContents whether scrollviews - draw their frame only around contents (like Motif), or around - contents, scrollbars and corner widgets (like Windows). - - \value SH_MenuBar_AltKeyNavigation menubars items are navigable - by pressing Alt, followed by using the arrow keys to select - the desired item. - - \value SH_ComboBox_ListMouseTracking mouse tracking in combobox - dropdown lists. - - \value SH_PopupMenu_MouseTracking mouse tracking in popup menus. - - \value SH_MenuBar_MouseTracking mouse tracking in menubars. - - \value SH_ItemView_ChangeHighlightOnFocus gray out selected items - when losing focus. - - \value SH_Widget_ShareActivation turn on sharing activation with - floating modeless dialogs. - - \value SH_TabBar_SelectMouseType which type of mouse event should - cause a tab to be selected. - - \value SH_ListViewExpand_SelectMouseType which type of mouse event should - cause a listview expansion to be selected. - - \value SH_TabBar_PreferNoArrows whether a tabbar should suggest a size - to prevent scoll arrows. - - \value SH_ComboBox_Popup allows popups as a combobox dropdown - menu. - - \value SH_Workspace_FillSpaceOnMaximize the workspace should - maximize the client area. - - \value SH_TitleBar_NoBorder the titlebar has no border - - \value SH_ScrollBar_StopMouseOverSlider stops autorepeat when - slider reaches mouse - - \value SH_BlinkCursorWhenTextSelected whether cursor should blink - when text is selected - - \value SH_RichText_FullWidthSelection whether richtext selections - should extend the full width of the document. - - \value SH_GroupBox_TextLabelVerticalAlignment how to vertically align a - groupbox's text label. - - \value SH_GroupBox_TextLabelColor how to paint a groupbox's text label. - - \value SH_DialogButtons_DefaultButton which buttons gets the - default status in a dialog's button widget. - - \value SH_CustomBase base value for custom ControlElements. All - values above this are reserved for custom use. Therefore, - custom values must be greater than this value. - - \value SH_ToolButton_Uses3D indicates whether TQToolButtons should - use a 3D frame when the mouse is over them - - \value SH_ToolBox_SelectedPageTitleBold Boldness of the selected - page title in a TQToolBox. - - \value SH_LineEdit_PasswordCharacter The TQChar Unicode character - to be used for passwords. - - \value SH_Table_GridLineColor - - \value SH_UnderlineAccelerator whether accelerators are underlined - - \sa tqstyleHint() -*/ - -/*! - \fn int TQStyle::tqstyleHint( StyleHint stylehint, const TQWidget *widget = 0, const TQStyleOption &opt = TQStyleOption::Default, TQStyleHintReturn *returnData = 0 ) const; - - Returns the style hint \a stylehint for \a widget. Currently, \a - widget, \a opt, and \a returnData are unused; they're included to - allow for future enhancements. - - For an explanation of the return value see \l StyleHint. -*/ - -/*! - \enum TQStyle::StylePixmap - - This enum represents a StylePixmap. A StylePixmap is a pixmap that - can follow some existing GUI style or guideline. - - - \value SP_TitleBarMinButton minimize button on titlebars. For - example, in a TQWorkspace. - \value SP_TitleBarMaxButton maximize button on titlebars. - \value SP_TitleBarCloseButton close button on titlebars. - \value SP_TitleBarNormalButton normal (restore) button on titlebars. - \value SP_TitleBarShadeButton shade button on titlebars. - \value SP_TitleBarUnshadeButton unshade button on titlebars. - \value SP_MessageBoxInformation the 'information' icon. - \value SP_MessageBoxWarning the 'warning' icon. - \value SP_MessageBoxCritical the 'critical' icon. - \value SP_MessageBoxQuestion the 'question' icon. - - - \value SP_DockWindowCloseButton close button on dock windows; - see also TQDockWindow. - - - \value SP_CustomBase base value for custom ControlElements. All - values above this are reserved for custom use. Therefore, - custom values must be greater than this value. - - \sa stylePixmap() -*/ - -/*! - \fn TQPixmap TQStyle::stylePixmap( StylePixmap stylepixmap, const TQWidget *widget = 0, const TQStyleOption& opt = TQStyleOption::Default ) const; - - Returns a pixmap for \a stylepixmap. - - The \a opt argument can be used to pass extra information required - when drawing the ControlElement. Note that \a opt may be the - default value even for StylePixmaps that can make use of the extra - options. Currently, the \a opt argument is unused. - - The \a widget argument is a pointer to a TQWidget or one of its - subclasses. The widget can be cast to the appropriate type based - on the value of \a stylepixmap. See the table below for the - appropriate \a widget casts: - - \table - \header \i StylePixmap \i Widget Cast - \row \i \l SP_TitleBarMinButton \i (const \l TQWidget *) - \row \i \l SP_TitleBarMaxButton \i (const \l TQWidget *) - \row \i \l SP_TitleBarCloseButton \i (const \l TQWidget *) - \row \i \l SP_TitleBarNormalButton \i (const \l TQWidget *) - \row \i \l SP_TitleBarShadeButton \i (const \l TQWidget *) - \row \i \l SP_TitleBarUnshadeButton \i (const \l TQWidget *) - \row \i \l SP_DockWindowCloseButton \i (const \l TQDockWindow *) - \endtable - - \sa StylePixmap -*/ - -/*! - \fn TQRect TQStyle::tqvisualRect( const TQRect &logical, const TQWidget *w ); - - Returns the rect \a logical in screen coordinates. The bounding - rect for widget \a w is used to perform the translation. This - function is provided to aid style implementors in supporting - right-to-left mode. - - \sa TQApplication::reverseLayout() -*/ -TQRect TQStyle::tqvisualRect( const TQRect &logical, const TQWidget *w ) -{ - TQRect boundingRect = w->rect(); - TQRect r = logical; - if ( TQApplication::reverseLayout() ) - r.moveBy( 2*(boundingRect.right() - logical.right()) + - logical.width() - boundingRect.width(), 0 ); - return r; -} - -/*! - \overload TQRect TQStyle::tqvisualRect( const TQRect &logical, const TQRect &bounding ); - - Returns the rect \a logical in screen coordinates. The rect \a - bounding is used to perform the translation. This function is - provided to aid style implementors in supporting right-to-left - mode. - - \sa TQApplication::reverseLayout() -*/ -TQRect TQStyle::tqvisualRect( const TQRect &logical, const TQRect &boundingRect ) -{ - TQRect r = logical; - if ( TQApplication::reverseLayout() ) - r.moveBy( 2*(boundingRect.right() - logical.right()) + - logical.width() - boundingRect.width(), 0 ); - return r; -} - -/*! - \fn int TQStyle::defaultFrameWidth() const - \obsolete -*/ - -/*! - \fn void TQStyle::tabbarMetrics( const TQWidget *, int &, int &, int & ) const - \obsolete -*/ - -/*! - \fn TQSize TQStyle::scrollBarExtent() const - \obsolete -*/ - -#endif // USE_QT4 - -#endif // TQT_NO_STYLE |