mirror of
https://github.com/VCMP-SqMod/SqMod.git
synced 2026-09-07 07:27:12 +02:00
Switch to identifier based events in IRC session to be consistent with the main plugin events.
This commit is contained in:
+47
-37
@@ -98,6 +98,11 @@ void OnSquirrelTerminate()
|
||||
OutputMessage("Terminating: %s", SQIRC_NAME);
|
||||
// Terminate all session and release script resources
|
||||
Session::Terminate();
|
||||
// Release null objects just in case
|
||||
NullObject().Release();
|
||||
NullTable().Release();
|
||||
NullArray().Release();
|
||||
NullFunction().ReleaseGently();
|
||||
// Release the current virtual machine, if any
|
||||
DefaultVM::Set(nullptr);
|
||||
}
|
||||
@@ -243,6 +248,24 @@ void RegisterAPI(HSQUIRRELVM vm)
|
||||
.Prop(_SC("OnDccChatReq"), &Session::GetOnDccChatReq)
|
||||
.Prop(_SC("OnDccSendReq"), &Session::GetOnDccSendReq)
|
||||
// Member Methods
|
||||
.Func(_SC("Bind"), &Session::BindEvent)
|
||||
.Func(_SC("Disconnect"), &Session::Disconnect)
|
||||
.Func(_SC("CmdPart"), &Session::CmdPart)
|
||||
.Func(_SC("CmdInvite"), &Session::CmdInvite)
|
||||
.Func(_SC("CmdNames"), &Session::CmdNames)
|
||||
.Func(_SC("CmdMsg"), &Session::CmdMsg)
|
||||
.Func(_SC("CmdMe"), &Session::CmdMe)
|
||||
.Func(_SC("CmdNotice"), &Session::CmdNotice)
|
||||
.Func(_SC("CmdCtcpRequest"), &Session::CmdCtcpRequest)
|
||||
.Func(_SC("CmdCtcpReply"), &Session::CmdCtcpReply)
|
||||
.Func(_SC("CmdNick"), &Session::CmdNick)
|
||||
.Func(_SC("CmdWhois"), &Session::CmdWhois)
|
||||
.Func(_SC("SendRaw"), &Session::SendRaw)
|
||||
.Func(_SC("DestroyDcc"), &Session::DestroyDcc)
|
||||
.Func(_SC("SetCtcpVersion"), &Session::SetCtcpVersion)
|
||||
.Func(_SC("SetOption"), &Session::SetOption)
|
||||
.Func(_SC("ResetOption"), &Session::ResetOption)
|
||||
// Member Overloads
|
||||
.Overload< Int32 (Session::*)(void) >(_SC("Connect"), &Session::Connect)
|
||||
.Overload< Int32 (Session::*)(CSStr, Uint32, CSStr) >(_SC("Connect"), &Session::Connect)
|
||||
.Overload< Int32 (Session::*)(CSStr, Uint32, CSStr, CSStr) >(_SC("Connect"), &Session::Connect)
|
||||
@@ -253,12 +276,8 @@ void RegisterAPI(HSQUIRRELVM vm)
|
||||
.Overload< Int32 (Session::*)(CSStr, Uint32, CSStr, CSStr) >(_SC("Connect6"), &Session::Connect6)
|
||||
.Overload< Int32 (Session::*)(CSStr, Uint32, CSStr, CSStr, CSStr) >(_SC("Connect6"), &Session::Connect6)
|
||||
.Overload< Int32 (Session::*)(CSStr, Uint32, CSStr, CSStr, CSStr, CSStr) >(_SC("Connect6"), &Session::Connect6)
|
||||
.Func(_SC("Disconnect"), &Session::Disconnect)
|
||||
.Overload< Int32 (Session::*)(CSStr) >(_SC("CmdJoin"), &Session::CmdJoin)
|
||||
.Overload< Int32 (Session::*)(CSStr, CSStr) >(_SC("CmdJoin"), &Session::CmdJoin)
|
||||
.Func(_SC("CmdPart"), &Session::CmdPart)
|
||||
.Func(_SC("CmdInvite"), &Session::CmdInvite)
|
||||
.Func(_SC("CmdNames"), &Session::CmdNames)
|
||||
.Overload< Int32 (Session::*)(void) >(_SC("CmdList"), &Session::CmdList)
|
||||
.Overload< Int32 (Session::*)(CSStr) >(_SC("CmdList"), &Session::CmdList)
|
||||
.Overload< Int32 (Session::*)(CSStr) >(_SC("CmdTopic"), &Session::CmdTopic)
|
||||
@@ -269,41 +288,8 @@ void RegisterAPI(HSQUIRRELVM vm)
|
||||
.Overload< Int32 (Session::*)(CSStr) >(_SC("CmdUserMode"), &Session::CmdUserMode)
|
||||
.Overload< Int32 (Session::*)(CSStr, CSStr) >(_SC("CmdKick"), &Session::CmdKick)
|
||||
.Overload< Int32 (Session::*)(CSStr, CSStr, CSStr) >(_SC("CmdKick"), &Session::CmdKick)
|
||||
.Func(_SC("CmdMsg"), &Session::CmdMsg)
|
||||
.Func(_SC("CmdMe"), &Session::CmdMe)
|
||||
.Func(_SC("CmdNotice"), &Session::CmdNotice)
|
||||
.Func(_SC("CmdCtcpRequest"), &Session::CmdCtcpRequest)
|
||||
.Func(_SC("CmdCtcpReply"), &Session::CmdCtcpReply)
|
||||
.Func(_SC("CmdNick"), &Session::CmdNick)
|
||||
.Func(_SC("CmdWhois"), &Session::CmdWhois)
|
||||
.Overload< Int32 (Session::*)(void) >(_SC("CmdQuit"), &Session::CmdQuit)
|
||||
.Overload< Int32 (Session::*)(CSStr) >(_SC("CmdQuit"), &Session::CmdQuit)
|
||||
.Func(_SC("SendRaw"), &Session::SendRaw)
|
||||
.Func(_SC("DestroyDcc"), &Session::DestroyDcc)
|
||||
.Func(_SC("SetCtcpVersion"), &Session::SetCtcpVersion)
|
||||
.Func(_SC("SetOption"), &Session::SetOption)
|
||||
.Func(_SC("ResetOption"), &Session::ResetOption)
|
||||
.Func(_SC("BindConnect"), &Session::BindOnConnect)
|
||||
.Func(_SC("BindNick"), &Session::BindOnNick)
|
||||
.Func(_SC("BindQuit"), &Session::BindOnQuit)
|
||||
.Func(_SC("BindJoin"), &Session::BindOnJoin)
|
||||
.Func(_SC("BindPart"), &Session::BindOnPart)
|
||||
.Func(_SC("BindMode"), &Session::BindOnMode)
|
||||
.Func(_SC("BindUmode"), &Session::BindOnUmode)
|
||||
.Func(_SC("BindTopic"), &Session::BindOnTopic)
|
||||
.Func(_SC("BindKick"), &Session::BindOnKick)
|
||||
.Func(_SC("BindChannel"), &Session::BindOnChannel)
|
||||
.Func(_SC("BindPrivMsg"), &Session::BindOnPrivMsg)
|
||||
.Func(_SC("BindNotice"), &Session::BindOnNotice)
|
||||
.Func(_SC("BindChannelNotice"), &Session::BindOnChannelNotice)
|
||||
.Func(_SC("BindInvite"), &Session::BindOnInvite)
|
||||
.Func(_SC("BindCtcpReq"), &Session::BindOnCtcpReq)
|
||||
.Func(_SC("BindCtcpRep"), &Session::BindOnCtcpRep)
|
||||
.Func(_SC("BindCtcpAction"), &Session::BindOnCtcpAction)
|
||||
.Func(_SC("BindUnknown"), &Session::BindOnUnknown)
|
||||
.Func(_SC("BindNumeric"), &Session::BindOnNumeric)
|
||||
.Func(_SC("BindDccChatReq"), &Session::BindOnDccChatReq)
|
||||
.Func(_SC("BindDccSendReq"), &Session::BindOnDccSendReq)
|
||||
// Squirrel Methods
|
||||
.SquirrelFunc(_SC("CmdMsgF"), &Session::CmdMsgF)
|
||||
.SquirrelFunc(_SC("CmdMeF"), &Session::CmdMeF)
|
||||
@@ -316,6 +302,30 @@ void RegisterAPI(HSQUIRRELVM vm)
|
||||
|
||||
RootTable(vm).Bind(_SC("SqIRC"), ircns);
|
||||
|
||||
Sqrat::ConstTable(vm).Enum(_SC("SqIrcEvent"), Sqrat::Enumeration(vm)
|
||||
.Const(_SC("Connect"), SET_CONNECT)
|
||||
.Const(_SC("Nick"), SET_NICK)
|
||||
.Const(_SC("Quit"), SET_QUIT)
|
||||
.Const(_SC("Join"), SET_JOIN)
|
||||
.Const(_SC("Part"), SET_PART)
|
||||
.Const(_SC("Mode"), SET_MODE)
|
||||
.Const(_SC("Umode"), SET_UMODE)
|
||||
.Const(_SC("Topic"), SET_TOPIC)
|
||||
.Const(_SC("Kick"), SET_KICK)
|
||||
.Const(_SC("Channel"), SET_CHANNEL)
|
||||
.Const(_SC("PrivMsg"), SET_PRIVMSG)
|
||||
.Const(_SC("Notice"), SET_NOTICE)
|
||||
.Const(_SC("ChannelNotice"), SET_CHANNELNOTICE)
|
||||
.Const(_SC("Invite"), SET_INVITE)
|
||||
.Const(_SC("CtcpReq"), SET_CTCPREQ)
|
||||
.Const(_SC("CtcpRep"), SET_CTCPREP)
|
||||
.Const(_SC("CtcpAction"), SET_CTCPACTION)
|
||||
.Const(_SC("Unknown"), SET_UNKNOWN)
|
||||
.Const(_SC("Numeric"), SET_NUMERIC)
|
||||
.Const(_SC("DccChatReq"), SET_DCCCHATREQ)
|
||||
.Const(_SC("DccSendReq"), SET_DCCSENDREQ)
|
||||
);
|
||||
|
||||
Sqrat::ConstTable(vm).Enum(_SC("SqIrcErr"), Sqrat::Enumeration(vm)
|
||||
.Const(_SC("Ok"), LIBIRC_ERR_OK)
|
||||
.Const(_SC("InVal"), LIBIRC_ERR_INVAL)
|
||||
|
||||
Reference in New Issue
Block a user