diff options
author | Miikka Heikkinen <miikka.heikkinen@qt.io> | 2018-05-23 16:42:44 +0300 |
---|---|---|
committer | Miikka Heikkinen <miikka.heikkinen@qt.io> | 2018-05-25 07:52:05 +0000 |
commit | 3a61e4375f630020ed54b660d71cb63f6da50043 (patch) | |
tree | 59e1bdff8db55421cdf1d0b0bb8fe067b96f0fe8 /src/Authoring/Studio/Palettes/Timeline/Bindings/Qt3DSDMTimelineItemBinding.h | |
parent | 4397efee9938fb4e83a78ea301c2fa3947d033ee (diff) |
Make moving rows asynchronous
This is the simplest way to ensure row indices stay in sync with
asset graph indices in cases where multiple children are added
to indices beyond the current child count (e.g. undoing a
multiselection delete/move).
This change also makes multiselection moves quite a bit more
efficient, though in release builds the effect is barely noticeable.
Also optimized a frequently used function getBindingForHandle to
first look for the binding using the m_handlesMap as pretty much
every time, except when called from onAssetCreated, the handle
can be found from m_handlesMap.
Task-number: QT3DS-1758
Change-Id: Ie95aef5f5f54c794db6a5d9c7515314b3182b65e
Reviewed-by: Mahmoud Badri <mahmoud.badri@qt.io>
Reviewed-by: Tomi Korpipää <tomi.korpipaa@qt.io>
Diffstat (limited to 'src/Authoring/Studio/Palettes/Timeline/Bindings/Qt3DSDMTimelineItemBinding.h')
-rw-r--r-- | src/Authoring/Studio/Palettes/Timeline/Bindings/Qt3DSDMTimelineItemBinding.h | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/src/Authoring/Studio/Palettes/Timeline/Bindings/Qt3DSDMTimelineItemBinding.h b/src/Authoring/Studio/Palettes/Timeline/Bindings/Qt3DSDMTimelineItemBinding.h index 7852719f..9d14cc84 100644 --- a/src/Authoring/Studio/Palettes/Timeline/Bindings/Qt3DSDMTimelineItemBinding.h +++ b/src/Authoring/Studio/Palettes/Timeline/Bindings/Qt3DSDMTimelineItemBinding.h @@ -210,7 +210,7 @@ public: virtual qt3dsdm::Qt3DSDMInstanceHandle GetInstance() const; int getAnimatedPropertyIndex(int propertyHandle) const; - int convertIndex(int index, bool isAssetGraphIndex) const; + void getTimeContextIndices(const QSet<int> &children, QMap<int ,int> &indexMap); ITimelineItemProperty *GetOrCreatePropertyBinding(qt3dsdm::Qt3DSDMPropertyHandle inPropertyHandle); ITimelineItemProperty *GetPropertyBinding(qt3dsdm::Qt3DSDMPropertyHandle inPropertyHandle); |