Wander3DSection.qml 16 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474
  1. // Copyright (C) 2021 The Qt Company Ltd.
  2. // SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0-only
  3. import QtQuick 2.15
  4. import QtQuick.Layouts 1.15
  5. import HelperWidgets 2.0
  6. import StudioTheme 1.0 as StudioTheme
  7. Column {
  8. width: parent.width
  9. Section {
  10. caption: qsTr("Particle Wander")
  11. width: parent.width
  12. SectionLayout {
  13. PropertyLabel {
  14. text: qsTr("Fade In Duration")
  15. tooltip: qsTr("Sets the duration in milliseconds for fading in the affector.")
  16. }
  17. SecondColumnLayout {
  18. SpinBox {
  19. minimumValue: 0
  20. maximumValue: 999999
  21. decimals: 0
  22. backendValue: backendValues.fadeInDuration
  23. implicitWidth: StudioTheme.Values.twoControlColumnWidth
  24. + StudioTheme.Values.actionIndicatorWidth
  25. }
  26. ExpandingSpacer {}
  27. }
  28. PropertyLabel {
  29. text: qsTr("Fade Out Duration")
  30. tooltip: qsTr("Sets the duration in milliseconds for fading out the affector.")
  31. }
  32. SecondColumnLayout {
  33. SpinBox {
  34. minimumValue: 0
  35. maximumValue: 999999
  36. decimals: 0
  37. backendValue: backendValues.fadeOutDuration
  38. implicitWidth: StudioTheme.Values.twoControlColumnWidth
  39. + StudioTheme.Values.actionIndicatorWidth
  40. }
  41. ExpandingSpacer {}
  42. }
  43. }
  44. }
  45. Section {
  46. width: parent.width
  47. caption: qsTr("Global")
  48. ColumnLayout {
  49. spacing: StudioTheme.Values.transform3DSectionSpacing
  50. SectionLayout {
  51. PropertyLabel {
  52. text: qsTr("Amount")
  53. tooltip: qsTr("Sets how long distance each particle moves at the ends of curves.")
  54. }
  55. SecondColumnLayout {
  56. SpinBox {
  57. minimumValue: -9999999
  58. maximumValue: 9999999
  59. decimals: 2
  60. backendValue: backendValues.globalAmount_x
  61. implicitWidth: StudioTheme.Values.singleControlColumnWidth
  62. + StudioTheme.Values.actionIndicatorWidth
  63. }
  64. Spacer { implicitWidth: StudioTheme.Values.controlLabelGap }
  65. ControlLabel {
  66. text: "X"
  67. color: StudioTheme.Values.theme3DAxisXColor
  68. }
  69. ExpandingSpacer {}
  70. }
  71. PropertyLabel {}
  72. SecondColumnLayout {
  73. SpinBox {
  74. minimumValue: -9999999
  75. maximumValue: 9999999
  76. decimals: 2
  77. backendValue: backendValues.globalAmount_y
  78. implicitWidth: StudioTheme.Values.singleControlColumnWidth
  79. + StudioTheme.Values.actionIndicatorWidth
  80. }
  81. Spacer { implicitWidth: StudioTheme.Values.controlLabelGap }
  82. ControlLabel {
  83. text: "Y"
  84. color: StudioTheme.Values.theme3DAxisYColor
  85. }
  86. ExpandingSpacer {}
  87. }
  88. PropertyLabel {}
  89. SecondColumnLayout {
  90. SpinBox {
  91. minimumValue: -9999999
  92. maximumValue: 9999999
  93. decimals: 2
  94. backendValue: backendValues.globalAmount_z
  95. implicitWidth: StudioTheme.Values.singleControlColumnWidth
  96. + StudioTheme.Values.actionIndicatorWidth
  97. }
  98. Spacer { implicitWidth: StudioTheme.Values.controlLabelGap }
  99. ControlLabel {
  100. text: "Z"
  101. color: StudioTheme.Values.theme3DAxisZColor
  102. }
  103. ExpandingSpacer {}
  104. }
  105. }
  106. SectionLayout {
  107. PropertyLabel {
  108. text: qsTr("Pace")
  109. tooltip: qsTr("Sets the pace (frequency) each particle wanders in curves per second.")
  110. }
  111. SecondColumnLayout {
  112. SpinBox {
  113. minimumValue: -9999999
  114. maximumValue: 9999999
  115. decimals: 2
  116. stepSize: 0.01
  117. backendValue: backendValues.globalPace_x
  118. implicitWidth: StudioTheme.Values.singleControlColumnWidth
  119. + StudioTheme.Values.actionIndicatorWidth
  120. }
  121. Spacer { implicitWidth: StudioTheme.Values.controlLabelGap }
  122. ControlLabel {
  123. text: "X"
  124. color: StudioTheme.Values.theme3DAxisXColor
  125. }
  126. ExpandingSpacer {}
  127. }
  128. PropertyLabel {}
  129. SecondColumnLayout {
  130. SpinBox {
  131. minimumValue: -9999999
  132. maximumValue: 9999999
  133. decimals: 2
  134. stepSize: 0.01
  135. backendValue: backendValues.globalPace_y
  136. implicitWidth: StudioTheme.Values.singleControlColumnWidth
  137. + StudioTheme.Values.actionIndicatorWidth
  138. }
  139. Spacer { implicitWidth: StudioTheme.Values.controlLabelGap }
  140. ControlLabel {
  141. text: "Y"
  142. color: StudioTheme.Values.theme3DAxisYColor
  143. }
  144. ExpandingSpacer {}
  145. }
  146. PropertyLabel {}
  147. SecondColumnLayout {
  148. SpinBox {
  149. minimumValue: -9999999
  150. maximumValue: 9999999
  151. decimals: 2
  152. stepSize: 0.01
  153. backendValue: backendValues.globalPace_z
  154. implicitWidth: StudioTheme.Values.singleControlColumnWidth
  155. + StudioTheme.Values.actionIndicatorWidth
  156. }
  157. Spacer { implicitWidth: StudioTheme.Values.controlLabelGap }
  158. ControlLabel {
  159. text: "Z"
  160. color: StudioTheme.Values.theme3DAxisZColor
  161. }
  162. ExpandingSpacer {}
  163. }
  164. }
  165. SectionLayout {
  166. PropertyLabel {
  167. text: qsTr("Pace Start")
  168. tooltip: qsTr("Sets the starting point for the pace (frequency).")
  169. }
  170. SecondColumnLayout {
  171. SpinBox {
  172. minimumValue: -9999999
  173. maximumValue: 9999999
  174. decimals: 2
  175. stepSize: 0.01
  176. backendValue: backendValues.globalPaceStart_x
  177. implicitWidth: StudioTheme.Values.singleControlColumnWidth
  178. + StudioTheme.Values.actionIndicatorWidth
  179. }
  180. Spacer { implicitWidth: StudioTheme.Values.controlLabelGap }
  181. ControlLabel {
  182. text: "X"
  183. color: StudioTheme.Values.theme3DAxisXColor
  184. }
  185. ExpandingSpacer {}
  186. }
  187. PropertyLabel {}
  188. SecondColumnLayout {
  189. SpinBox {
  190. minimumValue: -9999999
  191. maximumValue: 9999999
  192. decimals: 2
  193. stepSize: 0.01
  194. backendValue: backendValues.globalPaceStart_y
  195. implicitWidth: StudioTheme.Values.singleControlColumnWidth
  196. + StudioTheme.Values.actionIndicatorWidth
  197. }
  198. Spacer { implicitWidth: StudioTheme.Values.controlLabelGap }
  199. ControlLabel {
  200. text: "Y"
  201. color: StudioTheme.Values.theme3DAxisYColor
  202. }
  203. ExpandingSpacer {}
  204. }
  205. PropertyLabel {}
  206. SecondColumnLayout {
  207. SpinBox {
  208. minimumValue: -9999999
  209. maximumValue: 9999999
  210. decimals: 2
  211. stepSize: 0.01
  212. backendValue: backendValues.globalPaceStart_z
  213. implicitWidth: StudioTheme.Values.singleControlColumnWidth
  214. + StudioTheme.Values.actionIndicatorWidth
  215. }
  216. Spacer { implicitWidth: StudioTheme.Values.controlLabelGap }
  217. ControlLabel {
  218. text: "Z"
  219. color: StudioTheme.Values.theme3DAxisZColor
  220. }
  221. ExpandingSpacer {}
  222. }
  223. }
  224. }
  225. }
  226. Section {
  227. width: parent.width
  228. caption: qsTr("Unique")
  229. ColumnLayout {
  230. spacing: StudioTheme.Values.transform3DSectionSpacing
  231. SectionLayout {
  232. PropertyLabel {
  233. text: qsTr("Amount")
  234. tooltip: qsTr("Sets the unique distance each particle moves at the ends of curves.")
  235. }
  236. SecondColumnLayout {
  237. SpinBox {
  238. minimumValue: -9999999
  239. maximumValue: 9999999
  240. decimals: 2
  241. backendValue: backendValues.uniqueAmount_x
  242. implicitWidth: StudioTheme.Values.singleControlColumnWidth
  243. + StudioTheme.Values.actionIndicatorWidth
  244. }
  245. Spacer { implicitWidth: StudioTheme.Values.controlLabelGap }
  246. ControlLabel {
  247. text: "X"
  248. color: StudioTheme.Values.theme3DAxisXColor
  249. }
  250. ExpandingSpacer {}
  251. }
  252. PropertyLabel {}
  253. SecondColumnLayout {
  254. SpinBox {
  255. minimumValue: -9999999
  256. maximumValue: 9999999
  257. decimals: 2
  258. backendValue: backendValues.uniqueAmount_y
  259. implicitWidth: StudioTheme.Values.singleControlColumnWidth
  260. + StudioTheme.Values.actionIndicatorWidth
  261. }
  262. Spacer { implicitWidth: StudioTheme.Values.controlLabelGap }
  263. ControlLabel {
  264. text: "Y"
  265. color: StudioTheme.Values.theme3DAxisYColor
  266. }
  267. ExpandingSpacer {}
  268. }
  269. PropertyLabel {}
  270. SecondColumnLayout {
  271. SpinBox {
  272. minimumValue: -9999999
  273. maximumValue: 9999999
  274. decimals: 2
  275. backendValue: backendValues.uniqueAmount_z
  276. implicitWidth: StudioTheme.Values.singleControlColumnWidth
  277. + StudioTheme.Values.actionIndicatorWidth
  278. }
  279. Spacer { implicitWidth: StudioTheme.Values.controlLabelGap }
  280. ControlLabel {
  281. text: "Z"
  282. color: StudioTheme.Values.theme3DAxisZColor
  283. }
  284. ExpandingSpacer {}
  285. }
  286. PropertyLabel {
  287. text: qsTr("Amount Variation")
  288. tooltip: qsTr("Sets the variation for uniqueAmount between 0.0 and 1.0.")
  289. }
  290. SecondColumnLayout {
  291. SpinBox {
  292. minimumValue: 0
  293. maximumValue: 1
  294. decimals: 2
  295. stepSize: 0.01
  296. backendValue: backendValues.uniqueAmountVariation
  297. implicitWidth: StudioTheme.Values.twoControlColumnWidth
  298. + StudioTheme.Values.actionIndicatorWidth
  299. }
  300. ExpandingSpacer {}
  301. }
  302. }
  303. SectionLayout {
  304. PropertyLabel {
  305. text: qsTr("Pace")
  306. tooltip: qsTr("Sets the unique pace (frequency) each particle wanders in curves per second.")
  307. }
  308. SecondColumnLayout {
  309. SpinBox {
  310. minimumValue: -9999999
  311. maximumValue: 9999999
  312. decimals: 2
  313. stepSize: 0.01
  314. backendValue: backendValues.uniquePace_x
  315. implicitWidth: StudioTheme.Values.singleControlColumnWidth
  316. + StudioTheme.Values.actionIndicatorWidth
  317. }
  318. Spacer { implicitWidth: StudioTheme.Values.controlLabelGap }
  319. ControlLabel {
  320. text: "X"
  321. color: StudioTheme.Values.theme3DAxisXColor
  322. }
  323. ExpandingSpacer {}
  324. }
  325. PropertyLabel {}
  326. SecondColumnLayout {
  327. SpinBox {
  328. minimumValue: -9999999
  329. maximumValue: 9999999
  330. decimals: 2
  331. stepSize: 0.01
  332. backendValue: backendValues.uniquePace_y
  333. implicitWidth: StudioTheme.Values.singleControlColumnWidth
  334. + StudioTheme.Values.actionIndicatorWidth
  335. }
  336. Spacer { implicitWidth: StudioTheme.Values.controlLabelGap }
  337. ControlLabel {
  338. text: "Y"
  339. color: StudioTheme.Values.theme3DAxisYColor
  340. }
  341. ExpandingSpacer {}
  342. }
  343. PropertyLabel {}
  344. SecondColumnLayout {
  345. SpinBox {
  346. minimumValue: -9999999
  347. maximumValue: 9999999
  348. decimals: 2
  349. stepSize: 0.01
  350. backendValue: backendValues.uniquePace_z
  351. implicitWidth: StudioTheme.Values.singleControlColumnWidth
  352. + StudioTheme.Values.actionIndicatorWidth
  353. }
  354. Spacer { implicitWidth: StudioTheme.Values.controlLabelGap }
  355. ControlLabel {
  356. text: "Z"
  357. color: StudioTheme.Values.theme3DAxisZColor
  358. }
  359. ExpandingSpacer {}
  360. }
  361. PropertyLabel {
  362. text: qsTr("Pace Variation")
  363. tooltip: qsTr("Sets the unique pace (frequency) variation for each particle between 0.0 and 1.0.")
  364. }
  365. SecondColumnLayout {
  366. SpinBox {
  367. minimumValue: 0
  368. maximumValue: 1
  369. decimals: 2
  370. stepSize: 0.01
  371. backendValue: backendValues.uniquePaceVariation
  372. implicitWidth: StudioTheme.Values.twoControlColumnWidth
  373. + StudioTheme.Values.actionIndicatorWidth
  374. }
  375. ExpandingSpacer {}
  376. }
  377. }
  378. }
  379. }
  380. }