Browse Source

Merge pull request #542 from greboid/master

Add an optional reason to ChannelUserAwayEvent.
pull/545/head
Chris Smith 9 years ago
parent
commit
b008e433bc

+ 1
- 1
res/com/dmdirc/ui/messages/format.yml View File

@@ -129,7 +129,7 @@ ChannelKickEvent:
129 129
              {{channel.name}}{{reason|bracketed}}.
130 130
   colour: 3
131 131
 ChannelUserAwayEvent:
132
-  format: "-- {{user.modePrefixedNickname}} is now away."
132
+  format: "-- {{user.modePrefixedNickname}} is now away{{reasonOrBlank|bracketed}}."
133 133
   colour: 14
134 134
 channelUserBackEvent:
135 135
   format: "-- {{user.modePrefixedNickname}} is now back."

+ 26
- 0
src/com/dmdirc/events/ChannelUserAwayEvent.java View File

@@ -25,18 +25,44 @@ package com.dmdirc.events;
25 25
 import com.dmdirc.interfaces.GroupChat;
26 26
 import com.dmdirc.interfaces.GroupChatUser;
27 27
 
28
+import java.util.Optional;
29
+
28 30
 /**
29 31
  * Fire when a user sets away.
30 32
  */
31 33
 public class ChannelUserAwayEvent extends ChannelUserEvent {
32 34
 
35
+    private final Optional<String> reason;
36
+
33 37
     public ChannelUserAwayEvent(final long timestamp, final GroupChat channel,
34 38
             final GroupChatUser user) {
35 39
         super(timestamp, channel, user);
40
+        reason = Optional.empty();
36 41
     }
37 42
 
38 43
     public ChannelUserAwayEvent(final GroupChat channel, final GroupChatUser user) {
39 44
         super(channel, user);
45
+        reason = Optional.empty();
46
+    }
47
+
48
+    public ChannelUserAwayEvent(final long timestamp, final GroupChat channel,
49
+            final GroupChatUser user, final Optional<String> reason) {
50
+        super(timestamp, channel, user);
51
+        this.reason = reason;
52
+    }
53
+
54
+    public ChannelUserAwayEvent(final GroupChat channel, final GroupChatUser user,
55
+            final Optional<String> reason) {
56
+        super(channel, user);
57
+        this.reason = reason;
58
+    }
59
+
60
+    public Optional<String> getReason() {
61
+        return reason;
62
+    }
63
+
64
+    public String getReasonOrBlank() {
65
+        return reason.orElse("");
40 66
     }
41 67
 
42 68
 }

Loading…
Cancel
Save