MCPcopy Create free account
hub / github.com/FreesmTeam/FreesmLauncher / VersionSelectWidget

Method VersionSelectWidget

launcher/ui/widgets/VersionSelectWidget.cpp:14–58  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

12#include "ui/dialogs/CustomMessageBox.h"
13
14VersionSelectWidget::VersionSelectWidget(QWidget* parent) : QWidget(parent)
15{
16 setObjectName(QStringLiteral("VersionSelectWidget"));
17 verticalLayout = new QVBoxLayout(this);
18 verticalLayout->setObjectName(QStringLiteral("verticalLayout"));
19 verticalLayout->setContentsMargins(0, 0, 0, 0);
20
21 m_proxyModel = new VersionProxyModel(this);
22
23 listView = new VersionListView(this);
24 listView->setObjectName(QStringLiteral("listView"));
25 listView->setHorizontalScrollBarPolicy(Qt::ScrollBarAlwaysOff);
26 listView->setAlternatingRowColors(true);
27 listView->setRootIsDecorated(false);
28 listView->setItemsExpandable(false);
29 listView->setWordWrap(true);
30 listView->header()->setCascadingSectionResizes(true);
31 listView->header()->setStretchLastSection(false);
32 listView->setModel(m_proxyModel);
33 verticalLayout->addWidget(listView);
34
35 search = new QLineEdit(this);
36 search->setPlaceholderText(tr("Search"));
37 search->setClearButtonEnabled(true);
38 verticalLayout->addWidget(search);
39 connect(search, &QLineEdit::textEdited, [this](const QString& value) {
40 m_proxyModel->setSearch(value);
41 if (!value.isEmpty() || !listView->selectionModel()->hasSelection()) {
42 const QModelIndex first = listView->model()->index(0, 0);
43 listView->selectionModel()->setCurrentIndex(first, QItemSelectionModel::ClearAndSelect | QItemSelectionModel::Rows);
44 listView->scrollToTop();
45 } else
46 listView->scrollTo(listView->selectionModel()->currentIndex(), QAbstractItemView::PositionAtCenter);
47 });
48 search->installEventFilter(this);
49
50 sneakyProgressBar = new QProgressBar(this);
51 sneakyProgressBar->setObjectName(QStringLiteral("sneakyProgressBar"));
52 sneakyProgressBar->setFormat(QStringLiteral("%p%"));
53 verticalLayout->addWidget(sneakyProgressBar);
54 sneakyProgressBar->setHidden(true);
55 connect(listView->selectionModel(), &QItemSelectionModel::currentRowChanged, this, &VersionSelectWidget::currentRowChanged);
56
57 QMetaObject::connectSlotsByName(this);
58}
59
60void VersionSelectWidget::setCurrentVersion(const QString& version)
61{

Callers

nothing calls this directly

Calls 7

setWordWrapMethod · 0.80
setSearchMethod · 0.80
modelMethod · 0.80
scrollToMethod · 0.80
setModelMethod · 0.45
isEmptyMethod · 0.45
indexMethod · 0.45

Tested by

no test coverage detected