#include <qxtflowview_p.h>

Public Slots | |
| void | columnsAboutToBeInserted (const QModelIndex &parent, int start, int end) |
| void | columnsAboutToBeRemoved (const QModelIndex &parent, int start, int end) |
| void | columnsInserted (const QModelIndex &parent, int start, int end) |
| void | columnsRemoved (const QModelIndex &parent, int start, int end) |
| void | dataChanged (const QModelIndex &topLeft, const QModelIndex &bottomRight) |
| void | headerDataChanged (Qt::Orientation orientation, int first, int last) |
| void | layoutAboutToBeChanged () |
| void | layoutChanged () |
| void | modelAboutToBeReset () |
| void | modelReset () |
| void | rowsAboutToBeInserted (const QModelIndex &parent, int start, int end) |
| void | rowsAboutToBeRemoved (const QModelIndex &parent, int start, int end) |
| void | rowsInserted (const QModelIndex &parent, int start, int end) |
| void | rowsRemoved (const QModelIndex &parent, int start, int end) |
Public Member Functions | |
| void | setModel (QAbstractItemModel *model) |
| void | clear () |
| void | triggerRender () |
| void | insertSlide (int index, const QImage &image) |
| void | replaceSlide (int index, const QImage &image) |
| void | removeSlide (int index) |
| void | setCurrentIndex (QModelIndex index) |
| void | showSlide (int index) |
| void | reset () |
Public Attributes | |
| QxtFlowViewState * | state |
| QxtFlowViewAnimator * | animator |
| QxtFlowViewAbstractRenderer * | renderer |
| QTimer | triggerTimer |
| QAbstractItemModel * | model |
| int | picrole |
| int | textrole |
| int | piccolumn |
| int | textcolumn |
| QList< QPersistentModelIndex > | modelmap |
| QPersistentModelIndex | currentcenter |
| QPoint | lastgrabpos |
| QModelIndex | rootindex |
Definition at line 249 of file qxtflowview_p.h.
| void QxtFlowViewPrivate::clear | ( | ) |
Definition at line 618 of file qxtflowview.cpp.
References modelmap, QxtFlowViewState::reset(), QxtFlowViewState::slideImages, state, and triggerRender().
Referenced by reset().
{
int c = state->slideImages.count();
for (int i = 0; i < c; i++)
delete state->slideImages[i];
state->slideImages.resize(0);
state->reset();
modelmap.clear();
triggerRender();
}
| void QxtFlowViewPrivate::columnsAboutToBeInserted | ( | const QModelIndex & | parent, |
| int | start, | ||
| int | end | ||
| ) | [slot] |
Definition at line 423 of file qxtflowview.cpp.
Referenced by setModel().
{
Q_UNUSED(parent);
Q_UNUSED(start);
Q_UNUSED(end);
}
| void QxtFlowViewPrivate::columnsAboutToBeRemoved | ( | const QModelIndex & | parent, |
| int | start, | ||
| int | end | ||
| ) | [slot] |
Definition at line 431 of file qxtflowview.cpp.
Referenced by setModel().
{
Q_UNUSED(parent);
Q_UNUSED(start);
Q_UNUSED(end);
}
| void QxtFlowViewPrivate::columnsInserted | ( | const QModelIndex & | parent, |
| int | start, | ||
| int | end | ||
| ) | [slot] |
Definition at line 439 of file qxtflowview.cpp.
Referenced by setModel().
{
Q_UNUSED(parent);
Q_UNUSED(start);
Q_UNUSED(end);
}
| void QxtFlowViewPrivate::columnsRemoved | ( | const QModelIndex & | parent, |
| int | start, | ||
| int | end | ||
| ) | [slot] |
Definition at line 447 of file qxtflowview.cpp.
Referenced by setModel().
{
Q_UNUSED(parent);
Q_UNUSED(start);
Q_UNUSED(end);
}
| void QxtFlowViewPrivate::dataChanged | ( | const QModelIndex & | topLeft, |
| const QModelIndex & | bottomRight | ||
| ) | [slot] |
Definition at line 454 of file qxtflowview.cpp.
References model, piccolumn, picrole, replaceSlide(), and rootindex.
Referenced by setModel().
{
Q_UNUSED(topLeft);
Q_UNUSED(bottomRight);
if (topLeft.parent() != rootindex)
return;
if (bottomRight.parent() != rootindex)
return;
int start = topLeft.row();
int end = bottomRight.row();
for (int i = start;i <= end;i++)
replaceSlide(i, qvariant_cast<QImage>(model->data(model->index(i, piccolumn, rootindex), picrole)));
}
| void QxtFlowViewPrivate::headerDataChanged | ( | Qt::Orientation | orientation, |
| int | first, | ||
| int | last | ||
| ) | [slot] |
Definition at line 473 of file qxtflowview.cpp.
Referenced by setModel().
{
Q_UNUSED(orientation);
Q_UNUSED(first);
Q_UNUSED(last);
}
| void QxtFlowViewPrivate::insertSlide | ( | int | index, |
| const QImage & | image | ||
| ) |
Definition at line 639 of file qxtflowview.cpp.
References QxtFlowViewState::slideImages, state, and triggerRender().
Referenced by reset(), and rowsInserted().
{
state->slideImages.insert(index, new QImage(image));
triggerRender();
}
| void QxtFlowViewPrivate::layoutAboutToBeChanged | ( | ) | [slot] |
| void QxtFlowViewPrivate::layoutChanged | ( | ) | [slot] |
Definition at line 490 of file qxtflowview.cpp.
References currentcenter, reset(), and setCurrentIndex().
Referenced by setModel().
{
reset();
setCurrentIndex(currentcenter);
}
| void QxtFlowViewPrivate::modelAboutToBeReset | ( | ) | [slot] |
| void QxtFlowViewPrivate::modelReset | ( | ) | [slot] |
Definition at line 500 of file qxtflowview.cpp.
References reset().
Referenced by setModel().
{
reset();
}
| void QxtFlowViewPrivate::removeSlide | ( | int | index ) |
Definition at line 655 of file qxtflowview.cpp.
References QxtFlowViewState::slideImages, state, and triggerRender().
Referenced by rowsRemoved().
{
delete state->slideImages[index];
state->slideImages.remove(index);
triggerRender();
}
| void QxtFlowViewPrivate::replaceSlide | ( | int | index, |
| const QImage & | image | ||
| ) |
Definition at line 645 of file qxtflowview.cpp.
References QxtFlowViewState::slideImages, state, and triggerRender().
Referenced by dataChanged().
{
Q_ASSERT((index >= 0) && (index < state->slideImages.count()));
QImage* i = image.isNull() ? 0 : new QImage(image);
delete state->slideImages[index];
state->slideImages[index] = i;
triggerRender();
}
| void QxtFlowViewPrivate::reset | ( | ) |
Definition at line 672 of file qxtflowview.cpp.
References clear(), insertSlide(), model, modelmap, piccolumn, picrole, rootindex, and triggerRender().
Referenced by layoutChanged(), modelReset(), setModel(), QxtFlowView::setPictureColumn(), QxtFlowView::setPictureRole(), and QxtFlowView::setReflectionEffect().
| void QxtFlowViewPrivate::rowsAboutToBeInserted | ( | const QModelIndex & | parent, |
| int | start, | ||
| int | end | ||
| ) | [slot] |
Definition at line 505 of file qxtflowview.cpp.
Referenced by setModel().
{
Q_UNUSED(parent);
Q_UNUSED(start);
Q_UNUSED(end);
}
| void QxtFlowViewPrivate::rowsAboutToBeRemoved | ( | const QModelIndex & | parent, |
| int | start, | ||
| int | end | ||
| ) | [slot] |
Definition at line 512 of file qxtflowview.cpp.
Referenced by setModel().
{
Q_UNUSED(parent);
Q_UNUSED(start);
Q_UNUSED(end);
}
| void QxtFlowViewPrivate::rowsInserted | ( | const QModelIndex & | parent, |
| int | start, | ||
| int | end | ||
| ) | [slot] |
Definition at line 519 of file qxtflowview.cpp.
References insertSlide(), model, modelmap, piccolumn, picrole, and rootindex.
Referenced by setModel().
| void QxtFlowViewPrivate::rowsRemoved | ( | const QModelIndex & | parent, |
| int | start, | ||
| int | end | ||
| ) | [slot] |
Definition at line 531 of file qxtflowview.cpp.
References modelmap, removeSlide(), and rootindex.
Referenced by setModel().
{
if (rootindex != parent)
return;
for (int i = start;i <= end;i++)
{
removeSlide(i);
modelmap.removeAt(i);
}
}
| void QxtFlowViewPrivate::setCurrentIndex | ( | QModelIndex | index ) |
Definition at line 689 of file qxtflowview.cpp.
References animator, QxtFlowViewState::centerIndex, model, modelmap, QxtFlowViewState::reset(), rootindex, state, QxtFlowViewAnimator::stop(), and triggerRender().
Referenced by layoutChanged(), and QxtFlowView::setCurrentIndex().
{
if (model->parent(index) != rootindex)
return;
int r = modelmap.indexOf(index);
if (r < 0)
return;
state->centerIndex = r;
state->reset();
animator->stop(r);
triggerRender();
}
| void QxtFlowViewPrivate::setModel | ( | QAbstractItemModel * | model ) |
Definition at line 543 of file qxtflowview.cpp.
References columnsAboutToBeInserted(), columnsAboutToBeRemoved(), columnsInserted(), columnsRemoved(), dataChanged(), headerDataChanged(), layoutAboutToBeChanged(), layoutChanged(), model, modelAboutToBeReset(), modelReset(), reset(), rootindex, rowsAboutToBeInserted(), rowsAboutToBeRemoved(), rowsInserted(), and rowsRemoved().
Referenced by QxtFlowView::setModel().
{
if (model)
{
disconnect(this->model, SIGNAL(columnsAboutToBeInserted(const QModelIndex & , int , int)),
this, SLOT(columnsAboutToBeInserted(const QModelIndex & , int , int)));
disconnect(this->model, SIGNAL(columnsAboutToBeRemoved(const QModelIndex & , int , int)),
this, SLOT(columnsAboutToBeRemoved(const QModelIndex & , int , int)));
disconnect(this->model, SIGNAL(columnsInserted(const QModelIndex & , int , int)),
this, SLOT(columnsInserted(const QModelIndex & , int , int)));
disconnect(this->model, SIGNAL(columnsRemoved(const QModelIndex & , int , int)),
this, SLOT(columnsRemoved(const QModelIndex & , int , int)));
disconnect(this->model, SIGNAL(dataChanged(const QModelIndex & , const QModelIndex &)),
this, SLOT(dataChanged(const QModelIndex & , const QModelIndex &)));
disconnect(this->model, SIGNAL(headerDataChanged(Qt::Orientation , int , int)),
this, SLOT(headerDataChanged(Qt::Orientation , int , int)));
disconnect(this->model, SIGNAL(layoutAboutToBeChanged()),
this, SLOT(layoutAboutToBeChanged()));
disconnect(this->model, SIGNAL(layoutChanged()),
this, SLOT(layoutChanged()));
disconnect(this->model, SIGNAL(modelAboutToBeReset()),
this, SLOT(modelAboutToBeReset()));
disconnect(this->model, SIGNAL(modelReset()),
this, SLOT(modelReset()));
disconnect(this->model, SIGNAL(rowsAboutToBeInserted(const QModelIndex & , int , int)),
this, SLOT(rowsAboutToBeInserted(const QModelIndex & , int , int)));
disconnect(this->model, SIGNAL(rowsAboutToBeRemoved(const QModelIndex & , int , int)),
this, SLOT(rowsAboutToBeRemoved(const QModelIndex & , int , int)));
disconnect(this->model, SIGNAL(rowsInserted(const QModelIndex & , int , int)),
this, SLOT(rowsInserted(const QModelIndex & , int , int)));
disconnect(this->model, SIGNAL(rowsRemoved(const QModelIndex & , int , int)),
this, SLOT(rowsRemoved(const QModelIndex & , int , int)));
}
model = m;
if (model)
{
rootindex = model->parent(QModelIndex());
connect(this->model, SIGNAL(columnsAboutToBeInserted(const QModelIndex & , int , int)),
this, SLOT(columnsAboutToBeInserted(const QModelIndex & , int , int)));
connect(this->model, SIGNAL(columnsAboutToBeRemoved(const QModelIndex & , int , int)),
this, SLOT(columnsAboutToBeRemoved(const QModelIndex & , int , int)));
connect(this->model, SIGNAL(columnsInserted(const QModelIndex & , int , int)),
this, SLOT(columnsInserted(const QModelIndex & , int , int)));
connect(this->model, SIGNAL(columnsRemoved(const QModelIndex & , int , int)),
this, SLOT(columnsRemoved(const QModelIndex & , int , int)));
connect(this->model, SIGNAL(dataChanged(const QModelIndex & , const QModelIndex &)),
this, SLOT(dataChanged(const QModelIndex & , const QModelIndex &)));
connect(this->model, SIGNAL(headerDataChanged(Qt::Orientation , int , int)),
this, SLOT(headerDataChanged(Qt::Orientation , int , int)));
connect(this->model, SIGNAL(layoutAboutToBeChanged()),
this, SLOT(layoutAboutToBeChanged()));
connect(this->model, SIGNAL(layoutChanged()),
this, SLOT(layoutChanged()));
connect(this->model, SIGNAL(modelAboutToBeReset()),
this, SLOT(modelAboutToBeReset()));
connect(this->model, SIGNAL(modelReset()),
this, SLOT(modelReset()));
connect(this->model, SIGNAL(rowsAboutToBeInserted(const QModelIndex & , int , int)),
this, SLOT(rowsAboutToBeInserted(const QModelIndex & , int , int)));
connect(this->model, SIGNAL(rowsAboutToBeRemoved(const QModelIndex & , int , int)),
this, SLOT(rowsAboutToBeRemoved(const QModelIndex & , int , int)));
connect(this->model, SIGNAL(rowsInserted(const QModelIndex & , int , int)),
this, SLOT(rowsInserted(const QModelIndex & , int , int)));
connect(this->model, SIGNAL(rowsRemoved(const QModelIndex & , int , int)),
this, SLOT(rowsRemoved(const QModelIndex & , int , int)));
}
reset();
}
| void QxtFlowViewPrivate::showSlide | ( | int | index ) |
Definition at line 663 of file qxtflowview.cpp.
References animator, QxtFlowViewState::centerSlide, SlideInfo::slideIndex, QxtFlowViewAnimator::start(), and state.
Referenced by QxtFlowView::keyPressEvent(), and QxtFlowView::showSlide().
{
if (index == state->centerSlide.slideIndex)
return;
animator->start(index);
}
| void QxtFlowViewPrivate::triggerRender | ( | ) |
Definition at line 631 of file qxtflowview.cpp.
References triggerTimer.
Referenced by clear(), insertSlide(), removeSlide(), replaceSlide(), reset(), setCurrentIndex(), and QxtFlowView::triggerRender().
{
triggerTimer.setSingleShot(true);
triggerTimer.start(0);
}
Definition at line 254 of file qxtflowview_p.h.
Referenced by QxtFlowView::QxtFlowView(), setCurrentIndex(), QxtFlowView::showNext(), QxtFlowView::showPrevious(), showSlide(), and QxtFlowView::~QxtFlowView().
| QPersistentModelIndex QxtFlowViewPrivate::currentcenter |
Definition at line 275 of file qxtflowview_p.h.
Referenced by layoutChanged().
Definition at line 277 of file qxtflowview_p.h.
Referenced by QxtFlowView::mouseMoveEvent(), and QxtFlowView::mousePressEvent().
| QAbstractItemModel* QxtFlowViewPrivate::model |
Definition at line 257 of file qxtflowview_p.h.
Referenced by dataChanged(), QxtFlowView::model(), QxtFlowView::QxtFlowView(), reset(), rowsInserted(), setCurrentIndex(), and setModel().
| QList<QPersistentModelIndex> QxtFlowViewPrivate::modelmap |
Definition at line 274 of file qxtflowview_p.h.
Referenced by clear(), reset(), rowsInserted(), rowsRemoved(), setCurrentIndex(), and QxtFlowView::showSlide().
Definition at line 269 of file qxtflowview_p.h.
Referenced by dataChanged(), QxtFlowView::QxtFlowView(), reset(), rowsInserted(), and QxtFlowView::setPictureColumn().
Definition at line 267 of file qxtflowview_p.h.
Referenced by dataChanged(), QxtFlowView::QxtFlowView(), reset(), rowsInserted(), and QxtFlowView::setPictureRole().
Definition at line 255 of file qxtflowview_p.h.
Referenced by QxtFlowView::paintEvent(), QxtFlowView::QxtFlowView(), QxtFlowView::render(), and QxtFlowView::~QxtFlowView().
| QModelIndex QxtFlowViewPrivate::rootindex |
Definition at line 278 of file qxtflowview_p.h.
Referenced by dataChanged(), reset(), rowsInserted(), rowsRemoved(), setCurrentIndex(), setModel(), and QxtFlowView::setRootIndex().
Definition at line 253 of file qxtflowview_p.h.
Referenced by clear(), insertSlide(), QxtFlowView::mouseMoveEvent(), QxtFlowView::QxtFlowView(), QxtFlowView::reflectionEffect(), removeSlide(), replaceSlide(), QxtFlowView::setBackgroundColor(), setCurrentIndex(), QxtFlowView::setReflectionEffect(), QxtFlowView::setSlideSize(), QxtFlowView::showNext(), QxtFlowView::showPrevious(), showSlide(), and QxtFlowView::~QxtFlowView().
Definition at line 270 of file qxtflowview_p.h.
Referenced by QxtFlowView::QxtFlowView().
Definition at line 268 of file qxtflowview_p.h.
Referenced by QxtFlowView::QxtFlowView().
Definition at line 256 of file qxtflowview_p.h.
Referenced by QxtFlowView::QxtFlowView(), and triggerRender().
1.7.2