Skip to content
GitLab
Projects
Groups
Snippets
Help
Loading...
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Sign in
Toggle navigation
calamares
Project overview
Project overview
Details
Activity
Releases
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Locked Files
Issues
17
Issues
17
List
Boards
Labels
Service Desk
Milestones
Merge Requests
0
Merge Requests
0
Requirements
Requirements
List
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Security & Compliance
Security & Compliance
Dependency List
License Compliance
Operations
Operations
Environments
Packages & Registries
Packages & Registries
Container Registry
Analytics
Analytics
CI / CD
Code Review
Insights
Issue
Repository
Value Stream
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
Applications
calamares
Commits
de5c97af
Commit
de5c97af
authored
Mar 25, 2020
by
Adriaan de Groot
Browse files
Options
Browse Files
Download
Plain Diff
Merge branch 'milohr-qml-bits'
FIXES #1352
parents
875f79b4
2a93c7e2
Changes
8
Hide whitespace changes
Inline
Side-by-side
Showing
8 changed files
with
364 additions
and
266 deletions
+364
-266
src/modules/welcome/CMakeLists.txt
src/modules/welcome/CMakeLists.txt
+0
-2
src/modules/welcome/Config.cpp
src/modules/welcome/Config.cpp
+135
-81
src/modules/welcome/Config.h
src/modules/welcome/Config.h
+54
-48
src/modules/welcome/WelcomePage.cpp
src/modules/welcome/WelcomePage.cpp
+9
-6
src/modules/welcome/WelcomePage.h
src/modules/welcome/WelcomePage.h
+2
-2
src/modules/welcome/WelcomeViewStep.cpp
src/modules/welcome/WelcomeViewStep.cpp
+117
-116
src/modules/welcome/WelcomeViewStep.h
src/modules/welcome/WelcomeViewStep.h
+10
-10
src/modules/welcomeq/WelcomeQmlViewStep.cpp
src/modules/welcomeq/WelcomeQmlViewStep.cpp
+37
-1
No files found.
src/modules/welcome/CMakeLists.txt
View file @
de5c97af
...
...
@@ -12,8 +12,6 @@ else()
add_definitions
(
-DWITHOUT_LIBPARTED
)
endif
()
include_directories
(
${
PROJECT_BINARY_DIR
}
/src/libcalamaresui
)
set
(
CHECKER_SOURCES
checker/CheckerContainer.cpp
checker/GeneralRequirements.cpp
...
...
src/modules/welcome/Config.cpp
View file @
de5c97af
...
...
@@ -17,27 +17,27 @@
*/
#include "Config.h"
#include "utils/Logger.h"
#include "utils/Retranslator.h"
#include "Branding.h"
#include "Settings.h"
#include
<QApplication>
#include "utils/Logger.h"
#include
"utils/Retranslator.h"
void
RequirementsModel
::
setRequirementsList
(
const
Calamares
::
RequirementsList
&
requirements
)
{
CALAMARES_RETRANSLATE_SLOT
(
&
RequirementsModel
::
retranslate
)
emit
beginResetModel
();
m_requierements
=
requirements
;
m_satisfiedRequirements
=
true
;
m_requirements
=
requirements
;
auto
isUnSatisfied
=
[](
const
Calamares
::
RequirementEntry
&
e
)
{
return
!
e
.
satisfied
;
};
auto
isMandatoryAndUnSatisfied
=
[](
const
Calamares
::
RequirementEntry
&
e
)
{
return
e
.
mandatory
&&
!
e
.
satisfied
;
};
m_satisfiedRequirements
=
std
::
none_of
(
m_requi
erements
.
begin
(),
m_requie
rements
.
end
(),
isUnSatisfied
);
m_satisfiedMandatory
=
std
::
none_of
(
m_requi
erements
.
begin
(),
m_requie
rements
.
end
(),
isMandatoryAndUnSatisfied
);
m_satisfiedRequirements
=
std
::
none_of
(
m_requi
rements
.
begin
(),
m_requi
rements
.
end
(),
isUnSatisfied
);
m_satisfiedMandatory
=
std
::
none_of
(
m_requi
rements
.
begin
(),
m_requi
rements
.
end
(),
isMandatoryAndUnSatisfied
);
emit
satisfiedRequirementsChanged
(
m_satisfiedRequirements
);
emit
satisfiedRequirementsChanged
(
m_satisfiedRequirements
);
emit
satisfiedMandatoryChanged
();
emit
endResetModel
();
}
...
...
@@ -45,89 +45,74 @@ RequirementsModel::setRequirementsList( const Calamares::RequirementsList& requi
int
RequirementsModel
::
rowCount
(
const
QModelIndex
&
)
const
{
return
m_requi
e
rements
.
count
();
return
m_requirements
.
count
();
}
QVariant
RequirementsModel
::
data
(
const
QModelIndex
&
index
,
int
role
)
const
{
const
auto
requirement
=
m_requi
e
rements
.
at
(
index
.
row
()
);
switch
(
role
)
{
case
Roles
::
Name
:
return
requirement
.
name
;
case
Roles
::
Details
:
return
requirement
.
enumerationText
();
case
Roles
::
NegatedText
:
return
requirement
.
negatedText
();
case
Roles
::
Satisfied
:
return
requirement
.
satisfied
;
case
Roles
::
Mandatory
:
return
requirement
.
mandatory
;
default:
return
QVariant
();
}
const
auto
requirement
=
m_requirements
.
at
(
index
.
row
()
);
switch
(
role
)
{
case
Roles
::
Name
:
return
requirement
.
name
;
case
Roles
::
Details
:
return
requirement
.
enumerationText
();
case
Roles
::
NegatedText
:
return
requirement
.
negatedText
();
case
Roles
::
Satisfied
:
return
requirement
.
satisfied
;
case
Roles
::
Mandatory
:
return
requirement
.
mandatory
;
default:
return
QVariant
();
}
}
QHash
<
int
,
QByteArray
>
QHash
<
int
,
QByteArray
>
RequirementsModel
::
roleNames
()
const
{
static
QHash
<
int
,
QByteArray
>
roles
;
roles
[
Roles
::
Name
]
=
"name"
;
roles
[
Roles
::
Details
]
=
"details"
;
roles
[
Roles
::
NegatedText
]
=
"negatedText"
;
roles
[
Roles
::
Satisfied
]
=
"satisfied"
;
roles
[
Roles
::
Mandatory
]
=
"mandatory"
;
return
roles
;
static
QHash
<
int
,
QByteArray
>
roles
;
roles
[
Roles
::
Name
]
=
"name"
;
roles
[
Roles
::
Details
]
=
"details"
;
roles
[
Roles
::
NegatedText
]
=
"negatedText"
;
roles
[
Roles
::
Satisfied
]
=
"satisfied"
;
roles
[
Roles
::
Mandatory
]
=
"mandatory"
;
return
roles
;
}
Config
::
Config
(
QObject
*
parent
)
:
QObject
(
parent
)
,
m_requirementsModel
(
new
RequirementsModel
(
this
))
Config
::
Config
(
QObject
*
parent
)
:
QObject
(
parent
)
,
m_requirementsModel
(
new
RequirementsModel
(
this
)
)
,
m_languages
(
CalamaresUtils
::
Locale
::
availableTranslations
()
)
{
connect
(
m_requirementsModel
,
&
RequirementsModel
::
satisfiedRequirementsChanged
,
this
,
&
Config
::
setIsNextEnabled
);
connect
(
m_requirementsModel
,
&
RequirementsModel
::
satisfiedRequirementsChanged
,
this
,
&
Config
::
setIsNextEnabled
);
initLanguages
();
CALAMARES_RETRANSLATE_SLOT
(
&
Config
::
retranslate
)
}
void
Config
::
retranslate
()
{
QString
message
;
if
(
Calamares
::
Settings
::
instance
()
->
isSetupMode
()
)
{
message
=
Calamares
::
Branding
::
instance
()
->
welcomeStyleCalamares
()
?
tr
(
"<h1>Welcome to the Calamares setup program for %1.</h1>"
)
:
tr
(
"<h1>Welcome to %1 setup.</h1>"
);
}
else
{
message
=
Calamares
::
Branding
::
instance
()
->
welcomeStyleCalamares
()
?
tr
(
"<h1>Welcome to the Calamares installer for %1.</h1>"
)
:
tr
(
"<h1>Welcome to the %1 installer.</h1>"
);
}
m_genericWelcomeMessage
=
message
.
arg
(
*
Calamares
::
Branding
::
VersionedName
);
m_genericWelcomeMessage
=
genericWelcomeMessage
().
arg
(
*
Calamares
::
Branding
::
VersionedName
);
emit
genericWelcomeMessageChanged
();
// ui->supportButton->setText( tr( "%1 support" ).arg( *Calamares::Branding::ShortProductName )
);
m_requirementsModel
->
retranslate
(
);
}
CalamaresUtils
::
Locale
::
LabelModel
*
Config
::
languagesModel
()
const
{
return
m_languages
;
return
m_languages
;
}
QString
Config
::
languageIcon
()
const
{
return
m_languageIcon
;
return
m_languageIcon
;
}
void
...
...
@@ -146,7 +131,7 @@ Config::initLanguages()
cDebug
()
<<
Logger
::
SubEntry
<<
"Matching approximate locale"
<<
defaultLocale
.
language
();
matchedLocaleIndex
=
m_languages
->
find
(
[
&
](
const
QLocale
&
x
)
{
return
x
.
language
()
==
defaultLocale
.
language
();
}
);
=
m_languages
->
find
(
[
&
](
const
QLocale
&
x
)
{
return
x
.
language
()
==
defaultLocale
.
language
();
}
);
}
if
(
matchedLocaleIndex
<
0
)
...
...
@@ -168,8 +153,8 @@ Config::initLanguages()
QString
name
=
m_languages
->
locale
(
matchedLocaleIndex
).
name
();
cDebug
()
<<
Logger
::
SubEntry
<<
"Matched with index"
<<
matchedLocaleIndex
<<
name
;
CalamaresUtils
::
installTranslator
(
name
,
Calamares
::
Branding
::
instance
()
->
translationsDirectory
()
,
qApp
);
setLocaleIndex
(
matchedLocaleIndex
);
CalamaresUtils
::
installTranslator
(
name
,
Calamares
::
Branding
::
instance
()
->
translationsDirectory
()
);
setLocaleIndex
(
matchedLocaleIndex
);
}
else
{
...
...
@@ -180,23 +165,26 @@ Config::initLanguages()
void
Config
::
setCountryCode
(
const
QString
&
countryCode
)
{
m_countryCode
=
countryCode
;
setLocaleIndex
(
CalamaresUtils
::
Locale
::
availableTranslations
()
->
find
(
m_countryCode
)
);
m_countryCode
=
countryCode
;
setLocaleIndex
(
CalamaresUtils
::
Locale
::
availableTranslations
()
->
find
(
m_countryCode
)
);
emit
countryCodeChanged
(
m_countryCode
);
emit
countryCodeChanged
(
m_countryCode
);
}
void
Config
::
setLanguageIcon
(
const
QString
&
languageIcon
)
Config
::
setLanguageIcon
(
const
QString
&
languageIcon
)
{
m_languageIcon
=
languageIcon
;
m_languageIcon
=
languageIcon
;
}
void
Config
::
setLocaleIndex
(
const
int
&
index
)
Config
::
setLocaleIndex
(
const
int
&
index
)
{
if
(
index
==
m_localeIndex
||
index
>
CalamaresUtils
::
Locale
::
availableTranslations
()
->
rowCount
(
QModelIndex
())
||
index
<
0
)
if
(
index
==
m_localeIndex
||
index
>
CalamaresUtils
::
Locale
::
availableTranslations
()
->
rowCount
(
QModelIndex
()
)
||
index
<
0
)
{
return
;
}
m_localeIndex
=
index
;
...
...
@@ -204,8 +192,7 @@ Config::setLocaleIndex(const int& index)
cDebug
()
<<
"Selected locale"
<<
selectedLocale
;
QLocale
::
setDefault
(
selectedLocale
);
CalamaresUtils
::
installTranslator
(
selectedLocale
,
Calamares
::
Branding
::
instance
()
->
translationsDirectory
(),
qApp
);
CalamaresUtils
::
installTranslator
(
selectedLocale
,
Calamares
::
Branding
::
instance
()
->
translationsDirectory
()
);
emit
localeIndexChanged
(
m_localeIndex
);
}
...
...
@@ -223,51 +210,118 @@ Config::setIsNextEnabled( const bool& isNextEnabled )
emit
isNextEnabledChanged
(
m_isNextEnabled
);
}
QString
Config
::
donateUrl
()
const
QString
Config
::
donateUrl
()
const
{
return
m_donateUrl
;
}
void
Config
::
setDonateUrl
(
const
QString
&
url
)
void
Config
::
setDonateUrl
(
const
QString
&
url
)
{
m_donateUrl
=
url
;
emit
donateUrlChanged
();
}
QString
Config
::
knownIssuesUrl
()
const
QString
Config
::
knownIssuesUrl
()
const
{
return
m_knownIssuesUrl
;
}
void
Config
::
setKnownIssuesUrl
(
const
QString
&
url
)
void
Config
::
setKnownIssuesUrl
(
const
QString
&
url
)
{
m_knownIssuesUrl
=
url
;
emit
knownIssuesUrlChanged
();
}
void
Config
::
setReleaseNotesUrl
(
const
QString
&
url
)
void
Config
::
setReleaseNotesUrl
(
const
QString
&
url
)
{
m_releaseNotesUrl
=
url
;
m_releaseNotesUrl
=
url
;
emit
releaseNotesUrlChanged
();
}
QString
Config
::
releaseNotesUrl
()
const
QString
Config
::
releaseNotesUrl
()
const
{
return
m_releaseNotesUrl
;
}
QString
Config
::
supportUrl
()
const
QString
Config
::
supportUrl
()
const
{
return
m_supportUrl
;
}
void
Config
::
setSupportUrl
(
const
QString
&
url
)
void
Config
::
setSupportUrl
(
const
QString
&
url
)
{
m_supportUrl
=
url
;
emit
supportUrlChanged
();
}
void
RequirementsModel
::
retranslate
()
{
if
(
!
m_satisfiedRequirements
)
{
QString
message
;
const
bool
setup
=
Calamares
::
Settings
::
instance
()
->
isSetupMode
();
if
(
!
m_satisfiedMandatory
)
{
message
=
setup
?
tr
(
"This computer does not satisfy the minimum "
"requirements for setting up %1.<br/>"
"Setup cannot continue. "
"<a href=
\"
#details
\"
>Details...</a>"
)
:
tr
(
"This computer does not satisfy the minimum "
"requirements for installing %1.<br/>"
"Installation cannot continue. "
"<a href=
\"
#details
\"
>Details...</a>"
);
}
else
{
message
=
setup
?
tr
(
"This computer does not satisfy some of the "
"recommended requirements for setting up %1.<br/>"
"Setup can continue, but some features "
"might be disabled."
)
:
tr
(
"This computer does not satisfy some of the "
"recommended requirements for installing %1.<br/>"
"Installation can continue, but some features "
"might be disabled."
);
}
m_warningMessage
=
message
.
arg
(
*
Calamares
::
Branding
::
ShortVersionedName
);
}
else
{
m_warningMessage
=
tr
(
"This program will ask you some questions and "
"set up %2 on your computer."
)
.
arg
(
*
Calamares
::
Branding
::
ProductName
);
}
emit
warningMessageChanged
();
}
QString
Config
::
genericWelcomeMessage
()
{
QString
message
;
if
(
Calamares
::
Settings
::
instance
()
->
isSetupMode
()
)
{
message
=
Calamares
::
Branding
::
instance
()
->
welcomeStyleCalamares
()
?
tr
(
"<h1>Welcome to the Calamares setup program for %1.</h1>"
)
:
tr
(
"<h1>Welcome to %1 setup.</h1>"
);
}
else
{
message
=
Calamares
::
Branding
::
instance
()
->
welcomeStyleCalamares
()
?
tr
(
"<h1>Welcome to the Calamares installer for %1.</h1>"
)
:
tr
(
"<h1>Welcome to the %1 installer.</h1>"
);
}
return
message
;
}
src/modules/welcome/Config.h
View file @
de5c97af
...
...
@@ -19,21 +19,23 @@
#ifndef WELCOME_CONFIG_H
#define WELCOME_CONFIG_H
#include <QObject>
#include <QUrl>
#include "modulesystem/Requirement.h"
#include "locale/LabelModel.h"
#include <QObject>
#include <QUrl>
// TODO: move this (and modulesystem/Requirement) to libcalamares
class
RequirementsModel
:
public
QAbstractListModel
{
Q_OBJECT
using
QAbstractListModel
::
QAbstractListModel
;
Q_PROPERTY
(
bool
satisfiedRequirements
READ
satisfiedRequirements
NOTIFY
satisfiedRequirementsChanged
FINAL
)
Q_PROPERTY
(
bool
satisfiedMandatory
READ
satisfiedMandatory
NOTIFY
satisfiedMandatoryChanged
FINAL
)
Q_PROPERTY
(
bool
satisfiedRequirements
READ
satisfiedRequirements
NOTIFY
satisfiedRequirementsChanged
FINAL
)
Q_PROPERTY
(
bool
satisfiedMandatory
READ
satisfiedMandatory
NOTIFY
satisfiedMandatoryChanged
FINAL
)
Q_PROPERTY
(
QString
warningMessage
READ
warningMessage
NOTIFY
warningMessageChanged
FINAL
)
public:
using
QAbstractListModel
::
QAbstractListModel
;
enum
Roles
:
short
{
Name
,
...
...
@@ -44,90 +46,92 @@ public:
HasDetails
};
bool
satisfiedRequirements
()
const
{
return
m_satisfiedRequirements
;
}
bool
satisfiedRequirements
()
const
{
return
m_satisfiedRequirements
;
}
bool
satisfiedMandatory
()
const
{
return
m_satisfiedMandatory
;
}
bool
satisfiedMandatory
()
const
{
return
m_satisfiedMandatory
;
}
const
Calamares
::
RequirementEntry
&
getEntry
(
const
int
&
index
)
const
const
Calamares
::
RequirementEntry
&
getEntry
(
const
int
&
index
)
const
{
if
(
index
>
count
()
||
index
<
0
)
{
return
*
(
new
Calamares
::
RequirementEntry
()
);
}
if
(
index
>
count
()
||
index
<
0
)
return
*
(
new
Calamares
::
RequirementEntry
());
return
m_requierements
.
at
(
index
);
return
m_requirements
.
at
(
index
);
}
void
setRequirementsList
(
const
Calamares
::
RequirementsList
&
requirements
);
int
rowCount
(
const
QModelIndex
&
)
const
override
;
int
count
()
const
{
return
m_requierements
.
count
();
}
int
rowCount
(
const
QModelIndex
&
)
const
override
;
int
count
()
const
{
return
m_requirements
.
count
();
}
QString
warningMessage
()
const
{
return
m_warningMessage
;
}
QVariant
data
(
const
QModelIndex
&
index
,
int
role
)
const
override
;
void
retranslate
();
QVariant
data
(
const
QModelIndex
&
index
,
int
role
)
const
override
;
protected:
QHash
<
int
,
QByteArray
>
roleNames
()
const
override
;
QHash
<
int
,
QByteArray
>
roleNames
()
const
override
;
private:
Calamares
::
RequirementsList
m_requi
e
rements
;
Calamares
::
RequirementsList
m_requirements
;
bool
m_satisfiedRequirements
=
false
;
bool
m_satisfiedMandatory
=
false
;
QString
m_warningMessage
;
signals:
void
satisfiedRequirementsChanged
(
bool
value
);
void
satisfiedRequirementsChanged
(
bool
value
);
void
satisfiedMandatoryChanged
();
void
warningMessageChanged
();
};
class
Config
:
public
QObject
{
Q_OBJECT
Q_PROPERTY
(
CalamaresUtils
::
Locale
::
LabelModel
*
languagesModel
READ
languagesModel
CONSTANT
FINAL
)
Q_PROPERTY
(
CalamaresUtils
::
Locale
::
LabelModel
*
languagesModel
READ
languagesModel
CONSTANT
FINAL
)
Q_PROPERTY
(
RequirementsModel
*
requirementsModel
MEMBER
m_requirementsModel
CONSTANT
FINAL
)
Q_PROPERTY
(
QString
languageIcon
READ
languageIcon
CONSTANT
FINAL
)
Q_PROPERTY
(
QString
countryCode
MEMBER
m_countryCode
NOTIFY
countryCodeChanged
FINAL
)
Q_PROPERTY
(
int
localeIndex
READ
localeIndex
WRITE
setLocaleIndex
NOTIFY
localeIndexChanged
)
Q_PROPERTY
(
int
localeIndex
READ
localeIndex
WRITE
setLocaleIndex
NOTIFY
localeIndexChanged
)
Q_PROPERTY
(
QString
genericWelcomeMessage
MEMBER
m_genericWelcomeMessage
NOTIFY
genericWelcomeMessageChanged
FINAL
)
Q_PROPERTY
(
QString
warningMessage
MEMBER
m_warningMessage
CONSTANT
FINAL
)
Q_PROPERTY
(
QString
supportUrl
MEMBER
m_supportUrl
CONSTANT
FINAL
)
Q_PROPERTY
(
QString
knownIssuesUrl
MEMBER
m_knownIssuesUrl
CONSTANT
FINAL
)
Q_PROPERTY
(
QString
releaseNotesUrl
MEMBER
m_releaseNotesUrl
CONSTANT
FINAL
)
Q_PROPERTY
(
QString
donateUrl
MEMBER
m_donateUrl
CONSTANT
FINAL
)
Q_PROPERTY
(
QString
supportUrl
MEMBER
m_supportUrl
NOTIFY
supportUrlChanged
FINAL
)
Q_PROPERTY
(
QString
knownIssuesUrl
MEMBER
m_knownIssuesUrl
NOTIFY
knownIssuesUrlChanged
FINAL
)
Q_PROPERTY
(
QString
releaseNotesUrl
MEMBER
m_releaseNotesUrl
NOTIFY
releaseNotesUrlChanged
FINAL
)
Q_PROPERTY
(
QString
donateUrl
MEMBER
m_donateUrl
NOTIFY
donateUrlChanged
FINAL
)
Q_PROPERTY
(
bool
isNextEnabled
MEMBER
m_isNextEnabled
NOTIFY
isNextEnabledChanged
FINAL
)
public:
Config
(
QObject
*
parent
=
nullptr
);
void
setCountryCode
(
const
QString
&
countryCode
);
void
setLanguageIcon
(
const
QString
&
languageIcon
);
RequirementsModel
&
requirementsModel
()
const
;
void
setCountryCode
(
const
QString
&
countryCode
);
void
setLanguageIcon
(
const
QString
&
languageIcon
);
RequirementsModel
&
requirementsModel
()
const
;
void
setIsNextEnabled
(
const
bool
&
isNextEnabled
);
void
setLocaleIndex
(
const
int
&
index
);
void
setLocaleIndex
(
const
int
&
index
);
int
localeIndex
()
const
{
return
m_localeIndex
;
}
QString
supportUrl
()
const
;
void
setSupportUrl
(
const
QString
&
url
);
void
setSupportUrl
(
const
QString
&
url
);
QString
knownIssuesUrl
()
const
;
void
setKnownIssuesUrl
(
const
QString
&
url
);
void
setKnownIssuesUrl
(
const
QString
&
url
);
QString
releaseNotesUrl
()
const
;
void
setReleaseNotesUrl
(
const
QString
&
url
);
void
setReleaseNotesUrl
(
const
QString
&
url
);
QString
donateUrl
()
const
;
void
setDonateUrl
(
const
QString
&
url
);
void
setDonateUrl
(
const
QString
&
url
);
QString
genericWelcomeMessage
();
public
slots
:
CalamaresUtils
::
Locale
::
LabelModel
*
languagesModel
()
const
;
...
...
@@ -144,9 +148,7 @@ private:
bool
m_isNextEnabled
=
false
;
CalamaresUtils
::
Locale
::
LabelModel
*
m_languages
;
QString
m_genericWelcomeMessage
=
tr
(
"This program will ask you some questions and set up your installation"
);
QString
m_warningMessage
=
tr
(
"This program does not satisfy the minimum requirements for installing.
\n
Installation can not continue"
);
QString
m_genericWelcomeMessage
;
QString
m_supportUrl
;
QString
m_knownIssuesUrl
;
...
...
@@ -158,6 +160,10 @@ signals:
void
localeIndexChanged
(
int
localeIndex
);
void
isNextEnabledChanged
(
bool
isNextEnabled
);
void
genericWelcomeMessageChanged
();
void
supportUrlChanged
();
void
knownIssuesUrlChanged
();
void
releaseNotesUrlChanged
();
void
donateUrlChanged
();
};
#endif
src/modules/welcome/WelcomePage.cpp
View file @
de5c97af
...
...
@@ -25,9 +25,9 @@
#include "Branding.h"
#include "CalamaresVersion.h"
#include "Config.h"
#include "Settings.h"
#include "ViewManager.h"
#include "Config.h"
#include "locale/LabelModel.h"
#include "modulesystem/ModuleManager.h"
...
...
@@ -44,7 +44,7 @@
#include <QLabel>
#include <QMessageBox>
WelcomePage
::
WelcomePage
(
Config
*
conf
,
QWidget
*
parent
)
WelcomePage
::
WelcomePage
(
Config
*
conf
,
QWidget
*
parent
)
:
QWidget
(
parent
)
,
ui
(
new
Ui
::
WelcomePage
)
,
m_checkingWidget
(
new
CheckerContainer
(
conf
->
requirementsModel
(),
this
)
)
...
...
@@ -84,13 +84,14 @@ WelcomePage::WelcomePage( Config *conf, QWidget* parent )
ui
->
verticalLayout
->
insertWidget
(
welcome_text_idx
+
1
,
m_checkingWidget
);
}
void
WelcomePage
::
init
()
void
WelcomePage
::
init
()
{
//setup the url buttons
setupButton
(
WelcomePage
::
Button
::
Support
,
m_conf
->
supportUrl
());
setupButton
(
WelcomePage
::
Button
::
Support
,
m_conf
->
supportUrl
()
);
setupButton
(
WelcomePage
::
Button
::
KnownIssues
,
m_conf
->
knownIssuesUrl
()
);
setupButton
(
WelcomePage
::
Button
::
ReleaseNotes
,
m_conf
->
releaseNotesUrl
()
);
setupButton
(
WelcomePage
::
Button
::
Donate
,
m_conf
->
donateUrl
());
setupButton
(
WelcomePage
::
Button
::
Donate
,
m_conf
->
donateUrl
()
);
//language icon
auto
icon
=
Calamares
::
Branding
::
instance
()
->
image
(
m_conf
->
languageIcon
(),
QSize
(
48
,
48
)
);
...
...
@@ -113,7 +114,9 @@ WelcomePage::initLanguages()
ui
->
languageWidget
->
setCurrentIndex
(
m_conf
->
localeIndex
()
);
connect
(
ui
->
languageWidget
,
static_cast
<
void
(
QComboBox
::*
)(
int
)
>
(
&
QComboBox
::
currentIndexChanged
),
m_conf
,
&
Config
::
setLocaleIndex
);
static_cast
<
void
(
QComboBox
::*
)(
int
)
>
(
&
QComboBox
::
currentIndexChanged
),
m_conf
,
&
Config
::
setLocaleIndex
);
}
void
...
...
src/modules/welcome/WelcomePage.h
View file @
de5c97af
...
...
@@ -36,7 +36,7 @@ class WelcomePage : public QWidget
{
Q_OBJECT
public:
explicit
WelcomePage
(
Config
*
conf
,
QWidget
*
parent
=
nullptr
);
explicit
WelcomePage
(
Config
*
conf
,
QWidget
*
parent
=
nullptr
);
enum
class
Button
{
...
...
@@ -75,7 +75,7 @@ private:
CheckerContainer
*
m_checkingWidget
;
CalamaresUtils
::
Locale
::
LabelModel
*
m_languages
;
Config
*
m_conf
;
Config
*
m_conf
;
};
/** @brief Delegate to display language information in two columns.
...
...
src/modules/welcome/WelcomeViewStep.cpp
View file @
de5c97af
...
...
@@ -18,92 +18,91 @@
*/
#include "WelcomeViewStep.h"
#include "Config.h"
#include "Config.h"
#include "WelcomePage.h"
#include "checker/GeneralRequirements.h"
#include "Branding.h"
#include "geoip/Handler.h"
#include "locale/Lookup.h"
#include "modulesystem/ModuleManager.h"
#include "utils/Logger.h"
#include "utils/Variant.h"
#include "Branding.h"
#include "modulesystem/ModuleManager.h"
#include <QFutureWatcher>
#include <QVariant>
CALAMARES_PLUGIN_FACTORY_DEFINITION
(
WelcomeViewStepFactory
,
registerPlugin
<
WelcomeViewStep
>
();
)