56 lines
		
	
	
		
			2.2 KiB
		
	
	
	
		
			C#
		
	
	
	
		
		
			
		
	
	
			56 lines
		
	
	
		
			2.2 KiB
		
	
	
	
		
			C#
		
	
	
	
|  | using UnityEditor; | |||
|  | using UnityEngine; | |||
|  | using UnityEngine.SceneManagement; | |||
|  | using System; | |||
|  | using System.Collections; | |||
|  | using ES3Internal; | |||
|  | 
 | |||
|  | namespace ES3Editor | |||
|  | { | |||
|  | 	public static class ES3SettingsEditor | |||
|  | 	{ | |||
|  | 		public static void Draw(ES3SerializableSettings settings) | |||
|  | 		{ | |||
|  | 			var style = EditorStyle.Get; | |||
|  | 
 | |||
|  | 			settings.location = (ES3.Location)EditorGUILayout.EnumPopup("Location", settings.location); | |||
|  | 			// If the location is File, show the Directory. | |||
|  | 			if(settings.location == ES3.Location.File) | |||
|  | 				settings.directory = (ES3.Directory)EditorGUILayout.EnumPopup("Directory", settings.directory); | |||
|  | 
 | |||
|  | 			settings.path = EditorGUILayout.TextField("Default File Path", settings.path); | |||
|  | 
 | |||
|  | 			EditorGUILayout.Space(); | |||
|  | 
 | |||
|  | 			settings.encryptionType = (ES3.EncryptionType)EditorGUILayout.EnumPopup("Encryption", settings.encryptionType); | |||
|  | 			settings.encryptionPassword = EditorGUILayout.TextField("Encryption Password", settings.encryptionPassword); | |||
|  | 
 | |||
|  |             EditorGUILayout.Space(); | |||
|  | 
 | |||
|  |             settings.compressionType = (ES3.CompressionType)EditorGUILayout.EnumPopup("Compression", settings.compressionType); | |||
|  | 
 | |||
|  |             EditorGUILayout.Space(); | |||
|  | 			 | |||
|  | 			settings.saveChildren = EditorGUILayout.Toggle("Save GameObject Children", settings.saveChildren); | |||
|  | 			 | |||
|  | 			EditorGUILayout.Space(); | |||
|  | 
 | |||
|  | 			if(settings.showAdvancedSettings = EditorGUILayout.Foldout(settings.showAdvancedSettings, "Advanced Settings")) | |||
|  | 			{ | |||
|  | 				EditorGUILayout.BeginVertical(style.area); | |||
|  | 
 | |||
|  | 				settings.format = (ES3.Format)EditorGUILayout.EnumPopup("Format", settings.format); | |||
|  |                 if (settings.format == ES3.Format.JSON) | |||
|  |                     settings.prettyPrint = EditorGUILayout.Toggle(new GUIContent("Pretty print JSON"), settings.prettyPrint); | |||
|  | 				settings.bufferSize = EditorGUILayout.IntField("Buffer Size", settings.bufferSize); | |||
|  | 				settings.memberReferenceMode = (ES3.ReferenceMode)EditorGUILayout.EnumPopup("Serialise Unity Object fields", settings.memberReferenceMode); | |||
|  |                 settings.serializationDepthLimit = EditorGUILayout.IntField("Serialisation Depth", settings.serializationDepthLimit); | |||
|  | 
 | |||
|  |                 EditorGUILayout.Space(); | |||
|  | 
 | |||
|  | 				EditorGUILayout.EndVertical(); | |||
|  | 			} | |||
|  | 		} | |||
|  |     } | |||
|  | } |