85 lines
		
	
	
		
			4.6 KiB
		
	
	
	
		
			C#
		
	
	
			
		
		
	
	
			85 lines
		
	
	
		
			4.6 KiB
		
	
	
	
		
			C#
		
	
	
| using System;
 | |
| using System.Collections.Generic;
 | |
| using UnityEngine;
 | |
| using UnityEditor.SceneManagement;
 | |
| using UnityEditor;
 | |
| 
 | |
| namespace com.adjust.sdk
 | |
| {
 | |
|     [CustomEditor(typeof(Adjust))]
 | |
|     public class AdjustCustomEditor : Editor
 | |
|     {
 | |
|         private Editor settingsEditor;
 | |
| 
 | |
|         public override void OnInspectorGUI()
 | |
|         {
 | |
|             base.OnInspectorGUI();
 | |
| 
 | |
|             var adjust = target as Adjust;
 | |
|             GUIStyle darkerCyanTextFieldStyles = new GUIStyle(EditorStyles.boldLabel);
 | |
|             darkerCyanTextFieldStyles.normal.textColor = new Color(0f/255f, 190f/255f, 190f/255f);
 | |
| 
 | |
|             // Not gonna ask: http://answers.unity.com/answers/1244650/view.html
 | |
|             EditorGUILayout.Space();
 | |
|             var origFontStyle = EditorStyles.label.fontStyle;
 | |
|             EditorStyles.label.fontStyle = FontStyle.Bold;
 | |
|             adjust.startManually = EditorGUILayout.Toggle("START SDK MANUALLY", adjust.startManually, EditorStyles.toggle);
 | |
|             EditorStyles.label.fontStyle = origFontStyle;
 | |
|  
 | |
|             using (new EditorGUI.DisabledScope(adjust.startManually))
 | |
|             {
 | |
|                 EditorGUILayout.Space();
 | |
|                 EditorGUILayout.LabelField("MULTIPLATFORM SETTINGS:", darkerCyanTextFieldStyles);
 | |
|                 EditorGUI.indentLevel += 1;
 | |
|                 adjust.appToken = EditorGUILayout.TextField("App Token", adjust.appToken);
 | |
|                 adjust.environment = (AdjustEnvironment)EditorGUILayout.EnumPopup("Environment", adjust.environment);
 | |
|                 adjust.logLevel = (AdjustLogLevel)EditorGUILayout.EnumPopup("Log Level", adjust.logLevel);
 | |
|                 adjust.urlStrategy = (AdjustUrlStrategy)EditorGUILayout.EnumPopup("URL Strategy", adjust.urlStrategy);
 | |
|                 adjust.eventBuffering = EditorGUILayout.Toggle("Event Buffering", adjust.eventBuffering);
 | |
|                 adjust.sendInBackground = EditorGUILayout.Toggle("Send In Background", adjust.sendInBackground);
 | |
|                 adjust.launchDeferredDeeplink = EditorGUILayout.Toggle("Launch Deferred Deep Link", adjust.launchDeferredDeeplink);
 | |
|                 adjust.needsCost = EditorGUILayout.Toggle("Cost Data In Attribution Callback", adjust.needsCost);
 | |
|                 adjust.coppaCompliant = EditorGUILayout.Toggle("COPPA Compliant", adjust.coppaCompliant);
 | |
|                 adjust.linkMe = EditorGUILayout.Toggle("LinkMe", adjust.linkMe);
 | |
|                 adjust.defaultTracker = EditorGUILayout.TextField("Default Tracker", adjust.defaultTracker);
 | |
|                 adjust.startDelay = EditorGUILayout.DoubleField("Start Delay", adjust.startDelay);
 | |
|                 EditorGUILayout.LabelField("App Secret:", EditorStyles.label);
 | |
|                 EditorGUI.indentLevel += 1;
 | |
|                 adjust.secretId = EditorGUILayout.LongField("Secret ID", adjust.secretId);
 | |
|                 adjust.info1 = EditorGUILayout.LongField("Info 1", adjust.info1);
 | |
|                 adjust.info2 = EditorGUILayout.LongField("Info 2", adjust.info2);
 | |
|                 adjust.info3 = EditorGUILayout.LongField("Info 3", adjust.info3);
 | |
|                 adjust.info4 = EditorGUILayout.LongField("Info 4", adjust.info4);
 | |
|                 EditorGUI.indentLevel -= 2;
 | |
|                 EditorGUILayout.Space();
 | |
|                 EditorGUILayout.LabelField("ANDROID SETTINGS:", darkerCyanTextFieldStyles);
 | |
|                 EditorGUI.indentLevel += 1;
 | |
|                 adjust.preinstallTracking = EditorGUILayout.Toggle("Preinstall Tracking", adjust.preinstallTracking);
 | |
|                 adjust.preinstallFilePath = EditorGUILayout.TextField("Preinstall File Path", adjust.preinstallFilePath);
 | |
|                 adjust.playStoreKidsApp = EditorGUILayout.Toggle("Play Store Kids App", adjust.playStoreKidsApp);
 | |
|                 EditorGUI.indentLevel -= 1;
 | |
|                 EditorGUILayout.Space();
 | |
|                 EditorGUILayout.LabelField("IOS SETTINGS:", darkerCyanTextFieldStyles);
 | |
|                 EditorGUI.indentLevel += 1;
 | |
|                 adjust.adServicesInfoReading = EditorGUILayout.Toggle("AdServices Info Reading", adjust.adServicesInfoReading);
 | |
|                 adjust.idfaInfoReading = EditorGUILayout.Toggle("IDFA Info Reading", adjust.idfaInfoReading);
 | |
|                 adjust.skAdNetworkHandling = EditorGUILayout.Toggle("SKAdNetwork Handling", adjust.skAdNetworkHandling);
 | |
|                 EditorGUI.indentLevel -= 1;
 | |
|             }
 | |
| 
 | |
|             if (settingsEditor == null)
 | |
|             {
 | |
|                 settingsEditor = CreateEditor(AdjustSettings.Instance);
 | |
|             }
 | |
| 
 | |
|             settingsEditor.OnInspectorGUI();
 | |
| 
 | |
|             if (GUI.changed)
 | |
|             {
 | |
|                 EditorUtility.SetDirty(adjust);
 | |
|                 EditorSceneManager.MarkSceneDirty(adjust.gameObject.scene);
 | |
|             }
 | |
|         }
 | |
|     }
 | |
| }
 |