9#include <ilog/TLoggerCompWrap.h>
10#include <ifile/IFileNameParam.h>
13#include <imtbase/CCollectionInfo.h>
14#include <imtdesign/IDesignTokenFileParser.h>
21class CDesignTokenFileParserComp:
22 public ilog::CLoggerComponentBase,
23 public IDesignTokenFileParser
26 typedef ilog::CLoggerComponentBase BaseClass;
28 I_BEGIN_COMPONENT(CDesignTokenFileParserComp);
29 I_REGISTER_INTERFACE(IDesignTokenFileParser);
33 virtual bool ParseFile()
override;
34 virtual bool SplitFile(
const QString& outputDirPath,
const QString& projectName)
override;
35 virtual bool SetFile(
const QByteArray& filePath)
override;
36 virtual QByteArray GetRawColor(
const QByteArray& styleName, QPalette::ColorGroup group, QPalette::ColorRole role)
const override;
37 virtual bool GetStyleSheetColorPalette(
const QByteArray& designSchemaId, QVariantMap& palette)
const override;
38 virtual bool GetBasePalette(
const QByteArray& designSchemaId, QVariantMap& palette)
const override;
39 virtual QByteArrayList GetTemplateIconColorList(
const QByteArray& styleName)
const override;
40 virtual QByteArray GetIconColor(
const QByteArray& styleName, IconState iconState,
const QByteArray& templateColor)
const override;
44 virtual bool GetColorPalette(
const QByteArray& designSchemaId, ColorSchema& palette)
const override;
48 virtual bool GetFont(
const QByteArray& designSchemaId,
const QByteArray& fontId, QFont& font)
const override;
51 static void ReplaceColorNames(QJsonObject& json,
const QVariantMap& variableMaps);
52 static void ReplaceColorNamesRecursive(QJsonObject& json,
const QVariantMap& variableMaps);
55 I_REF(ifile::IFileNameParam, m_designTokenFilePathAttrPtr);
58 QByteArrayList m_templateIconColorList;
59 QFileInfo m_designTokenFileInfo;
63 QMap<QString, QVariantMap> m_stylesPalettes;
64 QMap<QString, QVariantMap> m_stylesBasePalettes;
65 QMap<QString, ColorSchema> m_colorPalettes;
67 QMap<QString, istd::TSmartPtr<imtbase::ICollectionInfo>> m_fontsCollectionInfos;
68 QMap<QString, QMap<QByteArray, QFont>> m_fonts;
72 IconColor(
const QByteArray& aColor = QByteArray(),
73 const QByteArray& aStyle = QByteArray(),
74 const QVariantMap& aColorList = QVariantMap())
78 colorList = aColorList;
82 QVariantMap colorList;
83 bool operator==(
const IconColor& other)
const
85 return color == other.color && style == other.style && colorList == other.colorList;
88 QList<IconColor> m_iconColors;
92 RawColor(QPalette::ColorGroup group, QPalette::ColorRole role,
const QByteArray& value)
98 QPalette::ColorGroup group;
99 QPalette::ColorRole role;
102 QMultiMap<QByteArray, RawColor> m_styleSheetColors;