Public Member Functions | Protected Member Functions

DataHeader Class Reference

Header used by DataBuilderView. More...

#include <builderview.h>

Inheritance diagram for DataHeader:
Inheritance graph
[legend]
Collaboration diagram for DataHeader:
Collaboration graph
[legend]

List of all members.

Public Member Functions

 DataHeader (BaseQueryModel *base, QWidget *parent=0)
QSize sizeHint () const
DataHeaderViewPortviewPort () const
int sectionCount () const
QVariant data (const int section, const int role) const

Protected Member Functions

bool viewportEvent (QEvent *event)

Detailed Description

Header used by DataBuilderView.


Constructor & Destructor Documentation

DataHeader::DataHeader ( BaseQueryModel base,
QWidget parent = 0 
)

                                                                      : QScrollArea(parent)
{
    setWidget(new DataHeaderViewPort(base, this));
    setWidgetResizable(true);
    setHorizontalScrollBarPolicy(Qt::ScrollBarAlwaysOn);
    setVerticalScrollBarPolicy(Qt::ScrollBarAlwaysOff);
    setSizePolicy(QSizePolicy::Preferred, QSizePolicy::Fixed);
}


Member Function Documentation

QVariant DataHeader::data ( const int  section,
const int  role 
) const

Referenced by BaseQueryModel::headerData().

{
    Q_ASSERT(viewPort());
    Q_ASSERT(viewPort()->section(section));
    return viewPort()->section(section)->data(role);
}

int DataHeader::sectionCount (  )  const

{
    return viewPort()->sectionCount();
}

QSize DataHeader::sizeHint (  )  const

{
    QSize size = QScrollArea::sizeHint();
    return QSize(size.width(), frameWidth() + viewPort()->frameGeometry().height() + horizontalScrollBar()->height());
}

DataHeaderViewPort * DataHeader::viewPort (  )  const

Referenced by Builder::Builder(), data(), Factory::Factory(), sectionCount(), and sizeHint().

{ //note there exists non-virtual viewport()!
    Q_ASSERT(dynamic_cast<DataHeaderViewPort*>(QScrollArea::widget()));
    return dynamic_cast<DataHeaderViewPort*>(QScrollArea::widget());
}

bool DataHeader::viewportEvent ( QEvent event  )  [protected]

{
    //Deze layoutrequest komt van viewport en zegt dat het veranderd is. Daar sizeHint afhangt van viewport, moet er een updateGeometry gebeuren.
    if (event->type() == QEvent::LayoutRequest) updateGeometry();
    return QScrollArea::viewportEvent(event);
}


The documentation for this class was generated from the following files: