summaryrefslogtreecommitdiffstats
path: root/filestreewidget.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'filestreewidget.cpp')
-rw-r--r--filestreewidget.cpp104
1 files changed, 53 insertions, 51 deletions
diff --git a/filestreewidget.cpp b/filestreewidget.cpp
index dad3724..e5ab111 100644
--- a/filestreewidget.cpp
+++ b/filestreewidget.cpp
@@ -289,71 +289,73 @@ void FilesTreeView::contextMenuEvent(QContextMenuEvent *event){
}
bool FilesTreeView::event(QEvent *e){
- QSettings s;
- if(!s.value("ui/hoverpics").toBool()){
- return true;
- }
- QModelIndex curIdx;
QHoverEvent *hEvent = static_cast<QHoverEvent*>(e);
- if(!hEvent){
- return true;
- }
- QPoint hotSpot(hEvent->pos().x(), hEvent->pos().y() - SmGlobals::instance()->cursorOffset());
- QPoint globalPos = mapToGlobal(hotSpot);
- QPoint where = globalPos + QPoint(30, 0);
-
- curIdx = indexAt(hotSpot);
- if((e->type() == QEvent::HoverEnter) || (e->type() == QEvent::HoverMove)){
- if(!curIdx.isValid()){
- return true;
- }
- if(!curIdx.column() == 0){
- mCurHover = QModelIndex();
- mHoverWin->setVisible(false);
- return true;
- }
- if(!curIdx.isValid()){
- return true;
- }
- QVariant fileType = curIdx.data(FilesTreeModel::FileTypeRole);
- if(!fileType.isValid()){
- mHoverWin->setVisible(false);
+ if((hEvent->type() == QEvent::HoverEnter) || (hEvent->type() == QEvent::HoverLeave) || (hEvent->type() == QEvent::HoverMove)){
+ if(!mHover){
return true;
}
- if(fileType.toInt() == FilesTreeModel::Movie){
- mHoverWin->setVisible(false);
+ QModelIndex curIdx;
+
+ if(!hEvent){
return true;
}
- }
+ QPoint hotSpot(hEvent->pos().x(), hEvent->pos().y() - SmGlobals::instance()->cursorOffset());
+ QPoint globalPos = mapToGlobal(hotSpot);
+ QPoint where = globalPos + QPoint(30, 0);
- if(e->type() == QEvent::HoverEnter){
- mCurHover = curIdx;
- QPixmap pm = QPixmap(curIdx.data(FilesTreeModel::FullPathRole).toString());
- mHoverWin->setPixmap(pm);
- mHoverWin->setPos(where);
- mHoverWin->setVisible(true);
- return true;
- }
- if(e->type() == QEvent::HoverMove){
- if(mHoverWin->pixmapHeight()){
- where = QPoint(where.x(), where.y() - mHoverWin->pixmapHeight() / 2);
+ curIdx = indexAt(hotSpot);
+ if((e->type() == QEvent::HoverEnter) || (e->type() == QEvent::HoverMove)){
+ if(!curIdx.isValid()){
+ return true;
+ }
+ if(!curIdx.column() == 0){
+ mCurHover = QModelIndex();
+ mHoverWin->setVisible(false);
+ return true;
+ }
+ if(!curIdx.isValid()){
+ return true;
+ }
+ QVariant fileType = curIdx.data(FilesTreeModel::FileTypeRole);
+ if(!fileType.isValid()){
+ mHoverWin->setVisible(false);
+ return true;
+ }
+ if(fileType.toInt() == FilesTreeModel::Movie){
+ mHoverWin->setVisible(false);
+ return true;
+ }
}
- if(curIdx != mCurHover){
+
+ if(e->type() == QEvent::HoverEnter){
mCurHover = curIdx;
- mHoverWin->setPixmap(QPixmap(curIdx.data(FilesTreeModel::FullPathRole).toString()));
- mHoverWin->setVisible(false);
+ QPixmap pm = QPixmap(curIdx.data(FilesTreeModel::FullPathRole).toString());
+ mHoverWin->setPixmap(pm);
mHoverWin->setPos(where);
mHoverWin->setVisible(true);
return true;
- }else{
- mHoverWin->setPos(where);
+ }
+ if(e->type() == QEvent::HoverMove){
+ if(mHoverWin->pixmapHeight()){
+ where = QPoint(where.x(), where.y() - mHoverWin->pixmapHeight() / 2);
+ }
+ if(curIdx != mCurHover){
+ mCurHover = curIdx;
+ mHoverWin->setPixmap(QPixmap(curIdx.data(FilesTreeModel::FullPathRole).toString()));
+ mHoverWin->setVisible(false);
+ mHoverWin->setPos(where);
+ mHoverWin->setVisible(true);
+ return true;
+ }else{
+ mHoverWin->setPos(where);
+ return true;
+ }
+ }
+ if(e->type() == QEvent::HoverLeave){
+ mHoverWin->setVisible(false);
return true;
}
}
- if(e->type() == QEvent::HoverLeave){
- mHoverWin->setVisible(false);
- return true;
- }
return QTreeView::event(e);
}