/quassel-0.7.3/src/client/buffersettings.cpp
C++ | 51 lines | 26 code | 6 blank | 19 comment | 3 complexity | 5cf0291bab5a05748f1d7ed4d28a0bb4 MD5 | raw file
Possible License(s): GPL-2.0, GPL-3.0
1/***************************************************************************
2 * Copyright (C) 2005-09 by the Quassel Project *
3 * devel@quassel-irc.org *
4 * *
5 * This program is free software; you can redistribute it and/or modify *
6 * it under the terms of the GNU General Public License as published by *
7 * the Free Software Foundation; either version 2 of the License, or *
8 * (at your option) version 3. *
9 * *
10 * This program is distributed in the hope that it will be useful, *
11 * but WITHOUT ANY WARRANTY; without even the implied warranty of *
12 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the *
13 * GNU General Public License for more details. *
14 * *
15 * You should have received a copy of the GNU General Public License *
16 * along with this program; if not, write to the *
17 * Free Software Foundation, Inc., *
18 * 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. *
19 ***************************************************************************/
20
21#include "buffersettings.h"
22
23BufferSettings::BufferSettings(BufferId bufferId)
24 : ClientSettings(QString("Buffer/%1").arg(bufferId.toInt()))
25{
26}
27
28BufferSettings::BufferSettings(const QString &idString)
29 : ClientSettings(QString("Buffer/%1").arg(idString))
30{
31}
32
33void BufferSettings::filterMessage(Message::Type msgType, bool filter) {
34 if(!hasFilter())
35 setLocalValue("hasMessageTypeFilter", true);
36 if(filter)
37 setLocalValue("MessageTypeFilter", localValue("MessageTypeFilter", 0).toInt() | msgType);
38 else
39 setLocalValue("MessageTypeFilter", localValue("MessageTypeFilter", 0).toInt() & ~msgType);
40}
41
42void BufferSettings::setMessageFilter(int filter) {
43 if(!hasFilter())
44 setLocalValue("hasMessageTypeFilter", true);
45 setLocalValue("MessageTypeFilter", filter);
46}
47
48void BufferSettings::removeFilter() {
49 setLocalValue("hasMessageTypeFilter", false);
50 removeLocalKey("MessageTypeFilter");
51}