From 107a383bb4c1e7065dd3884733832e142cfda65f Mon Sep 17 00:00:00 2001 From: reuk Date: Thu, 5 Sep 2024 16:04:03 +0100 Subject: [PATCH] UnicodeLine: Use SBCodepointGetGeneralCategory for category analysis --- modules/juce_graphics/unicode/juce_UnicodeBidi.cpp | 2 +- modules/juce_graphics/unicode/juce_UnicodeLine.cpp | 4 +++- modules/juce_graphics/unicode/juce_UnicodeUtils.cpp | 4 ++-- 3 files changed, 6 insertions(+), 4 deletions(-) diff --git a/modules/juce_graphics/unicode/juce_UnicodeBidi.cpp b/modules/juce_graphics/unicode/juce_UnicodeBidi.cpp index f98392b332..145644eccf 100644 --- a/modules/juce_graphics/unicode/juce_UnicodeBidi.cpp +++ b/modules/juce_graphics/unicode/juce_UnicodeBidi.cpp @@ -370,7 +370,7 @@ public: const auto level = point.embeddingLevel; const auto isEven = ! isOdd (level); - if (point.getGeneralCategory() != GeneralCategory::pc) + if (point.getGeneralCategory() != SBGeneralCategoryPC) { JUCE_BEGIN_IGNORE_WARNINGS_GCC_LIKE ("-Wswitch-enum") switch (point.getBidiType()) diff --git a/modules/juce_graphics/unicode/juce_UnicodeLine.cpp b/modules/juce_graphics/unicode/juce_UnicodeLine.cpp index 42efe1aedc..f5188dc6e3 100644 --- a/modules/juce_graphics/unicode/juce_UnicodeLine.cpp +++ b/modules/juce_graphics/unicode/juce_UnicodeLine.cpp @@ -239,7 +239,9 @@ private: return LineBreakType::ns; case LineBreakType::sa: - return contains ({ GeneralCategory::mn, GeneralCategory::mc }, point.getGeneralCategory()) + return contains ({ (SBGeneralCategory) SBGeneralCategoryMN, + (SBGeneralCategory) SBGeneralCategoryMC }, + point.getGeneralCategory()) ? LineBreakType::cm : LineBreakType::al; diff --git a/modules/juce_graphics/unicode/juce_UnicodeUtils.cpp b/modules/juce_graphics/unicode/juce_UnicodeUtils.cpp index ec28ac142f..7011833f2c 100644 --- a/modules/juce_graphics/unicode/juce_UnicodeUtils.cpp +++ b/modules/juce_graphics/unicode/juce_UnicodeUtils.cpp @@ -61,9 +61,9 @@ struct UnicodeAnalysisPoint return data.bt; } - GeneralCategory getGeneralCategory() const + auto getGeneralCategory() const { - return data.generalCategory; + return SBCodepointGetGeneralCategory (character); } BidiType getBidiType() const