/// <summary> /// Draws the tabs. /// </summary> protected void DrawTabs() { selectedTab = GUILayout.SelectionGrid(selectedTab, _tabs, 3, EditorStyles.toolbarButton); switch (selectedTab) { case 0: EditorGUILayoutUtilities.FloatFieldProperty(selectedPreset.MaxValue); EditorGUILayoutUtilities.SliderWithMax(selectedPreset.IncreaseInterval, 1, MaxIncreaseInterval); EditorGUILayoutUtilities.SliderWithMax(selectedPreset.IncreaseAmount, 1, Settings.MaxValue); EditorGUILayoutUtilities.SliderWithMax(selectedPreset.BeginDehydrationPercentage, 1, 100); break; case 1: selectedPreset.UseSounds.boolValue = EditorGUILayout.BeginToggleGroup(selectedPreset.UseSounds.displayName, selectedPreset.UseSounds.boolValue); EditorGUI.indentLevel = 1; EditorGUILayout.PropertyField(selectedPreset.DehydrationAudioClip); EditorGUI.indentLevel = 0; EditorGUILayout.EndToggleGroup(); break; case 2: serializedObject.Update(); EditorGUILayout.PropertyField(onThirstChanged); EditorGUILayout.PropertyField(onDehydrationBegin); EditorGUILayout.PropertyField(onDehydrationStop); EditorGUILayout.PropertyField(onExtraThirstIncreaseAmountChanged); if (GUI.changed) { serializedObject.ApplyModifiedProperties(); } break; } }
/// <summary> /// Draws the header. /// </summary> protected override void DrawHeader() { serializedObject.Update(); EditorGUILayout.BeginHorizontal(EditorStyles.toolbarButton); EditorGUILayoutUtilities.ToggleLeft(useProp); // Make some space between the [Use Setting] toggle and the preset selector. This does so the preset selector will stick to the right side. GUILayout.FlexibleSpace(); DrawPresetSelector(); EditorGUILayout.EndHorizontal(); if (GUI.changed) { serializedObject.ApplyModifiedProperties(); } }