mouse_util.cc 2.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109
  1. // Copyright (c) 2015 GitHub, Inc.
  2. // Use of this source code is governed by the MIT license that can be
  3. // found in the LICENSE file.
  4. #include <string>
  5. #include "shell/common/mouse_util.h"
  6. #include "ui/base/mojom/cursor_type.mojom-shared.h"
  7. using Cursor = ui::mojom::CursorType;
  8. namespace electron {
  9. std::string CursorTypeToString(const ui::Cursor& cursor) {
  10. switch (cursor.type()) {
  11. case Cursor::kPointer:
  12. return "default";
  13. case Cursor::kCross:
  14. return "crosshair";
  15. case Cursor::kHand:
  16. return "pointer";
  17. case Cursor::kIBeam:
  18. return "text";
  19. case Cursor::kWait:
  20. return "wait";
  21. case Cursor::kHelp:
  22. return "help";
  23. case Cursor::kEastResize:
  24. return "e-resize";
  25. case Cursor::kNorthResize:
  26. return "n-resize";
  27. case Cursor::kNorthEastResize:
  28. return "ne-resize";
  29. case Cursor::kNorthWestResize:
  30. return "nw-resize";
  31. case Cursor::kSouthResize:
  32. return "s-resize";
  33. case Cursor::kSouthEastResize:
  34. return "se-resize";
  35. case Cursor::kSouthWestResize:
  36. return "sw-resize";
  37. case Cursor::kWestResize:
  38. return "w-resize";
  39. case Cursor::kNorthSouthResize:
  40. return "ns-resize";
  41. case Cursor::kEastWestResize:
  42. return "ew-resize";
  43. case Cursor::kNorthEastSouthWestResize:
  44. return "nesw-resize";
  45. case Cursor::kNorthWestSouthEastResize:
  46. return "nwse-resize";
  47. case Cursor::kColumnResize:
  48. return "col-resize";
  49. case Cursor::kRowResize:
  50. return "row-resize";
  51. case Cursor::kMiddlePanning:
  52. return "m-panning";
  53. case Cursor::kEastPanning:
  54. return "e-panning";
  55. case Cursor::kNorthPanning:
  56. return "n-panning";
  57. case Cursor::kNorthEastPanning:
  58. return "ne-panning";
  59. case Cursor::kNorthWestPanning:
  60. return "nw-panning";
  61. case Cursor::kSouthPanning:
  62. return "s-panning";
  63. case Cursor::kSouthEastPanning:
  64. return "se-panning";
  65. case Cursor::kSouthWestPanning:
  66. return "sw-panning";
  67. case Cursor::kWestPanning:
  68. return "w-panning";
  69. case Cursor::kMove:
  70. return "move";
  71. case Cursor::kVerticalText:
  72. return "vertical-text";
  73. case Cursor::kCell:
  74. return "cell";
  75. case Cursor::kContextMenu:
  76. return "context-menu";
  77. case Cursor::kAlias:
  78. return "alias";
  79. case Cursor::kProgress:
  80. return "progress";
  81. case Cursor::kNoDrop:
  82. return "nodrop";
  83. case Cursor::kCopy:
  84. return "copy";
  85. case Cursor::kNone:
  86. return "none";
  87. case Cursor::kNotAllowed:
  88. return "not-allowed";
  89. case Cursor::kZoomIn:
  90. return "zoom-in";
  91. case Cursor::kZoomOut:
  92. return "zoom-out";
  93. case Cursor::kGrab:
  94. return "grab";
  95. case Cursor::kGrabbing:
  96. return "grabbing";
  97. case Cursor::kCustom:
  98. return "custom";
  99. default:
  100. return "default";
  101. }
  102. }
  103. } // namespace electron