32 #include <ArmarXGui/gui-plugins/ScenarioManager/gui/ui_scenariolistview.h>
38 using namespace Data_Structure;
44 startButtonDelegate(this),
45 stopButtonDelegate(this),
46 restartButtonDelegate(this),
47 removeAction(
"Remove", &contextMenu)
51 ui->treeView->setModel(model.get());
52 ui->treeView->setSortingEnabled(
true);
53 ui->treeView->setItemDelegateForColumn(1, &startButtonDelegate);
54 ui->treeView->setItemDelegateForColumn(2, &stopButtonDelegate);
55 ui->treeView->setItemDelegateForColumn(3, &restartButtonDelegate);
58 contextMenu.setParent(ui->treeView);
59 ui->treeView->setContextMenuPolicy(Qt::CustomContextMenu);
60 QObject::connect(ui->treeView,
61 SIGNAL(customContextMenuRequested(
const QPoint&)),
63 SLOT(onCustomContextMenu(
const QPoint&)));
65 ui->treeView->addAction(&removeAction);
67 ui->treeView->setDragEnabled(
true);
68 ui->treeView->setDefaultDropAction(Qt::CopyAction);
69 ui->treeView->setAcceptDrops(
true);
70 ui->treeView->setDropIndicatorShown(
true);
72 QObject::connect(&removeAction, SIGNAL(triggered()),
this, SLOT(removeItemTriggered()));
74 QObject::connect(&startButtonDelegate,
77 SLOT(startButtonClicked(
int,
int, QModelIndex)));
80 QObject::connect(&stopButtonDelegate,
83 SLOT(stopButtonClicked(
int,
int, QModelIndex)));
85 QObject::connect(&restartButtonDelegate,
88 SLOT(restartButtonClicked(
int,
int, QModelIndex)));
99 this->model = treeModel;
100 ui->treeView->setModel(model.get());
102 ui->treeView->setColumnWidth(0, 200);
103 ui->treeView->setColumnWidth(1, 90);
104 ui->treeView->setColumnWidth(2, 50);
105 ui->treeView->setColumnWidth(3, 60);
109 ScenarioListView::on_searchBar_textEdited(
const QString& text)
111 model->setFilterRegExp(QRegExp(text, Qt::CaseInsensitive, QRegExp::FixedString));
112 ui->treeView->expandAll();
116 ScenarioListView::startButtonClicked(
int row,
int column, QModelIndex parent)
122 ScenarioListView::stopButtonClicked(
int row,
int column, QModelIndex parent)
128 ScenarioListView::restartButtonClicked(
int row,
int column, QModelIndex parent)
134 ScenarioListView::on_newButton_clicked()
140 ScenarioListView::on_openButton_clicked()
146 ScenarioListView::removeItemTriggered()
148 QModelIndex
index = ui->treeView->currentIndex();
153 ScenarioListView::on_treeView_clicked(
const QModelIndex&
index)
159 ScenarioListView::onCustomContextMenu(
const QPoint& point)
161 QModelIndex
index = ui->treeView->currentIndex();
163 removeAction.setText(
"Remove " +
index.data().toString());
165 QList<QAction*> actions;
166 actions.append(&removeAction);
168 QMenu::exec(actions, ui->treeView->mapToGlobal(point));