public void SplashSectionGUI(BuildPlayerWindow.BuildPlatform platform, BuildTargetGroup targetGroup, ISettingEditorExtension settingsExtension) { GUI.changed = false; if (this.m_Owner.BeginSettingsBox(2, PlayerSettingsSplashScreenEditor.k_Texts.title)) { if (targetGroup == BuildTargetGroup.Standalone) { PlayerSettingsSplashScreenEditor.ObjectReferencePropertyField <Texture2D>(this.m_ResolutionDialogBanner, PlayerSettingsSplashScreenEditor.k_Texts.configDialogBanner); EditorGUILayout.Space(); } if (this.m_Owner.m_VRSettings.TargetGroupSupportsVirtualReality(targetGroup)) { PlayerSettingsSplashScreenEditor.ObjectReferencePropertyField <Texture2D>(this.m_VirtualRealitySplashScreen, PlayerSettingsSplashScreenEditor.k_Texts.vrSplashScreen); } if (PlayerSettingsSplashScreenEditor.TargetSupportsOptionalBuiltinSplashScreen(targetGroup, settingsExtension)) { this.BuiltinCustomSplashScreenGUI(); } if (settingsExtension != null) { settingsExtension.SplashSectionGUI(); } if (this.m_ShowUnitySplashScreen.boolValue) { this.m_Owner.ShowSharedNote(); } } this.m_Owner.EndSettingsBox(); }
private BuildPlayerWindow.BuildPlatform[] GetBuildPlayerValidPlatforms() { List <BuildPlayerWindow.BuildPlatform> validPlatforms = BuildPlayerWindow.GetValidPlatforms(); List <BuildPlayerWindow.BuildPlatform> list2 = new List <BuildPlayerWindow.BuildPlatform>(); if (this.m_CompatibleWithEditor > Compatibility.NotCompatible) { BuildPlayerWindow.BuildPlatform item = new BuildPlayerWindow.BuildPlatform("Editor settings", "Editor Settings", "BuildSettings.Editor", BuildTargetGroup.Unknown, true) { name = BuildPipeline.GetEditorTargetName() }; list2.Add(item); } foreach (BuildPlayerWindow.BuildPlatform platform2 in validPlatforms) { if (!IgnorePlatform(platform2.DefaultTarget)) { if (platform2.targetGroup == BuildTargetGroup.Standalone) { if (this.compatibleWithStandalone < Compatibility.Compatible) { continue; } } else if ((this.m_CompatibleWithPlatform[(int)platform2.DefaultTarget] < Compatibility.Compatible) || (ModuleManager.GetPluginImporterExtension(platform2.targetGroup) == null)) { continue; } list2.Add(platform2); } } return(list2.ToArray()); }
private BuildPlayerWindow.BuildPlatform[] GetBuildPlayerValidPlatforms() { List <BuildPlayerWindow.BuildPlatform> validPlatforms = BuildPlayerWindow.GetValidPlatforms(); List <BuildPlayerWindow.BuildPlatform> list2 = new List <BuildPlayerWindow.BuildPlatform>(); if ((this.m_CompatibleWithAnyPlatform > 0) || (this.m_CompatibleWithEditor > 0)) { BuildPlayerWindow.BuildPlatform item = new BuildPlayerWindow.BuildPlatform("Editor settings", "BuildSettings.Editor", BuildTargetGroup.Unknown, true) { name = BuildPipeline.GetEditorTargetName() }; list2.Add(item); } foreach (BuildPlayerWindow.BuildPlatform platform2 in validPlatforms) { if (IgnorePlatform(platform2.DefaultTarget)) { continue; } if (platform2.targetGroup == BuildTargetGroup.Standalone) { if ((this.m_CompatibleWithAnyPlatform >= 1) || (this.compatibleWithStandalone >= 1)) { goto Label_00DD; } continue; } if (((this.m_CompatibleWithAnyPlatform < 1) && (this.m_CompatibleWithPlatform[(int)platform2.DefaultTarget] < 1)) || (ModuleManager.GetPluginImporterExtension(platform2.targetGroup) == null)) { continue; } Label_00DD: list2.Add(platform2); } return(list2.ToArray()); }
private BuildPlayerWindow.BuildPlatform[] GetBuildPlayerValidPlatforms() { List <BuildPlayerWindow.BuildPlatform> validPlatforms = BuildPlayerWindow.GetValidPlatforms(); List <BuildPlayerWindow.BuildPlatform> buildPlatformList = new List <BuildPlayerWindow.BuildPlatform>(); if (this.m_CompatibleWithAnyPlatform > 0 || this.m_CompatibleWithEditor > 0) { buildPlatformList.Add(new BuildPlayerWindow.BuildPlatform("Editor settings", "BuildSettings.Editor", BuildTargetGroup.Unknown, true) { name = BuildPipeline.GetEditorTargetName() }); } using (List <BuildPlayerWindow.BuildPlatform> .Enumerator enumerator = validPlatforms.GetEnumerator()) { while (enumerator.MoveNext()) { BuildPlayerWindow.BuildPlatform current = enumerator.Current; if (!PluginImporterInspector.IgnorePlatform(current.DefaultTarget)) { if (current.targetGroup == BuildTargetGroup.Standalone) { if (this.m_CompatibleWithAnyPlatform < 1 && this.compatibleWithStandalone < 1) { continue; } } else if (this.m_CompatibleWithAnyPlatform < 1 && this.m_CompatibleWithPlatform[(int)current.DefaultTarget] < 1 || ModuleManager.GetPluginImporterExtension(current.targetGroup) == null) { continue; } buildPlatformList.Add(current); } } } return(buildPlatformList.ToArray()); }
private int DoQualityLevelSelection(int currentQualitylevel, IList <QualitySettingsEditor.QualitySetting> qualitySettings, Dictionary <string, int> platformDefaultQualitySettings) { GUILayout.BeginHorizontal(); GUILayout.FlexibleSpace(); GUILayout.BeginVertical(); int num = currentQualitylevel; GUILayout.BeginHorizontal(); Rect rect1 = GUILayoutUtility.GetRect(GUIContent.none, QualitySettingsEditor.Styles.kToggle, new GUILayoutOption[3] { GUILayout.ExpandWidth(false), GUILayout.Width(80f), GUILayout.Height(20f) }); rect1.x += EditorGUI.indent; rect1.width -= EditorGUI.indent; GUI.Label(rect1, "Levels", EditorStyles.boldLabel); using (List <BuildPlayerWindow.BuildPlatform> .Enumerator enumerator = this.m_ValidPlatforms.GetEnumerator()) { while (enumerator.MoveNext()) { BuildPlayerWindow.BuildPlatform current = enumerator.Current; Rect rect2 = GUILayoutUtility.GetRect(GUIContent.none, QualitySettingsEditor.Styles.kToggle, new GUILayoutOption[3] { GUILayout.MinWidth(15f), GUILayout.MaxWidth(20f), GUILayout.Height(20f) }); GUIContent content = EditorGUIUtility.TempContent((Texture)current.smallIcon); content.tooltip = current.name; GUI.Label(rect2, content); content.tooltip = string.Empty; } } GUILayoutUtility.GetRect(GUIContent.none, QualitySettingsEditor.Styles.kToggle, new GUILayoutOption[3] { GUILayout.MinWidth(15f), GUILayout.MaxWidth(20f), GUILayout.Height(20f) }); GUILayout.EndHorizontal(); Event current1 = Event.current; for (int index = 0; index < qualitySettings.Count; ++index) { GUILayout.BeginHorizontal(); GUIStyle guiStyle = index % 2 != 0 ? QualitySettingsEditor.Styles.kListOddBg : QualitySettingsEditor.Styles.kListEvenBg; bool on = num == index; Rect rect2 = GUILayoutUtility.GetRect(GUIContent.none, QualitySettingsEditor.Styles.kToggle, new GUILayoutOption[2] { GUILayout.ExpandWidth(false), GUILayout.Width(80f) }); switch (current1.type) { case EventType.MouseDown: if (rect2.Contains(current1.mousePosition)) { num = index; GUIUtility.keyboardControl = 0; GUIUtility.hotControl = this.m_QualityElementHash; this.m_Dragging = new QualitySettingsEditor.Dragging() { m_StartPosition = index, m_Position = index }; current1.Use(); break; } break; case EventType.MouseUp: if (GUIUtility.hotControl == this.m_QualityElementHash) { GUIUtility.hotControl = 0; current1.Use(); break; } break; case EventType.MouseDrag: if (GUIUtility.hotControl == this.m_QualityElementHash && rect2.Contains(current1.mousePosition)) { this.m_Dragging.m_Position = index; current1.Use(); break; } break; case EventType.KeyDown: if (current1.keyCode == KeyCode.UpArrow || current1.keyCode == KeyCode.DownArrow) { num = Mathf.Clamp(num + (current1.keyCode != KeyCode.UpArrow ? 1 : -1), 0, qualitySettings.Count - 1); GUIUtility.keyboardControl = 0; current1.Use(); break; } break; case EventType.Repaint: guiStyle.Draw(rect2, GUIContent.none, false, false, on, false); GUI.Label(rect2, EditorGUIUtility.TempContent(qualitySettings[index].m_Name)); break; } using (List <BuildPlayerWindow.BuildPlatform> .Enumerator enumerator = this.m_ValidPlatforms.GetEnumerator()) { while (enumerator.MoveNext()) { BuildPlayerWindow.BuildPlatform current2 = enumerator.Current; bool flag1 = false; if (platformDefaultQualitySettings.ContainsKey(current2.name) && platformDefaultQualitySettings[current2.name] == index) { flag1 = true; } Rect rect3 = GUILayoutUtility.GetRect(QualitySettingsEditor.Styles.kPlatformTooltip, QualitySettingsEditor.Styles.kToggle, new GUILayoutOption[2] { GUILayout.MinWidth(15f), GUILayout.MaxWidth(20f) }); if (Event.current.type == EventType.Repaint) { guiStyle.Draw(rect3, GUIContent.none, false, false, on, false); } Color backgroundColor = GUI.backgroundColor; if (flag1 && !EditorApplication.isPlayingOrWillChangePlaymode) { GUI.backgroundColor = Color.green; } bool flag2 = !qualitySettings[index].m_ExcludedPlatforms.Contains(current2.name); bool flag3 = GUI.Toggle(rect3, flag2, QualitySettingsEditor.Styles.kPlatformTooltip, !flag1 ? QualitySettingsEditor.Styles.kToggle : QualitySettingsEditor.Styles.kDefaultToggle); if (flag2 != flag3) { if (flag3) { qualitySettings[index].m_ExcludedPlatforms.Remove(current2.name); } else { qualitySettings[index].m_ExcludedPlatforms.Add(current2.name); } } GUI.backgroundColor = backgroundColor; } } Rect rect4 = GUILayoutUtility.GetRect(GUIContent.none, QualitySettingsEditor.Styles.kToggle, new GUILayoutOption[2] { GUILayout.MinWidth(15f), GUILayout.MaxWidth(20f) }); if (Event.current.type == EventType.Repaint) { guiStyle.Draw(rect4, GUIContent.none, false, false, on, false); } if (GUI.Button(rect4, QualitySettingsEditor.Styles.kIconTrash, GUIStyle.none)) { this.m_DeleteLevel = index; } GUILayout.EndHorizontal(); } GUILayout.BeginHorizontal(); GUILayoutUtility.GetRect(GUIContent.none, QualitySettingsEditor.Styles.kToggle, new GUILayoutOption[3] { GUILayout.MinWidth(15f), GUILayout.MaxWidth(20f), GUILayout.Height(1f) }); QualitySettingsEditor.DrawHorizontalDivider(); GUILayout.EndHorizontal(); GUILayout.BeginHorizontal(); Rect rect5 = GUILayoutUtility.GetRect(GUIContent.none, QualitySettingsEditor.Styles.kToggle, new GUILayoutOption[3] { GUILayout.ExpandWidth(false), GUILayout.Width(80f), GUILayout.Height(20f) }); rect5.x += EditorGUI.indent; rect5.width -= EditorGUI.indent; GUI.Label(rect5, "Default", EditorStyles.boldLabel); using (List <BuildPlayerWindow.BuildPlatform> .Enumerator enumerator = this.m_ValidPlatforms.GetEnumerator()) { while (enumerator.MoveNext()) { BuildPlayerWindow.BuildPlatform current2 = enumerator.Current; Rect rect2 = GUILayoutUtility.GetRect(GUIContent.none, QualitySettingsEditor.Styles.kToggle, new GUILayoutOption[3] { GUILayout.MinWidth(15f), GUILayout.MaxWidth(20f), GUILayout.Height(20f) }); int selectedIndex; if (!platformDefaultQualitySettings.TryGetValue(current2.name, out selectedIndex)) { platformDefaultQualitySettings.Add(current2.name, 0); } selectedIndex = EditorGUI.Popup(rect2, selectedIndex, qualitySettings.Select <QualitySettingsEditor.QualitySetting, string>((Func <QualitySettingsEditor.QualitySetting, string>)(x => x.m_Name)).ToArray <string>(), QualitySettingsEditor.Styles.kDefaultDropdown); platformDefaultQualitySettings[current2.name] = selectedIndex; } } GUILayout.EndHorizontal(); GUILayout.Space(10f); GUILayout.BeginHorizontal(); GUILayoutUtility.GetRect(GUIContent.none, QualitySettingsEditor.Styles.kToggle, new GUILayoutOption[3] { GUILayout.MinWidth(15f), GUILayout.MaxWidth(20f), GUILayout.Height(20f) }); if (GUI.Button(GUILayoutUtility.GetRect(GUIContent.none, QualitySettingsEditor.Styles.kToggle, new GUILayoutOption[1] { GUILayout.ExpandWidth(true) }), EditorGUIUtility.TempContent("Add Quality Level"))) { this.m_ShouldAddNewLevel = true; } GUILayout.EndHorizontal(); GUILayout.EndVertical(); GUILayout.FlexibleSpace(); GUILayout.EndHorizontal(); return(num); }