projects
/
quassel.git
/ commitdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
| commitdiff |
tree
raw
|
patch
|
inline
| side by side (from parent 1:
7e76b93
)
Moar context menu actions, integrate the ChatMonitorView context menu into the global one
author
Manuel Nickschas
<sputnick@quassel-irc.org>
Wed, 19 Nov 2008 08:00:22 +0000
(09:00 +0100)
committer
Manuel Nickschas
<sputnick@quassel-irc.org>
Thu, 20 Nov 2008 14:35:37 +0000
(15:35 +0100)
src/qtui/bufferwidget.cpp
patch
|
blob
|
history
src/qtui/bufferwidget.h
patch
|
blob
|
history
src/qtui/chatmonitorview.cpp
patch
|
blob
|
history
src/qtui/chatmonitorview.h
patch
|
blob
|
history
src/qtui/chatscene.cpp
patch
|
blob
|
history
src/qtui/chatview.cpp
patch
|
blob
|
history
src/qtui/chatview.h
patch
|
blob
|
history
diff --git
a/src/qtui/bufferwidget.cpp
b/src/qtui/bufferwidget.cpp
index
1dbe7b7
..
69718d5
100644
(file)
--- a/
src/qtui/bufferwidget.cpp
+++ b/
src/qtui/bufferwidget.cpp
@@
-145,13
+145,13
@@
void BufferWidget::zoomOriginal() {
view->zoomOriginal();
}
view->zoomOriginal();
}
-void BufferWidget::addActionsToMenu(QMenu *menu) {
+void BufferWidget::addActionsToMenu(QMenu *menu, const QPointF &pos) {
+ Q_UNUSED(pos);
ActionCollection *coll = QtUi::actionCollection();
menu->addSeparator();
menu->addAction(coll->action("ZoomInChatView"));
menu->addAction(coll->action("ZoomOutChatView"));
menu->addAction(coll->action("ZoomOriginalChatView"));
ActionCollection *coll = QtUi::actionCollection();
menu->addSeparator();
menu->addAction(coll->action("ZoomInChatView"));
menu->addAction(coll->action("ZoomOutChatView"));
menu->addAction(coll->action("ZoomOriginalChatView"));
-
}
bool BufferWidget::eventFilter(QObject *watched, QEvent *event) {
}
bool BufferWidget::eventFilter(QObject *watched, QEvent *event) {
diff --git
a/src/qtui/bufferwidget.h
b/src/qtui/bufferwidget.h
index
fd8c9ac
..
5e1af50
100644
(file)
--- a/
src/qtui/bufferwidget.h
+++ b/
src/qtui/bufferwidget.h
@@
-39,7
+39,7
@@
public:
virtual bool eventFilter(QObject *watched, QEvent *event);
inline ChatViewSearchBar *searchBar() const { return ui.searchBar; }
virtual bool eventFilter(QObject *watched, QEvent *event);
inline ChatViewSearchBar *searchBar() const { return ui.searchBar; }
- void addActionsToMenu(QMenu *);
+ void addActionsToMenu(QMenu *
, const QPointF &pos
);
protected:
virtual AbstractChatView *createChatView(BufferId);
protected:
virtual AbstractChatView *createChatView(BufferId);
diff --git
a/src/qtui/chatmonitorview.cpp
b/src/qtui/chatmonitorview.cpp
index
d5c3731
..
6e00778
100644
(file)
--- a/
src/qtui/chatmonitorview.cpp
+++ b/
src/qtui/chatmonitorview.cpp
@@
-41,28
+41,26
@@
ChatMonitorView::ChatMonitorView(ChatMonitorFilter *filter, QWidget *parent)
scene()->setSenderCutoffMode(ChatScene::CutoffLeft);
}
scene()->setSenderCutoffMode(ChatScene::CutoffLeft);
}
-void ChatMonitorView::
contextMenuEvent(QContextMenuEvent *event
) {
-
QMenu contextMenu(thi
s);
-
- QAction *showOwnNicksAction =
contextMenu.addAction(tr("Show own m
essages"), _filter, SLOT(setShowOwnMessages(bool)));
+void ChatMonitorView::
addActionsToMenu(QMenu *menu, const QPointF &pos
) {
+
ChatView::addActionsToMenu(menu, po
s);
+ menu->addSeparator();
+ QAction *showOwnNicksAction =
menu->addAction(tr("Show Own M
essages"), _filter, SLOT(setShowOwnMessages(bool)));
showOwnNicksAction->setCheckable(true);
showOwnNicksAction->setChecked(_filter->showOwnMessages());
showOwnNicksAction->setCheckable(true);
showOwnNicksAction->setChecked(_filter->showOwnMessages());
-
- if(scene()->columnByScenePos(event->pos()) == ChatLineModel::SenderColumn) {
- contextMenu.addSeparator();
- QAction *showNetworkAction = contextMenu.addAction(tr("Show network name"), this, SLOT(showFieldsChanged(bool)));
+ if(scene()->columnByScenePos(pos) == ChatLineModel::SenderColumn) {
+ menu->addSeparator();
+
+ QAction *showNetworkAction = menu->addAction(tr("Show Network Name"), this, SLOT(showFieldsChanged(bool)));
showNetworkAction->setCheckable(true);
showNetworkAction->setChecked(_filter->showFields() & ChatMonitorFilter::NetworkField);
showNetworkAction->setData(ChatMonitorFilter::NetworkField);
showNetworkAction->setCheckable(true);
showNetworkAction->setChecked(_filter->showFields() & ChatMonitorFilter::NetworkField);
showNetworkAction->setData(ChatMonitorFilter::NetworkField);
- QAction *showBufferAction =
contextMenu.addAction(tr("Show buffer n
ame"), this, SLOT(showFieldsChanged(bool)));
+ QAction *showBufferAction =
menu->addAction(tr("Show Buffer N
ame"), this, SLOT(showFieldsChanged(bool)));
showBufferAction->setCheckable(true);
showBufferAction->setChecked(_filter->showFields() & ChatMonitorFilter::BufferField);
showBufferAction->setData(ChatMonitorFilter::BufferField);
}
showBufferAction->setCheckable(true);
showBufferAction->setChecked(_filter->showFields() & ChatMonitorFilter::BufferField);
showBufferAction->setData(ChatMonitorFilter::BufferField);
}
-
- contextMenu.exec(QCursor::pos());
}
void ChatMonitorView::mouseDoubleClickEvent(QMouseEvent *event) {
}
void ChatMonitorView::mouseDoubleClickEvent(QMouseEvent *event) {
diff --git
a/src/qtui/chatmonitorview.h
b/src/qtui/chatmonitorview.h
index
5bb0eb0
..
8a01241
100644
(file)
--- a/
src/qtui/chatmonitorview.h
+++ b/
src/qtui/chatmonitorview.h
@@
-32,12
+32,12
@@
public:
ChatMonitorView(ChatMonitorFilter *filter, QWidget *parent);
protected:
ChatMonitorView(ChatMonitorFilter *filter, QWidget *parent);
protected:
- virtual void
contextMenuEvent(QContextMenuEvent *event
);
+ virtual void
addActionsToMenu(QMenu *menu, const QPointF &pos
);
virtual void mouseDoubleClickEvent(QMouseEvent *event);
private slots:
void showFieldsChanged(bool checked);
virtual void mouseDoubleClickEvent(QMouseEvent *event);
private slots:
void showFieldsChanged(bool checked);
-
+
private:
ChatMonitorFilter *_filter;
};
private:
ChatMonitorFilter *_filter;
};
diff --git
a/src/qtui/chatscene.cpp
b/src/qtui/chatscene.cpp
index
7d2944c
..
8ccdfca
100644
(file)
--- a/
src/qtui/chatscene.cpp
+++ b/
src/qtui/chatscene.cpp
@@
-579,7
+579,8
@@
void ChatScene::contextMenuEvent(QGraphicsSceneContextMenuEvent *event) {
QMenu menu;
// zoom actions and similar
QMenu menu;
// zoom actions and similar
- chatView()->addActionsToMenu(&menu);
+ chatView()->addActionsToMenu(&menu, pos);
+ menu.addSeparator();
if(isPosOverSelection(pos))
menu.addAction(SmallIcon("edit-copy"), tr("Copy Selection"),
if(isPosOverSelection(pos))
menu.addAction(SmallIcon("edit-copy"), tr("Copy Selection"),
diff --git
a/src/qtui/chatview.cpp
b/src/qtui/chatview.cpp
index
4672911
..
024e49d
100644
(file)
--- a/
src/qtui/chatview.cpp
+++ b/
src/qtui/chatview.cpp
@@
-45,6
+45,7
@@
ChatView::ChatView(BufferId bufferId, QWidget *parent)
ChatView::ChatView(MessageFilter *filter, QWidget *parent)
: QGraphicsView(parent),
AbstractChatView(),
ChatView::ChatView(MessageFilter *filter, QWidget *parent)
: QGraphicsView(parent),
AbstractChatView(),
+ _bufferContainer(0),
_currentScaleFactor(1)
{
init(filter);
_currentScaleFactor(1)
{
init(filter);
@@
-150,11
+151,11
@@
MsgId ChatView::lastMsgId() const {
return model->data(model->index(model->rowCount() - 1, 0), MessageModel::MsgIdRole).value<MsgId>();
}
return model->data(model->index(model->rowCount() - 1, 0), MessageModel::MsgIdRole).value<MsgId>();
}
-void ChatView::addActionsToMenu(QMenu *menu) {
+void ChatView::addActionsToMenu(QMenu *menu
, const QPointF &pos
) {
// zoom actions
BufferWidget *bw = qobject_cast<BufferWidget *>(bufferContainer());
if(bw) {
// zoom actions
BufferWidget *bw = qobject_cast<BufferWidget *>(bufferContainer());
if(bw) {
- bw->addActionsToMenu(menu);
+ bw->addActionsToMenu(menu
, pos
);
menu->addSeparator();
}
}
menu->addSeparator();
}
}
diff --git
a/src/qtui/chatview.h
b/src/qtui/chatview.h
index
390366a
..
3d29bff
100644
(file)
--- a/
src/qtui/chatview.h
+++ b/
src/qtui/chatview.h
@@
-47,7
+47,7
@@
public:
inline ChatScene *scene() const { return _scene; }
inline ChatScene *scene() const { return _scene; }
- v
oid addActionsToMenu(QMenu *
);
+ v
irtual void addActionsToMenu(QMenu *, const QPointF &pos
);
public slots:
inline virtual void clear() {}
public slots:
inline virtual void clear() {}