代码拉取完成,页面将自动刷新
#include "debinstaller.h"
#include "deblistmodel.h"
#include "singleinstallpage.h"
#include "multipleinstallpage.h"
#include <QtGui>
#include <QCoreApplication>
#include <QGuiApplication>
#include <QScreen>
#include <QApt/DebFile>
using QApt::DebFile;
DWIDGET_USE_NAMESPACE
DebInstaller::DebInstaller(QWidget *parent)
: QWidget(parent),
m_centralLayout(new QStackedLayout),
m_fileChooseWidget(new FileChooseWidget),
m_fileListModel(new DebListModel(this))
{
m_centralLayout->addWidget(m_fileChooseWidget);
setLayout(m_centralLayout);
setFixedSize(480, 380);
setWindowTitle("MDM Deb Installer");
setWindowIcon(QIcon(":/images/icon.png"));
move(qApp->primaryScreen()->geometry().center() - geometry().center());
connect(m_fileChooseWidget, &FileChooseWidget::packagesSelected, this, &DebInstaller::onPackagesSelected);
connect(m_fileListModel, &DebListModel::appendOutputInfo, this, &DebInstaller::onOutputPrinted);
}
DebInstaller::~DebInstaller()
{
}
void DebInstaller::keyPressEvent(QKeyEvent *event)
{
switch (event->key()) {
case Qt::Key_Escape: qApp->quit(); break;
default:;
}
}
void DebInstaller::onPackagesSelected(const QStringList &packages)
{
Q_ASSERT(m_fileListModel->preparedPackages().isEmpty());
for (const auto &package : packages)
{
DebFile *p = new DebFile(package);
if (!p->isValid()) {
qWarning() << "package invalid: " << p->filePath();
delete p;
continue;
}
m_fileListModel->appendPackage(p);
}
const int packageCount = m_fileListModel->preparedPackages().size();
// no packages found
if(packageCount == 0)
return;
if (packageCount == 1) {
// single package install
// SingleInstallPage *singlePage = new SingleInstallPage;
// singlePage->setPackage(m_fileListModel->preparedPackages().first());
SingleInstallPage *singlePage = new SingleInstallPage(m_fileListModel);
m_centralLayout->addWidget(singlePage);
} else {
// multiple package installA
MultipleInstallPage *multiplePage = new MultipleInstallPage(m_fileListModel);
m_centralLayout->addWidget(multiplePage);
}
// switch to new page
m_centralLayout->setCurrentIndex(1);
}
void DebInstaller::onOutputPrinted(const QString &output) const
{
qDebug() << output;
}
此处可能存在不合适展示的内容,页面不予展示。您可通过相关编辑功能自查并修改。
如您确认内容无涉及 不当用语 / 纯广告导流 / 暴力 / 低俗色情 / 侵权 / 盗版 / 虚假 / 无价值内容或违法国家有关法律法规的内容,可点击提交进行申诉,我们将尽快为您处理。