[netinstall] Add a (stub) Config object

- Add initial definition of Config object, which will extract the model-
  setting and loading code from the page, and which is also prep-work
  for a QML version of this module.
- While here, remove superfluous code
This commit is contained in:
Adriaan de Groot 2020-03-24 12:02:16 +01:00
parent 1a5c916923
commit 5e03df723c
4 changed files with 86 additions and 7 deletions

View File

@ -2,6 +2,7 @@ calamares_add_plugin( netinstall
TYPE viewmodule TYPE viewmodule
EXPORT_MACRO PLUGINDLLEXPORT_PRO EXPORT_MACRO PLUGINDLLEXPORT_PRO
SOURCES SOURCES
Config.cpp
NetInstallViewStep.cpp NetInstallViewStep.cpp
NetInstallPage.cpp NetInstallPage.cpp
PackageTreeItem.cpp PackageTreeItem.cpp

View File

@ -0,0 +1,34 @@
/*
* Copyright 2016, Luca Giambonini <almack@chakraos.org>
* Copyright 2016, Lisa Vitolo <shainer@chakraos.org>
* Copyright 2017, Kyle Robbertze <krobbertze@gmail.com>
* Copyright 2017-2018, 2020, Adriaan de Groot <groot@kde.org>
* Copyright 2017, Gabriel Craciunescu <crazy@frugalware.org>
*
* Calamares is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation, either version 3 of the License, or
* (at your option) any later version.
*
* Calamares is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with Calamares. If not, see <http://www.gnu.org/licenses/>.
*/
#include "Config.h"
Config::Config( QObject* parent )
: m_model( nullptr )
{
}
void
Config::setStatus( const QString& s )
{
m_status = s;
emit statusChanged( m_status );
}

View File

@ -0,0 +1,50 @@
/*
* Copyright 2016, Luca Giambonini <almack@chakraos.org>
* Copyright 2016, Lisa Vitolo <shainer@chakraos.org>
* Copyright 2017, Kyle Robbertze <krobbertze@gmail.com>
* Copyright 2017-2018, 2020, Adriaan de Groot <groot@kde.org>
*
* Calamares is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation, either version 3 of the License, or
* (at your option) any later version.
*
* Calamares is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with Calamares. If not, see <http://www.gnu.org/licenses/>.
*/
#ifndef NETINSTALL_CONFIG_H
#define NETINSTALL_CONFIG_H
#include "PackageModel.h"
#include <QObject>
class Config : public QObject
{
Q_OBJECT
Q_PROPERTY( PackageModel* packageModel MEMBER m_model FINAL )
Q_PROPERTY( QString status READ status WRITE setStatus NOTIFY statusChanged FINAL )
public:
Config( QObject* parent = nullptr );
QString status() const { return m_status; }
void setStatus( const QString& s );
signals:
void statusChanged( QString status );
private:
QString m_status;
PackageModel* m_model = nullptr;
};
#endif

View File

@ -1,7 +1,7 @@
/* === This file is part of Calamares - <https://github.com/calamares> === /* === This file is part of Calamares - <https://github.com/calamares> ===
* *
* Copyright (c) 2017, Kyle Robbertze <kyle@aims.ac.za> * Copyright (c) 2017, Kyle Robbertze <kyle@aims.ac.za>
* Copyright 2017-2018, Adriaan de Groot <groot@kde.org> * Copyright 2017-2018, 2020, Adriaan de Groot <groot@kde.org>
* *
* Calamares is free software: you can redistribute it and/or modify * Calamares is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by * it under the terms of the GNU General Public License as published by
@ -214,12 +214,6 @@ PackageModel::getItemPackages( PackageTreeItem* item ) const
return selectedPackages; return selectedPackages;
} }
static bool
getBool( const YAML::Node& itemDefinition, const char* key )
{
return itemDefinition[ key ] ? CalamaresUtils::yamlToVariant( itemDefinition[ key ] ).toBool() : false;
}
void void
PackageModel::setupModelData( const QVariantList& groupList, PackageTreeItem* parent ) PackageModel::setupModelData( const QVariantList& groupList, PackageTreeItem* parent )
{ {