From 890f33d5b94014c08946568a4113cee88cf31824 Mon Sep 17 00:00:00 2001 From: Tobias Schmidt <tobias.schmidt@unibas.ch> Date: Wed, 3 Jul 2013 16:49:46 +0200 Subject: [PATCH] fix for increasingly slower addition of gfx ent (BZDNG-269) when adding a gfx entity to the scene using scene.Add(), the time it takes to add it is growing quadratically with the number of entities in the scene (only in gui mode), which is caused by resizing of the table in the sequence viewer. --- modules/gui/src/sequence_viewer/sequence_table_view.cc | 8 ++++++++ modules/gui/src/sequence_viewer/sequence_table_view.hh | 3 ++- 2 files changed, 10 insertions(+), 1 deletion(-) diff --git a/modules/gui/src/sequence_viewer/sequence_table_view.cc b/modules/gui/src/sequence_viewer/sequence_table_view.cc index 68eb7d2d8..9a7020ff9 100644 --- a/modules/gui/src/sequence_viewer/sequence_table_view.cc +++ b/modules/gui/src/sequence_viewer/sequence_table_view.cc @@ -476,6 +476,14 @@ void SequenceTableView::keyPressEvent(QKeyEvent* event) } } +int SequenceTableView::sizeHintForColumn(int column) const { + return this->fontMetrics().width('W'); +} + +int SequenceTableView::sizeHintForRow(int row) const { + return this->fontMetrics().height(); +} + SequenceTableView::~SequenceTableView(){} }} diff --git a/modules/gui/src/sequence_viewer/sequence_table_view.hh b/modules/gui/src/sequence_viewer/sequence_table_view.hh index 37d9dac82..24c743b64 100644 --- a/modules/gui/src/sequence_viewer/sequence_table_view.hh +++ b/modules/gui/src/sequence_viewer/sequence_table_view.hh @@ -64,6 +64,8 @@ protected: virtual void keyPressEvent(QKeyEvent* event); virtual QModelIndex moveCursor(CursorAction cursorAction, Qt::KeyboardModifiers modifiers); void scrollTo (const QModelIndex & index, ScrollHint hint = EnsureVisible); + virtual int sizeHintForColumn(int column) const; + virtual int sizeHintForRow(int row) const; private slots: void InitStaticColumn(); @@ -73,7 +75,6 @@ private slots: void ResizeHeight(int index, int, int size); private: - std::pair<int, int> GetSimpleSelection(int row); QTableView* static_column_; QTableView* static_row_; -- GitLab