X-Git-Url: https://git.quassel-irc.org/?a=blobdiff_plain;f=src%2Fcommon%2Faliasmanager.h;h=cb350665712534ddbe216f83252a70a4878e45b7;hb=8f92b3f08df9f4eb8fd243ccec6aa9d4b563ec23;hp=240d9e5d62e6a14a00b5cf59b1e483d096153d86;hpb=694f9bfbf7f1af19108461c7e00d133e55082bce;p=quassel.git diff --git a/src/common/aliasmanager.h b/src/common/aliasmanager.h index 240d9e5d..cb350665 100644 --- a/src/common/aliasmanager.h +++ b/src/common/aliasmanager.h @@ -1,5 +1,5 @@ /*************************************************************************** - * Copyright (C) 2005-09 by the Quassel Project * + * Copyright (C) 2005-2019 by the Quassel Project * * devel@quassel-irc.org * * * * This program is free software; you can redistribute it and/or modify * @@ -15,11 +15,14 @@ * You should have received a copy of the GNU General Public License * * along with this program; if not, write to the * * Free Software Foundation, Inc., * - * 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. * + * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. * ***************************************************************************/ -#ifndef ALIASMANAGER_H -#define ALIASMANAGER_H +#pragma once + +#include "common-export.h" + +#include #include @@ -28,53 +31,58 @@ class Network; -class AliasManager : public SyncableObject +class COMMON_EXPORT AliasManager : public SyncableObject { + Q_OBJECT SYNCABLE_OBJECT - Q_OBJECT public: - inline AliasManager(QObject *parent = 0) : SyncableObject(parent) { setAllowClientUpdates(true); } - AliasManager &operator=(const AliasManager &other); - - struct Alias { + inline AliasManager(QObject* parent = nullptr) + : SyncableObject(parent) + { + setAllowClientUpdates(true); + } + AliasManager& operator=(const AliasManager& other); + + struct Alias + { QString name; QString expansion; - Alias(const QString &name_, const QString &expansion_) : name(name_), expansion(expansion_) {} + Alias(QString name_, QString expansion_) + : name(std::move(name_)) + , expansion(std::move(expansion_)) + {} }; - typedef QList AliasList; + using AliasList = QList; - int indexOf(const QString &name) const; - inline bool contains(const QString &name) const { return indexOf(name) != -1; } + int indexOf(const QString& name) const; + inline bool contains(const QString& name) const { return indexOf(name) != -1; } inline bool isEmpty() const { return _aliases.isEmpty(); } inline int count() const { return _aliases.count(); } inline void removeAt(int index) { _aliases.removeAt(index); } - inline Alias &operator[](int i) { return _aliases[i]; } - inline const Alias &operator[](int i) const { return _aliases.at(i); } - inline const AliasList &aliases() const { return _aliases; } + inline Alias& operator[](int i) { return _aliases[i]; } + inline const Alias& operator[](int i) const { return _aliases.at(i); } + inline const AliasList& aliases() const { return _aliases; } static AliasList defaults(); - typedef QList > CommandList; + using CommandList = QList>; - CommandList processInput(const BufferInfo &info, const QString &message); + CommandList processInput(const BufferInfo& info, const QString& message); public slots: virtual QVariantMap initAliases() const; - virtual void initSetAliases(const QVariantMap &aliases); + virtual void initSetAliases(const QVariantMap& aliases); - virtual void addAlias(const QString &name, const QString &expansion); + virtual void addAlias(const QString& name, const QString& expansion); protected: - void setAliases(const QList &aliases) { _aliases = aliases; } - virtual const Network *network(NetworkId) const = 0; // core and client require different access + void setAliases(const QList& aliases) { _aliases = aliases; } + virtual const Network* network(NetworkId) const = 0; // core and client require different access private: - void processInput(const BufferInfo &info, const QString &message, CommandList &previousCommands); - void expand(const QString &alias, const BufferInfo &bufferInfo, const QString &msg, CommandList &previousCommands); + void processInput(const BufferInfo& info, const QString& message, CommandList& previousCommands); + void expand(const QString& alias, const BufferInfo& bufferInfo, const QString& msg, CommandList& previousCommands); AliasList _aliases; }; - - -#endif //ALIASMANAGER_H