Material: Use predefined palettes
At some later point we might want to make the palettes settable, so the user can define his own palettes.
This commit is contained in:
parent
d1fb1e71cb
commit
6281a6afe0
@ -48,6 +48,14 @@ namespace
|
|||||||
QskMaterialSkinFactory::QskMaterialSkinFactory( QObject* parent )
|
QskMaterialSkinFactory::QskMaterialSkinFactory( QObject* parent )
|
||||||
: QskSkinFactory( parent )
|
: QskSkinFactory( parent )
|
||||||
{
|
{
|
||||||
|
using Q = QskRgbPalette;
|
||||||
|
|
||||||
|
m_palettes[ Primary ] = Q::palette( Q::DefaultMaterialPrimary );
|
||||||
|
m_palettes[ Secondary ] = Q::palette( Q::DefaultMaterialSecondary );
|
||||||
|
m_palettes[ Tertiary ] = Q::palette( Q::DefaultMaterialTertiary );
|
||||||
|
m_palettes[ Error ] = Q::palette( Q::DefaultMaterialError );
|
||||||
|
m_palettes[ Neutral ] = Q::palette( Q::DefaultMaterialNeutral );
|
||||||
|
m_palettes[ NeutralVariant ] = Q::palette( Q::DefaultMaterialNeutralVariant );
|
||||||
}
|
}
|
||||||
|
|
||||||
QskMaterialSkinFactory::~QskMaterialSkinFactory()
|
QskMaterialSkinFactory::~QskMaterialSkinFactory()
|
||||||
@ -63,9 +71,11 @@ QskSkin* QskMaterialSkinFactory::createSkin( const QString& skinName )
|
|||||||
{
|
{
|
||||||
if ( QString::compare( skinName, materialLightSkinName, Qt::CaseInsensitive ) == 0 )
|
if ( QString::compare( skinName, materialLightSkinName, Qt::CaseInsensitive ) == 0 )
|
||||||
{
|
{
|
||||||
QskMaterialPalette pal( QskMaterialPalette::Light );;
|
QskMaterialPalette pal( QskMaterialPalette::Light );
|
||||||
|
|
||||||
pal.primary = 0xff6200ee;
|
using Q = QskRgbPalette;
|
||||||
|
|
||||||
|
pal.primary = m_palettes[ Primary ].rgb( Q::W40 );
|
||||||
pal.primaryVariant = 0xff3700b3;
|
pal.primaryVariant = 0xff3700b3;
|
||||||
pal.onPrimary = QskRgb::White;
|
pal.onPrimary = QskRgb::White;
|
||||||
pal.secondary = 0xff03dac6;
|
pal.secondary = 0xff03dac6;
|
||||||
|
@ -7,6 +7,7 @@
|
|||||||
#define QSK_MATERIAL_SKIN_FACTORY_H
|
#define QSK_MATERIAL_SKIN_FACTORY_H
|
||||||
|
|
||||||
#include "QskMaterialGlobal.h"
|
#include "QskMaterialGlobal.h"
|
||||||
|
#include <QskRgbPalette.h>
|
||||||
#include <QskSkinFactory.h>
|
#include <QskSkinFactory.h>
|
||||||
|
|
||||||
class QSK_MATERIAL_EXPORT QskMaterialSkinFactory : public QskSkinFactory
|
class QSK_MATERIAL_EXPORT QskMaterialSkinFactory : public QskSkinFactory
|
||||||
@ -20,8 +21,23 @@ class QSK_MATERIAL_EXPORT QskMaterialSkinFactory : public QskSkinFactory
|
|||||||
QskMaterialSkinFactory( QObject* parent = nullptr );
|
QskMaterialSkinFactory( QObject* parent = nullptr );
|
||||||
~QskMaterialSkinFactory() override;
|
~QskMaterialSkinFactory() override;
|
||||||
|
|
||||||
|
enum PaletteType
|
||||||
|
{
|
||||||
|
Primary,
|
||||||
|
Secondary,
|
||||||
|
Tertiary,
|
||||||
|
Error,
|
||||||
|
Neutral,
|
||||||
|
NeutralVariant,
|
||||||
|
|
||||||
|
NumPaletteTypes
|
||||||
|
};
|
||||||
|
|
||||||
QStringList skinNames() const override;
|
QStringList skinNames() const override;
|
||||||
QskSkin* createSkin( const QString& skinName ) override;
|
QskSkin* createSkin( const QString& skinName ) override;
|
||||||
|
|
||||||
|
private:
|
||||||
|
QskRgbPalette m_palettes[ NumPaletteTypes ];
|
||||||
};
|
};
|
||||||
|
|
||||||
#endif
|
#endif
|
||||||
|
Loading…
x
Reference in New Issue
Block a user