Public Member Functions

TreeViewMenu Class Reference

Menu used by ProjectTreeView. More...

#include <treeview.h>

Inheritance diagram for TreeViewMenu:
Inheritance graph
[legend]
Collaboration diagram for TreeViewMenu:
Collaboration graph
[legend]

List of all members.

Public Member Functions

 TreeViewMenu (const QModelIndex &index, QWidget *parent=0)

Detailed Description

Menu used by ProjectTreeView.


Constructor & Destructor Documentation

TreeViewMenu::TreeViewMenu ( const QModelIndex index,
QWidget parent = 0 
)

                                                                              : QMenu(parent)
{
    // Setup member data
    this->index = &index;
    m_model = dynamic_cast<ProjectTreeModel*>(const_cast<QAbstractItemModel*>(index.model()));
    Q_ASSERT(m_model);
    m_treeItem = m_model->treeItemPointer(index);
    Q_ASSERT(m_treeItem);

    // For some indexes, there is no menu
    QString columnName = m_treeItem->data(TreeItem::TreeItemColumnName).toString();

    // Setup components
    if (columnName != QString("sens_id") && columnName != QString("sens_chan_nr") && columnName != QString("sens_cate_id"))
        AddSubMenu();
    if (columnName != "proj_id" && columnName != "sens_chan_nr" && columnName != "sens_cate_id")
        // We mogen niet op "sens_cate_id" verwijderen omdat de path (proj_id, loca_id, inst_id)
        // teruggeeft. Dit zorgt voor verwijderen van alle sensoren in een installatie, en niet alleen die van een bepaalde categorie!
        addAction("Delete", this, SLOT(removeSelected()));

    // Hide on trigger (= necessary due to a bug in QWidgetAction)
    connect(this, SIGNAL(triggered(QAction*)), this, SLOT(slot_actionTriggered(QAction *)));

    // If no actions/submenus are added, the base class menu will close itself.
}


The documentation for this class was generated from the following files: