PraseJsonDataEditor.cs 1.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354
  1. /************************************************/
  2. /* */
  3. /* Copyright (c) 2018 - 2021 monitor1394 */
  4. /* https://github.com/monitor1394 */
  5. /* */
  6. /************************************************/
  7. using System.Collections.Generic;
  8. using UnityEditor;
  9. using UnityEngine;
  10. namespace XCharts
  11. {
  12. public class PraseJsonDataEditor : EditorWindow
  13. {
  14. public static BaseChart chart;
  15. public static int serieIndex;
  16. private static PraseJsonDataEditor window;
  17. private string inputJsonText = "";
  18. public static void ShowWindow()
  19. {
  20. window = GetWindow<PraseJsonDataEditor>();
  21. window.titleContent = new GUIContent("PraseJsonData");
  22. window.minSize = new Vector2(450, 550);
  23. window.Focus();
  24. window.Show();
  25. }
  26. void OnInspectorUpdate()
  27. {
  28. Repaint();
  29. }
  30. private void OnGUI()
  31. {
  32. if (chart == null)
  33. {
  34. Close();
  35. return;
  36. }
  37. EditorGUILayout.LabelField("Input json data, or echarts serie data:");
  38. inputJsonText = EditorGUILayout.TextArea(inputJsonText, GUILayout.Height(400));
  39. if (GUILayout.Button("Add"))
  40. {
  41. var serie = chart.series.GetSerie(serieIndex);
  42. if (serie != null)
  43. {
  44. serie.ParseJsonData(inputJsonText);
  45. }
  46. }
  47. }
  48. }
  49. }