From 2f32d647909e3b07ef1c35d66b7b5ee876435f1b Mon Sep 17 00:00:00 2001 From: brain Date: Sat, 8 Jul 2006 15:05:33 +0000 Subject: Add cmode +o (op/deop) and in the process change a lot of char* to const char* to avoid unneccessary casts git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4165 e03df62e-2008-0410-955e-edbf42e46eb7 --- include/mode.h | 20 +++++++++++--------- include/modes/cmode_o.h | 13 +++++++++++++ 2 files changed, 24 insertions(+), 9 deletions(-) create mode 100644 include/modes/cmode_o.h (limited to 'include') diff --git a/include/mode.h b/include/mode.h index e32e7532a..40055ab4c 100644 --- a/include/mode.h +++ b/include/mode.h @@ -228,21 +228,23 @@ class ModeParser * we have 256 lists of them. */ std::vector modewatchers[256]; - - char* GiveOps(userrec *user,char *dest,chanrec *chan,int status); - char* GiveHops(userrec *user,char *dest,chanrec *chan,int status); + + /*char* GiveHops(userrec *user,char *dest,chanrec *chan,int status); char* GiveVoice(userrec *user,char *dest,chanrec *chan,int status); - char* TakeOps(userrec *user,char *dest,chanrec *chan,int status); char* TakeHops(userrec *user,char *dest,chanrec *chan,int status); - char* TakeVoice(userrec *user,char *dest,chanrec *chan,int status); - userrec* SanityChecks(userrec *user,char *dest,chanrec *chan,int status); - char* Grant(userrec *d,chanrec *chan,int MASK); - char* Revoke(userrec *d,chanrec *chan,int MASK); + char* TakeVoice(userrec *user,char *dest,chanrec *chan,int status);*/ + public: + ModeParser(); + + static userrec* SanityChecks(userrec *user,const char *dest,chanrec *chan,int status); + static const char* Grant(userrec *d,chanrec *chan,int MASK); + static const char* Revoke(userrec *d,chanrec *chan,int MASK); + static void CleanMask(std::string &mask); + bool AddMode(ModeHandler* mh, unsigned const char modeletter); void Process(char **parameters, int pcnt, userrec *user, bool servermode); - static void CleanMask(std::string &mask); }; class cmd_mode : public command_t diff --git a/include/modes/cmode_o.h b/include/modes/cmode_o.h new file mode 100644 index 000000000..cf223b97f --- /dev/null +++ b/include/modes/cmode_o.h @@ -0,0 +1,13 @@ +#include "mode.h" +#include "channels.h" + +class ModeChannelOp : public ModeHandler +{ + private: + public: + ModeChannelOp(); + ModeAction OnModeChange(userrec* source, userrec* dest, chanrec* channel, std::string ¶meter, bool adding); + std::string AddOp(userrec *user,const char *dest,chanrec *chan,int status); + std::string DelOp(userrec *user,const char *dest,chanrec *chan,int status); +}; + -- cgit v1.2.3