]> git.netwichtig.de Git - user/henk/code/inspircd.git/blobdiff - include/builtinmodes.h
Implement support for draft-brocklesby-irc-isupport-03 escapes.
[user/henk/code/inspircd.git] / include / builtinmodes.h
index 96838ce5e4e7307fe668afb32ff3dcd60e510046..49198b650b1eacdbc91ac60cb44581f2de9fd0e0 100644 (file)
@@ -39,6 +39,7 @@ class ModeChannelBan : public ListModeBase
  */
 class ModeChannelKey : public ParamMode<ModeChannelKey, LocalStringExt>
 {
+       static const std::string::size_type maxkeylen = 32;
  public:
        ModeChannelKey();
        ModeAction OnModeChange(User* source, User* dest, Channel* channel, std::string &parameter, bool adding);
@@ -65,7 +66,7 @@ class ModeChannelOp : public PrefixMode
        ModeChannelOp()
                : PrefixMode(NULL, "op", 'o', OP_VALUE, '@')
        {
-               levelrequired = OP_VALUE;
+               ranktoset = ranktounset = OP_VALUE;
        }
 };
 
@@ -77,7 +78,8 @@ class ModeChannelVoice : public PrefixMode
        ModeChannelVoice()
                : PrefixMode(NULL, "voice", 'v', VOICE_VALUE, '+')
        {
-               levelrequired = HALFOP_VALUE;
+               selfremove = false;
+               ranktoset = ranktounset = HALFOP_VALUE;
        }
 };
 
@@ -96,14 +98,14 @@ class ModeUserServerNoticeMask : public ModeHandler
 
  public:
        ModeUserServerNoticeMask();
-       ModeAction OnModeChange(User* source, User* dest, Channel* channel, std::string &parameter, bool adding);
-       void OnParameterMissing(User* user, User* dest, Channel* channel);
+       ModeAction OnModeChange(User* source, User* dest, Channel* channel, std::string &parameter, bool adding) CXX11_OVERRIDE;
+       void OnParameterMissing(User* user, User* dest, Channel* channel) CXX11_OVERRIDE;
 
        /** Create a displayable mode string of the snomasks set on a given user
         * @param user The user whose notice masks to format
         * @return The notice mask character sequence
         */
-       std::string GetUserParameter(User* user);
+       std::string GetUserParameter(const User* user) const CXX11_OVERRIDE;
 };
 
 /** User mode +o