|  | Home · All Namespaces · All Classes · Main Classes · Grouped Classes · Modules · Functions |

# QStyleOptionTabV3 Class Reference
[QtGui module]

The QStyleOptionTabV3 class is used to describe the parameters necessary for drawing a tabs in Qt 4.5 or above. More...

     #include <QStyleOptionTabV3>

Inherits QStyleOptionTabV2.

This class was introduced in Qt 4.5.

- List of all members, including inherited members

### Public Types

- enum StyleOptionVersion { Version }

### Public Functions

- QStyleOptionTabV3 ()
- QStyleOptionTabV3 ( const QStyleOptionTabV3 & other )
- QStyleOptionTabV3 ( const QStyleOptionTabV2 & other )
- QStyleOptionTabV3 ( const QStyleOptionTab & other )
- QStyleOptionTabV3 & operator= ( const QStyleOptionTab & other )

- 1 public function inherited from QStyleOptionTabV2
- 2 public functions inherited from QStyleOption

### Public Variables

- bool documentMode
- QSize leftButtonSize
- QSize rightButtonSize

- 1 public type inherited from QStyleOptionTabV2
- 7 public variables inherited from QStyleOptionTab
- 7 public variables inherited from QStyleOption

## Detailed Description

The QStyleOptionTabV3 class is used to describe the parameters necessary for drawing a tabs in Qt 4.5 or above.

An instance of the QStyleOptionTabV3 class has type SO_Tab and version 3. The type is used internally by QStyleOption, its subclasses, and qstyleoption_cast() to determine the type of style option. In general you do not need to worry about this unless you want to create your own QStyleOption subclass and your own styles. The version is used by QStyleOption subclasses to implement extensions without breaking compatibility. If you use qstyleoption_cast(), you normally do not need to check it.

If you create your own QStyle subclass, you should handle both QStyleOptionTab, QStyleOptionTabV2 and QStyleOptionTabV3. One way to achieve this is to use the QStyleOptionTabV3 copy constructor. For example:

         if (const QStyleOptionTab *tabOption =
                qstyleoption_cast<const QStyleOptionTab *>(option)) {
             QStyleOptionTabV2 tabV2(*tabOption);

             // draw the tab using tabV2
        }

In the example above: If `tabOption`'s version is 1, the extra member (iconSize) will be set to an invalid size for `tabV2`. If `tabOption`'s version is 2, the constructor will simply copy the `tab`'s iconSize.

For an example demonstrating how style options can be used, see the Styles example.

See also QStyleOptionTab and QStyleOption.

## Member Type Documentation

### enum QStyleOptionTabV3::StyleOptionVersion

This enum is used to hold information about the version of the style option, and is defined for each QStyleOption subclass.

Constant | Value | Description
--- | --- | ---
`QStyleOptionTabV3::Version` | `3` | 3

The version is used by QStyleOption subclasses to implement extensions without breaking compatibility. If you use qstyleoption_cast(), you normally do not need to check it.

See also StyleOptionType.

## Member Function Documentation

### QStyleOptionTabV3::QStyleOptionTabV3 ()

Constructs a QStyleOptionTabV3.

### QStyleOptionTabV3::QStyleOptionTabV3 ( const QStyleOptionTabV3 & other )

Constructs a copy of the other style option.

### QStyleOptionTabV3::QStyleOptionTabV3 ( const QStyleOptionTabV2 & other )

Constructs a copy of the other style option.

### QStyleOptionTabV3::QStyleOptionTabV3 ( const QStyleOptionTab & other )

Constructs a QStyleOptionTabV3 copy of the other style option which can be either of the QStyleOptionTabV3, QStyleOptionTabV2 or QStyleOptionTab types.

If the other style option's version is 1 or 2, the new style option's `leftButtonSize` and `rightButtonSize` is set to an invalid value. If its version is 3, its `leftButtonSize` and `rightButtonSize` values are simply copied to the new style option.

### QStyleOptionTabV3 & QStyleOptionTabV3::operator= ( const QStyleOptionTab & other )

Assigns the other style option to this QStyleOptionTabV3. The other style option can be either of the QStyleOptionTabV3, QStyleOptionTabV2 or QStyleOptionTab types.

If the other style option's version is 1 or 2, the new style option's `leftButtonSize` and `rightButtonSize` is set to an invalid value. If its version is 3, its `leftButtonSize` and `rightButtonSize` values are simply copied to the new style option.

## Member Variable Documentation

### bool QStyleOptionTabV3::documentMode

This variable holds whether the tabbar is in document mode.

The default value is false;

### QSize QStyleOptionTabV3::leftButtonSize

This variable holds the size for the left widget on the tab.

The default value is QSize(-1, -1), i.e. an invalid size;

### QSize QStyleOptionTabV3::rightButtonSize

This variable holds the size for the right widget on the tab.

The default value is QSize(-1, -1), i.e. an invalid size;