control.tscn 10 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328
  1. [gd_scene load_steps=5 format=3 uid="uid://bcs87y7ptx3ke"]
  2. [ext_resource type="Script" uid="uid://bdlfvuljckmu1" path="res://scenes/main/control.gd" id="1_2f0aq"]
  3. [ext_resource type="Script" uid="uid://l2yejnjysupr" path="res://scenes/main/graph_edit.gd" id="2_3ioqo"]
  4. [ext_resource type="PackedScene" uid="uid://b0wdj8v6o0wq0" path="res://scenes/menu/menu.tscn" id="3_dtf4o"]
  5. [ext_resource type="Texture2D" uid="uid://cdwux1smquvpi" path="res://theme/images/logo.png" id="4_3ioqo"]
  6. [node name="Control" type="Control"]
  7. layout_mode = 3
  8. anchors_preset = 15
  9. anchor_right = 1.0
  10. anchor_bottom = 1.0
  11. grow_horizontal = 2
  12. grow_vertical = 2
  13. script = ExtResource("1_2f0aq")
  14. [node name="GraphEdit" type="GraphEdit" parent="."]
  15. layout_mode = 1
  16. anchors_preset = -1
  17. anchor_right = 1.0
  18. anchor_bottom = 1.0
  19. offset_top = 32.0
  20. right_disconnects = true
  21. script = ExtResource("2_3ioqo")
  22. [node name="FileDialog" type="FileDialog" parent="."]
  23. title = "Open a Directory"
  24. ok_button_text = "Select Current Folder"
  25. file_mode = 2
  26. access = 2
  27. use_native_dialog = true
  28. [node name="mainmenu" parent="." instance=ExtResource("3_dtf4o")]
  29. layout_mode = 0
  30. anchors_preset = 0
  31. anchor_right = 0.0
  32. anchor_bottom = 0.0
  33. offset_left = 600.0
  34. offset_top = 456.0
  35. offset_right = 600.0
  36. offset_bottom = 456.0
  37. grow_horizontal = 1
  38. grow_vertical = 1
  39. [node name="NoLocationPopup" type="Window" parent="." groups=["popup_windows"]]
  40. auto_translate_mode = 1
  41. title = "Wrong File Type"
  42. initial_position = 2
  43. size = Vector2i(450, 500)
  44. visible = false
  45. transient = true
  46. exclusive = true
  47. unresizable = true
  48. borderless = true
  49. popup_window = true
  50. [node name="TextureRect" type="TextureRect" parent="NoLocationPopup"]
  51. offset_left = -6.0
  52. offset_top = 16.0
  53. offset_right = 378.0
  54. offset_bottom = 64.0
  55. texture = ExtResource("4_3ioqo")
  56. expand_mode = 2
  57. stretch_mode = 4
  58. [node name="RichTextLabel" type="RichTextLabel" parent="NoLocationPopup"]
  59. offset_left = 16.0
  60. offset_top = 73.0
  61. offset_right = 435.0
  62. offset_bottom = 457.0
  63. bbcode_enabled = true
  64. text = "Welcome to SoundThread!
  65. SoundThread is an interface for the Composers Desktop Project (CDP) audio processing tools. As such it requires you to have CDP installed to work correctly. If you don't already have CDP installed you can [url=\"https://www.unstablesound.net/cdp.html\"]download it here.[/url]
  66. When you close this window you will be prompted for the location of your _cdprogs folder. The default location for this folder is:
  67. Windows: C:/cdpr8/_cdp/_cdprogs
  68. Mac: ~/cdpr8/_cdp/_cdprogs
  69. SoundThread will remember this but you can always change it later in Settings.
  70. If this is your first time using SoundThread you can find some getting started tutorials in the Help tab in the top menu."
  71. scroll_active = false
  72. [node name="OkButton" type="Button" parent="NoLocationPopup"]
  73. offset_left = -7.0
  74. offset_top = 469.0
  75. offset_right = 457.0
  76. offset_bottom = 500.0
  77. text = "Click to locate _cdprogs"
  78. [node name="NoInputPopup" type="Window" parent="." groups=["popup_windows"]]
  79. auto_translate_mode = 1
  80. title = "No Input Selected"
  81. initial_position = 2
  82. size = Vector2i(380, 140)
  83. visible = false
  84. transient = true
  85. exclusive = true
  86. unresizable = true
  87. borderless = true
  88. popup_window = true
  89. [node name="Label" type="Label" parent="NoInputPopup"]
  90. offset_left = 14.0
  91. offset_top = 7.0
  92. offset_right = 363.0
  93. offset_bottom = 100.0
  94. text = "No input file selected
  95. Please load a sound file into Input File node
  96. Supported file type: .wav, mono or stereo"
  97. horizontal_alignment = 1
  98. vertical_alignment = 1
  99. autowrap_mode = 2
  100. [node name="OkButton2" type="Button" parent="NoInputPopup"]
  101. offset_left = -10.0
  102. offset_top = 110.0
  103. offset_right = 390.0
  104. offset_bottom = 141.0
  105. text = "Ok"
  106. [node name="MultipleConnectionsPopup" type="Window" parent="." groups=["popup_windows"]]
  107. auto_translate_mode = 1
  108. title = "No Input Selected"
  109. initial_position = 2
  110. size = Vector2i(380, 160)
  111. visible = false
  112. transient = true
  113. exclusive = true
  114. unresizable = true
  115. borderless = true
  116. popup_window = true
  117. [node name="Label" type="Label" parent="MultipleConnectionsPopup"]
  118. offset_left = 14.0
  119. offset_top = 10.0
  120. offset_right = 363.0
  121. offset_bottom = 117.0
  122. text = "PVOC Nodes can only have one input.
  123. To mix sounds created in the frequency domain convert them to the time domain using PVOC: Resynthesise first."
  124. horizontal_alignment = 1
  125. vertical_alignment = 1
  126. autowrap_mode = 2
  127. [node name="OkButton3" type="Button" parent="MultipleConnectionsPopup"]
  128. offset_left = -10.0
  129. offset_top = 128.0
  130. offset_right = 389.0
  131. offset_bottom = 159.0
  132. text = "Ok"
  133. [node name="CdpLocationDialog" type="FileDialog" parent="."]
  134. title = "Open a Directory"
  135. ok_button_text = "Select Current Folder"
  136. file_mode = 2
  137. access = 2
  138. use_native_dialog = true
  139. [node name="Console" type="Window" parent="." groups=["popup_windows"]]
  140. title = "Generating Output"
  141. initial_position = 5
  142. size = Vector2i(600, 400)
  143. visible = false
  144. unresizable = true
  145. always_on_top = true
  146. [node name="Panel" type="Panel" parent="Console"]
  147. offset_left = 10.0
  148. offset_top = 8.0
  149. offset_right = 590.0
  150. offset_bottom = 352.0
  151. [node name="ConsoleOutput" type="RichTextLabel" parent="Console"]
  152. offset_left = 10.0
  153. offset_top = 12.0
  154. offset_right = 590.0
  155. offset_bottom = 351.0
  156. bbcode_enabled = true
  157. [node name="ConsoleOpenFolder" type="Button" parent="Console"]
  158. offset_left = -4.0
  159. offset_top = 360.0
  160. offset_right = 604.0
  161. offset_bottom = 401.0
  162. text = "Open Output Folder"
  163. [node name="ColorRect" type="ColorRect" parent="."]
  164. layout_mode = 1
  165. anchors_preset = 10
  166. anchor_right = 1.0
  167. offset_bottom = 35.0
  168. grow_horizontal = 2
  169. color = Color(0.0646965, 0.0646965, 0.0646965, 1)
  170. [node name="MenuBar" type="MenuBar" parent="."]
  171. layout_mode = 1
  172. anchors_preset = 10
  173. anchor_right = 1.0
  174. offset_left = 8.0
  175. offset_top = 4.0
  176. offset_right = -8.0
  177. offset_bottom = 35.0
  178. grow_horizontal = 2
  179. flat = true
  180. prefer_global_menu = false
  181. [node name="FileButton" type="PopupMenu" parent="MenuBar"]
  182. title = "File"
  183. item_count = 4
  184. item_0/text = "New Thread"
  185. item_0/id = 2
  186. item_1/text = "Save Thread"
  187. item_1/id = 3
  188. item_2/text = "Save Thread As"
  189. item_2/id = 0
  190. item_3/text = "Load Thread"
  191. item_3/id = 1
  192. [node name="SettingsButton" type="PopupMenu" parent="MenuBar"]
  193. title = "Settings"
  194. item_count = 4
  195. item_0/text = "Change CDP Folder Location"
  196. item_0/id = 0
  197. item_1/text = "Disable PVOC Multi Input Warning"
  198. item_1/checkable = 1
  199. item_1/id = 1
  200. item_2/text = "Auto Close Console"
  201. item_2/checkable = 1
  202. item_2/id = 2
  203. item_3/text = "Open the Console"
  204. item_3/id = 3
  205. [node name="HelpButton" type="PopupMenu" parent="MenuBar"]
  206. auto_translate_mode = 1
  207. title = "Help"
  208. item_count = 8
  209. item_0/text = "Tutorials"
  210. item_0/id = 0
  211. item_0/separator = true
  212. item_1/text = "Getting Started"
  213. item_1/id = 1
  214. item_2/text = "Navigating SoundThread"
  215. item_2/id = 2
  216. item_3/text = "Building a Thread"
  217. item_3/id = 3
  218. item_4/text = "Frequency Domain"
  219. item_4/id = 4
  220. item_5/text = "SoundThread Quirks"
  221. item_5/id = 5
  222. item_6/text = "Other Help"
  223. item_6/id = 6
  224. item_6/separator = true
  225. item_7/text = "CDP Documentation"
  226. item_7/id = 7
  227. [node name="About" type="PopupMenu" parent="MenuBar"]
  228. item_count = 1
  229. item_0/id = 0
  230. item_0/disabled = true
  231. [node name="SaveDialog" type="FileDialog" parent="."]
  232. use_native_dialog = true
  233. [node name="LoadDialog" type="FileDialog" parent="."]
  234. auto_translate_mode = 1
  235. use_native_dialog = true
  236. [node name="SaveChangesPopup" type="Window" parent="." groups=["popup_windows"]]
  237. auto_translate_mode = 1
  238. title = "No Input Selected"
  239. initial_position = 2
  240. size = Vector2i(350, 100)
  241. visible = false
  242. transient = true
  243. exclusive = true
  244. unresizable = true
  245. borderless = true
  246. popup_window = true
  247. [node name="Label" type="Label" parent="SaveChangesPopup"]
  248. offset_left = -1.0
  249. offset_top = 21.0
  250. offset_right = 348.0
  251. offset_bottom = 52.0
  252. text = "Save changes to this thread?"
  253. horizontal_alignment = 1
  254. vertical_alignment = 1
  255. autowrap_mode = 2
  256. [node name="SaveChanges" type="Button" parent="SaveChangesPopup"]
  257. offset_left = -1.0
  258. offset_top = 70.0
  259. offset_right = 175.0
  260. offset_bottom = 101.0
  261. text = "Save"
  262. [node name="DontSaveChanges" type="Button" parent="SaveChangesPopup"]
  263. offset_left = 175.0
  264. offset_top = 70.0
  265. offset_right = 351.0
  266. offset_bottom = 101.0
  267. text = "Don't Save"
  268. [connection signal="connection_request" from="GraphEdit" to="." method="_on_graph_edit_connection_request"]
  269. [connection signal="delete_nodes_request" from="GraphEdit" to="." method="_on_graph_edit_delete_nodes_request"]
  270. [connection signal="disconnection_request" from="GraphEdit" to="." method="_on_graph_edit_disconnection_request"]
  271. [connection signal="node_deselected" from="GraphEdit" to="." method="_on_graph_edit_node_deselected"]
  272. [connection signal="node_selected" from="GraphEdit" to="." method="_on_graph_edit_node_selected"]
  273. [connection signal="popup_request" from="GraphEdit" to="." method="_on_graph_edit_popup_request"]
  274. [connection signal="dir_selected" from="FileDialog" to="." method="_on_file_dialog_dir_selected"]
  275. [connection signal="meta_clicked" from="NoLocationPopup/RichTextLabel" to="." method="_on_rich_text_label_meta_clicked"]
  276. [connection signal="button_down" from="NoLocationPopup/OkButton" to="." method="_on_ok_button_button_down"]
  277. [connection signal="button_down" from="NoInputPopup/OkButton2" to="." method="_on_ok_button_2_button_down"]
  278. [connection signal="button_down" from="MultipleConnectionsPopup/OkButton3" to="." method="_on_ok_button_3_button_down"]
  279. [connection signal="canceled" from="CdpLocationDialog" to="." method="_on_cdp_location_dialog_canceled"]
  280. [connection signal="dir_selected" from="CdpLocationDialog" to="." method="_on_cdp_location_dialog_dir_selected"]
  281. [connection signal="close_requested" from="Console" to="." method="_on_console_close_requested"]
  282. [connection signal="button_down" from="Console/ConsoleOpenFolder" to="." method="_on_console_open_folder_button_down"]
  283. [connection signal="index_pressed" from="MenuBar/FileButton" to="." method="_on_file_button_index_pressed"]
  284. [connection signal="index_pressed" from="MenuBar/SettingsButton" to="." method="_on_settings_button_index_pressed"]
  285. [connection signal="index_pressed" from="MenuBar/HelpButton" to="." method="_on_help_button_index_pressed"]
  286. [connection signal="file_selected" from="SaveDialog" to="." method="_on_save_dialog_file_selected"]
  287. [connection signal="file_selected" from="LoadDialog" to="." method="_on_load_dialog_file_selected"]
  288. [connection signal="button_down" from="SaveChangesPopup/SaveChanges" to="." method="_on_save_changes_button_down"]
  289. [connection signal="button_down" from="SaveChangesPopup/DontSaveChanges" to="." method="_on_dont_save_changes_button_down"]