Cursors.cs 4.4 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394959697
  1. namespace System.Windows.Forms
  2. {
  3. public sealed class Cursors
  4. {
  5. private static Cursor appStarting;
  6. private static Cursor arrow;
  7. private static Cursor cross;
  8. private static Cursor defaultCursor;
  9. private static Cursor iBeam;
  10. private static Cursor no;
  11. private static Cursor sizeAll;
  12. private static Cursor sizeNESW;
  13. private static Cursor sizeNS;
  14. private static Cursor sizeNWSE;
  15. private static Cursor sizeWE;
  16. private static Cursor upArrow;
  17. private static Cursor wait;
  18. private static Cursor help;
  19. private static Cursor hSplit;
  20. private static Cursor vSplit;
  21. private static Cursor noMove2D;
  22. private static Cursor noMoveHoriz;
  23. private static Cursor noMoveVert;
  24. private static Cursor panEast;
  25. private static Cursor panNE;
  26. private static Cursor panNorth;
  27. private static Cursor panNW;
  28. private static Cursor panSE;
  29. private static Cursor panSouth;
  30. private static Cursor panSW;
  31. private static Cursor panWest;
  32. private static Cursor hand;
  33. public static Cursor AppStarting => appStarting ??= new Cursor(System.Windows.Input.Cursors.AppStarting, "AppStarting");
  34. public static Cursor Arrow => arrow ??= new Cursor(System.Windows.Input.Cursors.Arrow, "Arrow");
  35. public static Cursor Cross => cross ??= new Cursor(System.Windows.Input.Cursors.Cross, "Cross");
  36. public static Cursor Default => defaultCursor ??= new Cursor(System.Windows.Input.Cursors.Arrow, "Default");
  37. public static Cursor IBeam => iBeam ??= new Cursor(System.Windows.Input.Cursors.IBeam, "IBeam");
  38. public static Cursor No => no ??= new Cursor(System.Windows.Input.Cursors.No, "No");
  39. public static Cursor SizeAll => sizeAll ??= new Cursor(System.Windows.Input.Cursors.SizeAll, "SizeAll");
  40. public static Cursor SizeNESW => sizeNESW ??= new Cursor(System.Windows.Input.Cursors.SizeNESW, "SizeNESW");
  41. public static Cursor SizeNS => sizeNS ??= new Cursor(System.Windows.Input.Cursors.SizeNS, "SizeNS");
  42. public static Cursor SizeNWSE => sizeNWSE ??= new Cursor(System.Windows.Input.Cursors.SizeNWSE, "SizeNWSE");
  43. public static Cursor SizeWE => sizeWE ??= new Cursor(System.Windows.Input.Cursors.SizeWE, "SizeWE");
  44. public static Cursor UpArrow => upArrow ??= new Cursor(System.Windows.Input.Cursors.UpArrow, "UpArrow");
  45. public static Cursor WaitCursor => wait ??= new Cursor(System.Windows.Input.Cursors.Wait, "WaitCursor");
  46. public static Cursor Help => help ??= new Cursor(System.Windows.Input.Cursors.Help, "Help");
  47. public static Cursor HSplit => hSplit ??= GetCursor("hsplit.cur", "HSplit");
  48. public static Cursor VSplit => vSplit ??= GetCursor("vsplit.cur", "VSplit");
  49. public static Cursor NoMove2D => noMove2D ??= new Cursor(System.Windows.Input.Cursors.ScrollAll, "NoMove2D");
  50. public static Cursor NoMoveHoriz => noMoveHoriz ??= new Cursor(System.Windows.Input.Cursors.ScrollWE, "NoMoveHoriz");
  51. public static Cursor NoMoveVert => noMoveVert ??= new Cursor(System.Windows.Input.Cursors.ScrollNS, "NoMoveVert");
  52. public static Cursor PanEast => panEast ??= new Cursor(System.Windows.Input.Cursors.ScrollE, "PanEast");
  53. public static Cursor PanNE => panNE ??= new Cursor(System.Windows.Input.Cursors.ScrollNE, "PanNE");
  54. public static Cursor PanNorth => panNorth ??= new Cursor(System.Windows.Input.Cursors.ScrollN, "PanNorth");
  55. public static Cursor PanNW => panNW ??= new Cursor(System.Windows.Input.Cursors.ScrollNW, "PanNW");
  56. public static Cursor PanSE => panSE ??= new Cursor(System.Windows.Input.Cursors.ScrollSE, "PanSE");
  57. public static Cursor PanSouth => panSouth ??= new Cursor(System.Windows.Input.Cursors.ScrollS, "PanSouth");
  58. public static Cursor PanSW => panSW ??= new Cursor(System.Windows.Input.Cursors.ScrollSW, "PanSW");
  59. public static Cursor PanWest => panWest ??= new Cursor(System.Windows.Input.Cursors.ScrollW, "PanWest");
  60. public static Cursor Hand => hand ??= new Cursor(System.Windows.Input.Cursors.Hand, "Hand");
  61. private static Cursor GetCursor(string resName, string name)
  62. {
  63. var cursor = ResourceLoader.GetCursor(resName);
  64. cursor.name = name;
  65. return cursor;
  66. }
  67. }
  68. }