refs #319, refs #322 user can force reload and clearing the data in views

* context menu
* timer based component can fire directly
* View base class (non templated) so it can use Q_OBJECT
This commit is contained in:
Klaus Basan
2014-09-08 23:34:39 +02:00
parent b576e21b48
commit bce67b7873
8 changed files with 77 additions and 68 deletions

View File

@@ -21,33 +21,10 @@ namespace BlackGui
/*
* Constructor
*/
CStatusMessageView::CStatusMessageView(QWidget *parent) : CViewBase(parent), m_contextMenu(nullptr)
CStatusMessageView::CStatusMessageView(QWidget *parent) : CViewBase(parent)
{
this->standardInit(new CStatusMessageListModel(this));
this->setContextMenuPolicy(Qt::CustomContextMenu);
this->m_contextMenu = new QMenu(this);
this->m_contextMenu->addAction("Clear");
connect(this, &QTableView::customContextMenuRequested, this, &CStatusMessageView::contextMenu);
}
/*
* Message list context menu
*/
void CStatusMessageView::contextMenu(const QPoint &position)
{
// position for most widgets
QPoint globalPosition = this->mapToGlobal(position);
QAction *selectedItem = this->m_contextMenu->exec(globalPosition);
if (selectedItem)
{
// http://forum.technical-assistance.co.uk/sndvol32exe-command-line-parameters-vt1348.html
const QList<QAction *> actions = this->m_contextMenu->actions();
if (selectedItem == actions.at(0))
{
this->clear();
this->resizeColumnsToContents();
}
}
}
} // namespace
} // namespace