- virtual int OnUserList(User* user, Channel* Ptr, CUList* &nameslist)
- {
- CUList* newlist = nameslist ? nameslist : Ptr->GetUsers();
-
- nl.clear();
-
- /* For +D channels ... */
- if (Ptr->IsModeSet('D'))
- {
- std::string key("delayjoin_");
- key.append(Ptr->name);
-
- /* Modify the names list, erasing users with the delay join metadata
- * for this channel (havent spoken yet)
- */
- for (CUListIter n = newlist->begin(); n != newlist->end(); ++n)
- {
- if (!n->first->GetExt(key))
- nl.insert(*n);
- }
-
- /* Always show self */
- nl[user] = user->nick;
- nameslist = &nl;
- }
- return 0;
- }
+ Version GetVersion() CXX11_OVERRIDE;
+ ModResult OnNamesListItem(LocalUser* issuer, Membership*, std::string& prefixes, std::string& nick) CXX11_OVERRIDE;
+ void OnUserJoin(Membership*, bool, bool, CUList&) CXX11_OVERRIDE;
+ void CleanUser(User* user);
+ void OnUserPart(Membership*, std::string &partmessage, CUList&) CXX11_OVERRIDE;
+ void OnUserKick(User* source, Membership*, const std::string &reason, CUList&) CXX11_OVERRIDE;
+ void OnBuildNeighborList(User* source, IncludeChanList& include, std::map<User*, bool>& exception) CXX11_OVERRIDE;
+ void OnUserMessage(User* user, const MessageTarget& target, const MessageDetails& details) CXX11_OVERRIDE;
+ void OnUserTagMessage(User* user, const MessageTarget& target, const CTCTags::TagMessageDetails& details) CXX11_OVERRIDE;
+ ModResult OnRawMode(User* user, Channel* channel, ModeHandler* mh, const std::string& param, bool adding) CXX11_OVERRIDE;
+};