Fix #2345 (Covers in browser differ in size to enhance browsing)

This commit is contained in:
Kovid Goyal 2010-06-09 01:35:23 -06:00
parent 47158c8f6d
commit a185a0771e
3 changed files with 10 additions and 6 deletions

View File

@ -82,6 +82,7 @@ if pictureflow is not None:
self.setFocusPolicy(Qt.WheelFocus) self.setFocusPolicy(Qt.WheelFocus)
self.setSizePolicy(QSizePolicy(QSizePolicy.Expanding, self.setSizePolicy(QSizePolicy(QSizePolicy.Expanding,
QSizePolicy.Expanding)) QSizePolicy.Expanding))
self.setZoomFactor(150)
def wheelEvent(self, ev): def wheelEvent(self, ev):
ev.accept() ev.accept()

View File

@ -85,6 +85,8 @@ typedef long PFreal;
typedef unsigned short QRgb565; typedef unsigned short QRgb565;
#define FONT_SIZE 18
#define RGB565_RED_MASK 0xF800 #define RGB565_RED_MASK 0xF800
#define RGB565_GREEN_MASK 0x07E0 #define RGB565_GREEN_MASK 0x07E0
#define RGB565_BLUE_MASK 0x001F #define RGB565_BLUE_MASK 0x001F
@ -711,14 +713,14 @@ void PictureFlowPrivate::render()
QPainter painter; QPainter painter;
painter.begin(&buffer); painter.begin(&buffer);
QFont font("Arial", 14); QFont font("Arial", FONT_SIZE);
font.setBold(true); font.setBold(true);
painter.setFont(font); painter.setFont(font);
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() && centerIndex > -1) if (centerIndex < slideCount() && centerIndex > -1)
painter.drawText( QRect(0,0, buffer.width(), (buffer.height() - slideSize().height())/2), painter.drawText( QRect(0,0, buffer.width(), buffer.height()*2-FONT_SIZE*3),
Qt::AlignCenter, slideImages->caption(centerIndex)); Qt::AlignCenter, slideImages->caption(centerIndex));
painter.end(); painter.end();
@ -761,7 +763,7 @@ void PictureFlowPrivate::render()
QPainter painter; QPainter painter;
painter.begin(&buffer); painter.begin(&buffer);
QFont font("Arial", 14); QFont font("Arial", FONT_SIZE);
font.setBold(true); font.setBold(true);
painter.setFont(font); painter.setFont(font);
@ -770,12 +772,12 @@ void PictureFlowPrivate::render()
painter.setPen(QColor(255,255,255, (255-fade) )); painter.setPen(QColor(255,255,255, (255-fade) ));
if (leftTextIndex < sc && leftTextIndex > -1) if (leftTextIndex < sc && leftTextIndex > -1)
painter.drawText( QRect(0,0, buffer.width(), (buffer.height() - slideSize().height())/2), painter.drawText( QRect(0,0, buffer.width(), buffer.height()*2 - FONT_SIZE*3),
Qt::AlignCenter, slideImages->caption(leftTextIndex)); Qt::AlignCenter, slideImages->caption(leftTextIndex));
painter.setPen(QColor(255,255,255, fade)); painter.setPen(QColor(255,255,255, fade));
if (leftTextIndex+1 < sc && leftTextIndex > -2) if (leftTextIndex+1 < sc && leftTextIndex > -2)
painter.drawText( QRect(0,0, buffer.width(), (buffer.height() - slideSize().height())/2), painter.drawText( QRect(0,0, buffer.width(), buffer.height()*2 - FONT_SIZE*3),
Qt::AlignCenter, slideImages->caption(leftTextIndex+1)); Qt::AlignCenter, slideImages->caption(leftTextIndex+1));

View File

@ -115,7 +115,8 @@ public:
QSize slideSize() const; QSize slideSize() const;
/*! /*!
Sets the dimension of each slide (in pixels). Sets the dimension of each slide (in pixels). Do not use this method directly
instead use resize which automatically sets an appropriate slide size.
*/ */
void setSlideSize(QSize size); void setSlideSize(QSize size);