Home | All Classes | Main Classes | Annotated | Grouped Classes | Functions |

# ntqstyle.h

This is the verbatim text of the ntqstyle.h include file. It is provided only for illustration; the copyright remains with Trolltech.

    /****************************************************************************
    ** $Id: qt/ntqstyle.h   3.3.8   edited Jan 11 14:38 $
    **
    ** Definition of TQStyle class
    **
    ** Created : 980616
    **
    ** Copyright (C) 1992-2007 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 file LICENSE.GPL 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.
    **
    **********************************************************************/
    #ifndef TQSTYLE_H
    #define TQSTYLE_H

    #ifndef QT_H
    #include "ntqobject.h"
    #endif // QT_H

    #ifndef TQT_NO_STYLE

    class TQPopupMenu;
    class TQStylePrivate;
    class TQMenuItem;
    class TQTab;
    class TQListViewItem;
    class TQCheckListItem;

    class TQStyleOption {
    public:
        enum StyleOptionDefault { Default };

        TQStyleOption(StyleOptionDefault=Default) : def(TRUE) {}

        // Note: we don't use default arguments since that is unnecessary
        // initialization.
        TQStyleOption(int in1) :
    	def(FALSE), i1(in1) {}
        TQStyleOption(int in1, int in2) :
    	def(FALSE), i1(in1), i2(in2) {}
        TQStyleOption(int in1, int in2, int in3, int in4) :
    	def(FALSE), i1(in1), i2(in2), i3(in3), i4(in4) {}
        TQStyleOption(TQMenuItem* m) : def(FALSE), mi(m) {}
        TQStyleOption(TQMenuItem* m, int in1) : def(FALSE), mi(m), i1(in1) {}
        TQStyleOption(TQMenuItem* m, int in1, int in2) : def(FALSE), mi(m), i1(in1), i2(in2) {}
        TQStyleOption(const TQColor& c) : def(FALSE), cl(&c) {}
        TQStyleOption(TQTab* t) : def(FALSE), tb(t) {}
        TQStyleOption(TQListViewItem* i) : def(FALSE), li(i) {}
        TQStyleOption(TQCheckListItem* i) : def(FALSE), cli(i) {}
        TQStyleOption(TQt::ArrowType a) : def(FALSE), i1((int)a) {}
        TQStyleOption(const TQRect& r) : def(FALSE), i1(r.x()), i2(r.y()), i3(r.width()),i4(r.height()){}
        TQStyleOption(TQWidget *w) : def(FALSE), p1((void*)w) {}

        bool isDefault() const { return def; }

        int day() const { return i1; }

        int lineWidth() const { return i1; }
        int midLineWidth() const { return i2; }
        int frameShape() const { return i3; }
        int frameShadow() const { return i4; }

        int headerSection() const { return i1; }
        TQMenuItem* menuItem() const { return mi; }
        int maxIconWidth() const { return i1; }
        int tabWidth() const { return i2; }

        const TQColor& color() const { return *cl; }

        TQTab* tab() const { return tb; }

        TQCheckListItem* checkListItem() const { return cli; }
        TQListViewItem* listViewItem() const { return li; }

        TQt::ArrowType arrowType() const { return (TQt::ArrowType)i1; }
        TQRect rect() const { return TQRect( i1, i2, i3, i4 ); }
        TQWidget* widget() const { return (TQWidget*)p1; }

    private:
        // NOTE: none of these components have constructors.
        bool def;
        bool b1,b2,b3; // reserved
        TQMenuItem* mi;
        TQTab* tb;
        TQListViewItem* li;
        const TQColor* cl;
        int i1, i2, i3, i4;
        int i5, i6; // reserved
        TQCheckListItem* cli;
        void *p1, *p2, *p3, *p4; // reserved
        // (padded to 64 bytes on some architectures)
    };

    class TQStyleHintReturn; // not defined yet

    class TQ_EXPORT TQStyle: public TQObject
    {
        TQ_OBJECT

    public:
        TQStyle();
        virtual ~TQStyle();

        // New TQStyle API - most of these should probably be pure virtual

        virtual void polish( TQWidget * );
        virtual void unPolish( TQWidget * );

        virtual void polish( TQApplication * );
        virtual void unPolish( TQApplication * );

        virtual void polish( TQPalette & );

        virtual void polishPopupMenu( TQPopupMenu* ) = 0;

        virtual TQRect itemRect( TQPainter *p, const TQRect &r,
    			    int flags, bool enabled,
    			    const TQPixmap *pixmap,
    			    const TQString &text, int len = -1 ) const;

        virtual void drawItem( TQPainter *p, const TQRect &r,
    			   int flags, const TQColorGroup &g, bool enabled,
    			   const TQPixmap *pixmap, const TQString &text,
    			   int len = -1, const TQColor *penColor = 0 ) const;

        enum PrimitiveElement {
    	PE_ButtonCommand,
    	PE_ButtonDefault,
    	PE_ButtonBevel,
    	PE_ButtonTool,
    	PE_ButtonDropDown,

    	PE_FocusRect,

    	PE_ArrowUp,
    	PE_ArrowDown,
    	PE_ArrowRight,
    	PE_ArrowLeft,

    	PE_SpinWidgetUp,
    	PE_SpinWidgetDown,
    	PE_SpinWidgetPlus,
    	PE_SpinWidgetMinus,

    	PE_Indicator,
    	PE_IndicatorMask,
    	PE_ExclusiveIndicator,
    	PE_ExclusiveIndicatorMask,

    	PE_DockWindowHandle,
    	PE_DockWindowSeparator,
    	PE_DockWindowResizeHandle,

    	PE_Splitter,

    	PE_Panel,
    	PE_PanelPopup,
    	PE_PanelMenuBar,
    	PE_PanelDockWindow,

    	PE_TabBarBase,

    	PE_HeaderSection,
    	PE_HeaderArrow,
    	PE_StatusBarSection,

    	PE_GroupBoxFrame,

    	PE_Separator,

    	PE_SizeGrip,

    	PE_CheckMark,

    	PE_ScrollBarAddLine,
    	PE_ScrollBarSubLine,
    	PE_ScrollBarAddPage,
    	PE_ScrollBarSubPage,
    	PE_ScrollBarSlider,
    	PE_ScrollBarFirst,
    	PE_ScrollBarLast,

    	PE_ProgressBarChunk,

    	PE_PanelLineEdit,
    	PE_PanelTabWidget,

    	PE_WindowFrame,

    	PE_CheckListController,
    	PE_CheckListIndicator,
    	PE_CheckListExclusiveIndicator,

    	PE_PanelGroupBox,
    	PE_RubberBand,

    	// do not add any values below/greater this
    	PE_CustomBase =			0xf000000
        };

        enum StyleFlags {
    	Style_Default = 		0x00000000,
    	Style_Enabled = 		0x00000001,
    	Style_Raised =			0x00000002,
    	Style_Sunken =	 		0x00000004,
    	Style_Off =			0x00000008,
    	Style_NoChange =		0x00000010,
    	Style_On =			0x00000020,
    	Style_Down =			0x00000040,
    	Style_Horizontal =		0x00000080,
    	Style_HasFocus =		0x00000100,
    	Style_Top =			0x00000200,
    	Style_Bottom =			0x00000400,
    	Style_FocusAtBorder =		0x00000800,
    	Style_AutoRaise =		0x00001000,
    	Style_MouseOver =		0x00002000,
    	Style_Up =			0x00004000,
    	Style_Selected =	 	0x00008000,
    	Style_Active =			0x00010000,
    	Style_ButtonDefault =		0x00020000
        };
        typedef uint SFlags;

        virtual void drawPrimitive( PrimitiveElement pe,
    				TQPainter *p,
    				const TQRect &r,
    				const TQColorGroup &cg,
    				SFlags flags = Style_Default,
    				const TQStyleOption& = TQStyleOption::Default ) const = 0;

        enum ControlElement {
    	CE_PushButton,
    	CE_PushButtonLabel,

    	CE_CheckBox,
    	CE_CheckBoxLabel,

    	CE_RadioButton,
    	CE_RadioButtonLabel,

    	CE_TabBarTab,
    	CE_TabBarLabel,

    	CE_ProgressBarGroove,
    	CE_ProgressBarContents,
    	CE_ProgressBarLabel,

    	CE_PopupMenuItem,
    	CE_MenuBarItem,

    	CE_ToolButtonLabel,
    	CE_MenuBarEmptyArea,
    	CE_PopupMenuScroller,
    	CE_DockWindowEmptyArea,
    	CE_PopupMenuVerticalExtra,
    	CE_PopupMenuHorizontalExtra,

    	CE_ToolBoxTab,
    	CE_HeaderLabel,

    	// do not add any values below/greater than this
    	CE_CustomBase =		0xf0000000
        };

        virtual void drawControl( ControlElement element,
    			      TQPainter *p,
    			      const TQWidget *widget,
    			      const TQRect &r,
    			      const TQColorGroup &cg,
    			      SFlags how = Style_Default,
    			      const TQStyleOption& = TQStyleOption::Default ) const = 0;
        virtual void drawControlMask( ControlElement element,
    				  TQPainter *p,
    				  const TQWidget *widget,
    				  const TQRect &r,
    				  const TQStyleOption& = TQStyleOption::Default ) const = 0;

        enum SubRect {
    	SR_PushButtonContents,
    	SR_PushButtonFocusRect,

    	SR_CheckBoxIndicator,
    	SR_CheckBoxContents,
    	SR_CheckBoxFocusRect,

    	SR_RadioButtonIndicator,
    	SR_RadioButtonContents,
    	SR_RadioButtonFocusRect,

    	SR_ComboBoxFocusRect,

    	SR_SliderFocusRect,

    	SR_DockWindowHandleRect,

    	SR_ProgressBarGroove,
    	SR_ProgressBarContents,
    	SR_ProgressBarLabel,

    	SR_ToolButtonContents,

    	SR_DialogButtonAccept,
    	SR_DialogButtonReject,
    	SR_DialogButtonApply,
    	SR_DialogButtonHelp,
    	SR_DialogButtonAll,
    	SR_DialogButtonAbort,
    	SR_DialogButtonIgnore,
    	SR_DialogButtonRetry,
    	SR_DialogButtonCustom,

    	SR_ToolBoxTabContents,

    	// do not add any values below/greater than this
    	SR_CustomBase =		0xf0000000
        };

        virtual TQRect subRect( SubRect r, const TQWidget *widget ) const = 0;

        enum ComplexControl{
    	CC_SpinWidget,
    	CC_ComboBox,
    	CC_ScrollBar,
    	CC_Slider,
    	CC_ToolButton,
    	CC_TitleBar,
    	CC_ListView,

    	// do not add any values below/greater than this
    	CC_CustomBase =		0xf0000000
        };

        enum SubControl {
    	SC_None =			0x00000000,

    	SC_ScrollBarAddLine =		0x00000001,
    	SC_ScrollBarSubLine =		0x00000002,
    	SC_ScrollBarAddPage =		0x00000004,
    	SC_ScrollBarSubPage =		0x00000008,
    	SC_ScrollBarFirst =		0x00000010,
    	SC_ScrollBarLast =		0x00000020,
    	SC_ScrollBarSlider =		0x00000040,
    	SC_ScrollBarGroove =		0x00000080,

    	SC_SpinWidgetUp =		0x00000001,
    	SC_SpinWidgetDown =		0x00000002,
    	SC_SpinWidgetFrame =		0x00000004,
    	SC_SpinWidgetEditField =	0x00000008,
    	SC_SpinWidgetButtonField =	0x00000010,

    	SC_ComboBoxFrame =		0x00000001,
    	SC_ComboBoxEditField =		0x00000002,
    	SC_ComboBoxArrow =		0x00000004,
    	SC_ComboBoxListBoxPopup =	0x00000008,

    	SC_SliderGroove =		0x00000001,
    	SC_SliderHandle = 		0x00000002,
    	SC_SliderTickmarks = 		0x00000004,

    	SC_ToolButton =			0x00000001,
    	SC_ToolButtonMenu =		0x00000002,

    	SC_TitleBarLabel =		0x00000001,
    	SC_TitleBarSysMenu =		0x00000002,
    	SC_TitleBarMinButton =		0x00000004,
    	SC_TitleBarMaxButton =		0x00000008,
    	SC_TitleBarCloseButton =	0x00000010,
    	SC_TitleBarNormalButton =	0x00000020,
    	SC_TitleBarShadeButton =	0x00000040,
    	SC_TitleBarUnshadeButton =	0x00000080,

    	SC_ListView =			0x00000001,
    	SC_ListViewBranch =		0x00000002,
    	SC_ListViewExpand =		0x00000004,

    	SC_All =			0xffffffff
        };
        typedef uint SCFlags;

        virtual void drawComplexControl( ComplexControl control,
    				     TQPainter *p,
    				     const TQWidget *widget,
    				     const TQRect &r,
    				     const TQColorGroup &cg,
    				     SFlags how = Style_Default,
    #ifdef Q_QDOC
    				     SCFlags sub = SC_All,
    #else
    				     SCFlags sub = (uint)SC_All,
    #endif
    				     SCFlags subActive = SC_None,
    				     const TQStyleOption& = TQStyleOption::Default ) const = 0;
        virtual void drawComplexControlMask( ComplexControl control,
    					 TQPainter *p,
    					 const TQWidget *widget,
    					 const TQRect &r,
    					 const TQStyleOption& = TQStyleOption::Default ) const = 0;

        virtual TQRect querySubControlMetrics( ComplexControl control,
    					  const TQWidget *widget,
    					  SubControl sc,
    					  const TQStyleOption& = TQStyleOption::Default ) const = 0;
        virtual SubControl querySubControl( ComplexControl control,
    					const TQWidget *widget,
    					const TQPoint &pos,
    					const TQStyleOption& = TQStyleOption::Default ) const = 0;

        enum PixelMetric {
    	PM_ButtonMargin,
    	PM_ButtonDefaultIndicator,
    	PM_MenuButtonIndicator,
    	PM_ButtonShiftHorizontal,
    	PM_ButtonShiftVertical,

    	PM_DefaultFrameWidth,
    	PM_SpinBoxFrameWidth,

    	PM_MaximumDragDistance,

    	PM_ScrollBarExtent,
    	PM_ScrollBarSliderMin,

    	PM_SliderThickness,	       	// total slider thickness
    	PM_SliderControlThickness,    	// thickness of the business part
    	PM_SliderLength,		// total length of slider
    	PM_SliderTickmarkOffset,	//
    	PM_SliderSpaceAvailable,	// available space for slider to move

    	PM_DockWindowSeparatorExtent,
    	PM_DockWindowHandleExtent,
    	PM_DockWindowFrameWidth,

    	PM_MenuBarFrameWidth,

    	PM_TabBarTabOverlap,
    	PM_TabBarTabHSpace,
    	PM_TabBarTabVSpace,
    	PM_TabBarBaseHeight,
    	PM_TabBarBaseOverlap,

    	PM_ProgressBarChunkWidth,

    	PM_SplitterWidth,
    	PM_TitleBarHeight,

    	PM_IndicatorWidth,
    	PM_IndicatorHeight,
    	PM_ExclusiveIndicatorWidth,
    	PM_ExclusiveIndicatorHeight,
    	PM_PopupMenuScrollerHeight,
    	PM_CheckListButtonSize,
    	PM_CheckListControllerSize,
    	PM_PopupMenuFrameHorizontalExtra,
    	PM_PopupMenuFrameVerticalExtra,

    	PM_DialogButtonsSeparator,
    	PM_DialogButtonsButtonWidth,
    	PM_DialogButtonsButtonHeight,

    	PM_MDIFrameWidth,
    	PM_MDIMinimizedWidth,
    	PM_HeaderMargin,
    	PM_HeaderMarkSize,
    	PM_HeaderGripMargin,
    	PM_TabBarTabShiftHorizontal,
    	PM_TabBarTabShiftVertical,
    	PM_TabBarScrollButtonWidth,

    	PM_MenuBarItemSpacing,
    	PM_ToolBarItemSpacing,

    	// do not add any values below/greater than this
    	PM_CustomBase =		0xf0000000
        };

        virtual int pixelMetric( PixelMetric metric,
    			     const TQWidget *widget = 0 ) const = 0;

        enum ContentsType {
    	CT_PushButton,
    	CT_CheckBox,
    	CT_RadioButton,
    	CT_ToolButton,
    	CT_ComboBox,
    	CT_Splitter,
    	CT_DockWindow,
    	CT_ProgressBar,
    	CT_PopupMenuItem,
    	CT_TabBarTab,
    	CT_Slider,
    	CT_Header,
    	CT_LineEdit,
    	CT_MenuBar,
    	CT_SpinBox,
    	CT_SizeGrip,
    	CT_TabWidget,
    	CT_DialogButtons,

    	// do not add any values below/greater than this
    	CT_CustomBase =		0xf0000000
        };

        virtual TQSize sizeFromContents( ContentsType contents,
    				    const TQWidget *widget,
    				    const TQSize &contentsSize,
    				    const TQStyleOption& = TQStyleOption::Default ) const = 0;

        enum StyleHint  {
    	// ...
    	// the general hints
    	// ...
           	// disabled text should be etched, ala Windows
    	SH_EtchDisabledText,

    	// the GUI style enum, argh!
    	SH_GUIStyle,

    	// ...
    	// widget specific hints
    	// ...
    	SH_ScrollBar_BackgroundMode,
    	SH_ScrollBar_MiddleClickAbsolutePosition,
    	SH_ScrollBar_ScrollWhenPointerLeavesControl,

    	// TQEvent::Type - which mouse event to select a tab
    	SH_TabBar_SelectMouseType,

    	SH_TabBar_Alignment,

    	SH_Header_ArrowAlignment,

    	// bool - sliders snap to values while moving, ala Windows
    	SH_Slider_SnapToValue,

    	// bool - key presses handled in a sloppy manner - ie. left on a vertical
    	// slider subtracts a line
    	SH_Slider_SloppyKeyEvents,

    	// bool - center button on progress dialogs, ala Motif, else right aligned
    	// perhaps this should be a TQt::Alignment value
    	SH_ProgressDialog_CenterCancelButton,

    	// TQt::AlignmentFlags - text label alignment in progress dialogs
    	// Center on windows, Auto|VCenter otherwize
    	SH_ProgressDialog_TextLabelAlignment,

    	// bool - right align buttons on print dialog, ala Windows
    	SH_PrintDialog_RightAlignButtons,

    	// bool - 1 or 2 pixel space between the menubar and the dockarea, ala Windows
    	// this *REALLY* needs a better name
    	SH_MainWindow_SpaceBelowMenuBar,

    	// bool - select the text in the line edit about the listbox when selecting
    	// an item from the listbox, or when the line edit receives focus, ala Windows
    	SH_FontDialog_SelectAssociatedText,

    	// bool - allows disabled menu items to be active
    	SH_PopupMenu_AllowActiveAndDisabled,

    	// bool - pressing space activates item, ala Motif
    	SH_PopupMenu_SpaceActivatesItem,

    	// int - number of milliseconds to wait before opening a submenu
    	// 256 on windows, 96 on motif
    	SH_PopupMenu_SubMenuPopupDelay,

    	// bool - should scrollviews draw their frame only around contents (ala Motif),
    	// or around contents, scrollbars and corner widgets (ala Windows) ?
    	SH_ScrollView_FrameOnlyAroundContents,

    	// bool - menubars items are navigatable by pressing alt, followed by using
    	// the arrow keys to select the desired item
    	SH_MenuBar_AltKeyNavigation,

    	// bool - mouse tracking in combobox dropdown lists
    	SH_ComboBox_ListMouseTracking,

    	// bool - mouse tracking in popupmenus
    	SH_PopupMenu_MouseTracking,

    	// bool - mouse tracking in menubars
    	SH_MenuBar_MouseTracking,

    	// bool - gray out selected items when loosing focus
    	SH_ItemView_ChangeHighlightOnFocus,

    	// bool - supports shared activation among modeless widgets
    	SH_Widget_ShareActivation,

    	// bool - workspace should just maximize the client area
    	SH_Workspace_FillSpaceOnMaximize,

    	// bool - supports popup menu comboboxes
    	SH_ComboBox_Popup,

    	// bool - titlebar has no border
    	SH_TitleBar_NoBorder,

    	// bool - stop scrollbar at mouse
    	SH_ScrollBar_StopMouseOverSlider,

    	//bool - blink cursort with selected text
    	SH_BlinkCursorWhenTextSelected,

    	//bool - richtext selections extend the full width of the docuemnt
    	SH_RichText_FullWidthSelection,

    	//bool - popupmenu supports scrolling instead of multicolumn mode
    	SH_PopupMenu_Scrollable,

    	// TQt::AlignmentFlags - text label vertical alignment in groupboxes
    	// Center on windows, Auto|VCenter otherwize
    	SH_GroupBox_TextLabelVerticalAlignment,

    	// TQt::TQRgb - text label color in groupboxes
    	SH_GroupBox_TextLabelColor,

    	// bool - popupmenu supports sloppy submenus
    	SH_PopupMenu_SloppySubMenus,

    	// TQt::TQRgb - table grid color
    	SH_Table_GridLineColor,

    	// TQChar - Unicode character for password char
    	SH_LineEdit_PasswordCharacter,

    	// TQDialogButtons::Button - default button
    	SH_DialogButtons_DefaultButton,

    	// TQToolBox - Boldness of the selected page title
    	SH_ToolBox_SelectedPageTitleBold,

    	//bool - if a tabbar prefers not to have scroller arrows
    	SH_TabBar_PreferNoArrows,

    	//bool - if left button should cause an absolute position
    	SH_ScrollBar_LeftClickAbsolutePosition,

    	// TQEvent::Type - which mouse event to select a list view expansion
    	SH_ListViewExpand_SelectMouseType,

    	//bool - if underline for accelerators
    	SH_UnderlineAccelerator,

    	// bool - TQToolButton - if tool buttons should use a 3D frame
    	// when the mouse is over the button
    	SH_ToolButton_Uses3D,

    	// do not add any values below/greater than this
    	SH_CustomBase =		0xf0000000
        };

        virtual int styleHint( StyleHint stylehint,
    			   const TQWidget *widget = 0,
    			   const TQStyleOption& = TQStyleOption::Default,
    			   TQStyleHintReturn* returnData = 0
    			   ) const = 0;

        enum StylePixmap {
    	SP_TitleBarMinButton,
    	SP_TitleBarMaxButton,
    	SP_TitleBarCloseButton,
    	SP_TitleBarNormalButton,
    	SP_TitleBarShadeButton,
    	SP_TitleBarUnshadeButton,
    	SP_DockWindowCloseButton,
    	SP_MessageBoxInformation,
    	SP_MessageBoxWarning,
    	SP_MessageBoxCritical,
    	SP_MessageBoxQuestion,

    	// do not add any values below/greater than this
    	SP_CustomBase =		0xf0000000
        };

        virtual TQPixmap stylePixmap( StylePixmap stylepixmap,
    				 const TQWidget *widget = 0,
    				 const TQStyleOption& = TQStyleOption::Default ) const = 0;

        static TQRect visualRect( const TQRect &logical, const TQWidget *w );

        static TQRect visualRect( const TQRect &logical, const TQRect &bounding );

        // Old 2.x TQStyle API

    #ifndef TQT_NO_COMPAT
        int defaultFrameWidth() const
        {
    	return pixelMetric( PM_DefaultFrameWidth );
        }
        void tabbarMetrics( const TQWidget* t,
    			int& hf, int& vf, int& ov ) const
        {
    	hf = pixelMetric( PM_TabBarTabHSpace, t );
    	vf = pixelMetric( PM_TabBarTabVSpace, t );
    	ov = pixelMetric( PM_TabBarBaseOverlap, t );
        }
        TQSize scrollBarExtent() const
        {
    	return TQSize(pixelMetric(PM_ScrollBarExtent),
    		     pixelMetric(PM_ScrollBarExtent));
        }
    #endif

    private:
        TQStylePrivate * d;

    #if defined(TQ_DISABLE_COPY)
        TQStyle( const TQStyle & );
        TQStyle& operator=( const TQStyle & );
    #endif
    };

    #endif // TQT_NO_STYLE
    #endif // TQSTYLE_H