Добавление контекстного меню для определенных элементов в QTreeView

Я пишу настольное приложение Qt на C ++ с Qt Creator.

Я объявил в моем главном окне TreeView и совместимую модель.

Теперь я хотел бы иметь контекстное меню для элемента дерева. Не для всех элементов, но для их части, например: для элементов дерева с четным индексом.

Я попытался добавить простое контекстное меню со следующим кодом:

в .h файле:

QStandardItemModel* model;
QMenu* contextMenu;
QAction* uninstallAction;
private slots:
    void uninstallAppletClickedSlot();

и в файле .cpp:

в конструкторе:

ui->treeView->setModel(model);
contextMenu = new QMenu(ui->treeView);
ui->treeView->setContextMenuPolicy(Qt::ActionsContextMenu);
uninstallAction = new QAction("Uninstall TA",contextMenu);
ui->treeView->addAction(uninstallAction);
connect(uninstallAction, SIGNAL(triggered()), this, SLOT(uninstallAppletClickedSlot()));

и слот:

void MainWindow::uninstallAppletClickedSlot()
{

}

этот код дает мне контекстное меню с требуемым действием, но знаете ли вы, как я могу добавить это действие только дляQStandardItemс четными индексами ??

Кстати, я добавляю элементы в treeView следующим образом:

void MainWindow::AddItem(QString name)
{
QStandardItem *parentItem = model->invisibleRootItem();
QStandardItem *app = new QStandardItem(name);
parentItem->appendRow(app);
}

Я много гуглил, но ничего не нашел :(

заранее спасибо!

Ответы на вопрос(1)

Ваш ответ на вопрос