diff --git a/src/Mod/Spreadsheet/Gui/SheetTableView.cpp b/src/Mod/Spreadsheet/Gui/SheetTableView.cpp index dc8b7623c1..e0f26d9be2 100644 --- a/src/Mod/Spreadsheet/Gui/SheetTableView.cpp +++ b/src/Mod/Spreadsheet/Gui/SheetTableView.cpp @@ -56,7 +56,18 @@ using namespace SpreadsheetGui; using namespace Spreadsheet; using namespace App; -namespace sp = std::placeholders; + +void SheetViewHeader::mouseMoveEvent(QMouseEvent* e) +{ + // for some reason QWidget::setCursor() has no effect in QGraphicsView + // therefore we resort to override cursor + const QCursor currentCursor = this->cursor(); + QHeaderView::mouseMoveEvent(e); + const QCursor newerCursor = this->cursor(); + if (newerCursor != currentCursor) { + qApp->setOverrideCursor(newerCursor); + } +} void SheetViewHeader::mouseReleaseEvent(QMouseEvent* event) { diff --git a/src/Mod/Spreadsheet/Gui/SheetTableView.h b/src/Mod/Spreadsheet/Gui/SheetTableView.h index e63af97da9..078b0aa61f 100644 --- a/src/Mod/Spreadsheet/Gui/SheetTableView.h +++ b/src/Mod/Spreadsheet/Gui/SheetTableView.h @@ -47,6 +47,7 @@ Q_SIGNALS: void resizeFinished(); protected: + void mouseMoveEvent(QMouseEvent* e) override; void mouseReleaseEvent(QMouseEvent* event) override; bool viewportEvent(QEvent* e) override;