This repository has been archived by the owner on Sep 16, 2019. It is now read-only.
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathChannelUser.cs
86 lines (75 loc) · 1.89 KB
/
ChannelUser.cs
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
using System;
namespace IRC_Library
{
public class ChannelUser
{
internal ChannelUser(IRC library, Channel channel, string username)
{
if (library == null)
throw new ArgumentNullException(nameof(library));
this.Library = library;
this.Channel = channel;
this.Username = username;
}
public IRC Library
{
get;
private set;
}
public Channel Channel
{
get;
private set;
}
public string Username
{
get;
private set;
}
internal bool _operator = false;
public bool Operator
{
get
{
return _operator;
}
set
{
if (value)
Library.AddChannelOperator(Channel.ToString(), Username);
else
Library.RemoveChannelOperator(Channel.ToString(), Username);
}
}
internal bool _halfoperator = false;
public bool HalfOperator
{
get
{
return _halfoperator;
}
set
{
if (value)
Library.AddChannelHalfOperator(Channel.ToString(), Username);
else
Library.RemoveChannelHalfOperator(Channel.ToString(), Username);
}
}
internal bool _voice = false;
public bool Voice
{
get
{
return _voice;
}
set
{
if (value)
Library.AddChannelVoice(Channel.ToString(), Username);
else
Library.RemoveChannelVoice(Channel.ToString(), Username);
}
}
}
}