32#include <ArmarXGui/gui-plugins/ScenarioManager/gui/ui_scenariolistview.h>
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);
109ScenarioListView::on_searchBar_textEdited(
const QString& text)
111 model->setFilterRegExp(QRegExp(text, Qt::CaseInsensitive, QRegExp::FixedString));
112 ui->treeView->expandAll();
116ScenarioListView::startButtonClicked(
int row,
int column, QModelIndex parent)
122ScenarioListView::stopButtonClicked(
int row,
int column, QModelIndex parent)
128ScenarioListView::restartButtonClicked(
int row,
int column, QModelIndex parent)
134ScenarioListView::on_newButton_clicked()
140ScenarioListView::on_openButton_clicked()
146ScenarioListView::removeItemTriggered()
148 QModelIndex
index = ui->treeView->currentIndex();
153ScenarioListView::on_treeView_clicked(
const QModelIndex&
index)
159ScenarioListView::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));
~ScenarioListView() override
Destructor.
void itemClicked(const QModelIndex &index)
ScenarioListView(QWidget *parent=0)
Constructor that sets up the ui and behaviour of this view.
void stopApplication(int row, int column, QModelIndex parent)
void setModel(FilterableTreeModelSortFilterProxyModelPtr model)
Sets the model of this view.
void restartApplication(int row, int column, QModelIndex parent)
void startApplication(int row, int column, QModelIndex parent)
void removeItem(QModelIndex index)
std::shared_ptr< FilterableTreeModelSortFilterProxyModel > FilterableTreeModelSortFilterProxyModelPtr
bool buttonClicked(RemoteGui::ValueMap const &newValues, RemoteGui::ValueMap const &oldValues, std::string const &name)
This file offers overloads of toIce() and fromIce() functions for STL container types.