Browse Source

Merge branch 'master' of https://github.com/DMDirc/DMDirc

pull/787/head
Greg Holmes 7 years ago
parent
commit
49c3af3e81
100 changed files with 188 additions and 18 deletions
  1. 0
    0
      api/src/main/java/com/dmdirc/Invite.java
  2. 0
    0
      api/src/main/java/com/dmdirc/ServerState.java
  3. 0
    0
      api/src/main/java/com/dmdirc/Topic.java
  4. 0
    2
      api/src/main/java/com/dmdirc/commandparser/CommandArguments.java
  5. 0
    0
      api/src/main/java/com/dmdirc/commandparser/CommandInfoPair.java
  6. 2
    14
      api/src/main/java/com/dmdirc/commandparser/commands/BaseCommand.java
  7. 45
    0
      api/src/main/java/com/dmdirc/commandparser/commands/Command.java
  8. 0
    0
      api/src/main/java/com/dmdirc/commandparser/commands/CommandOptions.java
  9. 0
    0
      api/src/main/java/com/dmdirc/commandparser/commands/ExternalCommand.java
  10. 0
    0
      api/src/main/java/com/dmdirc/commandparser/commands/IntelligentCommand.java
  11. 0
    0
      api/src/main/java/com/dmdirc/commandparser/commands/ValidatingCommand.java
  12. 0
    0
      api/src/main/java/com/dmdirc/commandparser/commands/WrappableCommand.java
  13. 0
    0
      api/src/main/java/com/dmdirc/commandparser/commands/context/CommandContext.java
  14. 96
    0
      api/src/main/java/com/dmdirc/commandparser/parsers/CommandParser.java
  15. 0
    0
      api/src/main/java/com/dmdirc/events/BaseChannelActionEvent.java
  16. 0
    0
      api/src/main/java/com/dmdirc/events/BaseChannelMessageEvent.java
  17. 0
    0
      api/src/main/java/com/dmdirc/events/BaseChannelTextEvent.java
  18. 1
    1
      api/src/main/java/com/dmdirc/events/BaseDisplayableEvent.java
  19. 0
    0
      api/src/main/java/com/dmdirc/events/BaseQueryActionEvent.java
  20. 0
    0
      api/src/main/java/com/dmdirc/events/BaseQueryMessageEvent.java
  21. 0
    0
      api/src/main/java/com/dmdirc/events/BaseQueryTextEvent.java
  22. 0
    0
      api/src/main/java/com/dmdirc/events/ChannelActionEvent.java
  23. 0
    0
      api/src/main/java/com/dmdirc/events/ChannelActionHighlightEvent.java
  24. 0
    0
      api/src/main/java/com/dmdirc/events/ChannelClosedEvent.java
  25. 0
    0
      api/src/main/java/com/dmdirc/events/ChannelCtcpEvent.java
  26. 0
    0
      api/src/main/java/com/dmdirc/events/ChannelDisplayableEvent.java
  27. 0
    0
      api/src/main/java/com/dmdirc/events/ChannelDisplayableUserEvent.java
  28. 0
    0
      api/src/main/java/com/dmdirc/events/ChannelEvent.java
  29. 0
    0
      api/src/main/java/com/dmdirc/events/ChannelGotNamesEvent.java
  30. 0
    0
      api/src/main/java/com/dmdirc/events/ChannelGotTopicEvent.java
  31. 0
    0
      api/src/main/java/com/dmdirc/events/ChannelHighlightEvent.java
  32. 0
    0
      api/src/main/java/com/dmdirc/events/ChannelJoinEvent.java
  33. 0
    0
      api/src/main/java/com/dmdirc/events/ChannelKickEvent.java
  34. 0
    0
      api/src/main/java/com/dmdirc/events/ChannelListModesRetrievedEvent.java
  35. 0
    0
      api/src/main/java/com/dmdirc/events/ChannelMessageEvent.java
  36. 0
    0
      api/src/main/java/com/dmdirc/events/ChannelModeChangeEvent.java
  37. 0
    0
      api/src/main/java/com/dmdirc/events/ChannelModeNoticeEvent.java
  38. 0
    0
      api/src/main/java/com/dmdirc/events/ChannelModesDiscoveredEvent.java
  39. 0
    0
      api/src/main/java/com/dmdirc/events/ChannelNickChangeEvent.java
  40. 0
    0
      api/src/main/java/com/dmdirc/events/ChannelNoModesDiscoveredEvent.java
  41. 0
    0
      api/src/main/java/com/dmdirc/events/ChannelNoTopicEvent.java
  42. 0
    0
      api/src/main/java/com/dmdirc/events/ChannelNoticeEvent.java
  43. 0
    0
      api/src/main/java/com/dmdirc/events/ChannelOpenedEvent.java
  44. 0
    0
      api/src/main/java/com/dmdirc/events/ChannelPartEvent.java
  45. 0
    0
      api/src/main/java/com/dmdirc/events/ChannelQuitEvent.java
  46. 0
    0
      api/src/main/java/com/dmdirc/events/ChannelSelfActionEvent.java
  47. 0
    0
      api/src/main/java/com/dmdirc/events/ChannelSelfJoinEvent.java
  48. 0
    0
      api/src/main/java/com/dmdirc/events/ChannelSelfMessageEvent.java
  49. 0
    0
      api/src/main/java/com/dmdirc/events/ChannelSelfModeChangeEvent.java
  50. 0
    0
      api/src/main/java/com/dmdirc/events/ChannelSelfNickChangeEvent.java
  51. 0
    0
      api/src/main/java/com/dmdirc/events/ChannelSelfPartEvent.java
  52. 0
    0
      api/src/main/java/com/dmdirc/events/ChannelTopicChangeEvent.java
  53. 0
    0
      api/src/main/java/com/dmdirc/events/ChannelTopicUnsetEvent.java
  54. 0
    0
      api/src/main/java/com/dmdirc/events/ChannelUserAwayEvent.java
  55. 0
    0
      api/src/main/java/com/dmdirc/events/ChannelUserBackEvent.java
  56. 0
    0
      api/src/main/java/com/dmdirc/events/ChannelUserEvent.java
  57. 0
    0
      api/src/main/java/com/dmdirc/events/ChannelUserModeChangeEvent.java
  58. 0
    0
      api/src/main/java/com/dmdirc/events/ClientClosedEvent.java
  59. 0
    0
      api/src/main/java/com/dmdirc/events/ClientClosingEvent.java
  60. 0
    0
      api/src/main/java/com/dmdirc/events/ClientFrameChangedEvent.java
  61. 0
    0
      api/src/main/java/com/dmdirc/events/ClientLineAddedEvent.java
  62. 0
    0
      api/src/main/java/com/dmdirc/events/ClientOpenedEvent.java
  63. 0
    0
      api/src/main/java/com/dmdirc/events/ClientUserInputEvent.java
  64. 0
    0
      api/src/main/java/com/dmdirc/events/CommandErrorEvent.java
  65. 0
    0
      api/src/main/java/com/dmdirc/events/CommandOutputEvent.java
  66. 4
    1
      api/src/main/java/com/dmdirc/events/DisplayProperty.java
  67. 40
    0
      api/src/main/java/com/dmdirc/events/DisplayableEvent.java
  68. 0
    0
      api/src/main/java/com/dmdirc/events/FeedbackNagEvent.java
  69. 0
    0
      api/src/main/java/com/dmdirc/events/FirstRunEvent.java
  70. 0
    0
      api/src/main/java/com/dmdirc/events/FrameChangedEvent.java
  71. 0
    0
      api/src/main/java/com/dmdirc/events/FrameClosingEvent.java
  72. 0
    0
      api/src/main/java/com/dmdirc/events/FrameComponentAddedEvent.java
  73. 0
    0
      api/src/main/java/com/dmdirc/events/FrameComponentEvent.java
  74. 0
    0
      api/src/main/java/com/dmdirc/events/FrameComponentRemovedEvent.java
  75. 0
    0
      api/src/main/java/com/dmdirc/events/FrameEvent.java
  76. 0
    0
      api/src/main/java/com/dmdirc/events/FrameIconChangedEvent.java
  77. 0
    0
      api/src/main/java/com/dmdirc/events/FrameNameChangedEvent.java
  78. 0
    0
      api/src/main/java/com/dmdirc/events/FrameOpenedEvent.java
  79. 0
    0
      api/src/main/java/com/dmdirc/events/FrameTitleChangedEvent.java
  80. 0
    0
      api/src/main/java/com/dmdirc/events/LinkChannelClickedEvent.java
  81. 0
    0
      api/src/main/java/com/dmdirc/events/LinkEvent.java
  82. 0
    0
      api/src/main/java/com/dmdirc/events/LinkNicknameClickedEvent.java
  83. 0
    0
      api/src/main/java/com/dmdirc/events/LinkUrlClickedEvent.java
  84. 0
    0
      api/src/main/java/com/dmdirc/events/NickListClientAddedEvent.java
  85. 0
    0
      api/src/main/java/com/dmdirc/events/NickListClientRemovedEvent.java
  86. 0
    0
      api/src/main/java/com/dmdirc/events/NickListClientsChangedEvent.java
  87. 0
    0
      api/src/main/java/com/dmdirc/events/NickListEvent.java
  88. 0
    0
      api/src/main/java/com/dmdirc/events/NickListUpdatedEvent.java
  89. 0
    0
      api/src/main/java/com/dmdirc/events/ProfileAddedEvent.java
  90. 0
    0
      api/src/main/java/com/dmdirc/events/ProfileDeletedEvent.java
  91. 0
    0
      api/src/main/java/com/dmdirc/events/QueryActionEvent.java
  92. 0
    0
      api/src/main/java/com/dmdirc/events/QueryActionHighlightEvent.java
  93. 0
    0
      api/src/main/java/com/dmdirc/events/QueryClosedEvent.java
  94. 0
    0
      api/src/main/java/com/dmdirc/events/QueryDisplayableEvent.java
  95. 0
    0
      api/src/main/java/com/dmdirc/events/QueryEvent.java
  96. 0
    0
      api/src/main/java/com/dmdirc/events/QueryHighlightEvent.java
  97. 0
    0
      api/src/main/java/com/dmdirc/events/QueryMessageEvent.java
  98. 0
    0
      api/src/main/java/com/dmdirc/events/QueryNickChangeEvent.java
  99. 0
    0
      api/src/main/java/com/dmdirc/events/QueryOpenedEvent.java
  100. 0
    0
      api/src/main/java/com/dmdirc/events/QueryQuitEvent.java

src/main/java/com/dmdirc/Invite.java → api/src/main/java/com/dmdirc/Invite.java View File


src/main/java/com/dmdirc/ServerState.java → api/src/main/java/com/dmdirc/ServerState.java View File


src/main/java/com/dmdirc/Topic.java → api/src/main/java/com/dmdirc/Topic.java View File


src/main/java/com/dmdirc/commandparser/CommandArguments.java → api/src/main/java/com/dmdirc/commandparser/CommandArguments.java View File

@@ -22,7 +22,6 @@
22 22
 
23 23
 package com.dmdirc.commandparser;
24 24
 
25
-import com.dmdirc.Precondition;
26 25
 import com.dmdirc.interfaces.CommandController;
27 26
 
28 27
 import java.util.Arrays;
@@ -190,7 +189,6 @@ public class CommandArguments {
190 189
      *
191 190
      * @return A String representation of the requested words
192 191
      */
193
-    @Precondition("Start index is less than or equal to end index")
194 192
     public String getWordsAsString(final int start, final int end) {
195 193
         checkPositionIndex(start, end);
196 194
 

src/main/java/com/dmdirc/commandparser/CommandInfoPair.java → api/src/main/java/com/dmdirc/commandparser/CommandInfoPair.java View File


src/main/java/com/dmdirc/commandparser/commands/Command.java → api/src/main/java/com/dmdirc/commandparser/commands/BaseCommand.java View File

@@ -36,12 +36,12 @@ import javax.annotation.Nullable;
36 36
 /**
37 37
  * Represents a generic command.
38 38
  */
39
-public abstract class Command {
39
+public abstract class BaseCommand implements Command {
40 40
 
41 41
     /** The controller this command is associated with. */
42 42
     private final CommandController controller;
43 43
 
44
-    public Command(final CommandController controller) {
44
+    public BaseCommand(final CommandController controller) {
45 45
         this.controller = controller;
46 46
     }
47 47
 
@@ -147,16 +147,4 @@ public abstract class Command {
147 147
         }
148 148
     }
149 149
 
150
-    /**
151
-     * Executes this command.
152
-     *
153
-     * @param origin  The container which received the command
154
-     * @param args    Arguments passed to this command
155
-     * @param context The context the command was executed in
156
-     *
157
-     * @since 0.6.4
158
-     */
159
-    public abstract void execute(@Nonnull WindowModel origin, CommandArguments args,
160
-            CommandContext context);
161
-
162 150
 }

+ 45
- 0
api/src/main/java/com/dmdirc/commandparser/commands/Command.java View File

@@ -0,0 +1,45 @@
1
+/*
2
+ * Copyright (c) 2006-2016 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
+
23
+package com.dmdirc.commandparser.commands;
24
+
25
+import com.dmdirc.commandparser.CommandArguments;
26
+import com.dmdirc.commandparser.commands.context.CommandContext;
27
+import com.dmdirc.interfaces.WindowModel;
28
+
29
+import javax.annotation.Nonnull;
30
+
31
+/**
32
+ * A command responds to user-input in a text field.
33
+ */
34
+public interface Command {
35
+
36
+    /**
37
+     * Executes this command.
38
+     *
39
+     * @param origin  The container which received the command
40
+     * @param args    Arguments passed to this command
41
+     * @param context The context the command was executed in
42
+     */
43
+    void execute(@Nonnull WindowModel origin, CommandArguments args, CommandContext context);
44
+
45
+}

src/main/java/com/dmdirc/commandparser/commands/CommandOptions.java → api/src/main/java/com/dmdirc/commandparser/commands/CommandOptions.java View File


src/main/java/com/dmdirc/commandparser/commands/ExternalCommand.java → api/src/main/java/com/dmdirc/commandparser/commands/ExternalCommand.java View File


src/main/java/com/dmdirc/commandparser/commands/IntelligentCommand.java → api/src/main/java/com/dmdirc/commandparser/commands/IntelligentCommand.java View File


src/main/java/com/dmdirc/commandparser/commands/ValidatingCommand.java → api/src/main/java/com/dmdirc/commandparser/commands/ValidatingCommand.java View File


src/main/java/com/dmdirc/commandparser/commands/WrappableCommand.java → api/src/main/java/com/dmdirc/commandparser/commands/WrappableCommand.java View File


src/main/java/com/dmdirc/commandparser/commands/context/CommandContext.java → api/src/main/java/com/dmdirc/commandparser/commands/context/CommandContext.java View File


+ 96
- 0
api/src/main/java/com/dmdirc/commandparser/parsers/CommandParser.java View File

@@ -0,0 +1,96 @@
1
+/*
2
+ * Copyright (c) 2006-2016 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
+
23
+package com.dmdirc.commandparser.parsers;
24
+
25
+import com.dmdirc.commandparser.CommandInfo;
26
+import com.dmdirc.commandparser.CommandInfoPair;
27
+import com.dmdirc.commandparser.commands.Command;
28
+import com.dmdirc.interfaces.WindowModel;
29
+
30
+import javax.annotation.Nonnull;
31
+import javax.annotation.Nullable;
32
+import java.util.Map;
33
+
34
+/**
35
+ * A command parser takes a line of input from the user, determines if it is an attempt at executing a command (based
36
+ * on the character at the start of the string), and handles it appropriately.
37
+ */
38
+public interface CommandParser {
39
+
40
+    /**
41
+     * Registers the specified command with this parser.
42
+     *
43
+     * @param command Command to be registered
44
+     * @param info    The information the command should be registered with
45
+     */
46
+    void registerCommand(Command command, CommandInfo info);
47
+
48
+    /**
49
+     * Unregisters the specified command with this parser.
50
+     *
51
+     * @param info Command information to be unregistered
52
+     */
53
+    void unregisterCommand(CommandInfo info);
54
+
55
+    /**
56
+     * Retrieves a map of commands known by this command parser.
57
+     *
58
+     * @return A map of commands known to this parser
59
+     */
60
+    Map<String, CommandInfoPair> getCommands();
61
+
62
+    /**
63
+     * Parses the specified string as a command.
64
+     *
65
+     * @param origin       The container which received the command
66
+     * @param line         The line to be parsed
67
+     * @param parseChannel Whether or not to try and parse the first argument as a channel name
68
+     */
69
+    void parseCommand(@Nonnull WindowModel origin, String line, boolean parseChannel);
70
+
71
+    /**
72
+     * Parses the specified string as a command.
73
+     *
74
+     * @param origin The container which received the command
75
+     * @param line   The line to be parsed
76
+     */
77
+    void parseCommand(@Nonnull WindowModel origin, String line);
78
+
79
+    /**
80
+     * Handles the specified string as a non-command.
81
+     *
82
+     * @param origin The window in which the command was typed
83
+     * @param line   The line to be parsed
84
+     */
85
+    void parseCommandCtrl(WindowModel origin, String line);
86
+
87
+    /**
88
+     * Gets the command with the given name that was previously registered with this parser.
89
+     *
90
+     * @param commandName The name of the command to retrieve.
91
+     * @return The command info pair, or {@code null} if the command does not exist.
92
+     */
93
+    @Nullable
94
+    CommandInfoPair getCommand(String commandName);
95
+
96
+}

src/main/java/com/dmdirc/events/BaseChannelActionEvent.java → api/src/main/java/com/dmdirc/events/BaseChannelActionEvent.java View File


src/main/java/com/dmdirc/events/BaseChannelMessageEvent.java → api/src/main/java/com/dmdirc/events/BaseChannelMessageEvent.java View File


src/main/java/com/dmdirc/events/BaseChannelTextEvent.java → api/src/main/java/com/dmdirc/events/BaseChannelTextEvent.java View File


src/main/java/com/dmdirc/events/BaseDisplayableEvent.java → api/src/main/java/com/dmdirc/events/BaseDisplayableEvent.java View File

@@ -28,7 +28,7 @@ import java.time.LocalDateTime;
28 28
 import java.util.Optional;
29 29
 
30 30
 /**
31
- * Base class for miscallenous displayable events.
31
+ * Base class for miscellaneous displayable events.
32 32
  */
33 33
 public abstract class BaseDisplayableEvent extends DMDircEvent implements DisplayableEvent {
34 34
 

src/main/java/com/dmdirc/events/BaseQueryActionEvent.java → api/src/main/java/com/dmdirc/events/BaseQueryActionEvent.java View File


src/main/java/com/dmdirc/events/BaseQueryMessageEvent.java → api/src/main/java/com/dmdirc/events/BaseQueryMessageEvent.java View File


src/main/java/com/dmdirc/events/BaseQueryTextEvent.java → api/src/main/java/com/dmdirc/events/BaseQueryTextEvent.java View File


src/main/java/com/dmdirc/events/ChannelActionEvent.java → api/src/main/java/com/dmdirc/events/ChannelActionEvent.java View File


src/main/java/com/dmdirc/events/ChannelActionHighlightEvent.java → api/src/main/java/com/dmdirc/events/ChannelActionHighlightEvent.java View File


src/main/java/com/dmdirc/events/ChannelClosedEvent.java → api/src/main/java/com/dmdirc/events/ChannelClosedEvent.java View File


src/main/java/com/dmdirc/events/ChannelCtcpEvent.java → api/src/main/java/com/dmdirc/events/ChannelCtcpEvent.java View File


src/main/java/com/dmdirc/events/ChannelDisplayableEvent.java → api/src/main/java/com/dmdirc/events/ChannelDisplayableEvent.java View File


src/main/java/com/dmdirc/events/ChannelDisplayableUserEvent.java → api/src/main/java/com/dmdirc/events/ChannelDisplayableUserEvent.java View File


src/main/java/com/dmdirc/events/ChannelEvent.java → api/src/main/java/com/dmdirc/events/ChannelEvent.java View File


src/main/java/com/dmdirc/events/ChannelGotNamesEvent.java → api/src/main/java/com/dmdirc/events/ChannelGotNamesEvent.java View File


src/main/java/com/dmdirc/events/ChannelGotTopicEvent.java → api/src/main/java/com/dmdirc/events/ChannelGotTopicEvent.java View File


src/main/java/com/dmdirc/events/ChannelHighlightEvent.java → api/src/main/java/com/dmdirc/events/ChannelHighlightEvent.java View File


src/main/java/com/dmdirc/events/ChannelJoinEvent.java → api/src/main/java/com/dmdirc/events/ChannelJoinEvent.java View File


src/main/java/com/dmdirc/events/ChannelKickEvent.java → api/src/main/java/com/dmdirc/events/ChannelKickEvent.java View File


src/main/java/com/dmdirc/events/ChannelListModesRetrievedEvent.java → api/src/main/java/com/dmdirc/events/ChannelListModesRetrievedEvent.java View File


src/main/java/com/dmdirc/events/ChannelMessageEvent.java → api/src/main/java/com/dmdirc/events/ChannelMessageEvent.java View File


src/main/java/com/dmdirc/events/ChannelModeChangeEvent.java → api/src/main/java/com/dmdirc/events/ChannelModeChangeEvent.java View File


src/main/java/com/dmdirc/events/ChannelModeNoticeEvent.java → api/src/main/java/com/dmdirc/events/ChannelModeNoticeEvent.java View File


src/main/java/com/dmdirc/events/ChannelModesDiscoveredEvent.java → api/src/main/java/com/dmdirc/events/ChannelModesDiscoveredEvent.java View File


src/main/java/com/dmdirc/events/ChannelNickChangeEvent.java → api/src/main/java/com/dmdirc/events/ChannelNickChangeEvent.java View File


src/main/java/com/dmdirc/events/ChannelNoModesDiscoveredEvent.java → api/src/main/java/com/dmdirc/events/ChannelNoModesDiscoveredEvent.java View File


src/main/java/com/dmdirc/events/ChannelNoTopicEvent.java → api/src/main/java/com/dmdirc/events/ChannelNoTopicEvent.java View File


src/main/java/com/dmdirc/events/ChannelNoticeEvent.java → api/src/main/java/com/dmdirc/events/ChannelNoticeEvent.java View File


src/main/java/com/dmdirc/events/ChannelOpenedEvent.java → api/src/main/java/com/dmdirc/events/ChannelOpenedEvent.java View File


src/main/java/com/dmdirc/events/ChannelPartEvent.java → api/src/main/java/com/dmdirc/events/ChannelPartEvent.java View File


src/main/java/com/dmdirc/events/ChannelQuitEvent.java → api/src/main/java/com/dmdirc/events/ChannelQuitEvent.java View File


src/main/java/com/dmdirc/events/ChannelSelfActionEvent.java → api/src/main/java/com/dmdirc/events/ChannelSelfActionEvent.java View File


src/main/java/com/dmdirc/events/ChannelSelfJoinEvent.java → api/src/main/java/com/dmdirc/events/ChannelSelfJoinEvent.java View File


src/main/java/com/dmdirc/events/ChannelSelfMessageEvent.java → api/src/main/java/com/dmdirc/events/ChannelSelfMessageEvent.java View File


src/main/java/com/dmdirc/events/ChannelSelfModeChangeEvent.java → api/src/main/java/com/dmdirc/events/ChannelSelfModeChangeEvent.java View File


src/main/java/com/dmdirc/events/ChannelSelfNickChangeEvent.java → api/src/main/java/com/dmdirc/events/ChannelSelfNickChangeEvent.java View File


src/main/java/com/dmdirc/events/ChannelSelfPartEvent.java → api/src/main/java/com/dmdirc/events/ChannelSelfPartEvent.java View File


src/main/java/com/dmdirc/events/ChannelTopicChangeEvent.java → api/src/main/java/com/dmdirc/events/ChannelTopicChangeEvent.java View File


src/main/java/com/dmdirc/events/ChannelTopicUnsetEvent.java → api/src/main/java/com/dmdirc/events/ChannelTopicUnsetEvent.java View File


src/main/java/com/dmdirc/events/ChannelUserAwayEvent.java → api/src/main/java/com/dmdirc/events/ChannelUserAwayEvent.java View File


src/main/java/com/dmdirc/events/ChannelUserBackEvent.java → api/src/main/java/com/dmdirc/events/ChannelUserBackEvent.java View File


src/main/java/com/dmdirc/events/ChannelUserEvent.java → api/src/main/java/com/dmdirc/events/ChannelUserEvent.java View File


src/main/java/com/dmdirc/events/ChannelUserModeChangeEvent.java → api/src/main/java/com/dmdirc/events/ChannelUserModeChangeEvent.java View File


src/main/java/com/dmdirc/events/ClientClosedEvent.java → api/src/main/java/com/dmdirc/events/ClientClosedEvent.java View File


src/main/java/com/dmdirc/events/ClientClosingEvent.java → api/src/main/java/com/dmdirc/events/ClientClosingEvent.java View File


src/main/java/com/dmdirc/events/ClientFrameChangedEvent.java → api/src/main/java/com/dmdirc/events/ClientFrameChangedEvent.java View File


src/main/java/com/dmdirc/events/ClientLineAddedEvent.java → api/src/main/java/com/dmdirc/events/ClientLineAddedEvent.java View File


src/main/java/com/dmdirc/events/ClientOpenedEvent.java → api/src/main/java/com/dmdirc/events/ClientOpenedEvent.java View File


src/main/java/com/dmdirc/events/ClientUserInputEvent.java → api/src/main/java/com/dmdirc/events/ClientUserInputEvent.java View File


src/main/java/com/dmdirc/events/CommandErrorEvent.java → api/src/main/java/com/dmdirc/events/CommandErrorEvent.java View File


src/main/java/com/dmdirc/events/CommandOutputEvent.java → api/src/main/java/com/dmdirc/events/CommandOutputEvent.java View File


+ 4
- 1
api/src/main/java/com/dmdirc/events/DisplayProperty.java View File

@@ -22,10 +22,11 @@
22 22
 
23 23
 package com.dmdirc.events;
24 24
 
25
+import com.dmdirc.interfaces.User;
25 26
 import com.dmdirc.util.colours.Colour;
26 27
 
27 28
 /**
28
- * Describes a property that may be set on a {@link DisplayableEvent} to affect its display.
29
+ * Describes a property that may be set on a {@link com.dmdirc.interfaces.Displayable} to affect its display.
29 30
  */
30 31
 @SuppressWarnings("UnusedDeclaration") // Generic type used for compile-time validation only
31 32
 public interface DisplayProperty<T> {
@@ -38,6 +39,8 @@ public interface DisplayProperty<T> {
38 39
     DisplayProperty<Boolean> DO_NOT_DISPLAY = new DisplayPropertyImpl<>();
39 40
     /** Whether to suppress timestamps for the event. */
40 41
     DisplayProperty<Boolean> NO_TIMESTAMPS = new DisplayPropertyImpl<>();
42
+    /** A user that the displayable is linked to. */
43
+    DisplayProperty<User> LINK_USER = new DisplayPropertyImpl<>();
41 44
 
42 45
     final class DisplayPropertyImpl<T> implements DisplayProperty<T> {}
43 46
 

+ 40
- 0
api/src/main/java/com/dmdirc/events/DisplayableEvent.java View File

@@ -0,0 +1,40 @@
1
+/*
2
+ * Copyright (c) 2006-2015 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
+
23
+package com.dmdirc.events;
24
+
25
+import com.dmdirc.interfaces.Displayable;
26
+import java.time.LocalDateTime;
27
+
28
+/**
29
+ * Describes an event which is rendered in the client to the user.
30
+ */
31
+public interface DisplayableEvent extends SourcedEvent, Displayable {
32
+
33
+    /**
34
+     * Gets the times at which the event occurred.
35
+     *
36
+     * @return The time the event occurred at.
37
+     */
38
+    LocalDateTime getTimestamp();
39
+
40
+}

src/main/java/com/dmdirc/events/FeedbackNagEvent.java → api/src/main/java/com/dmdirc/events/FeedbackNagEvent.java View File


src/main/java/com/dmdirc/events/FirstRunEvent.java → api/src/main/java/com/dmdirc/events/FirstRunEvent.java View File


src/main/java/com/dmdirc/events/FrameChangedEvent.java → api/src/main/java/com/dmdirc/events/FrameChangedEvent.java View File


src/main/java/com/dmdirc/events/FrameClosingEvent.java → api/src/main/java/com/dmdirc/events/FrameClosingEvent.java View File


src/main/java/com/dmdirc/events/FrameComponentAddedEvent.java → api/src/main/java/com/dmdirc/events/FrameComponentAddedEvent.java View File


src/main/java/com/dmdirc/events/FrameComponentEvent.java → api/src/main/java/com/dmdirc/events/FrameComponentEvent.java View File


src/main/java/com/dmdirc/events/FrameComponentRemovedEvent.java → api/src/main/java/com/dmdirc/events/FrameComponentRemovedEvent.java View File


src/main/java/com/dmdirc/events/FrameEvent.java → api/src/main/java/com/dmdirc/events/FrameEvent.java View File


src/main/java/com/dmdirc/events/FrameIconChangedEvent.java → api/src/main/java/com/dmdirc/events/FrameIconChangedEvent.java View File


src/main/java/com/dmdirc/events/FrameNameChangedEvent.java → api/src/main/java/com/dmdirc/events/FrameNameChangedEvent.java View File


src/main/java/com/dmdirc/events/FrameOpenedEvent.java → api/src/main/java/com/dmdirc/events/FrameOpenedEvent.java View File


src/main/java/com/dmdirc/events/FrameTitleChangedEvent.java → api/src/main/java/com/dmdirc/events/FrameTitleChangedEvent.java View File


src/main/java/com/dmdirc/events/LinkChannelClickedEvent.java → api/src/main/java/com/dmdirc/events/LinkChannelClickedEvent.java View File


src/main/java/com/dmdirc/events/LinkEvent.java → api/src/main/java/com/dmdirc/events/LinkEvent.java View File


src/main/java/com/dmdirc/events/LinkNicknameClickedEvent.java → api/src/main/java/com/dmdirc/events/LinkNicknameClickedEvent.java View File


src/main/java/com/dmdirc/events/LinkUrlClickedEvent.java → api/src/main/java/com/dmdirc/events/LinkUrlClickedEvent.java View File


src/main/java/com/dmdirc/events/NickListClientAddedEvent.java → api/src/main/java/com/dmdirc/events/NickListClientAddedEvent.java View File


src/main/java/com/dmdirc/events/NickListClientRemovedEvent.java → api/src/main/java/com/dmdirc/events/NickListClientRemovedEvent.java View File


src/main/java/com/dmdirc/events/NickListClientsChangedEvent.java → api/src/main/java/com/dmdirc/events/NickListClientsChangedEvent.java View File


src/main/java/com/dmdirc/events/NickListEvent.java → api/src/main/java/com/dmdirc/events/NickListEvent.java View File


src/main/java/com/dmdirc/events/NickListUpdatedEvent.java → api/src/main/java/com/dmdirc/events/NickListUpdatedEvent.java View File


src/main/java/com/dmdirc/events/ProfileAddedEvent.java → api/src/main/java/com/dmdirc/events/ProfileAddedEvent.java View File


src/main/java/com/dmdirc/events/ProfileDeletedEvent.java → api/src/main/java/com/dmdirc/events/ProfileDeletedEvent.java View File


src/main/java/com/dmdirc/events/QueryActionEvent.java → api/src/main/java/com/dmdirc/events/QueryActionEvent.java View File


src/main/java/com/dmdirc/events/QueryActionHighlightEvent.java → api/src/main/java/com/dmdirc/events/QueryActionHighlightEvent.java View File


src/main/java/com/dmdirc/events/QueryClosedEvent.java → api/src/main/java/com/dmdirc/events/QueryClosedEvent.java View File


src/main/java/com/dmdirc/events/QueryDisplayableEvent.java → api/src/main/java/com/dmdirc/events/QueryDisplayableEvent.java View File


src/main/java/com/dmdirc/events/QueryEvent.java → api/src/main/java/com/dmdirc/events/QueryEvent.java View File


src/main/java/com/dmdirc/events/QueryHighlightEvent.java → api/src/main/java/com/dmdirc/events/QueryHighlightEvent.java View File


src/main/java/com/dmdirc/events/QueryMessageEvent.java → api/src/main/java/com/dmdirc/events/QueryMessageEvent.java View File


src/main/java/com/dmdirc/events/QueryNickChangeEvent.java → api/src/main/java/com/dmdirc/events/QueryNickChangeEvent.java View File


src/main/java/com/dmdirc/events/QueryOpenedEvent.java → api/src/main/java/com/dmdirc/events/QueryOpenedEvent.java View File


src/main/java/com/dmdirc/events/QueryQuitEvent.java → api/src/main/java/com/dmdirc/events/QueryQuitEvent.java View File


Some files were not shown because too many files changed in this diff

Loading…
Cancel
Save