┌   ┐
54
└   ┘

summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorPeter Penz <[email protected]>2008-10-22 20:52:45 +0000
committerPeter Penz <[email protected]>2008-10-22 20:52:45 +0000
commitc916e5ff2734ad2ba5ea0b08b0bd6d6a5b8d6a51 (patch)
tree7ddcd31c8e95c6f37fcc17ab99f04b48cc71ff14 /src
parentcb928888f7e8b0450fc8c4cf0dd4f5ea3c46eb42 (diff)
Don't draw a frame for previews in tooltips by code duplication: Now we had 3 different frame types in Dolphin (frames from KFilePreviewGenerator, no frame in the Information Panel and an outdated frame by code duplication from the old file preview generator).
Until we find a nice way to make the code for drawing frames in KFilePreviewGenerator public, better don't draw any frame at all. svn path=/trunk/KDE/kdebase/apps/; revision=874942
Diffstat (limited to 'src')
-rw-r--r--src/tooltipmanager.cpp50
1 files changed, 3 insertions, 47 deletions
diff --git a/src/tooltipmanager.cpp b/src/tooltipmanager.cpp
index 3caff4ae1..d222175e0 100644
--- a/src/tooltipmanager.cpp
+++ b/src/tooltipmanager.cpp
@@ -272,59 +272,15 @@ void ToolTipManager::setPreviewPix(const KFileItem& item,
return;
}
- QPixmap icon = pixmap;
- // only paint borders if the pixmap is opaque
- if (!icon.hasAlphaChannel()) {
- // TODO: Make code from IconManager for drawing a border accessible for
- // other classes (the following code has been adapted from IconManager).
- // The frame is painted on top of the pixmap, this is needed to keep
- // the text preview visually nice (the previewer adds ugly borders).
- QPainter painter;
- // make a buffer pixmap, tends to crash when 'icon' is directly painted ...
- QPixmap framedIcon(icon.size().width(), pixmap.size().height());
- framedIcon.fill();
- const int width = framedIcon.width() - 1;
- const int height = framedIcon.height() - 1;
-
- // draw the pixmap
- painter.begin(&framedIcon);
- painter.drawPixmap(0,0, icon);
-
- // draw the frame
- painter.setRenderHint(QPainter::Antialiasing, false);
- painter.setPen(QColor(0, 0, 0));
- painter.drawRect(0, 0, width - 0, height - 1);
- painter.drawRect(1, 1, width - 2, height - 2);
- painter.setPen(QColor(255, 255, 255));
- painter.drawRect(2, 2, width - 4, height - 4);
-
- painter.end();
- icon = framedIcon;
-
- // provide an alpha channel for the frame
- QPixmap alphaChannel(icon.size());
- alphaChannel.fill();
-
- QPainter alphaPainter(&alphaChannel);
- alphaPainter.setBrush(Qt::NoBrush);
- alphaPainter.setRenderHint(QPainter::Antialiasing, false);
- alphaPainter.setPen(QColor(32, 32, 32));
- alphaPainter.drawRect(0, 0, width, height);
- alphaPainter.setPen(QColor(64, 64, 64));
- alphaPainter.drawRect(1, 1, width - 2, height - 2);
-
- icon.setAlphaChannel(alphaChannel);
- }
-
if (m_previewIsLate) {
// always use the maximal width
- QPixmap paddedImage(QSize(PREVIEW_WIDTH, icon.height()));
+ QPixmap paddedImage(QSize(PREVIEW_WIDTH, pixmap.height()));
paddedImage.fill(Qt::transparent);
QPainter painter(&paddedImage);
- painter.drawPixmap((PREVIEW_WIDTH - icon.width()) / 2, 0, icon);
+ painter.drawPixmap((PREVIEW_WIDTH - pixmap.width()) / 2, 0, pixmap);
m_pix = paddedImage;
} else {
- m_pix = icon;
+ m_pix = pixmap;
}
m_preview = true;
m_generatingPreview = false;