diff options
author | attilamolnar <attilamolnar@hush.com> | 2013-04-11 23:47:45 +0200 |
---|---|---|
committer | attilamolnar <attilamolnar@hush.com> | 2013-07-01 19:21:08 +0200 |
commit | f2cdf27dd9c45f91f4184b81ea3b9be7c5d88173 (patch) | |
tree | 2af494a7cf74fc8731e6cae695ae37a2267b6d5e /include | |
parent | 93b12896dab1692800c4b6d2d9f35e1a23102028 (diff) |
Replace hardcoded mode letters passed to IsModeSet() and GetModeParameter() with ModeHandlers, part 1
Diffstat (limited to 'include')
-rw-r--r-- | include/channels.h | 3 | ||||
-rw-r--r-- | include/users.h | 15 |
2 files changed, 16 insertions, 2 deletions
diff --git a/include/channels.h b/include/channels.h index b4977eef1..4fb3e48dc 100644 --- a/include/channels.h +++ b/include/channels.h @@ -110,7 +110,6 @@ class CoreExport Channel : public Extensible, public InviteBase * @param value True if you want to set the mode or false if you want to remove it */ void SetMode(ModeHandler* mode, bool value); - void SetMode(char mode,bool mode_on); /** Sets or unsets a custom mode in the channels info * @param mode The mode character to set or unset @@ -126,7 +125,7 @@ class CoreExport Channel : public Extensible, public InviteBase */ inline bool IsModeSet(char mode) { return modes[mode-'A']; } inline bool IsModeSet(ModeHandler* mode) { return modes[mode->GetModeChar()-'A']; } - + bool IsModeSet(ModeHandler& mode) { return IsModeSet(&mode); } /** Returns the parameter for a custom mode on a channel. * @param mode The mode character you wish to query diff --git a/include/users.h b/include/users.h index 218ec4ae0..73ecba0ab 100644 --- a/include/users.h +++ b/include/users.h @@ -447,12 +447,16 @@ class CoreExport User : public Extensible * @return True if the mode is set */ bool IsModeSet(unsigned char m); + bool IsModeSet(ModeHandler* mh); + bool IsModeSet(ModeHandler& mh) { return IsModeSet(&mh); } /** Set a specific usermode to on or off * @param m The user mode * @param value On or off setting of the mode */ void SetMode(unsigned char m, bool value); + void SetMode(ModeHandler* mh, bool value); + void SetMode(ModeHandler& mh, bool value) { SetMode(&mh, value); } /** Returns true or false for if a user can execute a privilaged oper command. * This is done by looking up their oper type from User::oper, then referencing @@ -901,3 +905,14 @@ inline FakeUser* IS_SERVER(User* u) return u->usertype == USERTYPE_SERVER ? static_cast<FakeUser*>(u) : NULL; } +inline bool User::IsModeSet(ModeHandler* mh) +{ + char m = mh->GetModeChar(); + return (modes[m-65]); +} + +inline void User::SetMode(ModeHandler* mh, bool value) +{ + char m = mh->GetModeChar(); + modes[m-65] = value; +} |