(Font) Added notification on atlas change
Will only clear glyphes when setting differents parameters Former-commit-id: b16a289742c0f23fa5066d3c52ce35b4abc626c6
This commit is contained in:
parent
cd5399459d
commit
77347c8582
|
|
@ -79,6 +79,7 @@ class NAZARA_API NzFont : public NzResource, NzAbstractAtlas::Listener, NzNonCop
|
||||||
|
|
||||||
enum ModicationCode
|
enum ModicationCode
|
||||||
{
|
{
|
||||||
|
ModificationCode_AtlasChanged,
|
||||||
ModificationCode_GlyphCacheCleared,
|
ModificationCode_GlyphCacheCleared,
|
||||||
ModificationCode_KerningCacheCleared,
|
ModificationCode_KerningCacheCleared,
|
||||||
ModificationCode_SizeInfoCacheCleared
|
ModificationCode_SizeInfoCacheCleared
|
||||||
|
|
|
||||||
|
|
@ -276,20 +276,28 @@ bool NzFont::OpenFromStream(NzInputStream& stream, const NzFontParams& params)
|
||||||
|
|
||||||
void NzFont::SetAtlas(std::shared_ptr<NzAbstractAtlas> atlas)
|
void NzFont::SetAtlas(std::shared_ptr<NzAbstractAtlas> atlas)
|
||||||
{
|
{
|
||||||
ClearGlyphCache();
|
if (m_atlas != atlas)
|
||||||
|
{
|
||||||
|
ClearGlyphCache();
|
||||||
|
|
||||||
if (m_atlas)
|
if (m_atlas)
|
||||||
m_atlas->RemoveListener(this);
|
m_atlas->RemoveListener(this);
|
||||||
|
|
||||||
m_atlas = atlas;
|
m_atlas = atlas;
|
||||||
if (m_atlas)
|
if (m_atlas)
|
||||||
m_atlas->AddListener(this);
|
m_atlas->AddListener(this);
|
||||||
|
|
||||||
|
NotifyModified(ModificationCode_AtlasChanged);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
void NzFont::SetGlyphBorder(unsigned int borderSize)
|
void NzFont::SetGlyphBorder(unsigned int borderSize)
|
||||||
{
|
{
|
||||||
m_glyphBorder = borderSize;
|
if (m_glyphBorder != borderSize)
|
||||||
ClearGlyphCache();
|
{
|
||||||
|
m_glyphBorder = borderSize;
|
||||||
|
ClearGlyphCache();
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
void NzFont::SetMinimumStepSize(unsigned int minimumStepSize)
|
void NzFont::SetMinimumStepSize(unsigned int minimumStepSize)
|
||||||
|
|
@ -302,8 +310,11 @@ void NzFont::SetMinimumStepSize(unsigned int minimumStepSize)
|
||||||
}
|
}
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
m_minimumSizeStep = minimumStepSize;
|
if (m_minimumSizeStep != minimumStepSize)
|
||||||
ClearGlyphCache();
|
{
|
||||||
|
m_minimumSizeStep = minimumStepSize;
|
||||||
|
ClearGlyphCache();
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
nzUInt64 NzFont::ComputeKey(unsigned int characterSize, nzUInt32 style) const
|
nzUInt64 NzFont::ComputeKey(unsigned int characterSize, nzUInt32 style) const
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue