private void CreateNewSettings() { ClearEditorCache(); patternSettings = CreateInstance <AssetPatternSettings>(); AssetDatabase.CreateAsset(patternSettings, SETTINGS_PATH); Selection.activeObject = patternSettings; }
private void OnGUI() { GUILayout.BeginVertical(string.Empty, "Window"); #region Select Directory GUILayout.BeginHorizontal(); GUILayout.Label("Target Directory", GUILayout.Width(LABEL_WIDTH)); targetDirectory = GUILayout.TextField(targetDirectory); if (GUILayout.Button("Browse", GUILayout.Width(BUTTON_WIDTH))) { SelectDirectory(); } GUILayout.EndHorizontal(); #endregion #region Pattern Settings GUILayout.BeginHorizontal(); GUILayout.Label("Pattern Settings", GUILayout.Width(LABEL_WIDTH)); EditorGUI.BeginChangeCheck(); patternSettings = EditorGUILayout.ObjectField(patternSettings, typeof(AssetPatternSettings), false) as AssetPatternSettings; if (EditorGUI.EndChangeCheck()) { ClearEditorCache(); } if (GUILayout.Button("New", GUILayout.Width(BUTTON_WIDTH))) { CreateNewSettings(); } GUILayout.EndHorizontal(); #endregion #region Top Tool Bar GUILayout.BeginHorizontal(); GUILayout.FlexibleSpace(); if (GUILayout.Button("Check", GUILayout.Width(BUTTON_WIDTH))) { CheckAssetsName(); } if (GUILayout.Button("Clear", GUILayout.Width(BUTTON_WIDTH))) { ClearEditorCache(); } GUILayout.EndHorizontal(); #endregion #region Mismatch Assets GUILayout.BeginHorizontal(); GUILayout.Label("Mismatch Assets", GUILayout.Width(LABEL_WIDTH)); GUILayout.Label(filterAssets.Count.ToString()); GUILayout.EndHorizontal(); scrollPos = GUILayout.BeginScrollView(scrollPos, "Box"); var startIndex = pageIndex * EACHPAGE_COUNT; var limitCount = Math.Min(EACHPAGE_COUNT, filterAssets.Count - startIndex); for (int i = startIndex; i < startIndex + limitCount; i++) { if (GUILayout.Button(filterAssets[i], "TextField")) { Selection.activeObject = AssetDatabase.LoadAssetAtPath(filterAssets[i], typeof(UnityEngine.Object)); } } GUILayout.EndScrollView(); #endregion #region Bottom Tool Bar if (pageCount > 1) { GUILayout.BeginHorizontal(); if (pageIndex > 0) { if (GUILayout.Button("Previous", GUILayout.Width(BUTTON_WIDTH))) { pageIndex--; scrollPos = Vector2.zero; } } else { GUILayout.Label(string.Empty, GUILayout.Width(BUTTON_WIDTH)); } GUILayout.FlexibleSpace(); GUILayout.Label(pageIndex + 1 + " / " + pageCount); GUILayout.FlexibleSpace(); if (pageIndex < pageCount - 1) { if (GUILayout.Button("Next", GUILayout.Width(BUTTON_WIDTH))) { pageIndex++; scrollPos = Vector2.zero; } } else { GUILayout.Label(string.Empty, GUILayout.Width(BUTTON_WIDTH)); } GUILayout.EndHorizontal(); } #endregion GUILayout.EndVertical(); }
private void OnEnable() { targetDirectory = EditorPrefs.GetString(TARGET_DIRECTORY_KEY, targetDirectory); patternSettings = AssetDatabase.LoadAssetAtPath(SETTINGS_PATH, typeof(AssetPatternSettings)) as AssetPatternSettings; }