games/openmw: fix build against recent mygui and libc++ 19

PR:	284814
This commit is contained in:
Dimitry Andric
2025-06-12 20:16:18 +02:00
committed by Dima Panov
parent 4cf4959a6b
commit 13a36f14c8
26 changed files with 568 additions and 3 deletions
-3
View File
@@ -11,9 +11,6 @@ WWW= https://openmw.org/
LICENSE= GPLv3
LICENSE_FILE= ${WRKSRC}/LICENSE
BROKEN_FreeBSD_15_aarch64= clang crashes, see https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=276702
BROKEN_FreeBSD_15_amd64= clang crashes, see https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=276702
LIB_DEPENDS= libavcodec.so.60:multimedia/ffmpeg \
libboost_thread.so:devel/boost-libs \
libMyGUIEngine.so:x11-toolkits/mygui \
@@ -0,0 +1,13 @@
--- apps/openmw/mwgui/cursor.cpp.orig 2023-08-08 09:23:20 UTC
+++ apps/openmw/mwgui/cursor.cpp
@@ -26,8 +26,8 @@ namespace MWGui
MyGUI::xml::ElementEnumerator info = _node->getElementEnumerator();
while (info.next("Property"))
{
- const std::string& key = info->findAttribute("key");
- const std::string& value = info->findAttribute("value");
+ const auto key = info->findAttribute("key");
+ const auto value = info->findAttribute("value");
if (key == "Point")
mPoint = MyGUI::IntPoint::parse(value);
@@ -0,0 +1,11 @@
--- apps/openmw/mwgui/quickkeysmenu.cpp.orig 2023-08-08 09:23:20 UTC
+++ apps/openmw/mwgui/quickkeysmenu.cpp
@@ -534,7 +534,7 @@ namespace MWGui
break;
}
case Type_Magic:
- std::string spellId = button->getUserString("Spell");
+ std::string spellId{button->getUserString("Spell")};
key.mId = spellId;
break;
}
@@ -0,0 +1,48 @@
--- apps/openmw/mwgui/resourceskin.cpp.orig 2023-08-08 09:23:20 UTC
+++ apps/openmw/mwgui/resourceskin.cpp
@@ -9,11 +9,11 @@ namespace MWGui
void resizeSkin(MyGUI::xml::ElementPtr _node)
{
_node->setAttribute("type", "ResourceSkin");
- const std::string size = _node->findAttribute("size");
+ const auto size = _node->findAttribute("size");
if (!size.empty())
return;
- const std::string textureName = _node->findAttribute("texture");
+ const std::string textureName{_node->findAttribute("texture")};
if (textureName.empty())
return;
@@ -30,11 +30,11 @@ namespace MWGui
if (basis->getName() != "BasisSkin")
continue;
- const std::string basisSkinType = basis->findAttribute("type");
+ const auto basisSkinType = basis->findAttribute("type");
if (Misc::StringUtils::ciEqual(basisSkinType, "SimpleText"))
continue;
- const std::string offset = basis->findAttribute("offset");
+ const auto offset = basis->findAttribute("offset");
if (!offset.empty())
continue;
@@ -45,7 +45,7 @@ namespace MWGui
{
if (state->getName() == "State")
{
- const std::string stateOffset = state->findAttribute("offset");
+ const auto stateOffset = state->findAttribute("offset");
if (!stateOffset.empty())
continue;
@@ -56,7 +56,7 @@ namespace MWGui
bool hasTileSize = false;
while (property.next("Property"))
{
- const std::string key = property->findAttribute("key");
+ const auto key = property->findAttribute("key");
if (key != "TileSize")
continue;
@@ -0,0 +1,44 @@
--- apps/openmw/mwgui/settingswindow.cpp.orig 2023-08-08 09:23:20 UTC
+++ apps/openmw/mwgui/settingswindow.cpp
@@ -107,22 +107,22 @@ namespace
std::string getSettingType(MyGUI::Widget* widget)
{
- return widget->getUserString("SettingType");
+ return std::string{widget->getUserString("SettingType")};
}
std::string getSettingName(MyGUI::Widget* widget)
{
- return widget->getUserString("SettingName");
+ return std::string{widget->getUserString("SettingName")};
}
std::string getSettingCategory(MyGUI::Widget* widget)
{
- return widget->getUserString("SettingCategory");
+ return std::string{widget->getUserString("SettingCategory")};
}
std::string getSettingValueType(MyGUI::Widget* widget)
{
- return widget->getUserString("SettingValueType");
+ return std::string{widget->getUserString("SettingValueType")};
}
void getSettingMinMax(MyGUI::Widget* widget, float& min, float& max)
@@ -220,12 +220,12 @@ namespace MWGui
void SettingsWindow::updateSliderLabel(MyGUI::ScrollBar *scroller, const std::string& value)
{
- std::string labelWidgetName = scroller->getUserString("SettingLabelWidget");
+ auto labelWidgetName = scroller->getUserString("SettingLabelWidget");
if (!labelWidgetName.empty())
{
MyGUI::TextBox* textBox;
getWidget(textBox, labelWidgetName);
- std::string labelCaption = scroller->getUserString("SettingLabelCaption");
+ std::string labelCaption{scroller->getUserString("SettingLabelCaption")};
labelCaption = Misc::StringUtils::format(labelCaption, value);
textBox->setCaptionWithReplacing(labelCaption);
}
@@ -0,0 +1,38 @@
--- apps/openmw/mwgui/tooltips.cpp.orig 2023-08-08 09:23:20 UTC
+++ apps/openmw/mwgui/tooltips.cpp
@@ -168,7 +168,7 @@ namespace MWGui
return;
}
- std::string type = focus->getUserString("ToolTipType");
+ auto type = focus->getUserString("ToolTipType");
if (type == "")
{
@@ -224,7 +224,7 @@ namespace MWGui
ToolTipInfo info;
const ESM::Spell *spell =
- MWBase::Environment::get().getWorld()->getStore().get<ESM::Spell>().find(focus->getUserString("Spell"));
+ MWBase::Environment::get().getWorld()->getStore().get<ESM::Spell>().find(std::string{focus->getUserString("Spell")});
info.caption = spell->mName;
Widgets::SpellEffectList effects;
for (const ESM::ENAMstruct& spellEffect : spell->mEffects.mList)
@@ -248,7 +248,7 @@ namespace MWGui
int school = MWMechanics::getSpellSchool(spell, player);
info.text = "#{sSchool}: " + sSchoolNames[school];
}
- std::string cost = focus->getUserString("SpellCost");
+ auto cost = focus->getUserString("SpellCost");
if (cost != "" && cost != "0")
info.text += MWGui::ToolTips::getValueString(MWMechanics::calcSpellCost(*spell), "#{sCastCost}");
info.effects = effects;
@@ -262,7 +262,7 @@ namespace MWGui
tooltip->setVisible(true);
- std::map<std::string, std::string> userStrings = focus->getUserStrings();
+ auto userStrings = focus->getUserStrings();
for (auto& userStringPair : userStrings)
{
size_t underscorePos = userStringPair.first.find('_');
@@ -0,0 +1,20 @@
--- apps/openmw/mwgui/travelwindow.cpp.orig 2023-08-08 09:23:20 UTC
+++ apps/openmw/mwgui/travelwindow.cpp
@@ -144,7 +144,7 @@ namespace MWGui
void TravelWindow::onTravelButtonClick(MyGUI::Widget* _sender)
{
- std::istringstream iss(_sender->getUserString("price"));
+ std::istringstream iss(std::string{_sender->getUserString("price")});
int price;
iss >> price;
@@ -170,7 +170,7 @@ namespace MWGui
MWBase::Environment::get().getWindowManager()->fadeScreenOut(1);
ESM::Position pos = *_sender->getUserData<ESM::Position>();
- std::string cellname = _sender->getUserString("Destination");
+ std::string cellname{_sender->getUserString("Destination")};
bool interior = _sender->getUserString("interior") == "y";
if (mPtr.getCell()->isExterior())
{
@@ -0,0 +1,11 @@
--- apps/openmw/mwgui/windowmanagerimp.cpp.orig 2023-08-08 09:23:20 UTC
+++ apps/openmw/mwgui/windowmanagerimp.cpp
@@ -2148,7 +2148,7 @@ namespace MWGui
ResourceImageSetPointerFix* imgSetPointer = resource->castType<ResourceImageSetPointerFix>(false);
if (!imgSetPointer)
continue;
- std::string tex_name = imgSetPointer->getImageSet()->getIndexInfo(0,0).texture;
+ auto tex_name = imgSetPointer->getImageSet()->getIndexInfo(0,0).texture;
osg::ref_ptr<osg::Image> image = mResourceSystem->getImageManager()->getImage(tex_name);
@@ -0,0 +1,44 @@
--- components/fontloader/fontloader.cpp.orig 2023-08-08 09:23:20 UTC
+++ components/fontloader/fontloader.cpp
@@ -37,7 +37,7 @@ namespace
MyGUI::xml::ElementEnumerator propertyIterator = resourceNode->getElementEnumerator();
while (propertyIterator.next("Property"))
{
- std::string key = propertyIterator->findAttribute("key");
+ auto key = propertyIterator->findAttribute("key");
if (key == propertyName)
{
@@ -57,12 +57,12 @@ namespace
MyGUI::xml::ElementEnumerator layersIterator = root->getElementEnumerator();
while (layersIterator.next("Layer"))
{
- std::string name = layersIterator->findAttribute("name");
+ auto name = layersIterator->findAttribute("name");
if (name == "JournalBooks")
{
MyGUI::xml::ElementPtr sizeProperty = getProperty(layersIterator.current(), "Size");
- const std::string& sizeValue = sizeProperty != nullptr ? sizeProperty->findAttribute("value") : std::string();
+ auto sizeValue = sizeProperty != nullptr ? sizeProperty->findAttribute("value") : std::string_view();
if (!sizeValue.empty())
return MyGUI::IntSize::parse(sizeValue);
}
@@ -263,7 +263,7 @@ namespace Gui
bool valid = false;
if (resourceNode.next("Resource"))
{
- std::string type = resourceNode->findAttribute("type");
+ auto type = resourceNode->findAttribute("type");
valid = (type == "ResourceTrueTypeFont");
}
@@ -571,7 +571,7 @@ namespace Gui
MyGUI::xml::ElementEnumerator resourceNode = _node->getElementEnumerator();
while (resourceNode.next("Resource"))
{
- std::string type = resourceNode->findAttribute("type");
+ auto type = resourceNode->findAttribute("type");
if (Misc::StringUtils::ciEqual(type, "ResourceSkin") ||
Misc::StringUtils::ciEqual(type, "AutoSizedResourceSkin"))
@@ -0,0 +1,11 @@
--- components/myguiplatform/myguidatamanager.cpp.orig 2023-08-08 09:23:20 UTC
+++ components/myguiplatform/myguidatamanager.cpp
@@ -57,7 +57,7 @@ const MyGUI::VectorString &DataManager::getDataListNam
throw std::runtime_error("DataManager::getDataListNames is not implemented - VFS is used");
}
-const std::string &DataManager::getDataPath(const std::string &name) const
+std::string DataManager::getDataPath(const std::string &name) const
{
static std::string result;
result.clear();
@@ -0,0 +1,11 @@
--- components/myguiplatform/myguidatamanager.hpp.orig 2023-08-08 09:23:20 UTC
+++ components/myguiplatform/myguidatamanager.hpp
@@ -44,7 +44,7 @@ class DataManager : public MyGUI::DataManager (public)
@param _name Resource name.
@return Return full path to specified data.
*/
- const std::string& getDataPath(const std::string& _name) const override;
+ std::string getDataPath(const std::string& _name) const override;
private:
std::string mResourcePath;
@@ -0,0 +1,11 @@
--- components/myguiplatform/myguiloglistener.cpp.orig 2023-08-08 09:23:20 UTC
+++ components/myguiplatform/myguiloglistener.cpp
@@ -25,7 +25,7 @@ namespace osgMyGUI
mStream.flush();
}
- void CustomLogListener::log(const std::string& _section, MyGUI::LogLevel _level, const struct tm* _time, const std::string& _message, const char* _file, int _line)
+ void CustomLogListener::log(std::string_view _section, MyGUI::LogLevel _level, const struct tm* _time, std::string_view _message, std::string_view _file, int _line)
{
if (mStream.is_open())
{
@@ -0,0 +1,11 @@
--- components/myguiplatform/myguiloglistener.hpp.orig 2023-08-08 09:23:20 UTC
+++ components/myguiplatform/myguiloglistener.hpp
@@ -28,7 +28,7 @@ namespace osgMyGUI
void close() override;
void flush() override;
- void log(const std::string& _section, MyGUI::LogLevel _level, const struct tm* _time, const std::string& _message, const char* _file, int _line) override;
+ void log(std::string_view _section, MyGUI::LogLevel _level, const struct tm* _time, std::string_view _message, std::string_view _file, int _line) override;
const std::string& getFileName() const { return mFileName; }
@@ -0,0 +1,11 @@
--- components/myguiplatform/myguirendermanager.hpp.orig 2023-08-08 09:23:20 UTC
+++ components/myguiplatform/myguirendermanager.hpp
@@ -110,7 +110,7 @@ class RenderManager : public MyGUI::RenderManager, pub
/** @see IRenderTarget::getInfo */
const MyGUI::RenderTargetInfo& getInfo() const override { return mInfo; }
- bool checkTexture(MyGUI::ITexture* _texture);
+ bool checkTexture(MyGUI::ITexture* _texture) override;
void setViewSize(int width, int height) override;
@@ -0,0 +1,13 @@
--- components/myguiplatform/scalinglayer.cpp.orig 2023-08-08 09:23:20 UTC
+++ components/myguiplatform/scalinglayer.cpp
@@ -126,8 +126,8 @@ namespace osgMyGUI
{
if (info->getName() == "Property")
{
- const std::string& key = info->findAttribute("key");
- const std::string& value = info->findAttribute("value");
+ const auto key = info->findAttribute("key");
+ const auto value = info->findAttribute("value");
if (key == "Size")
{
@@ -0,0 +1,29 @@
--- components/resource/imagemanager.cpp.orig 2023-08-08 09:23:20 UTC
+++ components/resource/imagemanager.cpp
@@ -58,7 +58,7 @@ namespace Resource
}
- bool checkSupported(osg::Image* image, const std::string& filename)
+ bool checkSupported(osg::Image* image)
{
switch(image->getPixelFormat())
{
@@ -83,7 +83,7 @@ namespace Resource
return true;
}
- osg::ref_ptr<osg::Image> ImageManager::getImage(const std::string &filename, bool disableFlip)
+ osg::ref_ptr<osg::Image> ImageManager::getImage(std::string_view filename, bool disableFlip)
{
const std::string normalized = mVFS->normalizeFilename(filename);
@@ -147,7 +147,7 @@ namespace Resource
osg::ref_ptr<osg::Image> image = result.getImage();
image->setFileName(normalized);
- if (!checkSupported(image, filename))
+ if (!checkSupported(image))
{
static bool uncompress = (getenv("OPENMW_DECOMPRESS_TEXTURES") != nullptr);
if (!uncompress)
@@ -0,0 +1,11 @@
--- components/resource/imagemanager.hpp.orig 2023-08-08 09:23:20 UTC
+++ components/resource/imagemanager.hpp
@@ -28,7 +28,7 @@ namespace Resource
/// Create or retrieve an Image
/// Returns the dummy image if the given image is not found.
- osg::ref_ptr<osg::Image> getImage(const std::string& filename, bool disableFlip = false);
+ osg::ref_ptr<osg::Image> getImage(std::string_view filename, bool disableFlip = false);
osg::Image* getWarningImage();
@@ -0,0 +1,26 @@
--- components/to_utf8/to_utf8.cpp.orig 2023-08-08 09:23:20 UTC
+++ components/to_utf8/to_utf8.cpp
@@ -52,18 +52,18 @@ namespace
return std::find_if(input.begin(), input.end(), [] (unsigned char v) { return v == 0 || v >= 128; });
}
- std::basic_string_view<signed char> getTranslationArray(FromType sourceEncoding)
+ const signed char* getTranslationArray(FromType sourceEncoding)
{
switch (sourceEncoding)
{
case ToUTF8::WINDOWS_1252:
- return {ToUTF8::windows_1252, std::size(ToUTF8::windows_1252)};
+ return ToUTF8::windows_1252;
case ToUTF8::WINDOWS_1250:
- return {ToUTF8::windows_1250, std::size(ToUTF8::windows_1250)};
+ return ToUTF8::windows_1250;
case ToUTF8::WINDOWS_1251:
- return {ToUTF8::windows_1251, std::size(ToUTF8::windows_1251)};
+ return ToUTF8::windows_1251;
case ToUTF8::CP437:
- return {ToUTF8::cp437, std::size(ToUTF8::cp437)};
+ return ToUTF8::cp437;
}
throw std::logic_error("Invalid source encoding: " + std::to_string(sourceEncoding));
}
@@ -0,0 +1,11 @@
--- components/to_utf8/to_utf8.hpp.orig 2023-08-08 09:23:20 UTC
+++ components/to_utf8/to_utf8.hpp
@@ -46,7 +46,7 @@ namespace ToUTF8
inline std::pair<std::size_t, bool> getLengthLegacyEnc(std::string_view input) const;
inline void copyFromArrayLegacyEnc(std::string_view::iterator& chp, std::string_view::iterator end, char* &out) const;
- const std::basic_string_view<signed char> mTranslationArray;
+ const signed char* mTranslationArray;
};
class Utf8Encoder
@@ -0,0 +1,65 @@
--- components/widgets/box.cpp.orig 2023-08-08 09:23:20 UTC
+++ components/widgets/box.cpp
@@ -7,7 +7,7 @@ namespace Gui
{
// TODO: Since 3.4.2 MyGUI is supposed to automatically translate tags
// If the 3.4.2 become a required minimum version, the ComboBox class may be removed.
- void ComboBox::setPropertyOverride(const std::string& _key, const std::string& _value)
+ void ComboBox::setPropertyOverride(std::string_view _key, std::string_view _value)
{
#if MYGUI_VERSION >= MYGUI_DEFINE_VERSION(3,4,2)
MyGUI::ComboBox::setPropertyOverride (_key, _value);
@@ -61,7 +61,7 @@ namespace Gui
notifySizeChange (this);
}
- void AutoSizedTextBox::setPropertyOverride(const std::string& _key, const std::string& _value)
+ void AutoSizedTextBox::setPropertyOverride(std::string_view _key, std::string_view _value)
{
if (_key == "ExpandDirection")
{
@@ -123,7 +123,7 @@ namespace Gui
setEditStatic(true);
}
- void AutoSizedEditBox::setPropertyOverride(const std::string& _key, const std::string& _value)
+ void AutoSizedEditBox::setPropertyOverride(std::string_view _key, std::string_view _value)
{
if (_key == "ExpandDirection")
{
@@ -156,7 +156,7 @@ namespace Gui
notifySizeChange (this);
}
- void AutoSizedButton::setPropertyOverride(const std::string& _key, const std::string& _value)
+ void AutoSizedButton::setPropertyOverride(std::string_view _key, std::string_view _value)
{
if (_key == "ExpandDirection")
{
@@ -179,7 +179,7 @@ namespace Gui
align();
}
- bool Box::_setPropertyImpl(const std::string& _key, const std::string& _value)
+ bool Box::_setPropertyImpl(std::string_view _key, std::string_view _value)
{
if (_key == "Spacing")
mSpacing = MyGUI::utility::parseValue<int>(_value);
@@ -278,7 +278,7 @@ namespace Gui
}
}
- void HBox::setPropertyOverride(const std::string& _key, const std::string& _value)
+ void HBox::setPropertyOverride(std::string_view _key, std::string_view _value)
{
if (!Box::_setPropertyImpl (_key, _value))
MyGUI::Widget::setPropertyOverride(_key, _value);
@@ -433,7 +433,7 @@ namespace Gui
}
}
- void VBox::setPropertyOverride(const std::string& _key, const std::string& _value)
+ void VBox::setPropertyOverride(std::string_view _key, std::string_view _value)
{
if (!Box::_setPropertyImpl (_key, _value))
MyGUI::Widget::setPropertyOverride(_key, _value);
@@ -0,0 +1,65 @@
--- components/widgets/box.hpp.orig 2023-08-08 09:23:20 UTC
+++ components/widgets/box.hpp
@@ -16,7 +16,7 @@ namespace Gui
MYGUI_RTTI_DERIVED( ComboBox )
protected:
- void setPropertyOverride(const std::string& _key, const std::string& _value) override;
+ void setPropertyOverride(std::string_view _key, std::string_view _value) override;
};
class Button : public FontWrapper<MyGUI::Button>
@@ -58,7 +58,7 @@ namespace Gui
void setCaption(const MyGUI::UString& _value) override;
protected:
- void setPropertyOverride(const std::string& _key, const std::string& _value) override;
+ void setPropertyOverride(std::string_view _key, std::string_view _value) override;
std::string mFontSize;
};
@@ -74,7 +74,7 @@ namespace Gui
void initialiseOverride() override;
protected:
- void setPropertyOverride(const std::string& _key, const std::string& _value) override;
+ void setPropertyOverride(std::string_view _key, std::string_view _value) override;
int getWidth();
std::string mFontSize;
bool mShrink = false;
@@ -91,7 +91,7 @@ namespace Gui
void setCaption(const MyGUI::UString& _value) override;
protected:
- void setPropertyOverride(const std::string& _key, const std::string& _value) override;
+ void setPropertyOverride(std::string_view _key, std::string_view _value) override;
std::string mFontSize;
};
@@ -111,7 +111,7 @@ namespace Gui
protected:
virtual void align() = 0;
- virtual bool _setPropertyImpl(const std::string& _key, const std::string& _value);
+ virtual bool _setPropertyImpl(std::string_view _key, std::string_view _value);
int mSpacing; // how much space to put between elements
@@ -143,7 +143,7 @@ namespace Gui
void align() override;
MyGUI::IntSize getRequestedSize() override;
- void setPropertyOverride(const std::string& _key, const std::string& _value) override;
+ void setPropertyOverride(std::string_view _key, std::string_view _value) override;
void onWidgetCreated(MyGUI::Widget* _widget) override;
};
@@ -162,7 +162,7 @@ namespace Gui
void align() override;
MyGUI::IntSize getRequestedSize() override;
- void setPropertyOverride(const std::string& _key, const std::string& _value) override;
+ void setPropertyOverride(std::string_view _key, std::string_view _value) override;
void onWidgetCreated(MyGUI::Widget* _widget) override;
};
@@ -0,0 +1,20 @@
--- components/widgets/fontwrapper.hpp.orig 2023-08-08 09:23:20 UTC
+++ components/widgets/fontwrapper.hpp
@@ -11,14 +11,14 @@ namespace Gui
class FontWrapper : public T
{
public:
- void setFontName(const std::string& name) override
+ void setFontName(std::string_view _value) override
{
- T::setFontName(name);
+ T::setFontName(_value);
T::setPropertyOverride ("FontHeight", getFontSize());
}
protected:
- void setPropertyOverride(const std::string& _key, const std::string& _value) override
+ void setPropertyOverride(std::string_view _key, std::string_view _value) override
{
T::setPropertyOverride (_key, _value);
@@ -0,0 +1,11 @@
--- components/widgets/imagebutton.cpp.orig 2023-08-08 09:23:20 UTC
+++ components/widgets/imagebutton.cpp
@@ -34,7 +34,7 @@ namespace Gui
updateImage();
}
- void ImageButton::setPropertyOverride(const std::string &_key, const std::string &_value)
+ void ImageButton::setPropertyOverride(std::string_view _key, std::string_view _value)
{
if (_key == "ImageHighlighted")
mImageHighlighted = _value;
@@ -0,0 +1,11 @@
--- components/widgets/imagebutton.hpp.orig 2023-08-08 09:23:20 UTC
+++ components/widgets/imagebutton.hpp
@@ -31,7 +31,7 @@ namespace Gui
static bool sDefaultNeedKeyFocus;
protected:
- void setPropertyOverride(const std::string& _key, const std::string& _value) override;
+ void setPropertyOverride(std::string_view _key, std::string_view _value) override;
void onMouseLostFocus(MyGUI::Widget* _new) override;
void onMouseSetFocus(MyGUI::Widget* _old) override;
void onMouseButtonPressed(int _left, int _top, MyGUI::MouseButton _id) override;
@@ -0,0 +1,11 @@
--- components/widgets/list.cpp.orig 2023-08-08 09:23:20 UTC
+++ components/widgets/list.cpp
@@ -105,7 +105,7 @@ namespace Gui
mScrollView->setViewOffset(MyGUI::IntPoint(0, -viewPosition));
}
- void MWList::setPropertyOverride(const std::string &_key, const std::string &_value)
+ void MWList::setPropertyOverride(std::string_view _key, std::string_view _value)
{
if (_key == "ListItemSkin")
mListItemSkin = _value;
@@ -0,0 +1,11 @@
--- components/widgets/list.hpp.orig 2023-08-08 09:23:20 UTC
+++ components/widgets/list.hpp
@@ -48,7 +48,7 @@ namespace Gui
void scrollToTop();
- void setPropertyOverride(const std::string& _key, const std::string& _value) override;
+ void setPropertyOverride(std::string_view _key, std::string_view _value) override;
protected:
void initialiseOverride() override;