2 * $Id: EventArgs.cs 203 2005-06-10 01:42:42Z meebey $
3 * $URL: svn://svn.qnetp.net/smartirc/SmartIrc4net/tags/0.4.0/src/IrcClient/EventArgs.cs $
6 * $Date: 2005-06-10 03:42:42 +0200 (Fri, 10 Jun 2005) $
8 * SmartIrc4net - the IRC library for .NET/C# <http://smartirc4net.sf.net>
10 * Copyright (c) 2003-2005 Mirco Bauer <meebey@meebey.net> <http://www.meebey.net>
12 * Full LGPL License: <http://www.gnu.org/licenses/lgpl.txt>
14 * This library is free software; you can redistribute it and/or
15 * modify it under the terms of the GNU Lesser General Public
16 * License as published by the Free Software Foundation; either
17 * version 2.1 of the License, or (at your option) any later version.
19 * This library is distributed in the hope that it will be useful,
20 * but WITHOUT ANY WARRANTY; without even the implied warranty of
21 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
22 * Lesser General Public License for more details.
24 * You should have received a copy of the GNU Lesser General Public
25 * License along with this library; if not, write to the Free Software
26 * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
30 using System
.Collections
.Specialized
;
32 namespace Meebey
.SmartIrc4net
37 public class ActionEventArgs
: CtcpEventArgs
39 private string _ActionMessage
;
41 public string ActionMessage
{
43 return _ActionMessage
;
47 internal ActionEventArgs(IrcMessageData data
, string actionmsg
) : base(data
, "ACTION", actionmsg
)
49 _ActionMessage
= actionmsg
;
56 public class CtcpEventArgs
: IrcEventArgs
58 private string _CtcpCommand
;
59 private string _CtcpParameter
;
61 public string CtcpCommand
{
67 public string CtcpParameter
{
69 return _CtcpParameter
;
73 internal CtcpEventArgs(IrcMessageData data
, string ctcpcmd
, string ctcpparam
) : base(data
)
75 _CtcpCommand
= ctcpcmd
;
76 _CtcpParameter
= ctcpparam
;
83 public class ErrorEventArgs
: IrcEventArgs
85 private string _ErrorMessage
;
87 public string ErrorMessage
{
93 internal ErrorEventArgs(IrcMessageData data
, string errormsg
) : base(data
)
95 _ErrorMessage
= errormsg
;
102 public class MotdEventArgs
: IrcEventArgs
104 private string _MotdMessage
;
106 public string MotdMessage
{
112 internal MotdEventArgs(IrcMessageData data
, string motdmsg
) : base(data
)
114 _MotdMessage
= motdmsg
;
121 public class PingEventArgs
: IrcEventArgs
123 private string _PingData
;
125 public string PingData
{
131 internal PingEventArgs(IrcMessageData data
, string pingdata
) : base(data
)
133 _PingData
= pingdata
;
140 public class PongEventArgs
: IrcEventArgs
142 private TimeSpan _Lag
;
144 public TimeSpan Lag
{
150 internal PongEventArgs(IrcMessageData data
, TimeSpan lag
) : base(data
)
159 public class KickEventArgs
: IrcEventArgs
161 private string _Channel
;
163 private string _Whom
;
164 private string _KickReason
;
166 public string Channel
{
184 public string KickReason
{
190 internal KickEventArgs(IrcMessageData data
, string channel
, string who
, string whom
, string kickreason
) : base(data
)
195 _KickReason
= kickreason
;
202 public class JoinEventArgs
: IrcEventArgs
204 private string _Channel
;
207 public string Channel
{
219 internal JoinEventArgs(IrcMessageData data
, string channel
, string who
) : base(data
)
229 public class NamesEventArgs
: IrcEventArgs
231 private string _Channel
;
232 private string[] _UserList
;
234 public string Channel
{
240 public string[] UserList
{
246 internal NamesEventArgs(IrcMessageData data
, string channel
, string[] userlist
) : base(data
)
249 _UserList
= userlist
;
256 public class InviteEventArgs
: IrcEventArgs
258 private string _Channel
;
261 public string Channel
{
273 internal InviteEventArgs(IrcMessageData data
, string channel
, string who
) : base(data
)
283 public class PartEventArgs
: IrcEventArgs
285 private string _Channel
;
287 private string _PartMessage
;
289 public string Channel
{
301 public string PartMessage
{
307 internal PartEventArgs(IrcMessageData data
, string channel
, string who
, string partmessage
) : base(data
)
311 _PartMessage
= partmessage
;
317 public class WhoEventArgs
: IrcEventArgs
319 private string _Channel
;
320 private string _Nick
;
321 private string _Ident
;
322 private string _Host
;
323 private string _Realname
;
324 private bool _IsAway
;
326 private bool _IsVoice
;
327 private bool _IsIrcOp
;
328 private string _Server
;
329 private int _HopCount
;
331 public string Channel
{
343 public string Ident
{
355 public string Realname
{
373 public bool IsVoice
{
379 public bool IsIrcOp
{
385 public string Server
{
391 public int HopCount
{
397 internal WhoEventArgs(IrcMessageData data
, string channel
, string nick
, string ident
, string host
, string realname
, bool away
, bool op
, bool voice
, bool ircop
, string server
, int hopcount
) : base(data
)
403 _Realname
= realname
;
409 _HopCount
= hopcount
;
416 public class QuitEventArgs
: IrcEventArgs
419 private string _QuitMessage
;
427 public string QuitMessage
{
433 internal QuitEventArgs(IrcMessageData data
, string who
, string quitmessage
) : base(data
)
436 _QuitMessage
= quitmessage
;
444 public class AwayEventArgs
: IrcEventArgs
447 private string _AwayMessage
;
455 public string AwayMessage
{
461 internal AwayEventArgs(IrcMessageData data
, string who
, string awaymessage
) : base(data
)
464 _AwayMessage
= awaymessage
;
470 public class NickChangeEventArgs
: IrcEventArgs
472 private string _OldNickname
;
473 private string _NewNickname
;
475 public string OldNickname
{
481 public string NewNickname
{
487 internal NickChangeEventArgs(IrcMessageData data
, string oldnick
, string newnick
) : base(data
)
489 _OldNickname
= oldnick
;
490 _NewNickname
= newnick
;
497 public class TopicEventArgs
: IrcEventArgs
499 private string _Channel
;
500 private string _Topic
;
502 public string Channel
{
508 public string Topic
{
514 internal TopicEventArgs(IrcMessageData data
, string channel
, string topic
) : base(data
)
524 public class TopicChangeEventArgs
: IrcEventArgs
526 private string _Channel
;
528 private string _NewTopic
;
530 public string Channel
{
542 public string NewTopic
{
548 internal TopicChangeEventArgs(IrcMessageData data
, string channel
, string who
, string newtopic
) : base(data
)
552 _NewTopic
= newtopic
;
559 public class BanEventArgs
: IrcEventArgs
561 private string _Channel
;
563 private string _Hostmask
;
565 public string Channel
{
577 public string Hostmask
{
583 internal BanEventArgs(IrcMessageData data
, string channel
, string who
, string hostmask
) : base(data
)
587 _Hostmask
= hostmask
;
594 public class UnbanEventArgs
: IrcEventArgs
596 private string _Channel
;
598 private string _Hostmask
;
600 public string Channel
{
612 public string Hostmask
{
618 internal UnbanEventArgs(IrcMessageData data
, string channel
, string who
, string hostmask
) : base(data
)
622 _Hostmask
= hostmask
;
629 public class OpEventArgs
: IrcEventArgs
631 private string _Channel
;
633 private string _Whom
;
635 public string Channel
{
653 internal OpEventArgs(IrcMessageData data
, string channel
, string who
, string whom
) : base(data
)
664 public class DeopEventArgs
: IrcEventArgs
666 private string _Channel
;
668 private string _Whom
;
670 public string Channel
{
688 internal DeopEventArgs(IrcMessageData data
, string channel
, string who
, string whom
) : base(data
)
699 public class HalfopEventArgs
: IrcEventArgs
701 private string _Channel
;
703 private string _Whom
;
705 public string Channel
{
723 internal HalfopEventArgs(IrcMessageData data
, string channel
, string who
, string whom
) : base(data
)
734 public class DehalfopEventArgs
: IrcEventArgs
736 private string _Channel
;
738 private string _Whom
;
740 public string Channel
{
758 internal DehalfopEventArgs(IrcMessageData data
, string channel
, string who
, string whom
) : base(data
)
769 public class VoiceEventArgs
: IrcEventArgs
771 private string _Channel
;
773 private string _Whom
;
775 public string Channel
{
793 internal VoiceEventArgs(IrcMessageData data
, string channel
, string who
, string whom
) : base(data
)
804 public class DevoiceEventArgs
: IrcEventArgs
806 private string _Channel
;
808 private string _Whom
;
810 public string Channel
{
828 internal DevoiceEventArgs(IrcMessageData data
, string channel
, string who
, string whom
) : base(data
)