Make cover browsing code robust in case of empty database

This commit is contained in:
Kovid Goyal 2008-05-24 19:02:53 -07:00
parent 147beebe1c
commit 52622a2007

View File

@ -713,7 +713,7 @@ void PictureFlowPrivate::render()
painter.setPen(Qt::white); painter.setPen(Qt::white);
//painter.setPen(QColor(255,255,255,127)); //painter.setPen(QColor(255,255,255,127));
if (centerIndex < slideCount()) if (centerIndex < slideCount() and centerIndex > -1)
painter.drawText( QRect(0,0, buffer.width(), (buffer.height() - slideSize().height())/2), painter.drawText( QRect(0,0, buffer.width(), (buffer.height() - slideSize().height())/2),
Qt::AlignCenter, slideImages->caption(centerIndex)); Qt::AlignCenter, slideImages->caption(centerIndex));
@ -762,13 +762,16 @@ void PictureFlowPrivate::render()
painter.setFont(font); painter.setFont(font);
int leftTextIndex = (step>0) ? centerIndex : centerIndex-1; int leftTextIndex = (step>0) ? centerIndex : centerIndex-1;
int sc = slideCount();
painter.setPen(QColor(255,255,255, (255-fade) )); painter.setPen(QColor(255,255,255, (255-fade) ));
painter.drawText( QRect(0,0, buffer.width(), (buffer.height() - slideSize().height())/2), if (leftTextIndex < sc and leftTextIndex > -1)
painter.drawText( QRect(0,0, buffer.width(), (buffer.height() - slideSize().height())/2),
Qt::AlignCenter, slideImages->caption(leftTextIndex)); Qt::AlignCenter, slideImages->caption(leftTextIndex));
painter.setPen(QColor(255,255,255, fade)); painter.setPen(QColor(255,255,255, fade));
painter.drawText( QRect(0,0, buffer.width(), (buffer.height() - slideSize().height())/2), if (leftTextIndex+1 < sc and leftTextIndex > -2)
painter.drawText( QRect(0,0, buffer.width(), (buffer.height() - slideSize().height())/2),
Qt::AlignCenter, slideImages->caption(leftTextIndex+1)); Qt::AlignCenter, slideImages->caption(leftTextIndex+1));