Exemple #1
0
        public static bool IsStringParamSet(string StringParam)
        {
            IgorJobConfig Inst = GetConfig();

            if (Inst != null)
            {
                return(IgorRuntimeUtils.IsStringParamSet(Inst.Persistent.JobCommandLineParams, StringParam));
            }

            return(false);
        }
Exemple #2
0
        public virtual void DrawStringConfigParamDifferentOverride(ref string CurrentParams, string StringLabel, string StringOverrideParam, string ConfigKey, string OverrideCurrentValue = null)
        {
            string CurrentStringValue = "";
            string CurrentConfigValue = IgorConfig.GetModuleString(this, ConfigKey);

            bool bDisplayConfigValue = false;

            if (OverrideCurrentValue == null)
            {
                if (IgorRuntimeUtils.IsStringParamSet(CurrentParams, StringOverrideParam))
                {
                    CurrentStringValue = IgorRuntimeUtils.GetStringParam(CurrentParams, StringOverrideParam);
                }
                else
                {
                    bDisplayConfigValue = true;
                }
            }
            else
            {
                if (CurrentConfigValue == OverrideCurrentValue)
                {
                    bDisplayConfigValue = true;
                }
                else
                {
                    CurrentStringValue = OverrideCurrentValue;
                }
            }

            EditorGUILayout.BeginHorizontal();

            EditorGUILayout.LabelField(new GUIContent(StringLabel, StringLabel), GUILayout.MaxWidth(100.0f));

            EditorGUILayout.BeginHorizontal();

            string DisplayString = bDisplayConfigValue ? CurrentConfigValue : CurrentStringValue;

            GUIStyle TextFieldStyle = new GUIStyle(GUI.skin.textField);

            if (!bDisplayConfigValue)
            {
                TextFieldStyle.normal.background  = GetTextFieldBGGreenNormal();
                TextFieldStyle.focused.background = GetTextFieldBGGreenActive();
            }

            string NewStringValue = GUILayout.TextField(DisplayString, TextFieldStyle, GUILayout.ExpandWidth(true), GUILayout.MinWidth(100.0f));

            if (!NewStringValue.Contains("\"") && !(NewStringValue.Length == 1 && NewStringValue[0] == ' '))
            {
                CurrentStringValue = NewStringValue;
            }

            if (bDisplayConfigValue && CurrentStringValue == CurrentConfigValue)
            {
                CurrentStringValue = "";
            }

            GUIStyle ButtonStyle = new GUIStyle(GUI.skin.button);

            ButtonStyle.border = new RectOffset();
            ButtonStyle.margin = new RectOffset();

            if (GUILayout.Button(new GUIContent("<-", "Use the config value"), ButtonStyle, GUILayout.Width(25.0f)))
            {
                CurrentStringValue = "";
            }

            if (GUILayout.Button(new GUIContent("->", "Update the config value to the current value (This will change all other jobs that haven't overridden this value!)"), ButtonStyle, GUILayout.Width(25.0f)))
            {
                if (!bDisplayConfigValue)
                {
                    CurrentConfigValue = CurrentStringValue;
                }

                IgorConfig.SetModuleString(this, ConfigKey, CurrentConfigValue);
            }

            string ConfigLabel = CurrentConfigValue + " - From Global Config Key: " + GetModuleName() + "." + ConfigKey;
//			string ConfigLabel = "Global Config: \"" + CurrentConfigValue + "\" from Key: \"" + GetModuleName() + "." + ConfigKey + "\"";

            GUIStyle LabelFieldStyle = new GUIStyle(GUI.skin.label);

            LabelFieldStyle.alignment     = TextAnchor.MiddleLeft;
            LabelFieldStyle.border        = new RectOffset();
            LabelFieldStyle.contentOffset = new Vector2();
            LabelFieldStyle.margin        = new RectOffset();

            if (bDisplayConfigValue)
            {
                LabelFieldStyle.normal.background = GetLabelFieldBGGreen();
            }

            GUILayout.Label(new GUIContent(ConfigLabel, ConfigLabel), LabelFieldStyle, GUILayout.MinWidth(20.0f));

            if (GUILayout.Button(new GUIContent("X", "Clear the config value (This will change all other jobs that haven't overridden this value!)"), ButtonStyle, GUILayout.Width(25.0f)))
            {
                CurrentConfigValue = "";

                IgorConfig.SetModuleString(this, ConfigKey, CurrentConfigValue);
            }

            EditorGUILayout.EndHorizontal();

            EditorGUILayout.EndHorizontal();

            CurrentParams = IgorRuntimeUtils.SetStringParam(CurrentParams, StringOverrideParam, CurrentStringValue);
        }
Exemple #3
0
        public virtual void DrawVersionInspector(ref string CurrentParams)
        {
            string MinVersionParam = "";
            string MaxVersionParam = "";

            if (IgorRuntimeUtils.IsStringParamSet(CurrentParams, MinUnityVersionFlag))
            {
                MinVersionParam = IgorRuntimeUtils.GetStringParam(CurrentParams, MinUnityVersionFlag);
            }
            else
            {
                MinVersionParam = GetConfigString(MinUnityVersionFlag);
            }

            if (IgorRuntimeUtils.IsStringParamSet(CurrentParams, MaxUnityVersionFlag))
            {
                MaxVersionParam = IgorRuntimeUtils.GetStringParam(CurrentParams, MaxUnityVersionFlag);
            }
            else
            {
                MaxVersionParam = GetConfigString(MaxUnityVersionFlag);
            }

            UnityVersionInfo MinVersion = UnityVersionInfo.FromString(MinVersionParam);
            UnityVersionInfo MaxVersion = UnityVersionInfo.FromString(MaxVersionParam);

            EditorGUILayout.BeginVertical("box");

            EditorGUILayout.BeginHorizontal();

            EditorGUILayout.LabelField("Minimum Unity version");

            EditorGUILayout.BeginHorizontal();

            MinVersion.Platform = MaxVersion.Platform = DrawPlatformDropDown(MinVersion.Platform);

            MinVersion.MajorVersion = MaxVersion.MajorVersion = DrawMajorVersionDropDown(MinVersion.MajorVersion, -2);

            MinVersion.MinorVersion = DrawMinorVersionDropDown(MinVersion.MajorVersion, MinVersion.MinorVersion, MinVersion.MajorVersion, -2);

            MinVersion.ReleaseVersion = DrawReleaseVersionDropDown(MinVersion.MinorVersion, MinVersion.ReleaseVersion, MinVersion.MajorVersion, MinVersion.MinorVersion, -2);

            MinVersion.PatchVersion = DrawPatchVersionDropDown(MinVersion.ReleaseVersion, MinVersion.PatchVersion, MinVersion.MajorVersion, MinVersion.MinorVersion, MinVersion.ReleaseVersion, -2);

            EditorGUILayout.EndHorizontal();

            EditorGUILayout.EndHorizontal();

            EditorGUILayout.BeginHorizontal();

            DrawStringConfigParamUseValue(ref CurrentParams, "", MinUnityVersionFlag, MinVersion.ToString());

            EditorGUILayout.EndHorizontal();

            EditorGUILayout.EndVertical();

            EditorGUILayout.BeginVertical("box");

            EditorGUILayout.BeginHorizontal();

            EditorGUILayout.LabelField("Maximum Unity version");

            EditorGUILayout.BeginHorizontal();

            string PlatformName = MinVersion.Platform;

            if (PlatformName == "")
            {
                PlatformName = "PC";
            }

            EditorGUILayout.LabelField(PlatformName, GUILayout.MaxWidth(100.0f));

//			MaxVersion.MajorVersion = DrawMajorVersionDropDown(MaxVersion.MajorVersion, MinVersion.MajorVersion);

            string MaxMajorVersionNumString = MaxVersion.MajorVersion.ToString();

            if (MaxVersion.MajorVersion == -1)
            {
                MaxMajorVersionNumString = "Latest";
            }

            EditorGUILayout.LabelField(MaxMajorVersionNumString, GUILayout.MaxWidth(65.0f));

            MaxVersion.MinorVersion = DrawMinorVersionDropDown(MaxVersion.MajorVersion, MaxVersion.MinorVersion, MinVersion.MajorVersion, MinVersion.MinorVersion);

            MaxVersion.ReleaseVersion = DrawReleaseVersionDropDown(MaxVersion.MinorVersion, MaxVersion.ReleaseVersion, MinVersion.MajorVersion, MinVersion.MinorVersion, MinVersion.ReleaseVersion);

            MaxVersion.PatchVersion = DrawPatchVersionDropDown(MaxVersion.ReleaseVersion, MaxVersion.PatchVersion, MinVersion.MajorVersion, MinVersion.MinorVersion, MinVersion.ReleaseVersion, MinVersion.PatchVersion);

            EditorGUILayout.EndHorizontal();

            EditorGUILayout.EndHorizontal();

            EditorGUILayout.BeginHorizontal();

            DrawStringConfigParamUseValue(ref CurrentParams, "", MaxUnityVersionFlag, MaxVersion.ToString());

            EditorGUILayout.EndHorizontal();

            EditorGUILayout.EndVertical();
        }