@ -149,9 +149,9 @@ ResultsListDialog::retranslate()
}
ResultsListWidget : : ResultsListWidget ( const Calamares : : RequirementsModel & model , QWidget * parent )
ResultsListWidget : : ResultsListWidget ( Config * config , QWidget * parent )
: QWidget ( parent )
, m_ model( model )
, m_ config( config )
{
setSizePolicy ( QSizePolicy : : Expanding , QSizePolicy : : Expanding ) ;
@ -169,23 +169,25 @@ ResultsListWidget::ResultsListWidget( const Calamares::RequirementsModel& model,
spacerLayout - > addSpacing ( paddingSize ) ;
CalamaresUtils : : unmarginLayout ( spacerLayout ) ;
m_explanation = new QLabel ;
m_explanation - > setWordWrap ( true ) ;
m_explanation - > setSizePolicy ( QSizePolicy : : Expanding , QSizePolicy : : Preferred ) ;
m_explanation - > setOpenExternalLinks ( false ) ;
m_explanation - > setObjectName ( " resultsExplanation " ) ;
connect ( m_explanation , & QLabel : : linkActivated , this , & ResultsListWidget : : linkClicked ) ;
entriesLayout - > addWidget ( m_explanation ) ;
auto * explanation = new QLabel ;
explanation - > setWordWrap ( true ) ;
explanation - > setSizePolicy ( QSizePolicy : : Expanding , QSizePolicy : : Preferred ) ;
explanation - > setOpenExternalLinks ( false ) ;
explanation - > setObjectName ( " resultsExplanation " ) ;
connect ( explanation , & QLabel : : linkActivated , this , & ResultsListWidget : : linkClicked ) ;
entriesLayout - > addWidget ( explanation ) ;
connect ( config , & Config : : warningMessageChanged , explanation , & QLabel : : setText ) ;
// Check that all are satisfied (gives warnings if not) and
// all *mandatory* entries are satisfied (gives errors if not).
const bool requirementsSatisfied = m_model. satisfiedRequirements ( ) ;
const bool requirementsSatisfied = config- > requirementsModel ( ) - > satisfiedRequirements ( ) ;
auto isUnSatisfied = [ ] ( const Calamares : : RequirementsModel & m , QModelIndex i ) {
return ! m . data ( i , Calamares : : RequirementsModel : : Satisfied ) . toBool ( ) ;
} ;
createResultWidgets ( entriesLayout , m_resultWidgets , model, isUnSatisfied ) ;
createResultWidgets ( entriesLayout , m_resultWidgets , * ( config- > require mentsM odel( ) ) , isUnSatisfied ) ;
if ( ! requirementsSatisfied )
{
@ -220,7 +222,7 @@ ResultsListWidget::ResultsListWidget( const Calamares::RequirementsModel& model,
mainLayout - > addWidget ( imageLabel ) ;
}
}
m_ explanation- > setAlignment ( Qt : : AlignCenter ) ;
explanation- > setAlignment ( Qt : : AlignCenter ) ;
}
CALAMARES_RETRANSLATE_SLOT ( & ResultsListWidget : : retranslate ) ;
@ -233,7 +235,7 @@ ResultsListWidget::linkClicked( const QString& link )
{
if ( link = = " #details " )
{
auto * dialog = new ResultsListDialog ( m_ model, this ) ;
auto * dialog = new ResultsListDialog ( * ( m_ config- > require mentsM odel( ) ) , this ) ;
dialog - > exec ( ) ;
dialog - > deleteLater ( ) ;
}
@ -242,52 +244,15 @@ ResultsListWidget::linkClicked( const QString& link )
void
ResultsListWidget : : retranslate ( )
{
for ( auto i = 0 ; i < m_model . count ( ) ; i + + )
const auto & model = * ( m_config - > requirementsModel ( ) ) ;
for ( auto i = 0 ; i < model . count ( ) ; i + + )
{
if ( m_resultWidgets [ i ] )
{
m_resultWidgets [ i ] - > setText (
m _m odel. data ( m_ model. index ( i ) , Calamares : : RequirementsModel : : NegatedText ) . toString ( ) ) ;
m odel. data ( model. index ( i ) , Calamares : : RequirementsModel : : NegatedText ) . toString ( ) ) ;
}
}
// Check that all are satisfied (gives warnings if not) and
// all *mandatory* entries are satisfied (gives errors if not).
if ( ! m_model . satisfiedRequirements ( ) )
{
QString message ;
const bool setup = Calamares : : Settings : : instance ( ) - > isSetupMode ( ) ;
if ( ! m_model . 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_explanation - > setText ( message . arg ( Calamares : : Branding : : instance ( ) - > shortVersionedName ( ) ) ) ;
}
else
{
m_explanation - > setText ( tr ( " This program will ask you some questions and "
" set up %2 on your computer. " )
. arg ( Calamares : : Branding : : instance ( ) - > productName ( ) ) ) ;
}
}
# include "utils/moc-warnings.h"