diff options
| author | Georg Gadinger <nilsding@nilsding.org> | 2021-05-09 21:08:04 +0200 |
|---|---|---|
| committer | Georg Gadinger <nilsding@nilsding.org> | 2021-11-26 21:01:42 +0100 |
| commit | 816780e80943ef0ae6e645c1f912a5575fca9770 (patch) | |
| tree | 7521c95b449c0dd73dca0c89c560165fc544d8f9 /src/plugins/Ui/skinned/skin.cpp | |
| parent | 596e820fa0e8bca3c53a00481c34ac6f047160ee (diff) | |
| download | qmmp-patches.tar.gz qmmp-patches.tar.bz2 qmmp-patches.zip | |
This makes tracks from e.g. "Turmion Kätilöt" or "Die Ärzte" display
using the bitmap font. Since the characters seem to be UTF-8 anyway, it
seems to be fine in my initial tests...
Diffstat (limited to 'src/plugins/Ui/skinned/skin.cpp')
| -rw-r--r-- | src/plugins/Ui/skinned/skin.cpp | 15 |
1 files changed, 15 insertions, 0 deletions
diff --git a/src/plugins/Ui/skinned/skin.cpp b/src/plugins/Ui/skinned/skin.cpp index f1b6f8b79..425a34d45 100644 --- a/src/plugins/Ui/skinned/skin.cpp +++ b/src/plugins/Ui/skinned/skin.cpp @@ -185,6 +185,12 @@ const QRegion Skin::getRegion(uint r) const return m_regions[r]; } +const bool Skin::canUseBitmapFont(const QString& s) const +{ + qDebug("Skin: canUseBitmapFont %s", m_bitmapLetters.exactMatch(s) ? "true" : "false"); + return m_bitmapLetters.exactMatch(s); +} + void Skin::setSkin (const QString& path) { QSettings settings(Qmmp::configFile(), QSettings::IniFormat); @@ -795,6 +801,15 @@ void Skin::loadLetters(void) /* text background */ //m_items->insert (TEXTBG, letters[2][6]); + + // set up a regexp that matches all letters with a mapping + QStringList regexpChars; + for (auto &ch : m_letters.keys()) + { + regexpChars.append(ch); + } + m_bitmapLetters = QRegExp("[" + QRegExp::escape(regexpChars.join("")) + "]+"); + m_bitmapLetters.setCaseSensitivity(Qt::CaseSensitivity::CaseInsensitive); } void Skin::loadMonoSter() |
