MCPcopy Create free account
hub / github.com/KDE/kdevelop / ExternalScriptView

Method ExternalScriptView

plugins/externalscript/externalscriptview.cpp:24–68  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

22#include <util/wildcardhelpers.h>
23
24ExternalScriptView::ExternalScriptView(ExternalScriptPlugin* plugin, QWidget* parent)
25 : QWidget(parent)
26 , m_plugin(plugin)
27{
28 Ui::ExternalScriptViewBase::setupUi(this);
29 setFocusProxy(filterText);
30
31 setWindowTitle(i18nc("@title:window", "External Scripts"));
32 setWindowIcon(QIcon::fromTheme(QStringLiteral("dialog-scripts"), windowIcon()));
33
34 m_model = new QSortFilterProxyModel(this);
35 m_model->setSourceModel(m_plugin->model());
36 m_model->setDynamicSortFilter(true);
37 m_model->sort(0);
38 connect(filterText, &QLineEdit::textEdited, this, [this](const QString& text) {
39 WildcardHelpers::setFilterNonPathWildcard(*m_model, text);
40 });
41
42 scriptTree->setModel(m_model);
43 scriptTree->setContextMenuPolicy(Qt::CustomContextMenu);
44 scriptTree->viewport()->installEventFilter(this);
45 scriptTree->header()->hide();
46 connect(scriptTree, &QTreeView::customContextMenuRequested,
47 this, &ExternalScriptView::contextMenu);
48
49 m_addScriptAction =
50 new QAction(QIcon::fromTheme(QStringLiteral("document-new")), i18nc("@action", "Add External Script"), this);
51 connect(m_addScriptAction, &QAction::triggered, this, &ExternalScriptView::addScript);
52 addAction(m_addScriptAction);
53
54 m_editScriptAction = new QAction(QIcon::fromTheme(QStringLiteral("document-edit")), i18nc("@action",
55 "Edit External Script"), this);
56 connect(m_editScriptAction, &QAction::triggered, this, &ExternalScriptView::editScript);
57 addAction(m_editScriptAction);
58
59 m_removeScriptAction = new QAction(QIcon::fromTheme(QStringLiteral("document-close")), i18nc("@action",
60 "Remove External Script"), this);
61 connect(m_removeScriptAction, &QAction::triggered, this, &ExternalScriptView::removeScript);
62 addAction(m_removeScriptAction);
63
64 connect(scriptTree->selectionModel(), &QItemSelectionModel::selectionChanged,
65 this, &ExternalScriptView::validateActions);
66
67 validateActions();
68}
69
70ExternalScriptView::~ExternalScriptView()
71{

Callers

nothing calls this directly

Calls 5

setSourceModelMethod · 0.80
headerMethod · 0.80
modelMethod · 0.45
sortMethod · 0.45
setModelMethod · 0.45

Tested by

no test coverage detected