summaryrefslogtreecommitdiffstats
path: root/src/Authoring/Studio/Palettes/Timeline/Bindings/Qt3DSDMTimelineItemBinding.cpp
Commit message (Collapse)AuthorAgeFilesLines
* Switch to qt3dstudio/ogl-runtime submodulePasi Keränen2019-06-101-1164/+0
| | | | | | | | Module config change so that ogl-runtime builds from submodule. Task-number: QT3DS-3600 Change-Id: Ib22fda6aed1cf9336f15b79256b5f9db8774159f Reviewed-by: Pasi Keränen <pasi.keranen@qt.io>
* Some CString to QString conversionsMahmoud Badri2019-05-231-1/+1
| | | | | | | | | plus some tweaks. Change-Id: I714c9fea4afcfd3f15380c2e74c11fba515ae107 Reviewed-by: Miikka Heikkinen <miikka.heikkinen@qt.io> Reviewed-by: Antti Määttä <antti.maatta@qt.io> Reviewed-by: Tomi Korpipää <tomi.korpipaa@qt.io>
* Some Doc class clean ups (non exhaustive)Mahmoud Badri2019-05-181-1/+1
| | | | | | Change-Id: I98554bdb805df0e2418f44f8c9d6e0040b160f8b Reviewed-by: Miikka Heikkinen <miikka.heikkinen@qt.io> Reviewed-by: Antti Määttä <antti.maatta@qt.io>
* Disallow modifying default material by dragging things on itMiikka Heikkinen2019-04-021-0/+6
| | | | | | | | Task-number: QT3DS-3245 Change-Id: I0ef73c495522311527fce221fb996bdcd953353e Reviewed-by: Jere Tuliniemi <jere.tuliniemi@qt.io> Reviewed-by: Mahmoud Badri <mahmoud.badri@qt.io> Reviewed-by: Tomi Korpipää <tomi.korpipaa@qt.io>
* Fix master slide item grouping issuesv2.3.0-rc2Miikka Heikkinen2019-03-261-0/+6
| | | | | | | | | | | | Disallow grouping mixed non-master and master items. If master items are grouped, the resulting group is a master group. Disallow dragging master items under non-master items in some edge cases that still allowed it. Change-Id: Id4e18405526fb5b0f9ed17bc29e758101a19875e Fixes: QT3DS-3224 Reviewed-by: Mahmoud Badri <mahmoud.badri@qt.io> Reviewed-by: Tomi Korpipää <tomi.korpipaa@qt.io>
* Fix issues with material renamingJere Tuliniemi2018-11-301-1/+4
| | | | | | | | | | | | | | | Disable basic material renaming by removing the name property from the inspector, disabling rename from the timeline context menu and disabling double clicking of the basic material in the timeline. Refresh the inspector after rename to fix reverting to previous value. Force a reference update after a rename by emitting assetNameChanged. Task-number: QT3DS-2774 Change-Id: I4c1658ee8a4f206db90c46878e75cc0bb690956b Reviewed-by: Mahmoud Badri <mahmoud.badri@qt.io> Reviewed-by: Miikka Heikkinen <miikka.heikkinen@qt.io>
* Prevent "MaterialContainer" as a user-entered nameJere Tuliniemi2018-11-081-0/+16
| | | | | | | | | This name is only disabled for immediate children of the Scene object. Task-number: QT3DS-2108 Change-Id: Id57be2f9f8a78ac1ca21ebcc2199cfcaae8851ee Reviewed-by: Miikka Heikkinen <miikka.heikkinen@qt.io> Reviewed-by: Mahmoud Badri <mahmoud.badri@qt.io>
* Add Make Animatable to ref material timeline menuJere Tuliniemi2018-10-191-0/+17
| | | | | | | | | | This button automatically changes the reference material to a standard or custom material with the same properties to allow animating it. Task-number: QT3DS-2307 Change-Id: Ia3874c05b7d920c6c901455fb2b0230a559a9e2e Reviewed-by: Mahmoud Badri <mahmoud.badri@qt.io> Reviewed-by: Miikka Heikkinen <miikka.heikkinen@qt.io>
* Change many CStrings to QStringMahmoud Badri2018-10-101-10/+8
| | | | | | | | | | | | | | - A lot of CString, CFilePath, and Qt3DSFile occureneces and their relevant code has been removed to save the costy back and forth conversion between CString and QString. - Renovated several classes as part of the process (Preferences classes, recent items, build configuration, probably few more) - Assorted tweaks here and there Task-number: QT3DS-1899 Task-number: QT3DS-2455 Change-Id: Ibbf4c3b7ab0b9fe6e19d8aed822fa29d43b99086 Reviewed-by: Miikka Heikkinen <miikka.heikkinen@qt.io>
* Correct loading initial presentationMahmoud Badri2018-10-041-3/+0
| | | | | | | | | Also removed some unused code and minor tweaks. Task-number: QT3DS-2447 Change-Id: I9405879dd2b04df6bdfd6147fbab3e2ede11d4ef Reviewed-by: Miikka Heikkinen <miikka.heikkinen@qt.io> Reviewed-by: Tomi Korpipää <tomi.korpipaa@qt.io>
* Change pasting logicMiikka Heikkinen2018-09-261-1/+1
| | | | | | | | | Paste should paste as a sibling of the selected object rather than as a child, if possible. Task-number: QT3DS-2352 Change-Id: I2275a1e36feb239980a5c391ecd061acc3ccf0e1 Reviewed-by: Tomi Korpipää <tomi.korpipaa@qt.io>
* Visualize in-use sub-presentations on the timeline rowsMahmoud Badri2018-08-221-0/+22
| | | | | | | | | | | The left-most part of a timeline row is colored for rows that have a sub-presentation in-use. If a collapsed row has a descendant with a sub-presentation, it is highlighted in a different shade of the main color. Task-number: QT3DS-2100 Change-Id: Id26fb554050e5df8c635e71266ae52665d0ad836 Reviewed-by: Tomi Korpipää <tomi.korpipaa@qt.io> Reviewed-by: Miikka Heikkinen <miikka.heikkinen@qt.io>
* Prohibit setting duplicate or empty object name in inspectorMiikka Heikkinen2018-08-091-8/+2
| | | | | | | | | | Changing object name from inspector now does standard automatic rename in case the parent object already has a child with the new name. Task-number: QT3DS-2050 Change-Id: Iba33d0528f7e13db83ae4db2c068042e842d65e5 Reviewed-by: Mahmoud Badri <mahmoud.badri@qt.io> Reviewed-by: Tomi Korpipää <tomi.korpipaa@qt.io>
* Implement "Add Layer" selection in timeline tree context menuJanne Kangas2018-08-011-0/+18
| | | | | | | | | | | | Context menu for Scene element allows adding layer (in addition to button at the timeline widget bottom. Task-ID: QT3DS-1992 Change-Id: Iaf3f02cc346dffee741c306162295768aa947719 Reviewed-by: Mahmoud Badri <mahmoud.badri@qt.io> Reviewed-by: Janne Koskinen <janne.p.koskinen@qt.io> Reviewed-by: Antti Määttä <antti.maatta@qt.io>
* Enable object visibility control with Boolean DatainputJanne Kangas2018-07-311-0/+19
| | | | | | | | | | | | | Add "Visible" toggle to inspector panel with associated datainput selector, to allow choosing boolean type datainput as controller for "eyeball" property. Visibility control is indicated in both timeline and inspector panel. Change-Id: Id419c416323d0c71437599203dd9aab63df0134b Task-Id: QT3DS-2009 Reviewed-by: Mahmoud Badri <mahmoud.badri@qt.io> Reviewed-by: Janne Koskinen <janne.p.koskinen@qt.io> Reviewed-by: Antti Määttä <antti.maatta@qt.io>
* Minor code cleanupMiikka Heikkinen2018-07-051-30/+0
| | | | | | | | | | Remove unnecessary IDataModelListener usage from Qt3DSDMTimelineItemBinding. Change-Id: Ie33b128ba28a1e8664c94239cbd489e6f4b32b3d Reviewed-by: Mahmoud Badri <mahmoud.badri@qt.io> Reviewed-by: Jere Tuliniemi <jere.tuliniemi@qt.io> Reviewed-by: Miikka Heikkinen <miikka.heikkinen@qt.io>
* Add support for grouping and ungrouping selected itemsMiikka Heikkinen2018-06-291-1/+25
| | | | | | | | | | | | Ctrl-G will group 2 or more selected items under a newly created group item. Same shortcut when an single group is selected will move the group's children up one level and delete the group. Task-number: QT3DS-1283 Change-Id: Ife0fa6f0c35a4d37f7e76c7233e79c9f38d98a02 Reviewed-by: Tomi Korpipää <tomi.korpipaa@qt.io> Reviewed-by: Mahmoud Badri <mahmoud.badri@qt.io> Reviewed-by: Miikka Heikkinen <miikka.heikkinen@qt.io>
* Consolidate stdafx headers into Qt3DSCommonPrecompile.hMiikka Heikkinen2018-06-121-8/+1
| | | | | | | | | Task-number: QT3DS-256 Change-Id: I1ab44e93bf505f68690114f2a2c5f1a012e02af1 Reviewed-by: Mahmoud Badri <mahmoud.badri@qt.io> Reviewed-by: Antti Määttä <antti.maatta@qt.io> Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org> Reviewed-by: Miikka Heikkinen <miikka.heikkinen@qt.io>
* Clean up old controlsMiikka Heikkinen2018-06-011-1/+1
| | | | | | | | | | Remove unused controls from Authoring/Studio/Controls and some ancillary files elsewhere. Task-number: QT3DS-1828 Change-Id: I6461112a02cc24ef0c169b3a99de26b034065040 Reviewed-by: Mahmoud Badri <mahmoud.badri@qt.io> Reviewed-by: Tomi Korpipää <tomi.korpipaa@qt.io>
* Remove old timeline codeMiikka Heikkinen2018-05-311-246/+5
| | | | | | | | | | | | Remove unused files and unused functionality from remaining files. Moved some still used functionality to better places. It is likely that a lot of unnecessary code still remains. Task-number: QT3DS-1828 Change-Id: I199f67e7d34acbc4d707b75502a4b54e0f9a7d02 Reviewed-by: Kaj Grönholm <kaj.gronholm@qt.io> Reviewed-by: Mahmoud Badri <mahmoud.badri@qt.io> Reviewed-by: Tomi Korpipää <tomi.korpipaa@qt.io>
* Make moving rows asynchronousMiikka Heikkinen2018-05-251-36/+14
| | | | | | | | | | | | | | | | | | | | 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>
* Remove obsolete WidgetControlControlListenerTomi Korpipaa2018-05-221-5/+0
| | | | | | | Task-number: QT3DS-361 Change-Id: Ia07296afbda8ea8c70ff6019b0da6dac1234edd7 Reviewed-by: Miikka Heikkinen <miikka.heikkinen@qt.io> Reviewed-by: Mahmoud Badri <mahmoud.badri@qt.io>
* Handle name property update for objectsMiikka Heikkinen2018-05-151-0/+4
| | | | | | | Task-number: QT3DS-1654 Change-Id: Iaced4bd5dd8e1b1333d3df3b83b09ea79caa9d5f Reviewed-by: Mahmoud Badri <mahmoud.badri@qt.io> Reviewed-by: Tomi Korpipää <tomi.korpipaa@qt.io>
* Rename object if drag-move target parent has object with same nameMiikka Heikkinen2018-05-151-1/+2
| | | | | | | | Task-number: QT3DS-1549 Change-Id: Ic249473bcb5d3c4cc9b06958b47e9a0bb3e5de2d Reviewed-by: Kaj Grönholm <kaj.gronholm@qt.io> Reviewed-by: Mahmoud Badri <mahmoud.badri@qt.io> Reviewed-by: Tomi Korpipää <tomi.korpipaa@qt.io>
* Revert alias duplicateTomi Korpipaa2018-05-141-2/+3
| | | | | | | | Also prevent user from adding Aliases via the Basic objects palette. Task-number: QT3DS-1649 Change-Id: Ie3c7d8fee3f5fb875f78ee000956443295cb973b Reviewed-by: Miikka Heikkinen <miikka.heikkinen@qt.io>
* Optimize iterating through child objectsMiikka Heikkinen2018-05-141-11/+30
| | | | | | | | | | | | | | | GetAssetChildrenInTimeParent was getting called unnecessarily much, as it was called every time GetChildrenCount or GetChild was called. According to profiling it was responsible for vast majority of the time spent when changing a slide. Optimized various loops that iterate through object's children to only call this function once. Task-number: QT3DS-1601 Change-Id: Ia006acb76bd818c390a36f6fe9f1656660974c0e Reviewed-by: Antti Määttä <antti.maatta@qt.io> Reviewed-by: Jere Tuliniemi <jere.tuliniemi@qt.io> Reviewed-by: Kaj Grönholm <kaj.gronholm@qt.io> Reviewed-by: Tomi Korpipää <tomi.korpipaa@qt.io>
* Prevent alias duplicating LayersTomi Korpipaa2018-05-111-1/+1
| | | | | | Task-number: QT3DS-1604 Change-Id: I5c7b5bd888b25e3e6c2a74a0558561c4c383be10 Reviewed-by: Miikka Heikkinen <miikka.heikkinen@qt.io>
* Fix crash when adding objects to master slideMiikka Heikkinen2018-05-111-1/+5
| | | | | | | | | | | | When the current slide has less objects than some other slide, which is always the case with master slide, adding objects could cause array index go out of bound in index conversion stage. Task-number: QT3DS-1580 Change-Id: I4513f04fca990892b6f9aab38b28461c526415dd Reviewed-by: Mahmoud Badri <mahmoud.badri@qt.io> Reviewed-by: Tomi Korpipää <tomi.korpipaa@qt.io> Reviewed-by: Kaj Grönholm <kaj.gronholm@qt.io>
* Fix adding objects under master slide objects in more than one slideMiikka Heikkinen2018-05-091-0/+36
| | | | | | | | | | Asset graph indexes are global and not directly usable in local time contexts. Added a conversion function to fix the index. Task-number: QT3DS-1586 Change-Id: Ia9f28074018a3fa414fb357d4584ec4a8b6875cb Reviewed-by: Mahmoud Badri <mahmoud.badri@qt.io> Reviewed-by: Tomi Korpipää <tomi.korpipaa@qt.io>
* Replace Ctrl+D duplicate with aliasTomi Korpipaa2018-05-041-1/+1
| | | | | | | | Replace deep copy duplicate with alias duplicate. Task-number: QT3DS-1525 Change-Id: I98eeaf3003e2f6ebc6206b52a85ed8a44363dcd8 Reviewed-by: Miikka Heikkinen <miikka.heikkinen@qt.io>
* Rewrite the logic for adding/removing/moving rowsMahmoud Ali2018-04-301-0/+18
| | | | | | | | | | This fixes several issues and improve the timeline performance. Task-number: QT3DS-1496 Task-number: QT3DS-1493 Task-number: QT3DS-1476 Change-Id: I1e838d0107317abd6dc7267a8eb82fa56e076390 Reviewed-by: Tomi Korpipää <tomi.korpipaa@qt.io>
* Merge remote-tracking branch 'origin/master' into wip/timelineMiikka Heikkinen2018-04-231-19/+16
|\ | | | | | | Change-Id: I58176ea495831aee6eb35b9057bdecb6f3a6e1fe
| * Force object name to unique on name changeJanne Kangas2018-04-191-19/+16
| | | | | | | | | | | | | | | | | | | | Do not ask for user confirmation, just show a notification that the name was made unique. Allowing non-unique object names breaks Aliases and other elementpath references. Change-Id: Id35c6bb42c0a1c9982343005af7d5f218401cdda Task-Id: QT3DS-1463 Reviewed-by: Miikka Heikkinen <miikka.heikkinen@qt.io>
* | Merge branch 'master' into wip/timelineMiikka Heikkinen2018-04-091-9/+2
|\| | | | | | | | | | | | | This merge loses datainput functionality in timeline toolbar. It needs to be readded in a separate commit. Change-Id: I92ca36e87718e9451b589465eb7ebbd801932820
| * Remove old DataInput proto codeJanne Kangas2018-02-231-10/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Reverts some (not all) changes in commits: 935d8a983db25978b3e8f0dbe67323684ce4dd96 e3c6e9d38a5b6f729093fc0349784fa475af8f62 337aaa465ac78ac72ca748f0c2d4c3b6257829b8 0707c13c34653066c89d5b25abe60a779650ee27 c1fc5d13e3668a117b4f8470ecb87b77b145efb8 Task-ID: QT3DS-865 Change-Id: I6f2ce77b12e2930aee1ea3b62b34aabe10bc6d00 Reviewed-by: Tomi Korpipää <tomi.korpipaa@qt.io> Reviewed-by: Miikka Heikkinen <miikka.heikkinen@qt.io>
| * Disable 'make component' menu option for component elementsMiikka Heikkinen2018-02-161-0/+1
| | | | | | | | | | | | | | | | | | | | Making a component out of a component is redundant, so let's disable the option to do so. Task-number: QT3DS-1072 Change-Id: Ifdfba8d65b24fb9917d0f6d54dca5b8b1f33584e Reviewed-by: Marianne Yrjänä <marianne.yrjana@qt.io> Reviewed-by: Tomi Korpipää <tomi.korpipaa@qt.io>
* | Continue timeline workMahmoud Badri2018-03-191-25/+16
| | | | | | | | | | | | | | | | Split timeline and tree views, implement layer locking, filter rows, start connection to the app data mode. Task-number: QT3DS-1262 Change-Id: I54fb659e5c4f1103b8cf792b04bcaf012779cf1a Reviewed-by: Tomi Korpipää <tomi.korpipaa@qt.io>
* | Implement graphics view based timeline basicsMahmoud Badri2018-02-281-2/+0
| | | | | | | | | | | | | | | | Add rows, reorder rows, keyframes Task-number: QT3DS-927 Change-Id: Iaff7354fd5d5b8feaa86364d1b545a48cc3c0376 Reviewed-by: Miikka Heikkinen <miikka.heikkinen@qt.io>
* | Merge branch 'master' into wip/timelineMiikka Heikkinen2018-02-271-7/+16
|\| | | | | | | Change-Id: If6e06be72a24372eef95339f55ffda24888eebc3
| * [DataInput] Add time control functionality and UI controlsJanne Kangas2018-02-021-6/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Adds possibility to set DataInput to control playhead in Editor. Time control adjusts scene playback time according to incoming values and timeto/from property values. Also updates selection dialog for binding DataInput to a controlled property. At the moment property control is restricted to Text element. User-visible datainput functionality is still disabled in Editor. Enable timeline control by uncommenting button in TimeLineToolbar.cpp and property control by setting text element textstring controllable="True" in MetaData.xml Task-ID: QT3DS-336 Change-Id: Ic7c687782f1680dc00e87ed74d9cfa6b55badc1b Reviewed-by: Miikka Heikkinen <miikka.heikkinen@qt.io>
| * Fix unique name generation for objects after accepting the promptMiikka Heikkinen2018-02-021-1/+1
| | | | | | | | | | | | Task-number: QT3DS-152 Change-Id: I01272e3940d17e175e6c80de3a3e60cab1eba900 Reviewed-by: Tomi Korpipää <tomi.korpipaa@qt.io>
| * [DataInput] Update datainput control list when target is renamedJanne Kangas2018-01-191-2/+11
| | | | | | | | | | | | | | | | | | Update datainput control list when a controlled element changes name. Change-Id: I2c072aafd0850410ab71b4c81bc8e9774e4f5f20 Task-Id: QT3DS-337 Reviewed-by: Miikka Heikkinen <miikka.heikkinen@qt.io>
| * [DataInput] Add UI enablers for linking DataInput and TextJanne Kangas2018-01-191-2/+8
| | | | | | | | | | | | | | | | | | | | | | | | Add popup for text property that allows choosing a datainput in scene to be controller for the property. DataInput toggle icon and other functionality can be enabled by adding 'Controllable="True"' parameter to textstring property in MetaData.xml Task-Id: QT3DS-337 Change-Id: I5ab25566866cb45134d36e025e21e94f98944eaf Reviewed-by: Miikka Heikkinen <miikka.heikkinen@qt.io>
| * Update the visuals of time adjustment dialogsTomi Korpipaa2018-01-151-2/+2
| | | | | | | | | | | | | | Task-number: QT3DS-737 Task-number: QT3DS-738 Change-Id: I3bfcc5182b3b0b60c719efb5ea4f3c6fa86718e6 Reviewed-by: Miikka Heikkinen <miikka.heikkinen@qt.io>
* | Show animated properties in the timeline treeAndras Mantia2017-12-201-5/+15
| | | | | | | | | | | | | | Dynamic adding/removing of the properties is not supported yet. Change-Id: I0171f476a0287d8b682915209cc18e567fe70608 Reviewed-by: Miikka Heikkinen <miikka.heikkinen@qt.io>
* | Separate backend and UI functionality for the timelineAndras Mantia2017-12-191-12/+13
|/ | | | | | | | | | | | The main idea is: - split CTimelineRow and its subclasses to backend and UI classes. C*Row is the backend, C*RowUI is the UI class - when a C*Row class is created, create a corresponding C*RowUI class and link them together - the link is managed by a 3rd party class TimelineUIFactory Change-Id: I958751ef5ee65023aeaad5c7fdf224653665c354 Reviewed-by: Miikka Heikkinen <miikka.heikkinen@qt.io>
* Get rid of obsolete string localization filesTomi Korpipaa2017-12-151-74/+81
| | | | | | | | | Also fix coding style on files touched, as this task is in the codebase cleanup epic. Task-number: QT3DS-69 Change-Id: I4f98523659c817b9f7803cc8ee310b44094b65e4 Reviewed-by: Miikka Heikkinen <miikka.heikkinen@qt.io>
* Rename the rest of the UIC to Qt3DSMäättä Antti2017-10-241-14/+14
| | | | | | Task-number: QT3DS-18 Change-Id: Ia8141980f575565ee7dbfa33422f25f121da5fe1 Reviewed-by: Miikka Heikkinen <miikka.heikkinen@qt.io>
* Rename CUICDM type names to Qt3DSDMMäättä Antti2017-10-241-103/+103
| | | | | | Task-number: QT3DS-18 Change-Id: Ia0ba2bb501f7d66b0088bd568bfad46a678ac078 Reviewed-by: Miikka Heikkinen <miikka.heikkinen@qt.io>
* Rename CUICDMSlideHandle to Qt3DSDMSlideHandleMäättä Antti2017-10-241-6/+6
| | | | | | | Task-number: QT3DS-18 Change-Id: Idc37208a981ab8ab03cc1db31a45ab19e602a5aa Reviewed-by: Tomi Korpipää <tomi.korpipaa@qt.io> Reviewed-by: Miikka Heikkinen <miikka.heikkinen@qt.io>