DefineDDS.cs 2.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869
  1. using UnityEngine;
  2. using UnityEditor;
  3. public class DefineDDS : EditorWindow
  4. {
  5. string OsplHomeDirectory = "D:\\HDE\\x86_64.win64";
  6. string OsplConfigFile = "D:\\HDE\\x86_64.win64\\etc\\config\\ospl_vm.xml";
  7. [MenuItem("DDS/Vortex")]
  8. static void Init()
  9. {
  10. // Get existing open window or if none, make a new one:
  11. DefineDDS window = (DefineDDS)EditorWindow.GetWindow(typeof(DefineDDS));
  12. window.Show();
  13. }
  14. void OnGUI()
  15. {
  16. GUILayout.Label("Vortex DDS Locations", EditorStyles.boldLabel);
  17. EditorGUILayout.BeginHorizontal();
  18. OsplHomeDirectory = EditorGUILayout.TextField("OSPL Home Directory", OsplHomeDirectory);
  19. if (GUILayout.Button("Find", EditorStyles.miniButtonRight, GUILayout.Width(40)))
  20. {
  21. string FileOsplHomeDirectory = EditorUtility.OpenFolderPanel("OSPL Home Directory", "C:\\", "HDE");
  22. if (FileOsplHomeDirectory != "")
  23. {
  24. OsplHomeDirectory = FileOsplHomeDirectory;
  25. EditorPrefs.SetString("OsplHomeDirectory", OsplHomeDirectory);
  26. }
  27. }
  28. EditorGUILayout.EndHorizontal();
  29. EditorGUILayout.BeginHorizontal();
  30. OsplConfigFile = EditorGUILayout.TextField("OSPL Config File", OsplConfigFile);
  31. if (GUILayout.Button("Find", EditorStyles.miniButtonRight, GUILayout.Width(40)))
  32. {
  33. string FileOsplConfigFile = EditorUtility.OpenFilePanel("OSDPL Config File", "C:\\", "xml");
  34. if (FileOsplConfigFile != "")
  35. {
  36. OsplConfigFile = FileOsplConfigFile;
  37. EditorPrefs.SetString("OsplConfigFile", OsplConfigFile);
  38. }
  39. }
  40. EditorGUILayout.EndHorizontal();
  41. }
  42. void OnFocus()
  43. {
  44. if (EditorPrefs.HasKey("OsplHomeDirectory"))
  45. OsplHomeDirectory = EditorPrefs.GetString("OsplHomeDirectory");
  46. if (EditorPrefs.HasKey("OsplConfigFile"))
  47. OsplConfigFile = EditorPrefs.GetString("OsplConfigFile");
  48. }
  49. void OnLostFocus()
  50. {
  51. SetEditorPrefs();
  52. }
  53. void OnDestroy()
  54. {
  55. SetEditorPrefs();
  56. }
  57. void SetEditorPrefs()
  58. {
  59. EditorPrefs.SetString("OsplHomeDirectory", OsplHomeDirectory);
  60. EditorPrefs.SetString("OsplConfigFile", OsplConfigFile);
  61. }
  62. }