<feed xmlns='http://www.w3.org/2005/Atom'>
<title>~steering/inspircd++.git/include/builtinmodes.h, branch v3.0.0a1</title>
<subtitle>Unnamed repository; edit this file 'description' to name the repository.</subtitle>
<id>https://cgit.space/~steering/inspircd++.git/atom/include/builtinmodes.h?h=v3.0.0a1</id>
<link rel='self' href='https://cgit.space/~steering/inspircd++.git/atom/include/builtinmodes.h?h=v3.0.0a1'/>
<link rel='alternate' type='text/html' href='https://cgit.space/~steering/inspircd++.git/'/>
<updated>2015-01-14T11:07:20Z</updated>
<entry>
<title>cmode_k Fix oversight in substr() conversion</title>
<updated>2015-01-14T11:07:20Z</updated>
<author>
<name>Attila Molnar</name>
</author>
<published>2015-01-14T11:07:20Z</published>
<link rel='alternate' type='text/html' href='https://cgit.space/~steering/inspircd++.git/commit/?id=66221de4b6cca64692c84eabfe0b81cabdbd00bc'/>
<id>urn:sha1:66221de4b6cca64692c84eabfe0b81cabdbd00bc</id>
<content type='text'>
While at it, introduce a named constant for maximum key length
</content>
</entry>
<entry>
<title>Migrate ModeChannelOp and ModeChannelVoice constructors to builtinmodes.h, remove cmode_{o,v}</title>
<updated>2014-08-06T11:38:34Z</updated>
<author>
<name>Attila Molnar</name>
</author>
<published>2014-08-06T11:38:34Z</published>
<link rel='alternate' type='text/html' href='https://cgit.space/~steering/inspircd++.git/commit/?id=005b03c9f387e80c8e19ca5c26b1eb89362ff29a'/>
<id>urn:sha1:005b03c9f387e80c8e19ca5c26b1eb89362ff29a</id>
<content type='text'>
The default value for levelrequired is HALFOP_VALUE, meaning the ModeChannelVoice class is not required but it will be useful in case the default changes
</content>
</entry>
<entry>
<title>Remove a bunch of useless classes representing simple core modes</title>
<updated>2014-08-06T11:27:16Z</updated>
<author>
<name>Attila Molnar</name>
</author>
<published>2014-08-06T11:27:16Z</published>
<link rel='alternate' type='text/html' href='https://cgit.space/~steering/inspircd++.git/commit/?id=00660293338f6a78278e52d05f6cf9a7ef9acc64'/>
<id>urn:sha1:00660293338f6a78278e52d05f6cf9a7ef9acc64</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Move the wallops mode from the core into core_wallops</title>
<updated>2014-03-09T16:08:55Z</updated>
<author>
<name>Attila Molnar</name>
</author>
<published>2014-03-09T16:08:55Z</published>
<link rel='alternate' type='text/html' href='https://cgit.space/~steering/inspircd++.git/commit/?id=7b7e82bec5ab5a39d88896fc7433125fd0c684de'/>
<id>urn:sha1:7b7e82bec5ab5a39d88896fc7433125fd0c684de</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Add ParamModeBase and ParamMode, change all parameter modes to inherit from ParamMode</title>
<updated>2014-02-15T13:38:24Z</updated>
<author>
<name>Attila Molnar</name>
</author>
<published>2014-02-15T13:38:24Z</published>
<link rel='alternate' type='text/html' href='https://cgit.space/~steering/inspircd++.git/commit/?id=0556720b559d7ec5d8badacf0ac9b11e9c864847'/>
<id>urn:sha1:0556720b559d7ec5d8badacf0ac9b11e9c864847</id>
<content type='text'>
- Type of the extension used to store data is a template parameter
- The extension is automatically unset when the mode is unset
- Handlers inheriting from ParamMode have to provide OnSet() and SerializeParam(); may optionally provide OnUnset()
- Transparently handle the case when OnSet() modifies the mode parameter
- Remove Channel::custom_mode_params map; ask the mode handlers to serialize their parameters instead
</content>
</entry>
<entry>
<title>Create a base class for prefix modes</title>
<updated>2013-09-11T10:10:07Z</updated>
<author>
<name>attilamolnar</name>
</author>
<published>2013-09-01T12:25:15Z</published>
<link rel='alternate' type='text/html' href='https://cgit.space/~steering/inspircd++.git/commit/?id=34fa5627de0a0431ca76f34445c680a76a9a7dc5'/>
<id>urn:sha1:34fa5627de0a0431ca76f34445c680a76a9a7dc5</id>
<content type='text'>
Move Channel::SetPrefix() into Membership
</content>
</entry>
<entry>
<title>umode_s Rewrite ProcessNoticeMasks() and remove a few related useless functions</title>
<updated>2013-07-24T16:10:34Z</updated>
<author>
<name>attilamolnar</name>
</author>
<published>2013-07-20T18:59:48Z</published>
<link rel='alternate' type='text/html' href='https://cgit.space/~steering/inspircd++.git/commit/?id=1a775c11c27c3b786c6850d8a9efeaf8d9c1d2c0'/>
<id>urn:sha1:1a775c11c27c3b786c6850d8a9efeaf8d9c1d2c0</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Move SetNoticeMask(), FormatNoticeMasks() and ProcessNoticeMasks() from the User class to the snomask modehandler</title>
<updated>2013-07-19T17:40:03Z</updated>
<author>
<name>attilamolnar</name>
</author>
<published>2013-06-18T16:50:10Z</published>
<link rel='alternate' type='text/html' href='https://cgit.space/~steering/inspircd++.git/commit/?id=882084defcc43c876ecb10e30086b63ac074fcad'/>
<id>urn:sha1:882084defcc43c876ecb10e30086b63ac074fcad</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Simplify user mode removal via ModeHandler::RemoveMode()</title>
<updated>2013-05-26T23:07:30Z</updated>
<author>
<name>attilamolnar</name>
</author>
<published>2013-05-26T21:23:47Z</published>
<link rel='alternate' type='text/html' href='https://cgit.space/~steering/inspircd++.git/commit/?id=3406c7234ac15b6a2fc52afa770fb851da25c215'/>
<id>urn:sha1:3406c7234ac15b6a2fc52afa770fb851da25c215</id>
<content type='text'>
The function does not need to be virtual because the core can remove any user mode using the default logic
The optional modestack parameter was always NULL, so remove it
</content>
</entry>
<entry>
<title>Deduplicate RemoveMode() implementations</title>
<updated>2013-05-26T23:07:29Z</updated>
<author>
<name>attilamolnar</name>
</author>
<published>2013-05-26T21:23:47Z</published>
<link rel='alternate' type='text/html' href='https://cgit.space/~steering/inspircd++.git/commit/?id=9bb24d3f458274b7485554bc95f1274900a69ec2'/>
<id>urn:sha1:9bb24d3f458274b7485554bc95f1274900a69ec2</id>
<content type='text'>
The default (core) implementation can now remove prefix modes
The modestacker parameter is now mandatory
</content>
</entry>
</feed>
