source: calamares/trunk/fuentes/src/libcalamaresui/viewpages/PythonQtJob.cpp @ 7538

Last change on this file since 7538 was 7538, checked in by kbut, 17 months ago

sync with github

File size: 2.4 KB
Line 
1/* === This file is part of Calamares - <https://github.com/calamares> ===
2 *
3 *   Copyright 2016, Teo Mrnjavac <teo@kde.org>
4 *
5 *   Calamares is free software: you can redistribute it and/or modify
6 *   it under the terms of the GNU General Public License as published by
7 *   the Free Software Foundation, either version 3 of the License, or
8 *   (at your option) any later version.
9 *
10 *   Calamares is distributed in the hope that it will be useful,
11 *   but WITHOUT ANY WARRANTY; without even the implied warranty of
12 *   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13 *   GNU General Public License for more details.
14 *
15 *   You should have received a copy of the GNU General Public License
16 *   along with Calamares. If not, see <http://www.gnu.org/licenses/>.
17 */
18
19#include "PythonQtJob.h"
20
21#include "utils/PythonQtUtils.h"
22
23PythonQtJob::PythonQtJob( PythonQtObjectPtr cxt,
24                          PythonQtObjectPtr pyJob,
25                          QObject* parent )
26    : Calamares::Job( parent )
27    , m_cxt( cxt )
28    , m_pyJob( pyJob )
29{
30
31}
32
33
34QString
35PythonQtJob::prettyName() const
36{
37    return CalamaresUtils::lookupAndCall( m_pyJob,
38                                          { "prettyName",
39                                            "prettyname",
40                                            "pretty_name" } ).toString();
41}
42
43
44QString
45PythonQtJob::prettyDescription() const
46{
47    return CalamaresUtils::lookupAndCall( m_pyJob,
48                                          { "prettyDescription",
49                                            "prettydescription",
50                                            "pretty_description" } ).toString();
51}
52
53
54QString
55PythonQtJob::prettyStatusMessage() const
56{
57    return CalamaresUtils::lookupAndCall( m_pyJob,
58                                          { "prettyStatusMessage",
59                                            "prettystatusmessage",
60                                            "pretty_status_message" } ).toString();
61}
62
63
64Calamares::JobResult
65PythonQtJob::exec()
66{
67    QVariant response = m_pyJob.call( "exec" );
68    if ( response.isNull() )
69        return Calamares::JobResult::ok();
70
71    QVariantMap map = response.toMap();
72    if ( map.isEmpty() || map.value( "ok" ).toBool() )
73        return Calamares::JobResult::ok();
74
75    return Calamares::JobResult::error( map.value( "message" ).toString(),
76                                        map.value( "details" ).toString() );
77}
Note: See TracBrowser for help on using the repository browser.