private void ToggleAllProperties(FolderToPresetData folderToPresetData, Preset preset, bool enabled)
        {
            for (int i = 0; i < preset.PropertyModifications.Length; i++)
            {
                PropertyModification presetPropertyModification = preset.PropertyModifications[i];
                folderToPresetData.SetSettingEnabled(presetPropertyModification.propertyPath, enabled);
            }

            EditorUtility.SetDirty(presetManagerStorage);
        }
        private void DrawPresetOptions(int index, FolderToPresetData folderToPresetData, Preset preset)
        {
            EditorGUI.indentLevel++;

            if (foldoutPerSettings == null)
            {
                foldoutPerSettings = new bool[presetManagerStorage.FoldersPresets.Count];
            }

            foldoutPerSettings[index] = EditorGUILayout.Foldout(foldoutPerSettings[index],
                                                                "Customize Parameters", EditorStyles.foldout);

            if (foldoutPerSettings[index])
            {
                for (int i = 0; i < preset.PropertyModifications.Length; i++)
                {
                    PropertyModification propertyModification = preset.PropertyModifications[i];

                    EditorGUI.BeginChangeCheck();
                    bool settingEnabled = folderToPresetData.IsSettingEnabled(propertyModification.propertyPath);
                    settingEnabled = EditorGUILayout.ToggleLeft(propertyModification.propertyPath, settingEnabled);
                    if (EditorGUI.EndChangeCheck())
                    {
                        folderToPresetData.SetSettingEnabled(propertyModification.propertyPath, settingEnabled);
                        EditorUtility.SetDirty(presetManagerStorage);
                    }
                }

                EditorGUILayout.BeginHorizontal();
                if (GUILayout.Button("Select All", EditorStyles.toolbarButton))
                {
                    ToggleAllProperties(folderToPresetData, preset, true);
                }

                if (GUILayout.Button("Unselect All", EditorStyles.toolbarButton))
                {
                    ToggleAllProperties(folderToPresetData, preset, false);
                }
                EditorGUILayout.EndHorizontal();
            }

            if (GUILayout.Button("Delete", EditorStyles.toolbarButton))
            {
                presetManagerStorage.FoldersPresets.Remove(folderToPresetData);
            }

            EditorGUI.indentLevel--;
        }