You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

CoreActionType.java 12KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251
  1. /*
  2. * Copyright (c) 2006-2014 DMDirc Developers
  3. *
  4. * Permission is hereby granted, free of charge, to any person obtaining a copy
  5. * of this software and associated documentation files (the "Software"), to deal
  6. * in the Software without restriction, including without limitation the rights
  7. * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
  8. * copies of the Software, and to permit persons to whom the Software is
  9. * furnished to do so, subject to the following conditions:
  10. *
  11. * The above copyright notice and this permission notice shall be included in
  12. * all copies or substantial portions of the Software.
  13. *
  14. * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
  15. * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
  16. * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
  17. * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
  18. * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
  19. * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
  20. * SOFTWARE.
  21. */
  22. package com.dmdirc.actions;
  23. import com.dmdirc.actions.metatypes.ActionEvents;
  24. import com.dmdirc.actions.metatypes.ChannelEvents;
  25. import com.dmdirc.actions.metatypes.ClientEvents;
  26. import com.dmdirc.actions.metatypes.LinkEvents;
  27. import com.dmdirc.actions.metatypes.PluginEvents;
  28. import com.dmdirc.actions.metatypes.QueryEvents;
  29. import com.dmdirc.actions.metatypes.ServerEvents;
  30. import com.dmdirc.interfaces.actions.ActionMetaType;
  31. import com.dmdirc.interfaces.actions.ActionType;
  32. /**
  33. * An enumeration of actions that are raised by the core.
  34. */
  35. public enum CoreActionType implements ActionType {
  36. /** Client opened. */
  37. @Deprecated
  38. CLIENT_OPENED(ClientEvents.CLIENT_EVENT, "Client opened"),
  39. /** Client closed. */
  40. @Deprecated
  41. CLIENT_CLOSED(ClientEvents.CLIENT_EVENT, "Client closed"),
  42. /** Client closing. */
  43. @Deprecated
  44. CLIENT_CLOSING(ClientEvents.CLIENT_EVENT, "Client closing"),
  45. /** Client minimised. */
  46. CLIENT_MINIMISED(ClientEvents.CLIENT_EVENT, "Client minimised"),
  47. /** Client unminimised. */
  48. CLIENT_UNMINIMISED(ClientEvents.CLIENT_EVENT, "Client unminimised"),
  49. /** Client lost focus. */
  50. @Deprecated
  51. CLIENT_FOCUS_LOST(ClientEvents.CLIENT_EVENT, "Client lost focus"),
  52. /** Client gained focus. */
  53. @Deprecated
  54. CLIENT_FOCUS_GAINED(ClientEvents.CLIENT_EVENT, "Client gained focus"),
  55. /** Function key pressed. */
  56. CLIENT_KEY_PRESSED(ClientEvents.CLIENT_EVENT_WITH_KEY, "Function key pressed"),
  57. /** Frame changed. */
  58. CLIENT_FRAME_CHANGED(ClientEvents.WINDOW_EVENT, "Frame changed"),
  59. /** User input. */
  60. CLIENT_USER_INPUT(ClientEvents.CLIENT_EVENT_WITH_BUFFER, "User input"),
  61. /** Line added. */
  62. CLIENT_LINE_ADDED(ClientEvents.WINDOW_EVENT_WITH_MESSAGE, "Line added to a window"),
  63. /** Popup generated. */
  64. CLIENT_POPUP_GENERATED(ClientEvents.POPUP_EVENT, "Popup menu generated"),
  65. /** Prefs dialog opened. */
  66. CLIENT_PREFS_OPENED(ClientEvents.CLIENT_EVENT_WITH_PREFS, "Preferences dialog opened"),
  67. /** Context-specific prefs requested. */
  68. CLIENT_PREFS_REQUESTED(ClientEvents.CLIENT_EVENT_WITH_PREFS_CAT, "Preferences requested"),
  69. /** Prefs dialog closed. */
  70. CLIENT_PREFS_CLOSED(ClientEvents.CLIENT_EVENT, "Preferences dialog opened"),
  71. /** Unknown command. */
  72. UNKNOWN_COMMAND(ClientEvents.UNKNOWN_COMMAND, "Unknown command entered"),
  73. /** Server numeric received. */
  74. SERVER_NUMERIC(ServerEvents.SERVER_NUMERIC, "Numeric event received"),
  75. /** Server connected. */
  76. SERVER_CONNECTED(ServerEvents.SERVER_EVENT, "Server connected"),
  77. /** Server connecting. */
  78. SERVER_CONNECTING(ServerEvents.SERVER_EVENT, "Server connecting"),
  79. /** Server connection error. */
  80. SERVER_CONNECTERROR(ServerEvents.SERVER_EVENT_WITH_ARG, "Server connection error"),
  81. /** Server disconnected. */
  82. SERVER_DISCONNECTED(ServerEvents.SERVER_EVENT, "Server disconnected"),
  83. /** Marked as away. */
  84. SERVER_BACK(ServerEvents.SERVER_EVENT, "Marked as 'back'"),
  85. /** Marked as back. */
  86. SERVER_AWAY(ServerEvents.SERVER_EVENT_WITH_ARG, "Marked as 'away'"),
  87. /** Error. */
  88. SERVER_ERROR(ServerEvents.SERVER_EVENT_WITH_ARG, "Server error"),
  89. /** Auth notice received. */
  90. SERVER_AUTHNOTICE(ServerEvents.SERVER_EVENT_WITH_ARG, "Received auth notice"),
  91. /** Unknown action received. */
  92. SERVER_UNKNOWNACTION(ServerEvents.SERVER_UNKNOWN_EVENT, "Received unknown action"),
  93. /** Unknown notice received. */
  94. SERVER_UNKNOWNNOTICE(ServerEvents.SERVER_UNKNOWN_EVENT, "Received unknown notice"),
  95. /** Unknown message received. */
  96. SERVER_UNKNOWNMESSAGE(ServerEvents.SERVER_UNKNOWN_EVENT, "Received unknown message"),
  97. /** User modes changed. */
  98. SERVER_USERMODES(ServerEvents.SERVER_SOURCED_EVENT_WITH_ARG, "User modes changed"),
  99. /** Private CTCP received. */
  100. SERVER_CTCP(ServerEvents.SERVER_CTCP_EVENT, "CTCP received"),
  101. /** Private CTCPR received. */
  102. SERVER_CTCPR(ServerEvents.SERVER_CTCP_EVENT, "CTCP reply received"),
  103. /** Private notice received. */
  104. SERVER_NOTICE(ServerEvents.SERVER_SOURCED_EVENT_WITH_ARG, "Notice received"),
  105. /** Private server notice received. */
  106. SERVER_SERVERNOTICE(ServerEvents.SERVER_SOURCED_EVENT_WITH_ARG, "Server notice received"),
  107. /** MOTD starting. */
  108. SERVER_MOTDSTART(ServerEvents.SERVER_EVENT_WITH_ARG, "Start of MOTD received"),
  109. /** MOTD ended. */
  110. SERVER_MOTDEND(ServerEvents.SERVER_EVENT_WITH_ARG, "End of MOTD received"),
  111. /** MOTD line. */
  112. SERVER_MOTDLINE(ServerEvents.SERVER_EVENT_WITH_ARG, "MOTD line received"),
  113. /** Ping reply received. */
  114. SERVER_GOTPING(ServerEvents.SERVER_PING, "Received server ping reply"),
  115. /** Missed server ping reply. */
  116. SERVER_NOPING(ServerEvents.SERVER_PING, "Missed server ping reply"),
  117. /** Ping sent. */
  118. SERVER_PINGSENT(ServerEvents.SERVER_EVENT, "Ping request sent"),
  119. /** Invite received. */
  120. SERVER_INVITERECEIVED(ServerEvents.SERVER_INVITE, "Invite received"),
  121. /** Wallops. */
  122. SERVER_WALLOPS(ServerEvents.SERVER_SOURCED_EVENT_WITH_ARG, "Wallop received"),
  123. /** Wallusers. */
  124. SERVER_WALLUSERS(ServerEvents.SERVER_SOURCED_EVENT_WITH_ARG, "Walluser received"),
  125. /** Walldesync. */
  126. SERVER_WALLDESYNC(ServerEvents.SERVER_SOURCED_EVENT_WITH_ARG, "Walldesync received"),
  127. /** Nick change. */
  128. SERVER_NICKCHANGE(ServerEvents.SERVER_NICKCHANGE, "My nickname changed"),
  129. /** Channel window opened. */
  130. CHANNEL_OPENED(ChannelEvents.CHANNEL_EVENT, "Channel window opened"),
  131. /** Channel window closed. */
  132. CHANNEL_CLOSED(ChannelEvents.CHANNEL_EVENT, "Channel window closed"),
  133. /** Names reply received. */
  134. CHANNEL_GOTNAMES(ChannelEvents.CHANNEL_EVENT, "Channel names reply received"),
  135. /** Channel topic is not set. */
  136. CHANNEL_NOTOPIC(ChannelEvents.CHANNEL_EVENT, "Channel topic is not set"),
  137. /** Channel topic received. */
  138. CHANNEL_GOTTOPIC(ChannelEvents.CHANNEL_TOPICEVENT, "Channel topic received"),
  139. /** Channel message sent. */
  140. CHANNEL_SELF_MESSAGE(ChannelEvents.CHANNEL_SOURCED_EVENT_WITH_ARG, "Channel message sent"),
  141. /** Channel action sent. */
  142. CHANNEL_SELF_ACTION(ChannelEvents.CHANNEL_SOURCED_EVENT_WITH_ARG, "Channel action sent"),
  143. /** Channel message received. */
  144. CHANNEL_MESSAGE(ChannelEvents.CHANNEL_SOURCED_EVENT_WITH_ARG, "Channel message received"),
  145. /** Channel actions received. */
  146. CHANNEL_ACTION(ChannelEvents.CHANNEL_SOURCED_EVENT_WITH_ARG, "Channel action received"),
  147. /** Channel notice received. */
  148. CHANNEL_NOTICE(ChannelEvents.CHANNEL_SOURCED_EVENT_WITH_ARG, "Channel notice received"),
  149. /** Channel mode notice received.
  150. *
  151. * @since 0.6.3m2 */
  152. CHANNEL_MODE_NOTICE(ChannelEvents.CHANNEL_SOURCED_EVENT_WITH_CHARARG,
  153. "Channel mode notice received"),
  154. /** Channel CTCP received. */
  155. CHANNEL_CTCP(ChannelEvents.CHANNEL_CTCP, "Channel CTCP received"),
  156. /** Someone joined a channel. */
  157. CHANNEL_JOIN(ChannelEvents.CHANNEL_SOURCED_EVENT, "Someone joined a channel"),
  158. /** Someone left a channel. */
  159. CHANNEL_PART(ChannelEvents.CHANNEL_SOURCED_EVENT_WITH_ARG, "Someone left a channel"),
  160. /** Someone quit. */
  161. CHANNEL_QUIT(ChannelEvents.CHANNEL_SOURCED_EVENT_WITH_ARG, "Someone quit IRC"),
  162. /** Someone was kicked. */
  163. CHANNEL_KICK(ChannelEvents.CHANNEL_SOURCED_EVENT_WITH_VICTIM, "Someone kicked someone"),
  164. /** Someone marked as away. */
  165. CHANNEL_USERAWAY(ChannelEvents.CHANNEL_SOURCED_EVENT, "Someone is marked as 'away'"),
  166. /** Someone marked as back. */
  167. CHANNEL_USERBACK(ChannelEvents.CHANNEL_SOURCED_EVENT, "Someone is marked as 'back'"),
  168. /** Channel list mode retrieved.
  169. *
  170. * @since 0.6.3 */
  171. CHANNEL_LISTMODERETRIEVED(ChannelEvents.CHANNEL_LISTMODEEVENT,
  172. "Channel list mode value retrieved"),
  173. /** Channel mode discovered. */
  174. CHANNEL_MODESDISCOVERED(ChannelEvents.CHANNEL_MODEEVENT, "Channel modes discovered"),
  175. /** Channel mode changes. */
  176. CHANNEL_MODECHANGE(ChannelEvents.CHANNEL_SOURCED_EVENT_WITH_ARG, "Someone changed channel modes"),
  177. /** Someone changed someone else's user modes. */
  178. CHANNEL_USERMODECHANGE(ChannelEvents.CHANNEL_SOURCED_EVENT_WITH_VICTIM,
  179. "Someone changed someone else's modes"),
  180. /** Someone changed nickname. */
  181. CHANNEL_NICKCHANGE(ChannelEvents.CHANNEL_NICKEVENT, "Someone changed nicknames"),
  182. /** Someone changed a topic. */
  183. CHANNEL_TOPICCHANGE(ChannelEvents.CHANNEL_SOURCED_EVENT_WITH_ARG,
  184. "Someone changed channel topic"),
  185. /** Query opened. */
  186. QUERY_OPENED(QueryEvents.QUERY_EVENT, "Query window opened"),
  187. /** Query closed. */
  188. QUERY_CLOSED(QueryEvents.QUERY_EVENT, "Query window closed"),
  189. /** Query message received. */
  190. QUERY_MESSAGE(QueryEvents.QUERY_SOURCED_EVENT_WITH_ARG, "Private message received"),
  191. /** Query action received. */
  192. QUERY_ACTION(QueryEvents.QUERY_SOURCED_EVENT_WITH_ARG, "Private action received"),
  193. /** Query message sent. */
  194. QUERY_SELF_MESSAGE(QueryEvents.QUERY_SOURCED_EVENT_WITH_ARG, "Private message sent"),
  195. /** Query action sent. */
  196. QUERY_SELF_ACTION(QueryEvents.QUERY_SOURCED_EVENT_WITH_ARG, "Private action sent"),
  197. /** Query quit event. */
  198. QUERY_QUIT(QueryEvents.QUERY_EVENT_WITH_ARG, "Query: user quit"),
  199. /** Query nick change. */
  200. QUERY_NICKCHANGE(QueryEvents.QUERY_EVENT_WITH_ARG, "Query: user changed nicks"),
  201. /** Plugin loaded. */
  202. PLUGIN_LOADED(PluginEvents.PLUGIN_EVENT, "Plugin loaded"),
  203. /** Plugin unloaded. */
  204. PLUGIN_UNLOADED(PluginEvents.PLUGIN_EVENT, "Plugin unloaded"),
  205. /** Plugins have been refreshed. */
  206. PLUGIN_REFRESH(PluginEvents.PLUGIN_EVENT, "Plugins refreshed"),
  207. /** Action created. */
  208. ACTION_CREATED(ActionEvents.ACTION_EVENT, "Action created"),
  209. /** Action updated. */
  210. ACTION_UPDATED(ActionEvents.ACTION_EVENT, "Action updated"),
  211. /** Action deleted. */
  212. ACTION_DELETED(ActionEvents.ACTION_DELETED, "Action deleted"),
  213. /** Channel clicked. */
  214. LINK_CHANNEL_CLICKED(LinkEvents.CHANNEL_CLICKED, "A channel link was clicked"),
  215. /** Channel clicked. */
  216. LINK_NICKNAME_CLICKED(LinkEvents.NICKNAME_CLICKED, "A nickname link was clicked"),
  217. /** Link clicked. */
  218. LINK_URL_CLICKED(LinkEvents.LINK_CLICKED, "A Link was clicked");
  219. /** The type of this action. */
  220. private final ActionMetaType type;
  221. /** The name of this action. */
  222. private final String name;
  223. /**
  224. * Constructs a new core action.
  225. *
  226. * @param type The type of this action
  227. * @param name The name of this action
  228. */
  229. CoreActionType(final ActionMetaType type, final String name) {
  230. this.type = type;
  231. this.name = name;
  232. }
  233. /** {@inheritDoc} */
  234. @Override
  235. public ActionMetaType getType() {
  236. return type;
  237. }
  238. /** {@inheritDoc} */
  239. @Override
  240. public String getName() {
  241. return name;
  242. }
  243. }