X-Git-Url: https://git.quassel-irc.org/?p=quassel.git;a=blobdiff_plain;f=src%2Fclient%2Fbuffersettings.cpp;h=c7b123f3a289d935026433a26eeb6fc886f1ab48;hp=c42cd81ca0b1e553e0783f08cbe91cad5bcf0263;hb=61f33c7895e324f6e95034d86897ad2e963653f1;hpb=a3aaabf6254c8c5439af8982cc613c4ced3f50ed diff --git a/src/client/buffersettings.cpp b/src/client/buffersettings.cpp index c42cd81c..c7b123f3 100644 --- a/src/client/buffersettings.cpp +++ b/src/client/buffersettings.cpp @@ -1,5 +1,5 @@ /*************************************************************************** - * Copyright (C) 2005-08 by the Quassel IRC Team * + * Copyright (C) 2005-2018 by the Quassel Project * * devel@quassel-irc.org * * * * This program is free software; you can redistribute it and/or modify * @@ -15,34 +15,116 @@ * 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. * ***************************************************************************/ #include "buffersettings.h" BufferSettings::BufferSettings(BufferId bufferId) - : ClientSettings(QString("Buffer/%1").arg(bufferId.toInt())) + : ClientSettings(QString("Buffer/%1").arg(bufferId.toInt())) { } + BufferSettings::BufferSettings(const QString &idString) - : ClientSettings(QString("Buffer/%1").arg(idString)) + : ClientSettings(QString("Buffer/%1").arg(idString)) +{ +} + + +void BufferSettings::setValue(const QString &key, const QVariant &data) +{ + setLocalValue(key, data); +} + + +QVariant BufferSettings::value(const QString &key, const QVariant &def) const +{ + return localValue(key, def); +} + + +void BufferSettings::filterMessage(Message::Type msgType, bool filter) +{ + if (!hasFilter()) + setLocalValue("hasMessageTypeFilter", true); + if (filter) + setLocalValue("MessageTypeFilter", localValue("MessageTypeFilter", 0).toInt() | msgType); + else + setLocalValue("MessageTypeFilter", localValue("MessageTypeFilter", 0).toInt() & ~msgType); +} + + +bool BufferSettings::hasFilter() const +{ + return localValue("hasMessageTypeFilter", false).toBool(); +} + + +int BufferSettings::messageFilter() const { + return localValue("MessageTypeFilter", 0).toInt(); } -bool BufferSettings::hasFilter() { - return localValue("hasMessageTypeFilter", false).toBool(); + +void BufferSettings::setMessageFilter(int filter) +{ + if (!hasFilter()) + setLocalValue("hasMessageTypeFilter", true); + setLocalValue("MessageTypeFilter", filter); } -int BufferSettings::messageFilter() { - return localValue("MessageTypeFilter", 0).toInt(); + +void BufferSettings::removeFilter() +{ + setLocalValue("hasMessageTypeFilter", false); + removeLocalKey("MessageTypeFilter"); } -void BufferSettings::filterMessage(Message::Type msgType, bool filter) { - if(!hasFilter()) - setLocalValue("hasMessageTypeFilter", true); - if(filter) - setLocalValue("MessageTypeFilter", localValue("MessageTypeFilter", 0).toInt() | msgType); - else - setLocalValue("MessageTypeFilter", localValue("MessageTypeFilter", 0).toInt() & ~msgType); + +bool BufferSettings::showUserStateIcons() const +{ + return localValue("ShowUserStateIcons", true).toBool(); +} + + +void BufferSettings::enableUserStateIcons(bool enabled) +{ + setLocalValue("ShowUserStateIcons", enabled); +} + + +int BufferSettings::userNoticesTarget() const +{ + return localValue("UserNoticesTarget", RedirectTarget::DefaultBuffer | RedirectTarget::CurrentBuffer).toInt(); +} + + +void BufferSettings::setUserNoticesTarget(int target) +{ + setLocalValue("UserNoticesTarget", target); +} + + +int BufferSettings::serverNoticesTarget() const +{ + return localValue("ServerNoticesTarget", RedirectTarget::StatusBuffer).toInt(); +} + + +void BufferSettings::setServerNoticesTarget(int target) +{ + setLocalValue("ServerNoticesTarget", target); +} + + +int BufferSettings::errorMsgsTarget() const +{ + return localValue("ErrorMsgsTarget", RedirectTarget::DefaultBuffer).toInt(); +} + + +void BufferSettings::setErrorMsgsTarget(int target) +{ + setLocalValue("ErrorMsgsTarget", target); }