From 955ded1864d3281ccdf00de4a80810400b989404 Mon Sep 17 00:00:00 2001 From: Peter Penz Date: Fri, 18 Dec 2009 16:18:48 +0000 Subject: [PATCH] I did not recognize when refactoring the tooltip class that no filename is shown anymore. This is fixed now :-) BUG: 219082 svn path=/trunk/KDE/kdebase/apps/; revision=1063470 --- src/tooltips/tooltipmanager.cpp | 28 +++++++++++++++++++++++++++- 1 file changed, 27 insertions(+), 1 deletion(-) diff --git a/src/tooltips/tooltipmanager.cpp b/src/tooltips/tooltipmanager.cpp index cceda5305..ae088786c 100644 --- a/src/tooltips/tooltipmanager.cpp +++ b/src/tooltips/tooltipmanager.cpp @@ -24,6 +24,7 @@ #include #include +#include #include "panels/information/kmetadatawidget.h" #include "tooltips/ktooltip.h" @@ -35,6 +36,7 @@ #include #include #include +#include ToolTipManager::ToolTipManager(QAbstractItemView* parent, DolphinSortFilterProxyModel* model) : @@ -243,20 +245,44 @@ QWidget* ToolTipManager::createTipContent(const QPixmap& pixmap) const { QWidget* tipContent = new QWidget(); + // add pixmap QLabel* pixmapLabel = new QLabel(tipContent); pixmapLabel->setPixmap(pixmap); pixmapLabel->setFixedSize(pixmap.size()); + // add item name + QLabel* nameLabel = new QLabel(tipContent); + nameLabel->setText(m_item.name()); + nameLabel->setWordWrap(true); + QFont font = nameLabel->font(); + font.setBold(true); + nameLabel->setFont(font); + nameLabel->setAlignment(Qt::AlignHCenter); + nameLabel->setSizePolicy(QSizePolicy::Expanding, QSizePolicy::Fixed); + + // add meta data KMetaDataWidget* metaDataWidget = new KMetaDataWidget(tipContent); metaDataWidget->setForegroundRole(QPalette::ToolTipText); metaDataWidget->setItem(m_item); metaDataWidget->setSizePolicy(QSizePolicy::Fixed, QSizePolicy::Fixed); metaDataWidget->setReadOnly(true); + // the stretchwidget allows the metadata widget to be top aligned and fills + // the remaining vertical space + QWidget* stretchWidget = new QWidget(tipContent); + stretchWidget->setSizePolicy(QSizePolicy::Preferred, QSizePolicy::MinimumExpanding); + + QWidget* textContainer = new QWidget(tipContent); + QVBoxLayout* textLayout = new QVBoxLayout(textContainer); + textLayout->addWidget(nameLabel); + textLayout->addWidget(new KSeparator()); + textLayout->addWidget(metaDataWidget); + textLayout->addWidget(stretchWidget); + QHBoxLayout* tipLayout = new QHBoxLayout(tipContent); tipLayout->setMargin(0); tipLayout->addWidget(pixmapLabel); - tipLayout->addWidget(metaDataWidget); + tipLayout->addWidget(textContainer); return tipContent; } -- 2.47.3