## Presets and how to create them? (SDK 7)

Scope and XITE Development

Original topic on PlanetZ: https://forums.scopeusers.com/viewtopic.php?t=35552

#### Presets and how to create them? (SDK 7)

Posted: Wed May 30, 2018 12:14 am
by DragonSF
Question: In my new device, I can drag and drop vars into the parameter list. But how can I create presets for those parameters? I've been reading the SDK docs from start to end (and vice versa) and am not a bit wiser. The doc touches the topic, but doesn't explain, how to do this. Any samples/help is appreciated.

#### Re: Presets and how to create them? (SDK 7)

Posted: Wed May 30, 2018 11:47 pm
by RA
Select your device. Open both parameterlist and presetlist. Freeze them. Now...in the left column of parameterlist initialize tree(right click) dunno how it is called exactly...at work here haha. Now you get a folder with all your vars sorted. Drag and drop that folder to your presetlist(make new list if it doesnt already exist....in your project tree you should see a go for the preset list. You should get a list of your vars and parameters in that list. Save your device and just to be sure reload it. It should now be capable of saving presets. Hope it helps a bit...cause yes...it is a pain in the ass to figure out
If you fail...ill check later today for the exact procedure and names.

#### Re: Presets and how to create them? (SDK 7)

Posted: Wed May 30, 2018 11:53 pm
by DragonSF
After reading the rough doc, I found one point: there is no presetlist. I see the green checks, which can be switch on or off, but no list.
OK, after re-installing the list seems to be there. I'll try again.

#### Re: Presets and how to create them? (SDK 7)

Posted: Thu May 31, 2018 12:35 am
by RA
In the presetlist window....create a new one. That creates a default go or module for the device.

#### Re: Presets and how to create them? (SDK 7)

Posted: Thu May 31, 2018 3:39 am
by DragonSF
Problem: there was no preset-list window. Now it is.I hope it's getting done with your hints.

#### Re: Presets and how to create them? (SDK 7)

Posted: Thu May 31, 2018 4:24 am
by DragonSF
OK, now I can create the list and store the data, but can't recall any preset (by clicking on the P) in the preset list. Am I missing something?
Also, after reopening the project, I can't open the preset-list from the surface anymore!?

#### Re: Presets and how to create them? (SDK 7)

Posted: Thu May 31, 2018 7:49 am
by RA
Did you save your device and loaded the newly saved device in your project to check the workings?
Else i could make a reader on this

#### Re: Presets and how to create them? (SDK 7)

Posted: Thu May 31, 2018 2:31 pm
by DragonSF
Saved, reloaded, restarted - did everything I could think of.

#### Re: Presets and how to create them? (SDK 7)

Posted: Thu May 31, 2018 4:24 pm
by DragonSF
I also followed these instructions (to no avail other that I now can open the PL at will):
10. Close the 'PresetParameterList' window.
11. Select the newly created PresetList in the Project Explorer.
12. Go to the PadList & drag the 2 parameters named 'PresetList1' & 'PresetList2' accross to the 'Parameter' list.
13. Making sure the presetlist is still selected, drag the LastRestoredPreset pad in the PadList accross to the 'Parameter' list.
14. Rename the 'LastRestoredPreset' parameter to 'cwLastRestoredPreset'.
15. Connect the presetlist button 'val' parameter on your device surface panel to the PresetList 'show' parameter.
16. Save your project, then delete all circuit gos or optimize 4 XTC, protect then save parent module as mdl or dev.
17. Close sdk not saving on way out & open Scope.
18. Load your new module & open it's preset list window.
19. Create a new bank with your default/factory pres inside it, then save the new bank as a .pre in your Scope presets folder.

#### Re: Presets and how to create them? (SDK 7)

Posted: Sat Jun 02, 2018 1:17 am
by DragonSF
After 2 days of fiddling:
Steps 12-15 are not necessary. Presets don't work with values on the surface. Some magic parameters (ShowPreset and cwMidiChannels) have to be present in the parameter-list. And most important: the device must ne protected. In that way, I could restore presets.

#### Re: Presets and how to create them? (SDK 7)

Posted: Sat Jun 02, 2018 10:16 am
by RA
Hi dragonsf, my kids slurped all my time.
Good to read that you got it working for you. Although it works different for me and i dont have to protect nor include magic parameters to get it working. Still...im gonna make a reader on this so you can try. Hopefully it will be of some help in the future. Also you dont want it to work with the parameters on the surface...connect those to dummy pads...and save the dummypads instead. This way if you change surface knobs and buttons you keep compatibility.

#### Re: Presets and how to create them? (SDK 7)

Posted: Sat Jun 02, 2018 3:36 pm
by DragonSF
Hi RA, you're right. I got it also working in unprotected mode. Don't know, how I did it, but it's OK now. And thanks for the dummy pad advice, that helps.

#### Re: Presets and how to create them? (SDK 7)

Posted: Mon Jun 04, 2018 1:37 pm
by RA
I have started to make some readers on the SDK, which can be found here:
http://dnamusic.nl/dNa.Scope/index.php/ ... s-n-tricks
Maybe you can check if all works out for you. Thanks!
I will be making some more in the next couple of days i hope

#### Re: Presets and how to create them? (SDK 7)

Posted: Mon Jun 04, 2018 1:42 pm
by garyb
wow! that's great!

#### Re: Presets and how to create them? (SDK 7)

Posted: Mon Jun 04, 2018 3:50 pm
by DragonSF
Thanks, quite useful. On SDK 5/7 the controls/menus look slightly different. And there are not 'Dummy Pads' anymore. Instead use 'Audio or Control Pad'. One question regarding GUI: how did you move the controls on the panel? I'm not able to do this with the mouse, I have to use the 'Dimesion' tool. Yes, I'm in surface mode. Maybe there is a trick to do that.

#### Re: Presets and how to create them? (SDK 7)

Posted: Mon Jun 04, 2018 8:33 pm
by RA
As you can see in the reader on dummypads i use the audio and/or control pad to make dummy pads.
For moving stuff on the panel...goto surface mode and with the cursor in move or edit mode i can move gui parts around

#### Re: Presets and how to create them? (SDK 7)

Posted: Tue Jun 05, 2018 1:39 am
by DragonSF

> RA wrote: ↑Mon Jun 04, 2018 8:33 pm As you can see in the reader on dummypads i use the audio and/or control pad to make dummy pads.
> For moving stuff on the panel...goto surface mode and with the cursor in move or edit mode i can move gui parts around

That's what I thought, but nothing's moving.

#### Re: Presets and how to create them? (SDK 7)

Posted: Tue Jun 05, 2018 2:38 am
by RA
There is another hidden option when you right click the panel module...think it is hidden there...or the surface interface module connected to panel...disable move...maybe that flag or another is causing this.
Or what you can do...open a basic empty effect or something....and copy all your stuff into that panel...does it work then? Gui editing is one of the harder things todo in sdk.

#### Re: Presets and how to create them? (SDK 7)

Posted: Tue Jun 05, 2018 4:21 am
by DragonSF
Right clicking and changing the flags: no avail. Creating an emty effect: all the controls are outside the panel, they move with the panel, but can't be moved inside.

#### Re: Presets and how to create them? (SDK 7)

Posted: Tue Jun 05, 2018 5:35 am
by RA
Try to unset the custom vert and horiz size....so the viewtree group to auto. Do this in the GO editor. Probably there is a clip select flag set to the panel or group and the size is incorrectly set. Together with the clip select this can be the problem. Clip select means you cannot select outside the group.

#### Re: Presets and how to create them? (SDK 7)

Posted: Tue Jun 05, 2018 11:38 am
by sunmachine
IIRC you have to be on the topmost level of your circuit to be able to move the controls onto the panel.
So try this:
- Goto to the topmost level in Circuit mode
- Switch to Surface mode and Move mode
- Drag the control to the panel

#### Re: Presets and how to create them? (SDK 7)

Posted: Tue Jun 05, 2018 12:11 pm
by RA
Actually, i can move controls inside groups that are in the panel, so in the sdk4 you dont have to be in top level. Just as extra info

#### Re: Presets and how to create them? (SDK 7)

Posted: Wed Jun 06, 2018 3:56 am
by DragonSF
I can't see any custom size and no auto. And also no GO Editor.
If you refer to 'GO' Tree: yes this exists, but only the 'visible' and 'position origion' check do anything. If I change 'type' the panel vanishes for good.

#### Re: Presets and how to create them? (SDK 7)

Posted: Wed Jun 06, 2018 5:17 am
by RA
Oh right...it called different in 7. Will check for you later

#### Re: Presets and how to create them? (SDK 7)

Posted: Mon Jun 11, 2018 11:07 am
by RA
Okay DragonSF,
it is called the same in SDK7, but some things in the GO editor, actually it is called GO-Tree, are a bit fiddly.
The parameters which are of special interest are:
ViewTree Group(VTG),
Custom Horizontal Size(CHS)
Custom Vertical Size(CVS).
These interact. I'll explain how to use them:
1-Make sure you have your project onscreen, so viewing all the way up, not looking into devices. You should also see the in and outputs of the card/xite.
2-Enter your device/doubleclick on it. You will now see your circuits and you should also see a SurfaceInterface module connected to Panel module, aka your main GUI.
3-Don't enter any sub modules, but just switch from circuit mode to surface mode. You should now see your main GUI on screen!
4-Select(not enter) the main panel object/background and open your GO-Tree window; it will show a panel folder, with a ClientArea subfolder inside.
5-See the attached screenshot of such a ViewTree. You see that the Panel folder(GO-Tree), is a group containing your ClientArea. In the actual module, as shown in your Project explorer will have more elements such as knobs, faders, controllers, text etc. You can also group elements or objects on your GUI for keeping them together while moving for example. Groups can be very handy. In Surface mode They are the equivalent of folders in the Circuit mode.
6-When things are grouped, certain flags on the GO-Tree editor are set by default. To cut things short: while you are developing your device and the GUI is not finished, the flags on a group, and also the main panel one!: VTG should be enabled, and the CHS and CVS should be enabled.
The ViewTree option, makes the group as large as is needed to included ALL it's siblings. Also the ones which are placed outside a panel, or you placed it outside the group when it didn't have the correct dimensions! (this is how you lose controls from screen when moving them around when the size is fixed and things are clipped. I'll come back to this later on)
So while developing: VTG on, CHS and CVS off.
When your finished: Watch order!!!!! CHS and CVS on, and then VTG off. NOT the other way around!
The CHS and CVS will be set to current size, including the siblings/elements of the group.
Now: Select Clipping, will make sure a user cannot select outside that group's dimensions. It is possible to place things outside a group after the size has been set to custom. That is....if DrawClipping isn't enabled. DrawClipping will make sure that elements outside the groups dimension are not drawn onto screen, they are invisible (if size is at custom). You CAN enter any group, and the elements hidden or outside a group can be seen after entering a group. This is all done in surface mode!
When you finalize your device, you should first check and optimize. Probably you will get a lot of ViewTree messages. We have all seen them. Make sure you set ALL the groups to correct parameters. So...select a group, enable CHS and CVS and then disable VTG. If you have done that all correct, and thought about the SelectClipping and DrawClipping you should have a fast GUI as far as user experience goes.

  GO-Tree.png (12.03 KiB) Viewed 5008 times

#### Re: Presets and how to create them? (SDK 7)

Posted: Mon Jun 11, 2018 3:54 pm
by DragonSF
Thanks, that helped a lot. But it didn't work, until I switched to project window 2 and put this into surface mode too. The most important part is, that you have to be inside the module/device.