private void UrlTypesSettings() { using (new SA_WindowBlockWithSpace(new GUIContent("URL Types"))) { SA_EditorGUILayout.ReorderablList(ISN_Settings.Instance.UrlTypes, (ISN_UIUrlType url) => { return(url.Identifier); }, (ISN_UIUrlType url) => { EditorGUILayout.BeginHorizontal(); EditorGUILayout.LabelField("Identifier"); url.Identifier = EditorGUILayout.TextField(url.Identifier); EditorGUILayout.EndHorizontal(); for (int i = 0; i < url.Schemes.Count; i++) { EditorGUILayout.BeginHorizontal(); EditorGUILayout.LabelField("Scheme " + i.ToString()); url.Schemes[i] = EditorGUILayout.TextField(url.Schemes[i]); bool plus = GUILayout.Button("+", EditorStyles.miniButtonLeft, GUILayout.Width(20)); if (plus) { url.AddSchemes("url_sheme"); } bool rem = GUILayout.Button("-", EditorStyles.miniButtonLeft, GUILayout.Width(20)); if (rem) { url.Schemes.Remove(url.Schemes[i]); return; } EditorGUILayout.EndHorizontal(); } }, () => { ISN_UIUrlType newUlr = new ISN_UIUrlType(Application.identifier); newUlr.AddSchemes("url_sheme"); ISN_Settings.Instance.UrlTypes.Add(newUlr); }); } }
protected override void OnServiceUI() { using (new SA_WindowBlockWithSpace(new GUIContent("Protecting the User's Privacy"))) { EditorGUILayout.HelpBox("Once you link with iOS 10 you must declare access to any user private data types. " + "Since by default Unity includes libraries that may access API user private data, " + "the app info.plist mus contains the key's spsifayed bellow. " + "How ever user will only see this message if you call API that requires private permission. " + "If you not using such API, you can leave it as is.", MessageType.Info); using (new SA_GuiBeginHorizontal()) { GUILayout.FlexibleSpace(); bool click = m_privacyLink.DrawWithCalcSize(); if (click) { Application.OpenURL("https://developer.apple.com/documentation/uikit/core_app/protecting_the_user_s_privacy?language=objc"); } } ISN_Settings.Instance.CameraUsageDescriptionEnabled = SA_EditorGUILayout.ToggleFiled(CameraUsageDescription, ISN_Settings.Instance.CameraUsageDescriptionEnabled, SA_StyledToggle.ToggleType.EnabledDisabled); using (new SA_GuiEnable(ISN_Settings.Instance.CameraUsageDescriptionEnabled)) { using (new SA_GuiIndentLevel(1)) { ISN_Settings.Instance.CameraUsageDescription = EditorGUILayout.TextArea(ISN_Settings.Instance.CameraUsageDescription, SA_PluginSettingsWindowStyles.TextArea, GUILayout.Height(30)); } } EditorGUILayout.Space(); ISN_Settings.Instance.PhotoLibraryUsageDescriptionEnabled = SA_EditorGUILayout.ToggleFiled(PhotoLibraryUsageDescription, ISN_Settings.Instance.PhotoLibraryUsageDescriptionEnabled, SA_StyledToggle.ToggleType.EnabledDisabled); using (new SA_GuiEnable(ISN_Settings.Instance.PhotoLibraryUsageDescriptionEnabled)) { using (new SA_GuiIndentLevel(1)) { ISN_Settings.Instance.PhotoLibraryUsageDescription = EditorGUILayout.TextArea(ISN_Settings.Instance.PhotoLibraryUsageDescription, SA_PluginSettingsWindowStyles.TextArea, GUILayout.Height(30)); } } EditorGUILayout.Space(); ISN_Settings.Instance.PhotoLibraryAddUsageDescriptionEnabled = SA_EditorGUILayout.ToggleFiled(PhotoLibraryAddUsageDescription, ISN_Settings.Instance.PhotoLibraryAddUsageDescriptionEnabled, SA_StyledToggle.ToggleType.EnabledDisabled); using (new SA_GuiEnable(ISN_Settings.Instance.PhotoLibraryAddUsageDescriptionEnabled)) { using (new SA_GuiIndentLevel(1)) { ISN_Settings.Instance.PhotoLibraryAddUsageDescription = EditorGUILayout.TextArea(ISN_Settings.Instance.PhotoLibraryAddUsageDescription, SA_PluginSettingsWindowStyles.TextArea, GUILayout.Height(30)); } } EditorGUILayout.Space(); ISN_Settings.Instance.MicrophoneUsageDescriptionEnabled = SA_EditorGUILayout.ToggleFiled(MicrophoneUsageDescription, ISN_Settings.Instance.MicrophoneUsageDescriptionEnabled, SA_StyledToggle.ToggleType.EnabledDisabled); using (new SA_GuiEnable(ISN_Settings.Instance.MicrophoneUsageDescriptionEnabled)) { using (new SA_GuiIndentLevel(1)) { ISN_Settings.Instance.MicrophoneUsageDescription = EditorGUILayout.TextArea(ISN_Settings.Instance.MicrophoneUsageDescription, SA_PluginSettingsWindowStyles.TextArea, GUILayout.Height(30)); } } } using (new SA_WindowBlockWithSpace(new GUIContent("Allowed schemes to query"))) { SA_EditorGUILayout.ReorderablList(ISN_Settings.Instance.ApplicationQueriesSchemes, (ISN_UIUrlType scheme) => { return(scheme.Identifier); }, (ISN_UIUrlType scheme) => { EditorGUILayout.BeginHorizontal(); EditorGUILayout.LabelField("Identifier"); scheme.Identifier = EditorGUILayout.TextField(scheme.Identifier); EditorGUILayout.EndHorizontal(); }, () => { ISN_UIUrlType newUlr = new ISN_UIUrlType("url_sheme"); ISN_Settings.Instance.ApplicationQueriesSchemes.Add(newUlr); }); } }