[Scummvm-git-logs] scummvm master -> 58a9aa6a2c861c7b986553e434b0525ec1d20522
bluegr
noreply at scummvm.org
Thu Nov 28 23:14:39 UTC 2024
This automated email contains information about 1 new commit which have been
pushed to the 'scummvm' repo located at https://github.com/scummvm/scummvm .
Summary:
58a9aa6a2c COMMON: Deprecate U32String constructors that accept a uint32 array
Commit: 58a9aa6a2c861c7b986553e434b0525ec1d20522
https://github.com/scummvm/scummvm/commit/58a9aa6a2c861c7b986553e434b0525ec1d20522
Author: Cameron Cawley (ccawley2011 at gmail.com)
Date: 2024-11-29T01:14:36+02:00
Commit Message:
COMMON: Deprecate U32String constructors that accept a uint32 array
Changed paths:
backends/platform/sdl/macosx/macosx_osys_misc.mm
common/dbcs-str.h
common/unicode-bidi.cpp
common/ustr.h
engines/cryomni3d/versailles/logic.cpp
engines/mtropolis/modifiers.cpp
engines/pink/gui.cpp
graphics/macgui/macmenu.cpp
gui/widgets/list.cpp
diff --git a/backends/platform/sdl/macosx/macosx_osys_misc.mm b/backends/platform/sdl/macosx/macosx_osys_misc.mm
index c44388829e2..3e29a09fde6 100644
--- a/backends/platform/sdl/macosx/macosx_osys_misc.mm
+++ b/backends/platform/sdl/macosx/macosx_osys_misc.mm
@@ -149,7 +149,7 @@ Common::U32String OSystem_MacOSX::getTextFromClipboard() {
NSStringEncoding stringEncoding = NSUTF32BigEndianStringEncoding;
#endif
NSUInteger textLength = [str length];
- uint32 *text = new uint32[textLength];
+ Common::u32char_type_t *text = new Common::u32char_type_t[textLength];
if (![str getBytes:text maxLength:4*textLength usedLength:NULL encoding: stringEncoding options:0 range:NSMakeRange(0, textLength) remainingRange:NULL]) {
delete[] text;
return Common::U32String();
diff --git a/common/dbcs-str.h b/common/dbcs-str.h
index b75800ef8cb..8e185dc3095 100644
--- a/common/dbcs-str.h
+++ b/common/dbcs-str.h
@@ -51,10 +51,6 @@ public:
/** Construct a new string containing exactly @p len characters read from address @p str. */
DBCSString(const value_type *str, uint32 len) : BaseString<uint16>(str, len) {}
- explicit DBCSString(const uint32 *str) : BaseString<uint16>((const value_type *) str) {}
- DBCSString(const uint32 *str, uint32 len) : BaseString<uint16>((const value_type *) str, len) {}
- DBCSString(const uint32 *beginP, const uint32 *endP) : BaseString<uint16>((const value_type *) beginP, (const value_type *) endP) {}
-
/** Construct a new string containing the characters between @p beginP (including) and @p endP (excluding). */
DBCSString(const value_type *beginP, const value_type *endP) : BaseString<uint16>(beginP, endP) {}
diff --git a/common/unicode-bidi.cpp b/common/unicode-bidi.cpp
index bc422bea7a8..1c4a2531526 100644
--- a/common/unicode-bidi.cpp
+++ b/common/unicode-bidi.cpp
@@ -104,7 +104,7 @@ void UnicodeBiDiText::initWithU32String(const U32String &input) {
_log_to_vis_index = nullptr;
_vis_to_log_index = nullptr;
} else {
- visual = U32String((uint32 *)visual_str, input.size());
+ visual = U32String((Common::u32char_type_t *)visual_str, input.size());
delete[] visual_str;
}
_pbase_dir = pbase_dir;
diff --git a/common/ustr.h b/common/ustr.h
index 977d2d7858b..bb77251fb48 100644
--- a/common/ustr.h
+++ b/common/ustr.h
@@ -67,8 +67,11 @@ public:
/** Construct a new string containing exactly @p len characters read from address @p str. */
U32String(const value_type *str, uint32 len) : BaseString<u32char_type_t>(str, len) {}
+ WARN_DEPRECATED("Use u32char_type_t instead of uint32")
explicit U32String(const uint32 *str) : BaseString<u32char_type_t>((const value_type *) str) {}
+ WARN_DEPRECATED("Use u32char_type_t instead of uint32")
U32String(const uint32 *str, uint32 len) : BaseString<u32char_type_t>((const value_type *) str, len) {}
+ WARN_DEPRECATED("Use u32char_type_t instead of uint32")
U32String(const uint32 *beginP, const uint32 *endP) : BaseString<u32char_type_t>((const value_type *) beginP, (const value_type *) endP) {}
/** Construct a new string containing the characters between @p beginP (including) and @p endP (excluding). */
@@ -165,6 +168,7 @@ public:
/** Return a substring of this string */
U32String substr(size_t pos = 0, size_t len = npos) const;
+ WARN_DEPRECATED("Use c_str() instead")
const uint32 *u32_str() const { /*!< Return the string as a UTF-32 pointer. */
return (const uint32 *) _str;
}
diff --git a/engines/cryomni3d/versailles/logic.cpp b/engines/cryomni3d/versailles/logic.cpp
index 45fb610e79a..e2c1c5a43bd 100644
--- a/engines/cryomni3d/versailles/logic.cpp
+++ b/engines/cryomni3d/versailles/logic.cpp
@@ -3224,7 +3224,7 @@ void CryOmni3DEngine_Versailles::drawBombLetters(Graphics::ManagedSurface &surfa
surface.fillRect(rct, 239);
uint32 letter = bombPossibilites[i][bombCurrentLetters[i]];
- Common::U32String str(&letter, 1);
+ Common::U32String str(letter);
_fontManager.displayStr(rct.left + (34 - _fontManager.getStrWidth(str)) / 2,
rct.top + 5, str);
diff --git a/engines/mtropolis/modifiers.cpp b/engines/mtropolis/modifiers.cpp
index e1799f25393..48f388fae69 100644
--- a/engines/mtropolis/modifiers.cpp
+++ b/engines/mtropolis/modifiers.cpp
@@ -2439,7 +2439,7 @@ bool KeyboardMessengerModifier::checkKeyEventTrigger(Runtime *runtime, Common::E
if (keyEvt.ascii != 0) {
bool isQuestion = (keyEvt.ascii == '?');
uint32 uchar = keyEvt.ascii;
- Common::U32String u(&uchar, 1);
+ Common::U32String u(uchar);
outCharStr = u.encode(Common::kMacRoman);
// STUPID HACK PLEASE FIX ME: ScummVM has no way of just telling us that the character mapping failed,
diff --git a/engines/pink/gui.cpp b/engines/pink/gui.cpp
index 2fc1abad001..ba6ca85246b 100644
--- a/engines/pink/gui.cpp
+++ b/engines/pink/gui.cpp
@@ -196,7 +196,7 @@ void PinkEngine::initMenu() {
_menu->removeMenuItem(subMenu, kRecentSaveId);
int maxSaves = saves.size() > kMaxSaves ? kMaxSaves : saves.size();
for (int i = 0; i < maxSaves; ++i) {
- _menu->insertMenuItem(subMenu, Common::U32String::format("%i. %S", i + 1, saves[i].getDescription().u32_str()),
+ _menu->insertMenuItem(subMenu, Common::U32String::format("%i. %S", i + 1, saves[i].getDescription().c_str()),
kRecentSaveId + i, saves[i].getSaveSlot() + kRecentSavesOffset);
}
}
diff --git a/graphics/macgui/macmenu.cpp b/graphics/macgui/macmenu.cpp
index 4c802b27157..af154562fd1 100644
--- a/graphics/macgui/macmenu.cpp
+++ b/graphics/macgui/macmenu.cpp
@@ -183,12 +183,12 @@ Common::StringArray *MacMenu::readMenuFromResource(Common::SeekableReadStream *r
}
static Common::U32String readUnicodeString(Common::SeekableReadStream *stream) {
- Common::Array<uint32> strData;
+ Common::U32String strData;
uint16 wchar;
while ((wchar = stream->readUint16LE()) != '\0') {
- strData.push_back(wchar);
+ strData += wchar;
}
- return strData.empty() ? Common::U32String() : Common::U32String(strData.data(), strData.size());
+ return strData;
}
void MacMenu::setAlignment(Graphics::TextAlign align) {
diff --git a/gui/widgets/list.cpp b/gui/widgets/list.cpp
index 20598e41332..f8b99fb434e 100644
--- a/gui/widgets/list.cpp
+++ b/gui/widgets/list.cpp
@@ -845,7 +845,7 @@ ThemeEngine::FontColor ListWidget::getThemeColor(const Common::U32String &color)
Common::U32String ListWidget::stripGUIformatting(const Common::U32String &str) {
Common::U32String stripped;
- const uint32 *s = str.u32_str();
+ const Common::u32char_type_t *s = str.c_str();
while (*s) {
if (*s != '\001') { // normal symbol
@@ -878,7 +878,7 @@ Common::U32String ListWidget::stripGUIformatting(const Common::U32String &str) {
Common::U32String ListWidget::escapeString(const Common::U32String &str) {
Common::U32String escaped;
- const uint32 *s = str.u32_str();
+ const Common::u32char_type_t *s = str.c_str();
while (*s) {
if (*s == '\001')
@@ -893,7 +893,7 @@ void ListWidget::drawFormattedText(const Common::Rect &r, const Common::U32Strin
Graphics::TextAlign align, ThemeEngine::TextInversionState inverted, int deltax, bool useEllipsis,
ThemeEngine::FontColor color) {
Common::U32String chunk;
- const uint32 *s = str.u32_str();
+ const Common::u32char_type_t *s = str.c_str();
ThemeEngine::FontStyle curfont = ThemeEngine::kFontStyleBold;
ThemeEngine::FontColor curcolor = ThemeEngine::kFontColorNormal;
Common::U32String tmp;
More information about the Scummvm-git-logs
mailing list