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

QHeaderView Class Reference

The QHeaderView class provides a header row or header column for item views. More...

#include <QHeaderView>

Inherits QAbstractItemView.

Public Types

Writable Properties

Read-Only Properties

Public Functions

Public Slots

Signals

Static Public Members

Protected Functions

Protected Slots


Detailed Description

The QHeaderView class provides a header row or header column for item views.

A QHeaderView displays the headers used in item views such as the QTableView and QTreeView classes. It takes the place of the QHeader class previously used for the same purpose, but uses the Qt's model/view architecture for consistency with the item view classes.

Each header has an orientation() and a number of sections, given by the count() function. Sections can be moved and resized using moveSection() and resizeSection(); they can be hidden and shown with hideSection() and showSection().

Each section of a header is described by a section ID, specified by its section(), and can be located at a particular visualIndex() in the header. A section can have a sort indicator set with setSortIndicator(); this indicates whether the items in the associated item view will be sorted in the order given by the section.

A header can be fixed in place, or made movable with setMovable(). It can be made clickable with setClickable(), and has resizing behavior in accordance with setResizeMode().

A header emits sectionMoved() if the user moves a section, sectionResized() if the user resizes a section, and sectionClicked() and sectionHandleDoubleClicked() in response to mouse clicks. A header also emits sectionCountChanged() and sectionAutoResize().

You can identify a section using the section() and sectionAt() functions, or by its index position, using the visualIndex() and visualIndexAt() functions. Note that the visual index can change if a section is moved.

For a horizontal header the section is equivalent to a column in the model, and for a vertical header the section is equivalent to a row in the model.

See also Model/View Programming, QListView, QTableView, and QTreeView.


Member Type Documentation

enum QHeaderView::ResizeMode

QHeaderView::InteractiveDon't automatically change the size (let the user do it manually).
QHeaderView::StretchFill all the available visible space.
QHeaderView::CustomDon't automatically change the size here, leave it to some other object.

Property Documentation

highlightSections : bool

This property holds whether the selections containing selected items are highlighted.

Access functions:

showSortIndicator : bool

This property holds whether the sort indicator is shown.

Access functions:


Member Function Documentation

QHeaderView::QHeaderView ( Qt::Orientation orientation, QWidget * parent = 0 )

Creates a new generic header with the given orientation and parent.

QHeaderView::~QHeaderView ()   [virtual]

Destroys the header.

int QHeaderView::count () const

Returns the number of sections in the header.

void QHeaderView::doItemsLayout ()   [virtual]

void QHeaderView::headerDataChanged ( Qt::Orientation orientation, int logicalFirst, int logicalLast )   [slot]

Updates the changed header sections

void QHeaderView::hideSection ( int logicalIndex )

Hides the section specified by logicalIndex.

See also showSection().

int QHeaderView::horizontalOffset () const   [virtual protected]

Returns the horizontal offset of the header. This is 0 for vertical headers.

Reimplemented from QAbstractItemView.

See also offset().

bool QHeaderView::isClickable () const

Returns true if the header is clickable; otherwise returns false. A clickable header could be set up to allow the user to change the representation of the data in the view related to the header.

See also setClickable().

bool QHeaderView::isMovable () const

Returns true if the header can be moved by the user; otherwise returns false.

See also setMovable().

bool QHeaderView::isSectionHidden ( int logicalIndex ) const

Returns true if the section specified by logicalIndex is hidden from the user; otherwise returns false.

int QHeaderView::length () const

Returns the length along the orientation of the header.

See also sizeHint().

int QHeaderView::logicalIndex ( int visualIndex ) const

Returns the logicalIndex for the section at the given visualIndex position, or -1 otherwise.

See also visualIndex().

int QHeaderView::logicalIndexAt ( int position ) const

Returns the section that covers the given position in the viewport.

int QHeaderView::logicalIndexAt ( int x, int y ) const

This is an overloaded member function, provided for convenience. It behaves essentially like the above function.

Returns the logical index of the section at the given coordinate. If the header is horizontal x will be used, otherwise y will be used to find the logical index.

int QHeaderView::logicalIndexAt ( const QPoint & pos ) const

This is an overloaded member function, provided for convenience. It behaves essentially like the above function.

Returns the logical index of the section at the position given in pos. If the header is horizontal x will be used, otherwise y will be used to find the logical index.

void QHeaderView::moveSection ( int from, int to )

Moves the section at visual index from to occupy visual index to.

int QHeaderView::offset () const

Returns the offset of the header: this is the header's left-most (or top-most for vertical headers) visible pixel.

See also setOffset().

Qt::Orientation QHeaderView::orientation () const

Returns the orientation of the header.

See also Qt::Orientation.

void QHeaderView::paintSection ( QPainter * painter, const QRect & rect, int logicalIndex ) const   [virtual protected]

Paints the section specified by the given logicalIndex, using the given painter and rect.

You normally would not need to use this function.

ResizeMode QHeaderView::resizeMode ( int logicalIndex ) const

Returns the resize mode that applies to the section specified by the given logicalIndex.

void QHeaderView::resizeSection ( int logicalIndex, int size )

Resizes the given logicalIndex to the given size.

void QHeaderView::sectionAutoResize ( int logicalIndex, ResizeMode mode )   [signal]

This signal is emitted when a section is automatically resized. The section's logical index is specified by logicalIndex, and the resize mode by mode.

void QHeaderView::sectionClicked ( int logicalIndex, Qt::MouseButton button, Qt::KeyboardModifiers modifiers )   [signal]

This signal is emitted when a section is clicked. The section's logical index is specified by logicalIndex. The state of the mouse buttons is specified by button, and the modifiers reflect the state of the keyboard's modifier keys.

void QHeaderView::sectionCountChanged ( int oldCount, int newCount )   [signal]

This signal is emitted when the number of sections changes; i.e. when sections are added or deleted. The original count is specified by oldCount, and the new count by newCount.

void QHeaderView::sectionHandleDoubleClicked ( int logicalIndex )   [signal]

This signal is emitted when a section is double-clicked. The section's logical index is specified by logicalIndex.

void QHeaderView::sectionMoved ( int logicalIndex, int oldVisualIndex, int newVisualIndex )   [signal]

This signal is emitted when a section is moved. The section's logical index is specified by logicalIndex, the old index by oldVisualIndex, and the new index position by newVisualIndex.

int QHeaderView::sectionPosition ( int logicalIndex ) const

Returns the section position of the given logicalIndex.

See also sectionViewportPosition().

void QHeaderView::sectionPressed ( int logicalIndex, Qt::MouseButton button, Qt::KeyboardModifiers modifiers )   [signal]

This signal is emitted when a section is pressed. The section's logical index is specified by logicalIndex. The state of the mouse buttons is specified by button, and the modifiers reflect the state of the keyboard's modifier keys.

void QHeaderView::sectionResized ( int logicalIndex, int oldSize, int newSize )   [signal]

This signal is emitted when a section is resized. The section's logical number is specified by logicalIndex, the old size by oldSize, and the new size by newSize.

int QHeaderView::sectionSize ( int logicalIndex ) const

Returns the width (or height for vertical headers) of the given logicalIndex.

QSize QHeaderView::sectionSizeFromContents ( int logicalIndex ) const   [virtual protected]

Returns the size of the contents of the section specified by the give logicalIndex.

int QHeaderView::sectionSizeHint ( int logicalIndex ) const

Returns a suitable size hint for the given section.

See also sizeHint().

int QHeaderView::sectionViewportPosition ( int logicalIndex ) const

Returns the section viewport position of the given logicalIndex.

See also sectionPosition().

void QHeaderView::sectionsAboutToBeRemoved ( const QModelIndex & parent, int logicalFirst, int logicalLast )   [protected slot]

This slot is called when sections are removed from the parent, logicalFirst and logicalLast signify where the sections are removed from. (logicalFirst and logicalLast will be the same if just one section is removed.)

void QHeaderView::sectionsInserted ( const QModelIndex & parent, int logicalFirst, int logicalLast )   [protected slot]

This slot is called when sections are inserted into the parent, first and last signify where the new sections are inserted. (first and last will be the same if just one section is inserted.)

void QHeaderView::setClickable ( bool clickable )

If clickable is true, the header will respond to single clicks.

See also isClickable().

void QHeaderView::setMovable ( bool movable )

If movable is true, the header may be moved by the user; otherwise it is fixed in place.

See also isMovable().

void QHeaderView::setOffset ( int offset )   [slot]

Sets the header's offset to offset.

See also offset().

void QHeaderView::setResizeMode ( ResizeMode mode )

Sets the constraints on how the header can be resized to those described by the given mode.

See also QLayout::ResizeMode.

void QHeaderView::setResizeMode ( ResizeMode mode, int logicalIndex )

This is an overloaded member function, provided for convenience. It behaves essentially like the above function.

Sets the constraints on how the section specified by logicalIndex in the header can be resized to those described by the given mode.

See also QLayout::ResizeMode.

void QHeaderView::setSectionHidden ( int logicalIndex, bool hide )

If hide is true the section specified by logicalIndex is hidden, otherwise the section is shown.

void QHeaderView::setSortIndicator ( int logicalIndex, Qt::SortOrder order )

Sets the sort indicator for the section specified by the given logicalIndex in the direction specified by order, and removes the sort indicator from any other section that was showing it.

See also sortIndicatorSection() and sortIndicatorOrder().

void QHeaderView::showSection ( int logicalIndex )

Shows the section specified by logicalIndex.

See also hideSection().

QSize QHeaderView::sizeHint () const   [virtual]

Returns a suitable size hint for this header.

Reimplemented from QWidget.

See also sectionSizeHint().

Qt::SortOrder QHeaderView::sortIndicatorOrder () const

Returns the order for the sort indicator. If no section has a sort indicator the return value of this function is undefined.

See also setSortIndicator() and sortIndicatorSection().

int QHeaderView::sortIndicatorSection () const

Returns the logical index of the section that has a sort indicator, or -1 if no section has a sort indicator.

See also setSortIndicator() and sortIndicatorOrder().

int QHeaderView::verticalOffset () const   [virtual protected]

Returns the vertical offset of the header. This is 0 for horizontal headers.

Reimplemented from QAbstractItemView.

See also offset().

int QHeaderView::visualIndex ( int logicalIndex ) const

Returns the visual index position of the section specified by the given logicalIndex, or -1 otherwise.

See also section().

int QHeaderView::visualIndexAt ( int position ) const

Returns the visual index of the section that covers the given position in the viewport.


Copyright © 2004 Trolltech Trademarks
Qt 4.0.0-b1