74 lines
3.6 KiB
C#
74 lines
3.6 KiB
C#
using System;
|
|
using System.Collections.Generic;
|
|
using UnityEngine;
|
|
using UnityEditor.SceneManagement;
|
|
using UnityEditor;
|
|
|
|
namespace AdjustSdk
|
|
{
|
|
[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);
|
|
// TODO: URL strategy missing
|
|
adjust.sendInBackground = EditorGUILayout.Toggle("Send In Background", adjust.sendInBackground);
|
|
adjust.launchDeferredDeeplink = EditorGUILayout.Toggle("Launch Deferred Deep Link", adjust.launchDeferredDeeplink);
|
|
adjust.costDataInAttribution = EditorGUILayout.Toggle("Cost Data In Attribution Callback", adjust.costDataInAttribution);
|
|
adjust.linkMe = EditorGUILayout.Toggle("LinkMe", adjust.linkMe);
|
|
adjust.defaultTracker = EditorGUILayout.TextField("Default Tracker", adjust.defaultTracker);
|
|
EditorGUI.indentLevel -= 1;
|
|
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);
|
|
EditorGUI.indentLevel -= 1;
|
|
EditorGUILayout.Space();
|
|
EditorGUILayout.LabelField("IOS SETTINGS:", darkerCyanTextFieldStyles);
|
|
EditorGUI.indentLevel += 1;
|
|
adjust.adServices = EditorGUILayout.Toggle("AdServices Info Reading", adjust.adServices);
|
|
adjust.idfaReading = EditorGUILayout.Toggle("IDFA Info Reading", adjust.idfaReading);
|
|
adjust.skanAttribution = EditorGUILayout.Toggle("SKAdNetwork Handling", adjust.skanAttribution);
|
|
EditorGUI.indentLevel -= 1;
|
|
}
|
|
|
|
if (settingsEditor == null)
|
|
{
|
|
settingsEditor = CreateEditor(AdjustSettings.Instance);
|
|
}
|
|
|
|
settingsEditor.OnInspectorGUI();
|
|
|
|
if (GUI.changed)
|
|
{
|
|
EditorUtility.SetDirty(adjust);
|
|
EditorSceneManager.MarkSceneDirty(adjust.gameObject.scene);
|
|
}
|
|
}
|
|
}
|
|
}
|