diff options
author | Jere Tuliniemi <jere.tuliniemi@qt.io> | 2019-02-14 17:32:08 +0200 |
---|---|---|
committer | Jere Tuliniemi <jere.tuliniemi@qt.io> | 2019-02-25 11:29:58 +0000 |
commit | 1e22f63afd54eadca25347c93afb9e0ccfe64705 (patch) | |
tree | ae939ca58c3417117630bec9506513cae412c509 /src/Authoring/Studio/Render/Q3DSTranslation.h | |
parent | e0fab988306bd1848d3b76e0877ce04837e8c45e (diff) |
Fix delay when updating widget properties
The delay is fixed by calculating the global position, rotation and
scale without the use of a global matrix from the runtime. Bounding
boxes are also now hidden upon deselection.
Bounding boxes are now siblings of the selected objects so that parent
scale now skews the rotation of the boxes properly.
Task-number: QT3DS-2908
Task-number: QT3DS-2910
Task-number: QT3DS-3043
Change-Id: I51b506b8d427031e6589dfa621b471796ed64bc9
Reviewed-by: Miikka Heikkinen <miikka.heikkinen@qt.io>
Diffstat (limited to 'src/Authoring/Studio/Render/Q3DSTranslation.h')
-rw-r--r-- | src/Authoring/Studio/Render/Q3DSTranslation.h | 7 |
1 files changed, 3 insertions, 4 deletions
diff --git a/src/Authoring/Studio/Render/Q3DSTranslation.h b/src/Authoring/Studio/Render/Q3DSTranslation.h index dd4d880b..061aa0b0 100644 --- a/src/Authoring/Studio/Render/Q3DSTranslation.h +++ b/src/Authoring/Studio/Render/Q3DSTranslation.h @@ -85,10 +85,8 @@ private: QByteArray getInstanceObjectId(qt3dsdm::Qt3DSDMInstanceHandle instance); Q3DSLayerNode *layerForNode(Q3DSGraphObject *node); Q3DSCameraNode *cameraForNode(Q3DSGraphObject *node, bool ignoreSelfCamera = false); - void updateVisualAids(); void updateForegroundLayerProperties(); - void updateSelectionWidgetProperties(); - void createSelectionWidget(); + void createManipulationWidget(); void enableManipulationWidget(); void disableVisualAids(); void enableVisualAids(); @@ -216,7 +214,7 @@ private: long m_toolMode = STUDIO_TOOLMODE_MOVE; Q3DSGraphObject *m_pickedWidget = nullptr; QColor m_pickedWidgetColor; - EditCameraTypes m_oldCameraType = EditCameraTypes::SceneCamera; + EditCameraTypes m_cameraType = EditCameraTypes::SceneCamera; Q3DSManipulationWidget m_manipulationWidget; Q3DSSelectionWidget m_selectionWidget; @@ -268,6 +266,7 @@ public: void enableGradient(); void selectObject(qt3dsdm::Qt3DSDMInstanceHandle instance); void unselectObject(); + void updateWidgetProperties(); void releaseTranslator(Q3DSGraphObjectTranslator *translator); void clearDirtySet(); void markDirty(qt3dsdm::Qt3DSDMInstanceHandle instance); |