Code: Alles auswählen
#include "myPruefungenItemView.h"
i
MyPruefungenItemView::MyPruefungenItemView( QWidget *parent) : QAbstractItemView( parent )
{
QGridLayout *layout = new QGridLayout( this->viewport() );
label = new QLabel();
layout->addWidget(label, 0, 0);
label->setAlignment( Qt::AlignCenter);
label->setSizePolicy( QSizePolicy( QSizePolicy::Expanding, QSizePolicy::Expanding ) );
label->setText( tr( "No Data" ) );
}
/*
void MyPruefungenItemView::updateText()
{
switch( selectionModel()->selection().indexes().count() )
{
case 0:
label->setText( tr( "No data" ) );
break;
case 1:
label->setText( model->data( currentIndex() ).toString() );
break;
default:
label->setText( tr( "Too many items selected" ) );
break;
}
}*/
QRect MyPruefungenItemView::visualRect( const QModelIndex &index ) const
{
if( selectionModel()->selection().indexes().count() != 1 )
return QRect();
if( currentIndex() != index )
return QRect();
return rect();
}
int MyPruefungenItemView::horizontalOffset() const
{
return horizontalScrollBar()->value();
}
int MyPruefungenItemView::verticalOffset() const
{
return verticalScrollBar()->value();
}
QModelIndex MyPruefungenItemView::moveCursor( CursorAction cursorAction, Qt::KeyboardModifiers modifiers )
{
return currentIndex();
}
void MyPruefungenItemView::setSelection( const QRect &rect, QItemSelectionModel::SelectionFlags flags )
{
//do nothing
}
void MyPruefungenItemView::scrollTo( const QModelIndex &index, ScrollHint hint )
{
//cannot scroll
}
void MyPruefungenItemView::dataChanged( const QModelIndex &topLeft, const QModelIndex &bottomRight )
{
updateText();
}
void MyPruefungenItemView::selectionChanged( const QItemSelection &selected, const QItemSelection &deselected )
{
updateText();
}Code: Alles auswählen
#include <QAbstractItemView>
#include <QGridLayout>
#include <QLabel>
#include <QModelIndex>
class QModelIndex;
class QDirModel;
class QItemSelectionModel;
class MyPruefungenItemView : public QAbstractItemView
{
Q_OBJECT
private:
QLabel *label;
void updateText();
public:
MyPruefungenItemView( QWidget *parent = 0);
QModelIndex indexAt( const QPoint &point) const;
void scrollTo( const QModelIndex &index, ScrollHint hint=EnsureVisible );
QRect visualRect( const QModelIndex &index ) const;
protected:
int horizontalOffset() const;
QModelIndex moveCursor( CursorAction cursorAction, Qt::KeyboardModifiers modifiers );
void setSelection( const QRect &rect, QItemSelectionModel::SelectionFlags flags );
int verticalOffset() const;
QRegion visualRegionForSelection( const QItemSelection &selection ) const;
protected slots:
void dataChanged( const QModelIndex &topLeft, const QModelIndex &bottomRight );
void selectionChanged( const QItemSelection &selected, const QItemSelection &deselected );
};
src/myPruefungenItemView.cpp:2: Fehler: »i« bezeichnet keinen Typ
src/myPruefungenItemView.cpp: In member function »virtual int
MyPruefungenItemView::horizontalOffset() const«:
src/myPruefungenItemView.cpp:45: Fehler: invalid use of incomplete type »struct QScrollBar«
/usr/include/qt4/QtGui/qabstractscrollarea.h:55: Fehler: forward declaration of »struct QScrollBar«
src/myPruefungenItemView.cpp: In member function »virtual int
MyPruefungenItemView::verticalOffset() const«:
src/myPruefungenItemView.cpp:50: Fehler: invalid use of incomplete type »struct QScrollBar«
/usr/include/qt4/QtGui/qabstractscrollarea.h:55: Fehler: forward declaration of »struct QScrollBar«
src/myPruefungenItemView.cpp: At global scope:
src/myPruefungenItemView.cpp:53: Warnung: unbenutzter Parameter »cursorAction«
src/myPruefungenItemView.cpp:53: Warnung: unbenutzter Parameter »modifiers«
src/myPruefungenItemView.cpp:58: Warnung: unbenutzter Parameter »rect«
src/myPruefungenItemView.cpp:58: Warnung: unbenutzter Parameter »flags«
src/myPruefungenItemView.cpp:63: Warnung: unbenutzter Parameter »index«
src/myPruefungenItemView.cpp:63: Warnung: unbenutzter Parameter »hint«
src/myPruefungenItemView.cpp:68: Warnung: unbenutzter Parameter »topLeft«
src/myPruefungenItemView.cpp:68: Warnung: unbenutzter Parameter »bottomRight«
src/myPruefungenItemView.cpp:73: Warnung: unbenutzter Parameter »selected«
src/myPruefungenItemView.cpp:73: Warnung: unbenutzter Parameter »deselected«
make: *** [build/myPruefungenItemView.o] Fehler 1