mConfig (the external Mistika Setup tool with a dedicated icon on the desktop) permits to save several settings with a preset name, while other settings are global (typically hardware related) and do not depend on the current preset.
The preset system is flexible in order to suite as most workflows as possible, but it requires to know the rules that are in place.
There are two type of settings in mConfig:
Global settings: mConfig settings without the star label "*" are not preset depended. For example, if you change the video board model it will be changed for all presets.
Preset dependent settings: mConfig settings labeled with a star symbol "*" can be saved for each preset. But they are not "obligatory" to be saved. These are the rules:
- If you change a starred * setting (for example the projects path), the new value will be used until loading a preset that had a saved value for that particular setting.
- Only when you press the "Save Preset" button is when the starred * settings with their current values are explicitly saved for the selected preset. And only then is when that preset will remember that values the next time you select it.
- As a difference, if you change any of the starred (*) settings but you just press Ok without saving the preset, then the current settings are applied for next mistika sessions, but only temporally. As the current set of values have not been saved with any preset (not even the current one), they will be lost as soon as you load another preset containing different values for them
- The contextual "Propagate" function (put the pointer in one of the starred (*) settings and use "Right mouse button->Propagate to all presets") permits to save the current setting for all presets. This is equivalent to load all presets one by one, changing the value and saving each preset manually. (Changing some sensitive fields may also trigger a dialog asking you if you really want to propagate the new value to all other presets, and also other variables that can be tightly related to what you are changing)
A typical case of starred * setting is the "Project Path" setting. Some users may want the file paths to remain the same for all presets, while other users may want to have different projects locations for different presets. Both things are possible by using the above rules. Example:
Let's suppose we start with a clean installation, and we have four presets. Preset1, Preset2, Preset3, and Preset4.
Let's say that the default projects path (which can be selected at installation time) is /MISTIKA_PROJECTS, but by the moment it has not been saved with any preset. (It is just a default value)
Now let's suppopse that we are initially in Preset1 and we make this change:
Projects path = /MyProjects
The system will ask if you want to propagate that value to other presets. For this example anser No.
Now save Preset1 by using SavePreset button.
At this point, only Preset1 have the /MyProjects path explicitly defined for it. But when loading any other preset it will also use the same value, because the Projects path have not been specifically saved for it. So from this point the projects path will still remain as /MyProjects, no matter what preset you select.
Now let's say that we go to Preset2, set Projects to /MyProjects2, and save the Preset2 preset.
From this point:
- Whenever we load Preset1 the projects path we will set to/MyProjects
- Whenever we load Preset2, the projects path we will set to /MyProjects2
- But if we load Preset3 or Preset4, the projects path will simply not change. It will stay in the last value that was loaded by a previous preset. This is because Preset3 and Preset4 have no saved value for this field, so they do not overwrite the current value.
Now let´s say that you select Preset1, change projects path to /MySharedProjects, and save preset. But this time you answer yes to the propagate presets question. From this point, all presets will have the /MySharedProjects path defined for them, so it will be the only projects path for all cases.
Finally, let's say that now we set Preset4 to /MyProjects4, and save it (with no propagation).
From this point, whenever you load Preset4 it will always load /MyProjects4 as the projects path, while all other presets will always load /MySharedProjects as the projects path. (please note the difference with the previous example: Now there are no presets with undefined paths, so no preset will stay "in the current value")