X-Git-Url: https://cloud.milkyroute.net/gitweb/dolphin.git/blobdiff_plain/13b36768575964d9009e94c38cd37db61d823632..3da73183f86e9086a4e0611b08a7d7779bb5be49:/src/dolphinview.cpp diff --git a/src/dolphinview.cpp b/src/dolphinview.cpp index 64722e1e2..8360f037d 100644 --- a/src/dolphinview.cpp +++ b/src/dolphinview.cpp @@ -20,14 +20,13 @@ #include "dolphinview.h" -#include -#include -#include -#include -#include -#include -#include -#include +#include +#include +#include +#include +#include +#include +#include #include #include @@ -158,6 +157,10 @@ DolphinView::DolphinView(DolphinMainWindow* mainWindow, this, SLOT(emitSelectionChangedSignal())); connect(m_controller, SIGNAL(activated()), this, SLOT(requestActivation())); + connect(m_controller, SIGNAL(itemEntered(const QModelIndex&)), + this, SLOT(showHoverInformation(const QModelIndex&))); + connect(m_controller, SIGNAL(viewportEntered()), + this, SLOT(clearHoverInformation())); createView(); @@ -461,6 +464,7 @@ void DolphinView::setAdditionalInfo(KFileItemDelegate::AdditionalInformation inf ViewProperties props(m_urlNavigator->url()); props.setAdditionalInfo(info); + m_controller->setShowAdditionalInfo(info != KFileItemDelegate::NoInformation); m_fileItemDelegate->setAdditionalInformation(info); emit additionalInfoChanged(info); @@ -618,6 +622,11 @@ void DolphinView::reload() startDirLister(url, true); } +void DolphinView::refresh() +{ + createView(); +} + void DolphinView::mouseReleaseEvent(QMouseEvent* event) { QWidget::mouseReleaseEvent(event); @@ -697,8 +706,8 @@ void DolphinView::changeDirectory(const KUrl& url) KFileItemDelegate::AdditionalInformation info = props.additionalInfo(); if (info != m_fileItemDelegate->additionalInformation()) { + m_controller->setShowAdditionalInfo(info != KFileItemDelegate::NoInformation); m_fileItemDelegate->setAdditionalInformation(info); - emit additionalInfoChanged(info); } @@ -1174,6 +1183,25 @@ void DolphinView::updateCutItems() applyCutItemEffect(); } +void DolphinView::showHoverInformation(const QModelIndex& index) +{ + if (hasSelection()) { + return; + } + + const KFileItem* item = fileItem(index); + if (item != 0) { + m_statusBar->setMessage(item->getStatusBarInfo(), DolphinStatusBar::Default); + emit requestItemInfo(item->url()); + } +} + +void DolphinView::clearHoverInformation() +{ + m_statusBar->clear(); +} + + void DolphinView::createView() { // delete current view