BaseWindow.cs 1012 B

1234567891011121314151617181920212223242526272829303132333435363738394041424344
  1. using UnityEngine;
  2. namespace COM3D2.MeidoPhotoStudio.Plugin
  3. {
  4. internal abstract class BaseWindow : BaseWindowPane
  5. {
  6. private static int id = 765;
  7. private static int ID => id++;
  8. public readonly int windowID;
  9. protected Rect windowRect;
  10. public abstract Rect WindowRect { get; set; }
  11. public BaseWindow() : base()
  12. {
  13. windowID = ID;
  14. }
  15. protected virtual void HandleZoom()
  16. {
  17. if (Input.mouseScrollDelta.y != 0f)
  18. {
  19. if (Visible && WindowRect.Contains(Event.current.mousePosition))
  20. {
  21. Input.ResetInputAxes();
  22. }
  23. }
  24. }
  25. public virtual void Update()
  26. {
  27. HandleZoom();
  28. }
  29. public virtual void Activate() { }
  30. public virtual void Deactivate() { }
  31. public virtual void GUIFunc(int id)
  32. {
  33. Draw();
  34. GUI.DragWindow();
  35. }
  36. }
  37. }