private bool drawComponentCheckBox(string label, QSetting setting) { indentLevel += 8; Rect rect = getControlRect(0, 28, 0, 0); float rectWidth = rect.width; bool isChecked = QSettings.getInstance().get <bool>(setting); rect.x -= 1; rect.y += 7; rect.width = 14; rect.height = 14; if (GUI.Button(rect, isChecked ? checkBoxChecked : checkBoxUnchecked, GUIStyle.none)) { QSettings.getInstance().set(setting, !isChecked); } rect.x += 14 + 10; rect.width = rectWidth - 14 - 8; rect.y -= 1; rect.height = 20; GUI.Label(rect, label); indentLevel -= 8; return(isChecked); }
private bool drawCheckBoxRight(string label, QSetting setting) { Rect rect = getControlRect(0, 18, 31, 6); bool result = false; bool isChecked = QSettings.getInstance().get <bool>(setting); float tempX = rect.x; rect.x += rect.width - 14; rect.y += 1; rect.width = 14; rect.height = 14; if (GUI.Button(rect, isChecked ? checkBoxChecked : checkBoxUnchecked, GUIStyle.none)) { QSettings.getInstance().set(setting, !isChecked); result = true; } rect.width = rect.x - tempX - 4; rect.x = tempX; rect.y -= 1; rect.height = 18; GUI.Label(rect, label); return(result); }
private bool drawCheckBoxRight(Rect rect, QSetting setting, string label) { bool isChecked = QSettings.getInstance().get <bool>(setting); float tempX = rect.x; rect.x += rect.width - 14; rect.y += 5; rect.width = 14; rect.height = 14; if (GUI.Button(rect, isChecked ? checkBoxChecked : checkBoxUnchecked, GUIStyle.none)) { QSettings.getInstance().set(setting, !isChecked); } rect.width = rect.x - tempX - 4; rect.x = tempX; rect.y -= 1; rect.height = 20; GUI.Label(rect, label); return(isChecked); }
public void removeEventListener(QSetting setting, QSettingChangedHandler handler) { int settingId = (int)setting; if (settingChangedHandlerList.ContainsKey(settingId) && settingChangedHandlerList[settingId] != null) { settingChangedHandlerList[settingId] -= handler; } }
public static void saveTagTextureList(QSetting setting, List <QTagTexture> tagTextureList) { string result = ""; for (int i = 0; i < tagTextureList.Count; i++) { result += tagTextureList[i].tag + ";" + AssetDatabase.GetAssetPath(tagTextureList[i].texture.GetInstanceID()) + ";"; } QSettings.getInstance().set(setting, result); }
public static void saveLayerTextureList(QSetting setting, List <QLayerTexture> layerTextureList) { string result = ""; for (int i = 0; i < layerTextureList.Count; i++) { result += layerTextureList[i].layer + ";" + AssetDatabase.GetAssetPath(layerTextureList[i].texture.GetInstanceID()) + ";"; } QSettings.getInstance().set(setting, result); }
private void drawTextField(string label, QSetting setting) { string currentValue = QSettings.getInstance().get <string>(setting); string newValue = EditorGUI.TextField(getControlRect(0, 16, 31, 6), label, currentValue); if (!currentValue.Equals(newValue)) { QSettings.getInstance().set(setting, newValue); } drawSpace(2); }
private void drawColorPicker(string label, QSetting setting) { Color currentColor = QSettings.getInstance().getColor(setting); Color newColor = EditorGUI.ColorField(getControlRect(0, 16, 31, 6), label, currentColor); if (!currentColor.Equals(newColor)) { QSettings.getInstance().setColor(setting, newColor); } drawSpace(2); }
private void drawIntSlider(string label, QSetting setting, int minValue, int maxValue) { Rect rect = getControlRect(0, 16, 34, 4); int currentValue = QSettings.getInstance().get <int>(setting); int newValue = EditorGUI.IntSlider(rect, label, currentValue, minValue, maxValue); if (currentValue != newValue) { QSettings.getInstance().set(setting, newValue); } drawSpace(2); }
public void set(QSetting setting, List <QTagTexture> tagTextureList) { string result = ""; for (int i = 0; i < tagTextureList.Count; i++) { result += tagTextureList[i].tag + ";" + AssetDatabase.GetAssetPath(tagTextureList[i].texture.GetInstanceID()) + ";"; } setEditorSetting(setting, result); settings[(int)setting] = tagTextureList; }
private string getSettingName(QSetting setting) { int settingId = (int)setting; string settingName = PREFS_PREFIX; if (skinDependedSettings.Contains(settingId)) { settingName += EditorGUIUtility.isProSkin ? PREFS_DARK : PREFS_LIGHT; } settingName += setting.ToString("G"); return(settingName.ToString()); }
private void drawFloatSlider(string label, QSetting setting, float minValue, float maxValue) { Rect rect = getControlRect(0, 16, 31, 6); float currentValue = QSettings.getInstance().get <float>(setting); float newValue = EditorGUI.Slider(rect, label, currentValue, minValue, maxValue); if (currentValue != newValue) { QSettings.getInstance().set(setting, newValue); } drawSpace(2); }
private void initSetting(QSetting setting, object defaultValue) { string settingName = getSettingName(setting); defaultSettings.Add((int)setting, defaultValue); object value = settingsObject.get(settingName, defaultValue); if (value == null || value.GetType() != defaultValue.GetType()) { settingsObject.set(settingName, defaultValue); } }
private bool drawFoldout(string label, QSetting setting) { bool foldoutValue = QSettings.getInstance().get <bool>(setting); bool newFoldoutValue = EditorGUI.Foldout(getControlRect(0, 16, 19, 6), foldoutValue, label); if (foldoutValue != newFoldoutValue) { QSettings.getInstance().set(setting, newFoldoutValue); } drawSpace(2); return(newFoldoutValue); }
private Enum drawEnum(string label, QSetting setting, Type enumType) { Enum currentEnum = (Enum)Enum.ToObject(enumType, QSettings.getInstance().get <int>(setting)); Enum newEnumValue; if (!(newEnumValue = EditorGUI.EnumPopup(getControlRect(0, 16, 31, 6), label, currentEnum)).Equals(currentEnum)) { QSettings.getInstance().set(setting, (int)(object)newEnumValue); } drawSpace(2); return(newEnumValue); }
// PRIVATE private void initSetting(QSetting setting, object defaultValue) { object value = getEditorSetting(setting, defaultValue); if (value != defaultValue && value.GetType() == defaultValue.GetType()) { settings[(int)setting] = value; } else { set(setting, defaultValue); } }
public void set <T>(QSetting setting, T value, bool invokeChanger = true) { int settingId = (int)setting; settingsObject.set(getSettingName(setting), value); if (invokeChanger && settingChangedHandlerList.ContainsKey(settingId) && settingChangedHandlerList[settingId] != null) { settingChangedHandlerList[settingId].Invoke(); } EditorApplication.RepaintHierarchyWindow(); }
public void set <T>(QSetting setting, T value) { int settingId = (int)setting; settings[settingId] = value; setEditorSetting(setting, value); if (settingChangedHandlerList.ContainsKey(settingId) && settingChangedHandlerList[settingId] != null) { settingChangedHandlerList[settingId].Invoke(); } EditorApplication.RepaintHierarchyWindow(); }
private bool drawFoldout(string label, QSetting setting) { #if UNITY_2019_1_OR_NEWER Rect foldoutRect = getControlRect(0, 16, 19, 6); #else Rect foldoutRect = getControlRect(0, 16, 22, 6); #endif bool foldoutValue = QSettings.getInstance().get <bool>(setting); bool newFoldoutValue = EditorGUI.Foldout(foldoutRect, foldoutValue, label); if (foldoutValue != newFoldoutValue) { QSettings.getInstance().set(setting, newFoldoutValue); } drawSpace(2); return(newFoldoutValue); }
public void addEventListener(QSetting setting, QSettingChangedHandler handler) { int settingId = (int)setting; if (!settingChangedHandlerList.ContainsKey(settingId)) { settingChangedHandlerList.Add(settingId, null); } if (settingChangedHandlerList[settingId] == null) { settingChangedHandlerList[settingId] = handler; } else { settingChangedHandlerList[settingId] += handler; } }
private void setEditorSetting(QSetting setting, object value) { if (value is bool) { EditorPrefs.SetBool(PREFS_PREFIX + setting.ToString("G"), (bool)value); } else if (value is int) { EditorPrefs.SetInt(PREFS_PREFIX + setting.ToString("G"), (int)value); } else if (value is float) { EditorPrefs.SetFloat(PREFS_PREFIX + setting.ToString("G"), (float)value); } else if (value is string) { EditorPrefs.SetString(PREFS_PREFIX + setting.ToString("G"), (string)value); } }
private object getEditorSetting(QSetting setting, object defaultValue) { if (defaultValue is bool) { return(EditorPrefs.GetBool(PREFS_PREFIX + setting.ToString("G"), (bool)defaultValue)); } else if (defaultValue is int) { return(EditorPrefs.GetInt(PREFS_PREFIX + setting.ToString("G"), (int)defaultValue)); } else if (defaultValue is float) { return(EditorPrefs.GetFloat(PREFS_PREFIX + setting.ToString("G"), (float)defaultValue)); } else if (defaultValue is string) { return(EditorPrefs.GetString(PREFS_PREFIX + setting.ToString("G"), (string)defaultValue)); } else { return(defaultValue); } }
public Color getColor(QSetting setting) { string stringColor = (string)settingsObject.get <string>(getSettingName(setting)); return(QColorUtils.fromString(stringColor)); }
// PRIVATE private void initSetting(QSetting setting, object defaultValueDark, object defaultValueLight) { skinDependedSettings.Add((int)setting); initSetting(setting, EditorGUIUtility.isProSkin ? defaultValueDark : defaultValueLight); }
public void restore(QSetting setting) { set(setting, defaultSettings[(int)setting]); }
// PUBLIC public T get <T>(QSetting setting) { return((T)settings[(int)setting]); }
public void setColor(QSetting setting, Color color) { string stringColor = QColorUtils.toString(color); set(setting, stringColor); }
// PUBLIC public T get <T>(QSetting setting) { return((T)settingsObject.get <T>(getSettingName(setting))); }