From 52622a2007122c0431907180739da8f5e9170075 Mon Sep 17 00:00:00 2001 From: Kovid Goyal Date: Sat, 24 May 2008 19:02:53 -0700 Subject: [PATCH] Make cover browsing code robust in case of empty database --- src/calibre/gui2/pictureflow/pictureflow.cpp | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/src/calibre/gui2/pictureflow/pictureflow.cpp b/src/calibre/gui2/pictureflow/pictureflow.cpp index a59a8dab90..49b881bb5e 100644 --- a/src/calibre/gui2/pictureflow/pictureflow.cpp +++ b/src/calibre/gui2/pictureflow/pictureflow.cpp @@ -713,7 +713,7 @@ void PictureFlowPrivate::render() painter.setPen(Qt::white); //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), Qt::AlignCenter, slideImages->caption(centerIndex)); @@ -762,13 +762,16 @@ void PictureFlowPrivate::render() painter.setFont(font); int leftTextIndex = (step>0) ? centerIndex : centerIndex-1; + int sc = slideCount(); 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)); 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));