Quassel IRC  Pre-Release
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros
awaylogview.cpp
Go to the documentation of this file.
1 /***************************************************************************
2  * Copyright (C) 2005-2015 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  * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. *
19  ***************************************************************************/
20 
21 #include "awaylogview.h"
22 
23 #include <QAction>
24 #include <QMenu>
25 
26 #include "awaylogfilter.h"
27 #include "chatlinemodel.h"
28 #include "chatscene.h"
29 
30 AwayLogView::AwayLogView(AwayLogFilter *filter, QWidget *parent)
31  : ChatMonitorView(filter, parent)
32 {
33  setWindowTitle(tr("Away Log"));
34 }
35 
36 
37 void AwayLogView::addActionsToMenu(QMenu *menu, const QPointF &pos)
38 {
39  ChatView::addActionsToMenu(menu, pos);
40  if (!menu->isEmpty())
41  menu->addSeparator();
42 
43  if (scene()->columnByScenePos(pos) == ChatLineModel::SenderColumn) {
44  menu->addSeparator();
45 
46  QAction *showNetworkAction = menu->addAction(tr("Show Network Name"), this, SLOT(showFieldsChanged(bool)));
47  showNetworkAction->setCheckable(true);
48  showNetworkAction->setChecked(filter()->showFields() & ChatMonitorFilter::NetworkField);
49  showNetworkAction->setData(ChatMonitorFilter::NetworkField);
50 
51  QAction *showBufferAction = menu->addAction(tr("Show Buffer Name"), this, SLOT(showFieldsChanged(bool)));
52  showBufferAction->setCheckable(true);
53  showBufferAction->setChecked(filter()->showFields() & ChatMonitorFilter::BufferField);
54  showBufferAction->setData(ChatMonitorFilter::BufferField);
55  }
56 }