mirror of
https://github.com/parchlinux/calamares.git
synced 2025-02-25 11:25:48 -05:00
[libcalamaresui] Check for typo's in branding keys
This commit is contained in:
parent
7356961f52
commit
2c07463ac6
1 changed files with 33 additions and 2 deletions
|
@ -95,6 +95,36 @@ const QStringList Branding::s_uploadServerStrings =
|
||||||
// clang-format on
|
// clang-format on
|
||||||
// *INDENT-ON*
|
// *INDENT-ON*
|
||||||
|
|
||||||
|
/** @brief Check that all the entries in the @p style map make sense
|
||||||
|
*
|
||||||
|
* This will catch typo's in key names.
|
||||||
|
*/
|
||||||
|
static bool
|
||||||
|
validateStyleEntries( const QMap< QString, QString >& style )
|
||||||
|
{
|
||||||
|
using SE = Branding::StyleEntry;
|
||||||
|
|
||||||
|
Logger::Once o;
|
||||||
|
bool valid = true;
|
||||||
|
|
||||||
|
const auto meta = QMetaEnum::fromType< SE >();
|
||||||
|
QSet< QString > validNames;
|
||||||
|
for ( SE i : { SE::SidebarBackground, SE::SidebarBackgroundCurrent, SE::SidebarText, SE::SidebarTextCurrent } )
|
||||||
|
{
|
||||||
|
validNames.insert( meta.valueToKey( i ) );
|
||||||
|
}
|
||||||
|
|
||||||
|
for ( const auto& k : style.keys() )
|
||||||
|
{
|
||||||
|
if ( !validNames.contains( k ) )
|
||||||
|
{
|
||||||
|
cWarning() << o << "Unknown branding *style* entry" << k;
|
||||||
|
valid = false;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
return valid;
|
||||||
|
}
|
||||||
|
|
||||||
const NamedEnumTable< Branding::WindowDimensionUnit >&
|
const NamedEnumTable< Branding::WindowDimensionUnit >&
|
||||||
Branding::WindowDimension::suffixes()
|
Branding::WindowDimension::suffixes()
|
||||||
|
@ -289,6 +319,7 @@ Branding::Branding( const QString& brandingFilePath, QObject* parent )
|
||||||
{
|
{
|
||||||
cDebug() << "Loaded branding component" << m_componentName;
|
cDebug() << "Loaded branding component" << m_componentName;
|
||||||
}
|
}
|
||||||
|
validateStyleEntries( m_style );
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
@ -310,8 +341,8 @@ Branding::string( Branding::StringEntry stringEntry ) const
|
||||||
QString
|
QString
|
||||||
Branding::styleString( Branding::StyleEntry styleEntry ) const
|
Branding::styleString( Branding::StyleEntry styleEntry ) const
|
||||||
{
|
{
|
||||||
const auto meta = QMetaEnum::fromType<Branding::StyleEntry>();
|
const auto meta = QMetaEnum::fromType< Branding::StyleEntry >();
|
||||||
return meta.valueToKey(styleEntry);
|
return m_style.value( meta.valueToKey( styleEntry ) );
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
Loading…
Add table
Reference in a new issue