public void OnGui() { var guiShown = false; // Check the opened category if (_catToggle != null && _catToggle.isOn && _targetScene == Scene.Instance.AddSceneName) { // Check opened tab if (_loadCharaToggle != null && _loadCharaToggle.isOn || _saveCharaToggle != null && _saveCharaToggle.isOn) { // Check if the character picture take screen is displayed if (_saveFront == null || !_saveFront.activeSelf) { if (_refreshList) { _folderTreeView.ResetTreeCache(); OnFolderChanged(); _refreshList = false; } var screenRect = new Rect((int)(Screen.width * 0.004), (int)(Screen.height * 0.57f), (int)(Screen.width * 0.125), (int)(Screen.height * 0.35)); IMGUIUtils.DrawSolidBox(screenRect); GUILayout.Window(362, screenRect, TreeWindow, "Select character folder"); IMGUIUtils.EatInputInRect(screenRect); guiShown = true; } } } if (!guiShown) { _folderTreeView?.StopMonitoringFiles(); } }
private static void TreeWindow(int id) { GUILayout.BeginVertical(); { _folderTreeView.DrawDirectoryTree(); GUILayout.BeginVertical(GUI.skin.box, GUILayout.ExpandWidth(true), GUILayout.ExpandHeight(false)); { if (Overlord.DrawDefaultCardsToggle()) { OnFolderChanged(); } if (GUILayout.Button("Refresh thumbnails")) { _folderTreeView.ResetTreeCache(); OnFolderChanged(); } if (GUILayout.Button("Open current folder in explorer")) { Utils.OpenDirInExplorer(_folderTreeView.CurrentFolder); } } GUILayout.EndVertical(); } GUILayout.EndVertical(); }
private static void TreeWindow(int id) { GUILayout.BeginVertical(); { _folderTreeView.DrawDirectoryTree(); GUILayout.BeginVertical(GUI.skin.box, GUILayout.ExpandWidth(true), GUILayout.ExpandHeight(false)); { if (GUILayout.Button("Refresh thumbnails")) { _folderTreeView?.ResetTreeCache(); OnFolderChanged(); } GUILayout.Space(1); if (GUILayout.Button("Current folder")) { Utils.OpenDirInExplorer(_folderTreeView.CurrentFolder); } if (GUILayout.Button("Screenshot folder")) { Utils.OpenDirInExplorer(Path.Combine(Utils.NormalizePath(UserData.Path), "cap")); } if (GUILayout.Button("Main game folder")) { Utils.OpenDirInExplorer(Path.GetDirectoryName(Utils.NormalizePath(UserData.Path))); } } GUILayout.EndVertical(); } GUILayout.EndVertical(); }
private static void TreeWindow(int id) { GUILayout.BeginHorizontal(); { _folderTreeView.DrawDirectoryTree(); GUILayout.BeginVertical(GUI.skin.box, GUILayout.Width(200)); { if (GUILayout.Button("Refresh scene thumbnails")) { _folderTreeView.ResetTreeCache(); OnFolderChanged(); } GUILayout.FlexibleSpace(); if (GUILayout.Button("Open current folder in explorer")) { Utils.OpenDirInExplorer(_folderTreeView.CurrentFolder); } if (GUILayout.Button("Open screenshot folder in explorer")) { Utils.OpenDirInExplorer(Path.Combine(Utils.NormalizePath(UserData.Path), "cap")); } if (GUILayout.Button("Open character folder in explorer")) { Utils.OpenDirInExplorer(Path.Combine(Utils.NormalizePath(UserData.Path), "chara")); } if (GUILayout.Button("Open main game folder in explorer")) { Utils.OpenDirInExplorer(Path.GetDirectoryName(Utils.NormalizePath(UserData.Path))); } } GUILayout.EndVertical(); } GUILayout.EndHorizontal(); }