diff --git a/vcl/inc/qt5/QtInstanceTreeView.hxx b/vcl/inc/qt5/QtInstanceTreeView.hxx index a600639ffdbe..fb3ba51aa7f7 100644 --- a/vcl/inc/qt5/QtInstanceTreeView.hxx +++ b/vcl/inc/qt5/QtInstanceTreeView.hxx @@ -60,7 +60,7 @@ public: virtual void swap(int pos1, int pos2) override; virtual std::vector get_selected_rows() const override; virtual void set_font_color(int pos, const Color& rColor) override; - virtual void scroll_to_row(int row) override; + virtual void scroll_to_row(int nRow) override; virtual bool is_selected(int pos) const override; virtual int get_cursor_index() const override; virtual void set_cursor(int pos) override; diff --git a/vcl/qt5/QtInstanceTreeView.cxx b/vcl/qt5/QtInstanceTreeView.cxx index f318456df1bf..6efb57998898 100644 --- a/vcl/qt5/QtInstanceTreeView.cxx +++ b/vcl/qt5/QtInstanceTreeView.cxx @@ -298,7 +298,11 @@ void QtInstanceTreeView::set_font_color(int, const Color&) assert(false && "Not implemented yet"); } -void QtInstanceTreeView::scroll_to_row(int) { assert(false && "Not implemented yet"); } +void QtInstanceTreeView::scroll_to_row(int nRow) +{ + SolarMutexGuard g; + GetQtInstance().RunInMainThread([&] { m_pTreeView->scrollTo(modelIndex(nRow)); }); +} bool QtInstanceTreeView::is_selected(int) const { @@ -585,9 +589,9 @@ void QtInstanceTreeView::set_font_color(const weld::TreeIter&, const Color&) assert(false && "Not implemented yet"); } -void QtInstanceTreeView::scroll_to_row(const weld::TreeIter&) +void QtInstanceTreeView::scroll_to_row(const weld::TreeIter& rIter) { - assert(false && "Not implemented yet"); + scroll_to_row(rowIndex(rIter)); } bool QtInstanceTreeView::is_selected(const weld::TreeIter&) const