コード例 #1
0
        private void OnGUI()
        {
            if (shouldSetStyles)
            {
                SetStyles();
                shouldSetStyles = false;
            }

            var guiColor = GUI.color;

            GUILayout.Label("Versioning", bigLabelCenter);
            GUILayout.BeginHorizontal();
            GUI.color = Color.yellow;
            GUILayout.Label($"Current {version}", labelRight);
            GUILayout.Label($"(Committed {DlogVersion.Version.GetValue()})", label);
            GUILayout.EndHorizontal();
            GUILayout.BeginHorizontal();
            GUILayout.FlexibleSpace();
            GUI.enabled = version != DlogVersion.Version.GetValue();
            if (GUILayout.Button("Reset", smallButton))
            {
                version = DlogVersion.Version.GetValue();
            }

            if (GUILayout.Button("Commit", smallButton))
            {
                CommitVersion();
            }

            GUI.enabled = true;
            GUILayout.FlexibleSpace();
            GUI.color = guiColor;
            GUILayout.EndHorizontal();
            GUILayout.BeginHorizontal(GUILayout.MaxHeight(32));
            GUI.backgroundColor = Color.red;
            GUILayout.Space(32);
            GUILayoutHelper.CenterVertically(() => {
                if (GUILayout.Button("Bump MAJOR"))
                {
                    version.BumpMajor();
                }
            });
            GUILayoutHelper.CenterVertically(() => {
                if (GUILayout.Button("Bump MINOR"))
                {
                    version.BumpMinor();
                }
            });
            GUILayoutHelper.CenterVertically(() => {
                if (GUILayout.Button("Bump PATCH"))
                {
                    version.BumpPatch();
                }
            });
            GUILayout.Space(32);
            GUI.backgroundColor = guiColor;
            GUILayout.EndHorizontal();
            GUILayout.BeginHorizontal(GUILayout.MaxHeight(32));
            GUILayout.Space(32);
            GUILayoutHelper.CenterVertically(() => { GUILayout.Label("(Enter Manually) Version", labelRight); });
            GUILayoutHelper.CenterVertically(() => { enteredVersion = GUILayout.TextField(enteredVersion); });
            if (!SemVer.IsValid(enteredVersion))
            {
                GUI.enabled = false;
            }
            GUILayoutHelper.CenterVertically(() => {
                if (GUILayout.Button("Set", button))
                {
                    version = (SemVer)enteredVersion;
                }
            });
            GUI.enabled = true;
            GUILayout.Space(32);
            GUILayout.EndHorizontal();
        }