Added new option for GxsForums and FeedReader - Open all forums/feeds in new tab.

Option=on (standard)
- no standard tab
- new tab by single click
- no menu entry "Open in new tab"

Option=off:
- standard tab (not closeable)
- open in standard tab by single click
- menu entry "Open in new tab"
- open new tab with middle mouse button


git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@6060 b45a01b8-16f6-495d-af2f-9b41ad6348cc
This commit is contained in:
thunder2 2013-01-06 02:30:10 +00:00
parent 9cfe660e11
commit f488dbd15a
30 changed files with 425 additions and 185 deletions

View file

@ -20,6 +20,7 @@
****************************************************************/
#include <QPainter>
#include <QMouseEvent>
#include "RSTreeWidget.h"
@ -29,7 +30,7 @@ RSTreeWidget::RSTreeWidget(QWidget *parent) : QTreeWidget(parent)
void RSTreeWidget::setPlaceholderText(const QString &text)
{
placeholderText = text;
mPlaceholderText = text;
viewport()->repaint();
}
@ -37,7 +38,7 @@ void RSTreeWidget::paintEvent(QPaintEvent *event)
{
QTreeWidget::paintEvent(event);
if (placeholderText.isEmpty() == false && model() && model()->rowCount() == 0) {
if (mPlaceholderText.isEmpty() == false && model() && model()->rowCount() == 0) {
QWidget *vieportWidget = viewport();
QPainter painter(vieportWidget);
@ -47,6 +48,22 @@ void RSTreeWidget::paintEvent(QPaintEvent *event)
pen.setColor(color);
painter.setPen(pen);
painter.drawText(QRect(QPoint(), vieportWidget->size()), Qt::AlignHCenter | Qt::AlignVCenter | Qt::TextWordWrap, placeholderText);
painter.drawText(QRect(QPoint(), vieportWidget->size()), Qt::AlignHCenter | Qt::AlignVCenter | Qt::TextWordWrap, mPlaceholderText);
}
}
void RSTreeWidget::mousePressEvent(QMouseEvent *event)
{
if (event->buttons() & Qt::MiddleButton) {
if (receivers(SIGNAL(signalMouseMiddleButtonClicked(QTreeWidgetItem*))) > 0) {
QTreeWidgetItem *item = itemAt(event->pos());
if (item) {
setCurrentItem(item);
emit signalMouseMiddleButtonClicked(item);
}
return; // eat event
}
}
QTreeWidget::mousePressEvent(event);
}