#N canvas 63 22 1208 756 10; #X obj 10 62 cnv 15 751 80 empty empty empty 5 8 0 14 -233017 -66577 0; #X obj 834 478 cnv 15 370 30 empty empty empty 20 12 0 14 -228856 -66577 0; #X obj 834 540 cnv 15 370 30 empty empty empty 20 12 0 14 -228856 -66577 0; #X obj 10 483 cnv 15 375 100 empty empty empty 20 12 0 14 -228856 -66577 0; #X obj 10 784 cnv 15 375 150 empty empty empty 20 12 0 14 -228856 -66577 0; #X obj 926 767 bng 15 250 50 0 /ds/help/advanced/vis /ds/help/advanced/vis advanced 17 7 0 10 -262144 -1 -1; #X obj 786 961 bng 15 250 50 0 /ds/help/reg/dialog /ds/help/reg/dialog register_list 17 7 0 10 -159808 -1 -1; #N canvas 57 179 831 553 \$0-file_layout 0; #X obj 11 35 cnv 15 810 500 empty empty empty 20 12 0 14 -233017 -66577 0; #X text 25 62 The File is formatted as follows:; #X obj 22 93 cnv 20 420 390 empty empty empty 20 12 0 14 -262144 -66577 0; #X text 29 101 ======================== GLOBAL ======================== ; #X text 245 171 ========================; #X text 455 92 Every preset file starts with a GLOBAL SECTION:; #X text 29 134 ; #X text 29 121 ; #X text 29 147 ...; #X text 29 301 ...; #X text 29 371 ...; #X text 29 275 ; #X text 29 288 ; #X obj 11 14 cnv 15 810 20 empty empty File_Layout 5 10 0 14 -1 -262144 0; #X text 372 51 The file can be edited with a simple text editor.; #X text 29 171 ======================== SCENE ; #X text 29 231 ...; #X text 29 191 # PROPERTIES; #X text 29 261 # SETTINGS; #X text 29 331 # TABLES; #X text 29 440 ...; #X text 29 401 # DATA; #X text 29 205 /name ; #X text 29 218 /duration ; #X text 29 345 ...; #X text 29 358 ...; #X text 29 415 ( ...); #X text 29 428 ( ...); #X text 455 112 After this header \, the global data is saved (i.e. the settings in the "advanced" menu).; #X text 455 174 For every scene \, there is a SCENE header \, which indicates where a new scene begins. This header also includes the scene number.; #X text 455 222 The scene data is divided into 4 different categories: ; #X text 455 252 PROPERTIES:; #X text 455 292 SETTINGS:; #X text 535 252 the global settings of the scene \, i.e. its; #X text 535 266 name and duration.; #X text 535 292 transition settings for the individual; #X text 455 332 TABLES:; #X text 455 372 TABLES:; #X text 535 372 the actual data \, i.e. the state; #X text 535 306 variables.; #X text 535 332 the stored tables.; #X text 535 386 of the variables.; #X restore 1032 546 pd \$0-file_layout; #N canvas 265 22 697 753 \$0-parameter_list 0; #X obj 4 26 cnv 15 650 500 empty empty empty 20 12 0 14 -233017 -66577 0; #X text 221 463 reloads the last given filepath from harddisk.; #X text 221 383 resaves the current scene-set to the last given path. ; #X text 221 478 loads the scene-set of the given filepath; #X text 221 433 opens a dialog to load a scene-set from a file from the harddisk.; #X text 221 353 opens a dialog to save the current scene-set to a preset file on the harddisk.; #X text 221 398 saves the current scene-set to the given filepath; #X text 221 180 recalls the selected scene of the current scene-set ; #X text 221 195 sets the scene number to be recalled by "recall" or to be automatically recalled if autorecall=1; #X text 221 225 decrement scene number by 1; #X text 221 240 increment scene number by 1; #X text 221 338 sets the filepath to be loaded/saved on next reload/resave ; #X text 9 433 /ds//load; #X text 9 353 /ds//save; #X text 9 463 /ds//reload; #X text 9 383 /ds//resave; #X text 9 338 /ds//filename; #X text 9 478 /ds//loadfile; #X text 9 398 /ds//savefile; #X text 9 180 /ds//recall; #X text 9 225 /ds//scene/current/prev; #X text 9 240 /ds//scene/current/next; #X text 9 210 /ds//scene/current; #X text 9 195 /ds//scene OR; #X text 9 265 /ds//scene/selected; #X text 221 265 sets the scene destination of a file operation; #X text 9 280 /ds//scene/selected/prev; #X text 9 295 /ds//scene/selected/next; #X text 221 280 decrement destination scene number by 1; #X text 221 295 increment destination scene number by 1; #X text 9 310 /ds//store; #X text 221 310 store the current state to the selected scene; #X text 28 90 There are many other parameters that can be controlled from outside. If you need some specific \, you can always look them up inside the abstractions.; #X obj 4 5 cnv 15 650 20 empty empty Parameter_list:_Control_from_"outside" 5 10 0 14 -1 -262144 0; #X obj 474 57 cnv 15 180 100 empty empty empty 20 12 0 14 -204786 -66577 0; #X msg 526 90 0; #X msg 556 90 1; #X msg 586 90 2; #X obj 526 116 s /ds/help/scene; #X text 478 65 Click here to change scene:; #X text 28 40 This is a list of the most important parameters \, that can be controlled by their send/receive name.; #X obj 474 36 cnv 15 180 20 empty empty Example 5 10 0 14 -1 -262144 0; #X obj 4 537 cnv 15 650 20 empty empty Load_file_on_startup 5 10 0 14 -1 -262144 0; #X obj 4 558 cnv 15 650 300 empty empty empty 20 12 0 14 -204786 -66577 0; #X obj 41 602 loadbang; #X obj 21 602 bng 15 250 50 0 empty empty empty 17 7 0 10 -262144 -1 -1; #X obj 41 626 del 1000; #X text 186 568 If you want the storage to recall a scene from a textfile on startup \, you can specify it as follows:; #X text 186 663 use the "/ds//loadfile" message to load a given file path:; #X obj 41 648 t b b; #X obj 41 763 del 2000; #X text 196 806 Recall scene "0".; #X text 114 626 <--------; #X text 114 765 <--------; #X text 152 805 <----; #X text 104 731 (pathes relative to "./libs/kollabs"); #X text 186 621 Delay the load to make sure that the patch got fully loaded.; #X text 186 761 Delay the recall to make sure that the textfile got fully loaded to RAM.; #X msg 68 696 \; /ds/help/loadfile ds_help.txt; #X msg 41 805 \; /ds/help/scene 0; #X connect 35 0 38 0; #X connect 36 0 38 0; #X connect 37 0 38 0; #X connect 44 0 46 0; #X connect 45 0 46 0; #X connect 46 0 49 0; #X connect 49 0 50 0; #X connect 49 1 58 0; #X connect 50 0 59 0; #X coords 0 753 1 752 85 60 0; #X restore 999 485 pd \$0-parameter_list; #X obj 10 41 cnv 15 751 20 empty empty Description 5 10 0 14 -1 -262144 0; #X obj 834 457 cnv 15 370 20 empty empty Control_through_Send/Receive 5 10 0 14 -1 -262144 0; #X obj 834 519 cnv 15 370 20 empty empty File_layout 5 10 0 14 -1 -262144 0; #X obj 10 763 cnv 15 750 20 empty empty Scene_transitions:_[ds_transition]_and_[ds_transition_gui] 5 10 0 14 -1 -262144 0; #X obj 10 10 cnv 15 751 20 empty empty Kollabs/DS 5 10 0 14 -258113 -1 0; #X text 621 12 (c)2012 Marian Weger; #X text 15 490 [ds_reg ] registers a variable to the given storage domain.; #X text 15 520 creation arguments:; #X text 153 520 1st: domain; #X text 153 540 2nd: variable name; #X obj 386 174 cnv 15 375 200 empty empty empty 20 12 0 14 -204786 -66577 0; #X obj 10 462 cnv 15 750 20 empty empty Registers:_[ds_reg] 5 10 0 14 -1 -262144 0; #X text 528 186 Storage logic for domain "help"; #X obj 386 483 cnv 15 375 100 empty empty empty 20 12 0 14 -204786 -66577 0; #X text 401 499 Register for assigning the variable "/i/am/a/variable" to domain "help"; #X text 897 484 Look inside:; #X text 940 543 Look inside:; #X text 778 823 The scene transition settings are always saved with the DESTINATION scene.; #X obj 913 1036 bng 15 250 50 0 /ds/help/reg/settings/buffer /ds/help/reg/settings/buffer buffer 17 7 0 10 -257985 -1 -1; #X text 892 960 A click on one of the listed variables; #X text 892 972 opens its scene transition dialog.; #X text 777 996 To set the same transition for all registered variables \, click on "buffer". A window for the global scene transition buffer will open.; #X text 776 910 For a transition for one single variable \, click on "register_list". A list of all registered variables will open.; #N canvas 710 135 385 375 backup 0; #X obj 100 170 t b b; #X obj 100 275 del 1000; #X obj 100 100 bng 15 250 50 0 empty empty click_here_to_load_backup! 17 7 0 10 -262144 -1 -1; #X msg 100 307 \; /ds/help/scene 0 \; /ds/help2/scene 0 \;; #X msg 127 218 \; /ds/help/loadfile ds_help_bak.txt \; /ds/help2/loadfile ds_help2_bak.txt \;; #X connect 0 0 1 0; #X connect 0 1 4 0; #X connect 1 0 3 0; #X connect 2 0 0 0; #X coords 0 -1 1 1 15 15 2 100 100; #X restore 514 122 pd backup; #X obj 424 188 ds_logic help; #X obj 404 227 ds_gui help; #X text 19 796 Scene transitions can be set for all variables individually. This can be delays \, master-slave-chains \, or smooth morphings.; #X text 19 846 To enable scene transitions globally for a specific domain \, create the [ds_transition ] object.; #X text 19 876 It also has a nice gui \, which you will probably need: [ds_transition_gui ]; #X text 778 855 To add a transition \, first recall the destination scene (the one where your transition should end!).; #X obj 386 784 cnv 15 375 150 empty empty empty 20 12 0 14 -204786 -66577 0; #X obj 457 799 ds_transition help; #X obj 457 832 ds_transition_gui help; #X obj 10 1177 cnv 15 750 20 empty empty Timeline_Editing_/_Playlist_View:_[ds_scheduler]_and_[ds_scheduler_gui] 5 10 0 14 -1 -262144 0; #X obj 10 1198 cnv 15 375 120 empty empty empty 20 12 0 14 -228856 -66577 0; #X obj 386 1198 cnv 15 375 330 empty empty empty 20 12 0 14 -204786 -66577 0; #X obj 419 1216 ds_scheduler help; #X text 19 1218 Using the scheduler \, a playlist of scenes can be managed. Scenes can be given a specific duration \, after which the next scene will be recalled.; #X text 19 1268 [ds_scheduler] creates the whole needed logic for the timeline functions. [ds_scheduler_gui] provides an intuitive player view.; #X obj 10 584 cnv 15 751 150 empty empty empty 20 12 0 14 -191407 -66577 0; #X obj 362 686 cnv 15 300 30 empty empty empty 20 12 0 14 -262130 -66577 0; #X obj 362 665 cnv 15 300 20 empty empty Additional_Tools:_route/update/print 5 10 0 14 -1 -262144 0; #N canvas 251 22 650 756 \$0-tools 0; #X obj 11 36 cnv 15 370 300 empty empty empty 20 12 0 14 -228856 -66577 0; #X obj 381 36 cnv 15 230 300 empty empty empty 20 12 0 14 -204786 -66577 0; #X obj 11 16 cnv 15 600 20 empty empty Route_current_value_of_variable 5 10 0 14 -1 -262144 0; #X obj 414 205 r /i/am/a/target; #X obj 414 227 print /i/am/a/target; #X msg 414 147 symbol /i/am/a/target; #X obj 414 127 bng 15 250 50 0 empty empty click_here! 17 7 0 10 -262144 -1 -1; #X obj 499 91 nbx 5 14 -1e+37 1e+37 0 0 /i/am/a/source /i/am/a/source /i/am/a/source 0 -8 0 10 -262144 -1 -1 13 256; #X text 423 90 change it:; #X text 33 157 This may be useful for implementing copy&paste functions \, etc.; #X obj 11 366 cnv 15 370 300 empty empty empty 20 12 0 14 -228856 -66577 0; #X obj 381 366 cnv 15 230 300 empty empty empty 20 12 0 14 -204786 -66577 0; #X obj 11 346 cnv 15 600 20 empty empty Re-send_current_value_/_Update 5 10 0 14 -1 -262144 0; #X obj 11 696 cnv 15 370 260 empty empty empty 20 12 0 14 -228856 -66577 0; #X obj 381 696 cnv 15 230 260 empty empty empty 20 12 0 14 -204786 -66577 0; #X obj 11 676 cnv 15 600 20 empty empty Print_current_value 5 10 0 14 -1 -262144 0; #X obj 497 422 nbx 5 14 -1e+37 1e+37 0 0 /i/am/both /i/am/both /i/am/both 0 -8 0 10 -262144 -1 -1 15 256; #X text 423 420 change it:; #X obj 424 450 bng 15 250 50 0 empty empty click_here! 17 7 0 10 -262144 -1 -1; #X obj 484 495 r /i/am/both; #X obj 424 810 bng 15 250 50 0 empty empty click_here! 17 7 0 10 -262144 -1 -1; #X obj 497 772 nbx 5 14 -1e+37 1e+37 0 0 /what/am/i /what/am/i /what/am/i 0 -8 0 10 -262144 -1 -1 97 256; #X text 423 770 change it:; #X text 23 467 This may be useful for updating GUI elements.; #X text 23 807 Sometimes useful for debugging.; #X text 33 47 Route the current value of a registered variable to any destination.; #X text 23 377 Resend the current value of a registered variable to itself \, i.e. update it.; #X text 23 717 Print the current value and domain of a registered variable to the console.; #X obj 109 862 bng 15 250 50 0 empty empty click_here! 17 7 0 10 -262144 -1 -1; #X msg 109 887 vis 1; #X obj 109 909 s pd-\$0-scene_transition_dialog; #X text 20 838 There is already a button for that in the "Scene Transition Dialog":; #X msg 414 278 symbol /i/am/a/target; #X obj 414 258 bng 15 250 50 0 empty empty click_here! 17 7 0 10 -262144 -1 -1; #X text 23 264 Global route for whole domain:; #X obj 386 590 bng 15 250 50 0 empty empty click_here! 17 7 0 10 -262144 -1 -1; #X text 30 594 Global re-send for whole domain:; #X obj 505 597 r /i/am/a/source; #X msg 484 540 ---; #X obj 414 169 s /ds/help/i/am/a/source/route; #X obj 414 300 s /ds/help/route; #X obj 424 470 s /ds/help/i/am/both/resend; #X text 415 540 look here:; #X msg 505 641 ---; #X obj 386 612 s /ds/help/resend; #X text 437 642 look here:; #X obj 424 832 s /ds/help/what/am/i/print; #X text 33 87 Sending a message "" to "/ds///route" \, sends the current value of "" to "".; #X text 23 284 Sending a message "" to "/ds//route" sends the current values of all registered variables of to .; #X text 23 417 Sending any message to "/ds///resend" will send the current value of "" to itself.; #X text 30 614 Sending any message to "/ds//resend" sends the current values of all registered variables of to themselves. ; #X text 23 757 Sending a bang (or any other message) to "/ds///print" will print the current value of to the Pd window.; #X obj 484 518 msg_monitor 750; #X obj 505 619 msg_monitor 750; #X text 421 867 look at your Pd window!; #X text 397 320 look at your Pd window!; #X obj 417 378 ds_reg help /i/am/both; #X obj 421 45 ds_reg help /i/am/a/source; #X obj 421 720 ds_reg help /what/am/i; #X connect 3 0 4 0; #X connect 5 0 39 0; #X connect 6 0 5 0; #X connect 18 0 41 0; #X connect 19 0 52 0; #X connect 20 0 46 0; #X connect 28 0 29 0; #X connect 29 0 30 0; #X connect 32 0 40 0; #X connect 33 0 32 0; #X connect 35 0 44 0; #X connect 37 0 53 0; #X connect 52 0 38 0; #X connect 53 0 43 0; #X coords 0 756 1 755 85 60 0; #X restore 548 692 pd \$0-tools; #X text 447 690 Look inside:; #X obj 41 624 cnv 15 300 30 empty empty empty 20 12 0 14 -262130 -66577 0; #X obj 41 603 cnv 15 300 20 empty empty Registering_Variables 5 10 0 14 -1 -262144 0; #N canvas 552 22 618 636 \$0-registering_variables 0; #X obj 4 25 cnv 15 370 250 empty empty empty 20 12 0 14 -228856 -66577 0; #X text 16 153 SYNTAX: [ds_reg ] \, where is the name of the storage you want to register to \, and is the complete name of your variable.; #X text 16 37 New variables can be registered to a storage domain with the [ds_reg] module.; #X text 9 243 This registers "/i/am/also/a/variable" to domain "help": ; #X obj 374 25 cnv 15 230 250 empty empty empty 20 12 0 14 -204786 -66577 0; #X obj 405 208 hsl 128 15 0 127 0 0 /i/am/also/a/variable /i/am/also/a/variable /i/am/also/a/variable -2 -8 0 10 -262144 -1 -1 6300 1; #X obj 405 158 hsl 128 15 0 127 0 0 /i/am/a/variable /i/am/a/variable /i/am/a/variable -2 -8 0 10 -262144 -1 -1 900 1; #X msg 428 75 0; #X msg 458 75 1; #X msg 488 75 2; #X obj 428 101 s /ds/help/scene; #X text 408 46 Change scene here:; #X obj 4 4 cnv 15 600 20 empty empty Registering_variables 5 10 0 14 -1 -262144 0; #X text 16 82 Variables can be any type of data \, i.e. 'list' \, 'float' \, 'symbol' \, etc.; #X obj 649 299 cnv 15 370 120 empty empty empty 20 12 0 14 -262130 -66577 0; #X obj 649 279 cnv 15 370 20 empty empty Syntax_for_variable_names 5 10 0 14 -1 -262144 0; #X text 687 392 /category>//.../; #X text 657 357 In this helpfile \, all variables consist only of lowercase letters and slashes in the form of:; #X text 657 307 There is no special naming syntax needed for your variables. But a beginning with "/" is proposed to conform with the OSC standard. ; #X text 16 112 But \, of course \, the morphing features are only available for 'float' values; #X obj 4 307 cnv 15 370 300 empty empty empty 20 12 0 14 -228856 -66577 0; #X obj 374 307 cnv 15 230 300 empty empty empty 20 12 0 14 -204786 -66577 0; #X obj 4 286 cnv 15 600 20 empty empty Registering_Tables 5 10 0 14 -1 -262144 0; #X text 15 317 If you want to register a table to the storage \, add the "table" flag to the register as creation argument \; [ds_reg table]; #X obj 397 413 ds_reg help /i/am/a/table table; #X msg 442 350 0; #X msg 472 350 1; #X msg 502 350 2; #X obj 442 376 s /ds/help/scene; #X text 422 321 Change scene here:; #X obj 381 241 ds_reg help /i/am/also/a/variable; #X text 15 367 If you want to register a table to the storage \, add the "table" flag to the register as creation argument \; [ds_reg table]. You can also specify through flags \, if the table should be resized automatically ("resize") or never get resized ("noresize"). ; #X text 18 476 The order of the flags does not matter.; #X text 31 447 Example: [ds_reg table noresize]; #X text 18 506 For tables \, the morphing functionality is deactivated. But the other scene transition features (i.e. delay or slave) can be used.; #X obj 405 480 cnv 15 150 100 empty empty empty 20 12 0 14 -262144 -66577 0; #N canvas 0 22 450 300 (subpatch) 0; #X array /i/am/a/table 100 float 0; #X coords 0 1 99 -1 150 100 1 0 0; #X restore 405 480 graph; #N canvas 710 135 310 270 backup 0; #X obj 100 100 bng 15 250 50 0 empty empty click_here! 17 7 0 10 -262144 -1 -1; #X msg 100 120 vis 1; #X obj 100 142 s pd-\$0-register_flags; #X connect 0 0 1 0; #X connect 1 0 2 0; #X coords 0 -1 1 1 15 15 2 100 100; #X restore 283 567 pd backup; #X text 18 566 For more information on flags for [ds_reg]:; #X connect 7 0 10 0; #X connect 8 0 10 0; #X connect 9 0 10 0; #X connect 25 0 28 0; #X connect 26 0 28 0; #X connect 27 0 28 0; #X restore 169 632 pd \$0-registering_variables; #X obj 362 624 cnv 15 300 30 empty empty empty 20 12 0 14 -262130 -66577 0; #N canvas 56 96 757 673 \$0-multiple_domains 0; #X obj 5 24 cnv 15 370 330 empty empty empty 20 12 0 14 -228856 -66577 0; #X obj 375 24 cnv 15 370 330 empty empty empty 20 12 0 14 -204786 -66577 0; #X obj 5 4 cnv 15 740 20 empty empty Register_variables_to_another_domain 5 10 0 14 -1 -262144 0; #X obj 402 327 hsl 128 15 0 127 0 0 /i/am/from/another/domain /i/am/from/another/domain /i/am/from/another/domain -2 -8 0 10 -262144 -1 -1 3600 1; #X text 13 87 Variables are only affected by the domain they are registered to.; #X obj 5 384 cnv 15 370 280 empty empty empty 20 12 0 14 -228856 -66577 0; #X obj 375 384 cnv 15 370 280 empty empty empty 20 12 0 14 -204786 -66577 0; #X obj 5 364 cnv 15 740 20 empty empty Register_a_variable_to_multiple_domains 5 10 0 14 -1 -262144 0; #X obj 452 467 hsl 128 15 0 127 0 0 /i/belong/to/both /i/belong/to/both /i/belong/to/both -2 -8 0 10 -262144 -1 -1 500 1; #X text 401 35 Load textfile for "help2" on startup:; #N canvas 131 51 306 252 \$0-init2 0; #X obj 47 49 loadbang; #X obj 27 49 bng 15 250 50 0 empty empty empty 17 7 0 10 -262144 -1 -1; #X obj 47 73 del 1000; #X obj 47 95 t b b; #X obj 47 170 del 2000; #X msg 47 192 \; /ds/help2/scene 0 \;; #X msg 74 123 \; /ds/help2/loadfile ds_help2.txt; #X connect 0 0 2 0; #X connect 1 0 2 0; #X connect 2 0 3 0; #X connect 3 0 4 0; #X connect 3 1 6 0; #X connect 4 0 5 0; #X restore 640 34 pd \$0-init2; #X obj 208 188 bng 15 250 50 0 empty empty click_here! 17 7 0 10 -262144 -1 -1; #X msg 208 208 vis 1; #X text 401 95 Corresponding GUI:; #X text 401 65 Create logic for domain "help2":; #X text 38 186 More information on init:; #X text 390 245 Register variable to "help2":; #X text 14 42 In this example \, we add another domain to the patch. The module [ds_logic help2] adds a storage with domain "help2". Variables can be registered to it.; #X text 469 123 try it -->; #X text 377 498 try the scenes of both domains:; #X text 9 409 It is also possible to register a variable to more than one domain at the same time. Values and transitions will be saved independently. ; #X text 9 459 Most of the time you probably don't want a variable to be part of multiple domains \, as you might get in big trouble...; #X obj 208 230 s pd-\$0-parameter_list; #X obj 535 95 ds_gui help2; #X obj 390 521 ds_gui help; #X obj 553 521 ds_gui help2; #X obj 613 65 ds_logic help2; #X obj 489 271 ds_reg help2 /i/am/from/another/domain; #X obj 399 401 ds_reg help /i/belong/to/both; #X obj 399 421 ds_reg help2 /i/belong/to/both; #X connect 11 0 12 0; #X connect 12 0 22 0; #X restore 510 632 pd \$0-multiple_domains; #X obj 362 603 cnv 15 300 20 empty empty Multiple_Domains 5 10 0 14 -1 -262144 0; #X text 410 633 Look inside:; #X text 60 631 Look inside:; #X obj 41 686 cnv 15 300 30 empty empty empty 20 12 0 14 -262130 -66577 0; #X obj 41 665 cnv 15 300 20 empty empty [ds_reg]:_FLAGS 5 10 0 14 -1 -262144 0; #X text 67 693 Look inside:; #N canvas 121 22 776 756 \$0-register_flags 0; #X obj 5 1107 cnv 15 370 180 empty empty empty 20 12 0 14 -228856 -66577 0; #X obj 53 1247 bng 15 250 50 0 /ds/help/i/must/be/set/dialog /ds/help/i/must/be/set/dialog /i/must/be/set 20 7 0 10 -262144 -1 -1; #X obj 5 1571 cnv 15 370 150 empty empty empty 20 12 0 14 -228856 -66577 0; #X obj 248 1668 tgl 15 0 /ds/help/i/got/changed/change /ds/help/i/got/changed/change change 17 7 0 10 -228856 -1 -1 1 1; #X obj 74 1668 bng 15 250 50 0 /ds/help/i/got/changed/dialog /ds/help/i/got/changed/dialog /i/got/changed 20 7 0 10 -262144 -1 -1; #X obj 5 107 cnv 15 370 290 empty empty empty 20 12 0 14 -233017 -66577 0; #X text 15 116 For some types of variables \, it is never desired to morph between two states (For example lists \, symbols \, toggles \, etc.). To save computing power and keep file sizes small \, the morphing functionality can be turned off for individual variables.; #X obj 92 298 bng 15 250 50 0 /ds/help/i/am/no/morphing/variable/dialog /ds/help/i/am/no/morphing/variable/dialog /i/am/no/morphing/variable 20 7 0 10 -262144 -1 -1; #X text 15 196 The "nomorph" argument for [ds_reg] deactivates morphing for this register permanently.; #X obj 375 107 cnv 15 370 200 empty empty empty 20 12 0 14 -204786 -66577 0; #X obj 487 175 hsl 128 15 0 127 0 0 /i/am/no/morphing/variable /i/am/no/morphing/variable /i/am/no/morphing/variable -2 -8 0 10 -262144 -1 -1 0 1; #X msg 533 240 0; #X msg 563 240 1; #X msg 593 240 2; #X obj 533 266 s /ds/help/scene; #X text 409 239 Change scene here:; #X obj 375 1107 cnv 15 370 180 empty empty empty 20 12 0 14 -204786 -66577 0; #X obj 375 1571 cnv 15 370 150 empty empty empty 20 12 0 14 -204786 -66577 0; #X symbolatom 244 1257 20 0 0 0 prepend: /ds/help/i/must/be/set/data_prepend #0-dummy; #X obj 573 1242 r /i/must/be/set; #X msg 581 1186 0; #X msg 611 1186 1; #X msg 641 1186 2; #X obj 581 1212 s /ds/help/scene; #X obj 507 1156 nbx 5 14 -1e+37 1e+37 0 0 /i/must/be/set /i/must/be/set /i/must/be/set 0 -8 0 10 -262144 -1 -1 10 256; #X msg 573 1266 10; #X text 489 1264 message box:; #X obj 5 86 cnv 15 740 20 empty empty nomorph:_Turn_off_morphing_permanently 5 10 0 14 -1 -262144 0; #X obj 5 1086 cnv 15 740 20 empty empty data_prepend/data_append:_Prepend/Append_symbol_to_the_recalled_data 5 10 0 14 -1 -262144 0; #X obj 5 1550 cnv 15 740 20 empty empty change/nochange:_Only_recall_changes 5 10 0 14 -1 -262144 0; #X text 399 1185 change scene to see effect:; #X text 13 1580 Per default \, saved variables always get dispatched \, even if the recalled value does not differ from the current value. To save some computing power \, the change flag can be set to load only the differences on every recall.; #X msg 621 1672 0; #X msg 651 1672 1; #X msg 681 1672 2; #X obj 621 1698 s /ds/help/scene; #X obj 504 1639 nbx 5 14 -1e+37 1e+37 0 0 /i/got/changed /i/got/changed /i/got/changed 0 -8 0 10 -262144 -1 -1 33 256; #X obj 620 1620 r /i/got/changed; #X obj 620 1642 bng 15 250 50 0 empty empty empty 17 7 0 10 -262144 -1 -1; #X text 395 1629 change value:; #X text 392 1673 switch through scenes to see effect:; #X obj 5 1319 cnv 15 370 220 empty empty empty 20 12 0 14 -228856 -66577 0; #X obj 65 1459 bng 15 250 50 0 /ds/help/i/must/be/set/too/dialog /ds/help/i/must/be/set/too/dialog /i/must/be/set/too 20 7 0 10 -262144 -1 -1; #X obj 375 1319 cnv 15 370 220 empty empty empty 20 12 0 14 -204786 -66577 0; #X symbolatom 244 1480 20 0 0 0 append: /ds/help/i/must/be/set/too/name_append #0-dummy; #X msg 581 1478 0; #X msg 611 1478 1; #X msg 641 1478 2; #X obj 581 1504 s /ds/help/scene; #X obj 5 1298 cnv 15 740 20 empty empty name_prepend/name_append:_Prepend/Append_symbol_to_the_variable_name 5 10 0 14 -1 -262144 0; #X text 409 1477 change scene to see effect:; #X floatatom 565 1407 5 0 0 0 - - -; #X obj 565 1426 s /i/must/be/set/too; #X text 430 1406 Edit atom number box:; #X text 12 1121 It is possible to prepend or append any symbol to the recalled data \, by adding "data_prepend " or "data_append " as creation arguments to [ds_reg].; #X text 12 1333 It is possible to prepend or append any symbol to the variable name \, the data is recalled to. This is done by adding "name_prepend " or "name_append " as creation arguments to [ds_reg]. ; #X text 12 1394 This way \, for example a "/set" symbol can be appended to the variable name for recall:; #X obj 565 1385 r /i/must/be/set/too/set; #X text 13 1690 This also works if your variable contains a symbol or list.; #X text 12 1506 This combinatino of "prepend_data" and "append_name" makes it possible to recall to atom boxes without feedback.; #X obj 92 266 bng 15 250 50 0 /ds/help/advanced/vis /ds/help/advanced/vis advanced 17 7 0 10 -262144 -1 -1; #X obj 215 266 bng 15 250 50 0 /ds/help/reg/dialog /ds/help/reg/dialog register_list 17 7 0 10 -159808 -1 -1; #X text 169 264 --->; #X text 56 297 --->; #X text 12 1176 This way \, for example a "set" message can be prepended. ; #X obj 92 1204 bng 15 250 50 0 /ds/help/advanced/vis /ds/help/advanced/vis advanced 17 7 0 10 -262144 -1 -1; #X obj 215 1204 bng 15 250 50 0 /ds/help/reg/dialog /ds/help/reg/dialog register_list 17 7 0 10 -159808 -1 -1; #X text 169 1202 --->; #X text 16 1246 --->; #X obj 65 1433 bng 15 250 50 0 /ds/help/advanced/vis /ds/help/advanced/vis advanced 17 7 0 10 -262144 -1 -1; #X obj 188 1433 bng 15 250 50 0 /ds/help/reg/dialog /ds/help/reg/dialog register_list 17 7 0 10 -159808 -1 -1; #X text 142 1431 --->; #X text 31 1459 --->; #X obj 53 1641 bng 15 250 50 0 /ds/help/advanced/vis /ds/help/advanced/vis advanced 17 7 0 10 -262144 -1 -1; #X obj 176 1641 bng 15 250 50 0 /ds/help/reg/dialog /ds/help/reg/dialog register_list 17 7 0 10 -159808 -1 -1; #X text 130 1639 --->; #X text 39 1667 --->; #X text 243 1239 Data; #X text 243 1461 Name; #X text 15 233 If the "nomorph" flag is set \, the corresponding parameters in the transitino dialog will be greyed out:; #X text 15 342 They are still visible \, but will no more be saved with the storage.; #X obj 5 408 cnv 15 740 20 empty empty delay/nodelay:_Set_delay_permanently 5 10 0 14 -1 -262144 0; #X obj 5 954 cnv 15 740 20 empty empty direct:_nomorph_+_nodelay_+_noslave_+_nooccupy 5 10 0 14 -1 -262144 0; #X obj 5 590 cnv 15 740 20 empty empty slave/noslave:_Set_slave_permanently 5 10 0 14 -1 -262144 0; #X obj 5 772 cnv 15 740 20 empty empty occupy/nooccupy:_Set_occupy_permanently 5 10 0 14 -1 -262144 0; #X obj 375 307 cnv 15 370 90 empty empty empty 20 12 0 14 -261682 -66577 0; #X obj 629 322 bng 15 250 50 0 empty empty click_here! 17 7 0 10 -262144 -1 -1; #X msg 629 342 vis 1; #X obj 629 364 s pd-\$0-morph; #X text 395 330 more information on morph features:; #X obj 375 429 cnv 15 370 150 empty empty empty 20 12 0 14 -261682 -66577 0; #X obj 629 444 bng 15 250 50 0 empty empty click_here! 17 7 0 10 -262144 -1 -1; #X msg 629 464 vis 1; #X text 395 452 more information on Delay:; #X obj 629 486 s pd-\$0-delay; #X obj 5 429 cnv 15 370 150 empty empty empty 20 12 0 14 -233017 -66577 0; #X text 14 471 [ds_reg delay