public override bool Equals(object o) { if (!(o is ApplicationSettings)) { return(false); } ApplicationSettings v = o as ApplicationSettings; if (!Accounts.Equals(v.Accounts)) { return(false); } if (DefaultViewers.Count != v.DefaultViewers.Count) { return(false); } for (int i = 0; i < DefaultViewers.Count; i++) { if (!DefaultViewers[i].Equals(v.DefaultViewers[i])) { return(false); } } if (!JobHistory.Equals(v.JobHistory)) { return(false); } if (PrinterMappings.Count != v.PrinterMappings.Count) { return(false); } for (int i = 0; i < PrinterMappings.Count; i++) { if (!PrinterMappings[i].Equals(v.PrinterMappings[i])) { return(false); } } if (TitleReplacement.Count != v.TitleReplacement.Count) { return(false); } for (int i = 0; i < TitleReplacement.Count; i++) { if (!TitleReplacement[i].Equals(v.TitleReplacement[i])) { return(false); } } if (!AskSwitchDefaultPrinter.Equals(v.AskSwitchDefaultPrinter)) { return(false); } if (!Language.Equals(v.Language)) { return(false); } if (!LastLoginVersion.Equals(v.LastLoginVersion)) { return(false); } if (!LastSaveDirectory.Equals(v.LastSaveDirectory)) { return(false); } if (!LastUsedProfileGuid.Equals(v.LastUsedProfileGuid)) { return(false); } if (!LoggingLevel.Equals(v.LoggingLevel)) { return(false); } if (!PrimaryPrinter.Equals(v.PrimaryPrinter)) { return(false); } if (!UpdateInterval.Equals(v.UpdateInterval)) { return(false); } return(true); }
public override bool Equals(object o) { if (!(o is ApplicationSettings)) { return(false); } var v = o as ApplicationSettings; if (ApiAccess.Count != v.ApiAccess.Count) { return(false); } for (var i = 0; i < ApiAccess.Count; i++) { if (!ApiAccess[i].Equals(v.ApiAccess[i])) { return(false); } } if (PrinterMappings.Count != v.PrinterMappings.Count) { return(false); } for (var i = 0; i < PrinterMappings.Count; i++) { if (!PrinterMappings[i].Equals(v.PrinterMappings[i])) { return(false); } } if (TitleReplacement.Count != v.TitleReplacement.Count) { return(false); } for (var i = 0; i < TitleReplacement.Count; i++) { if (!TitleReplacement[i].Equals(v.TitleReplacement[i])) { return(false); } } if (!AskSwitchDefaultPrinter.Equals(v.AskSwitchDefaultPrinter)) { return(false); } if (!Language.Equals(v.Language)) { return(false); } if (!LastUsedProfileGuid.Equals(v.LastUsedProfileGuid)) { return(false); } if (!LoggingLevel.Equals(v.LoggingLevel)) { return(false); } if (!PrimaryPrinter.Equals(v.PrimaryPrinter)) { return(false); } if (!UpdateInterval.Equals(v.UpdateInterval)) { return(false); } return(true); }
public override bool Equals(object o) { if (!(o is ApplicationSettings)) { return(false); } ApplicationSettings v = o as ApplicationSettings; if (!Accounts.Equals(v.Accounts)) { return(false); } if (!JobHistory.Equals(v.JobHistory)) { return(false); } if (PrinterMappings.Count != v.PrinterMappings.Count) { return(false); } for (int i = 0; i < PrinterMappings.Count; i++) { if (!PrinterMappings[i].Equals(v.PrinterMappings[i])) { return(false); } } if (!RssFeed.Equals(v.RssFeed)) { return(false); } if (TitleReplacement.Count != v.TitleReplacement.Count) { return(false); } for (int i = 0; i < TitleReplacement.Count; i++) { if (!TitleReplacement[i].Equals(v.TitleReplacement[i])) { return(false); } } if (!UsageStatistics.Equals(v.UsageStatistics)) { return(false); } if (!ConversionTimeout.Equals(v.ConversionTimeout)) { return(false); } if (!EnableTips.Equals(v.EnableTips)) { return(false); } if (!Language.Equals(v.Language)) { return(false); } if (!LicenseExpirationReminder.Equals(v.LicenseExpirationReminder)) { return(false); } if (!LoggingLevel.Equals(v.LoggingLevel)) { return(false); } if (!NextUpdate.Equals(v.NextUpdate)) { return(false); } if (!UnitOfMeasurement.Equals(v.UnitOfMeasurement)) { return(false); } if (!UpdateInterval.Equals(v.UpdateInterval)) { return(false); } return(true); }
public override void OnInspectorGUI() { if (boldFoldout == null) { if (EditorStyles.foldout == null) { return; // Fix for NullRef on first frame when entering play-mode } boldFoldout = new GUIStyle(EditorStyles.foldout) { fontStyle = FontStyle.Bold }; } // Grab target AbstractTranslatedText myTarget = (AbstractTranslatedText)target; // Space above first line GUILayout.Space(SPACING_SIZE); // Fields string newVal = EditorGUILayout.TextField("Translation Key", myTarget.FieldName); if (!string.Equals(newVal, myTarget.FieldName)) { myTarget.SetSerializedField("fieldName", newVal); GUI.changed = true; } bool autoRegister = EditorGUILayout.Toggle("Auto-Register", myTarget.AutoRegister); if (autoRegister != myTarget.AutoRegister) { myTarget.SetSerializedField("autoRegister", autoRegister); GUI.changed = true; } bool useCustomLang = EditorGUILayout.ToggleLeft("Use Custom Language", myTarget.UseCustomLanguage); if (!useCustomLang.Equals(myTarget.UseCustomLanguage)) { if (!LanguageManager.Exists) // Game is running. Use setter with Refresh() { myTarget.UseCustomLanguage = useCustomLang; } else { myTarget.SetSerializedField("useCustomLanguage", useCustomLang); // Game is NOT running. Use setter without Refresh() } GUI.changed = true; } // Only show CustomLanguage is UseCustomLanguage is true if (myTarget.UseCustomLanguage) { EditorGUI.indentLevel++; EditorGUILayout.BeginHorizontal(); Language customLang = (Language)Enum.GetValues(typeof(Language)).GetValue(EditorGUILayout.Popup("Custom Language:", Array.IndexOf(Enum.GetNames(typeof(Language)), myTarget.CustomLanguage.ToString()), Enum.GetNames(typeof(Language)), EditorStyles.popup)); if (!customLang.Equals(myTarget.CustomLanguage)) { if (LanguageManager.Exists)// Game is running. Use setter with Refresh() { myTarget.CustomLanguage = customLang; } else { myTarget.SetSerializedField("customLanguage", customLang); // Game is NOT running. Use setter without Refresh() } GUI.changed = true; } EditorGUILayout.EndHorizontal(); EditorGUI.indentLevel--; } AbstractTranslatedText.SpecialTextSettings textSetting = (AbstractTranslatedText.SpecialTextSettings)EditorGUILayout.EnumPopup("Special Text Setting", myTarget.TextSetting); if (textSetting != myTarget.TextSetting) { myTarget.SetSerializedField("specialTextSettings", textSetting); GUI.changed = true; } bool lineBreak = EditorGUILayout.Toggle("Ignore Line Breaks", myTarget.IgnoreLineBreak); if (lineBreak != myTarget.IgnoreLineBreak) { myTarget.SetSerializedField("ignoreLineBreaks", lineBreak); GUI.changed = true; } GUILayout.Space(SPACING_SIZE); bool changed = GUI.changed; EditorGUI.indentLevel++; DrawTextDisplayInspector(); debugFoldout = EditorGUILayout.Foldout(debugFoldout, "Debug", boldFoldout); EditorGUI.indentLevel--; // Skip foldout for GUI.changed GUI.changed = changed; if (debugFoldout) { bool log = myTarget.GetSerializedField <bool>("logMethods"); bool newLog = EditorGUILayout.Toggle("Log Methods", log); if (log != newLog) { myTarget.SetSerializedField("logMethods", newLog); GUI.changed = true; } if (newLog) { LoggingLevel logging = myTarget.GetSerializedField <LoggingLevel>("logLevel"); LoggingLevel newLogging = (LoggingLevel)Enum.GetValues(typeof(LoggingLevel)).GetValue(EditorGUILayout.Popup("Logging-Level:", Array.IndexOf(Enum.GetNames(typeof(LoggingLevel)), logging.ToString()), Enum.GetNames(typeof(LoggingLevel)), EditorStyles.popup)); if (!logging.Equals(newLogging)) { myTarget.SetSerializedField("logLevel", newLogging); GUI.changed = true; } } } // GAME IS RUNNING if (LanguageManager.Exists) { GUILayout.Space(SPACING_SIZE); FontStyle currStyle = EditorStyles.label.fontStyle; int currSize = EditorStyles.label.fontSize; EditorStyles.label.fontStyle = FontStyle.Bold; EditorStyles.label.fontSize = 12; EditorGUILayout.LabelField("Runtime", GUILayout.Height(20)); EditorStyles.label.fontStyle = currStyle; EditorStyles.label.fontSize = currSize; if (!myTarget.IsRegistered.Equals(EditorGUILayout.Toggle("Registered", myTarget.IsRegistered))) { if (myTarget.IsRegistered) { LanguageManager.UnregisterTranslatedText(myTarget); } else { LanguageManager.RegisterTranslatedText(myTarget); } } if (GUILayout.Button("Refresh", EditorStyles.toolbarButton)) { myTarget.Refresh(); } if (GUILayout.Button("Refresh All", EditorStyles.toolbarButton)) { AbstractTranslatedText.RefreshAll(); } } if (GUI.changed && !Application.isPlaying) { EditorUtility.SetDirty((AbstractTranslatedText)target); EditorSceneManager.MarkSceneDirty(UnityEngine.SceneManagement.SceneManager.GetActiveScene()); } }