UnityEditor.AboutWindow.OnGUI C# (CSharp) Method

OnGUI() public method

public OnGUI ( ) : void
return void
        public void OnGUI()
        {
            LoadLogos();
            GUILayout.Space(10f);
            GUILayout.BeginHorizontal(new GUILayoutOption[0]);
            GUILayout.Space(5f);
            GUILayout.BeginVertical(new GUILayoutOption[0]);
            GUILayout.FlexibleSpace();
            GUILayout.Label(s_Header, GUIStyle.none, new GUILayoutOption[0]);
            this.ListenForSecretCodes();
            string str = "";
            if (InternalEditorUtility.HasFreeLicense())
            {
                str = " Personal";
            }
            if (InternalEditorUtility.HasEduLicense())
            {
                str = " Edu";
            }
            GUILayout.BeginHorizontal(new GUILayoutOption[0]);
            GUILayout.Space(52f);
            string str2 = this.FormatExtensionVersionString();
            this.m_ShowDetailedVersion |= Event.current.alt;
            if (this.m_ShowDetailedVersion)
            {
                int unityVersionDate = InternalEditorUtility.GetUnityVersionDate();
                DateTime time = new DateTime(0x7b2, 1, 1, 0, 0, 0, 0);
                string unityBuildBranch = InternalEditorUtility.GetUnityBuildBranch();
                string str4 = "";
                if (unityBuildBranch.Length > 0)
                {
                    str4 = "Branch: " + unityBuildBranch;
                }
                object[] args = new object[] { InternalEditorUtility.GetFullUnityVersion(), str, str2, time.AddSeconds((double) unityVersionDate), str4 };
                GUILayoutOption[] options = new GUILayoutOption[] { GUILayout.Width(400f), GUILayout.Height(42f) };
                EditorGUILayout.SelectableLabel(string.Format("Version {0}{1}{2}\n{3:r}\n{4}", args), options);
                this.m_TextInitialYPos = 108f;
            }
            else
            {
                GUILayout.Label(string.Format("Version {0}{1}{2}", Application.unityVersion, str, str2), new GUILayoutOption[0]);
            }
            if (Event.current.type != EventType.ValidateCommand)
            {
                GUILayout.EndHorizontal();
                GUILayout.Space(4f);
                GUILayout.EndVertical();
                GUILayout.EndHorizontal();
                GUILayout.FlexibleSpace();
                float creditsWidth = base.position.width - 10f;
                float textYPos = this.m_TextYPos;
                GUI.BeginGroup(GUILayoutUtility.GetRect(10f, this.m_TextInitialYPos));
                foreach (string str5 in AboutWindowNames.nameChunks)
                {
                    textYPos = DoCreditsNameChunk(str5, creditsWidth, textYPos);
                }
                textYPos = DoCreditsNameChunk("Thanks to Forest 'Yoggy' Johnson, Graham McAllister, David Janik-Jones, Raimund Schumacher, Alan J. Dickins and Emil 'Humus' Persson", creditsWidth, textYPos);
                this.m_TotalCreditsHeight = textYPos - this.m_TextYPos;
                GUI.EndGroup();
                GUILayout.FlexibleSpace();
                GUILayout.BeginHorizontal(new GUILayoutOption[0]);
                GUILayout.Label(s_MonoLogo, new GUILayoutOption[0]);
                GUILayoutOption[] optionArray2 = new GUILayoutOption[] { GUILayout.Width(200f) };
                GUILayout.Label("Scripting powered by The Mono Project.\n\n(c) 2011 Novell, Inc.", "MiniLabel", optionArray2);
                GUILayout.Label(s_AgeiaLogo, new GUILayoutOption[0]);
                GUILayoutOption[] optionArray3 = new GUILayoutOption[] { GUILayout.Width(200f) };
                GUILayout.Label("Physics powered by PhysX.\n\n(c) 2011 NVIDIA Corporation.", "MiniLabel", optionArray3);
                GUILayout.EndHorizontal();
                GUILayout.FlexibleSpace();
                GUILayout.BeginHorizontal(new GUILayoutOption[0]);
                GUILayout.Space(5f);
                GUILayout.BeginVertical(new GUILayoutOption[0]);
                GUILayout.FlexibleSpace();
                string aboutWindowLabel = UnityVSSupport.GetAboutWindowLabel();
                if (aboutWindowLabel.Length > 0)
                {
                    GUILayout.Label(aboutWindowLabel, "MiniLabel", new GUILayoutOption[0]);
                }
                GUILayout.Label(InternalEditorUtility.GetUnityCopyright(), "MiniLabel", new GUILayoutOption[0]);
                GUILayout.EndVertical();
                GUILayout.Space(10f);
                GUILayout.FlexibleSpace();
                GUILayout.BeginVertical(new GUILayoutOption[0]);
                GUILayout.FlexibleSpace();
                GUILayout.Label(InternalEditorUtility.GetLicenseInfo(), "AboutWindowLicenseLabel", new GUILayoutOption[0]);
                GUILayout.EndVertical();
                GUILayout.Space(5f);
                GUILayout.EndHorizontal();
                GUILayout.Space(5f);
            }
        }