fix my cast and put it into a separate function
This commit is contained in:
3
.gitignore
vendored
3
.gitignore
vendored
@@ -418,3 +418,6 @@ Minecraft.World/x64/
|
|||||||
Minecraft.World/x64_Debug/
|
Minecraft.World/x64_Debug/
|
||||||
Minecraft.World/Debug/
|
Minecraft.World/Debug/
|
||||||
Minecraft.World/Release/
|
Minecraft.World/Release/
|
||||||
|
Minecraft.World/x64_Release/Minecraft.World.vcxproj.FileListAbsolute.txt
|
||||||
|
Minecraft.World/x64_Release/Minecraft.World.lib
|
||||||
|
Minecraft.World/x64_Release/Minecraft.World.lib.recipe
|
||||||
|
|||||||
@@ -1242,6 +1242,15 @@ void UIScene_SkinSelectMenu::handlePackIndexChanged()
|
|||||||
updatePackDisplay();
|
updatePackDisplay();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
std::wstring fakeWideToRealWide(const wchar_t* original)
|
||||||
|
{
|
||||||
|
const char* name = reinterpret_cast<const char*>(original);
|
||||||
|
int len = MultiByteToWideChar(CP_UTF8, 0, name, -1, NULL, 0);
|
||||||
|
std::wstring wName(len, 0);
|
||||||
|
MultiByteToWideChar(CP_UTF8, 0, name, -1, &wName[0], len);
|
||||||
|
return wName.c_str();
|
||||||
|
}
|
||||||
|
|
||||||
void UIScene_SkinSelectMenu::updatePackDisplay()
|
void UIScene_SkinSelectMenu::updatePackDisplay()
|
||||||
{
|
{
|
||||||
m_currentPackCount = app.m_dlcManager.getPackCount(DLCManager::e_DLCType_Skin) + SKIN_SELECT_MAX_DEFAULTS;
|
m_currentPackCount = app.m_dlcManager.getPackCount(DLCManager::e_DLCType_Skin) + SKIN_SELECT_MAX_DEFAULTS;
|
||||||
@@ -1250,11 +1259,7 @@ void UIScene_SkinSelectMenu::updatePackDisplay()
|
|||||||
{
|
{
|
||||||
DLCPack *thisPack = app.m_dlcManager.getPack(m_packIndex - SKIN_SELECT_MAX_DEFAULTS, DLCManager::e_DLCType_Skin);
|
DLCPack *thisPack = app.m_dlcManager.getPack(m_packIndex - SKIN_SELECT_MAX_DEFAULTS, DLCManager::e_DLCType_Skin);
|
||||||
// Fix the incorrect string type on title to display correctly
|
// Fix the incorrect string type on title to display correctly
|
||||||
const char* name = static_cast<const char*>(thisPack->getName().c_str());
|
setCentreLabel(fakeWideToRealWide(thisPack->getName().c_str()));
|
||||||
int len = MultiByteToWideChar(CP_UTF8, 0, name, -1, NULL, 0);
|
|
||||||
std::wstring wName(len, 0);
|
|
||||||
MultiByteToWideChar(CP_UTF8, 0, name, -1, &wName[0], len);
|
|
||||||
setCentreLabel(wName.c_str());
|
|
||||||
//setCentreLabel(thisPack->getName().c_str());
|
//setCentreLabel(thisPack->getName().c_str());
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
@@ -1275,11 +1280,7 @@ void UIScene_SkinSelectMenu::updatePackDisplay()
|
|||||||
{
|
{
|
||||||
DLCPack *thisPack = app.m_dlcManager.getPack(nextPackIndex - SKIN_SELECT_MAX_DEFAULTS, DLCManager::e_DLCType_Skin);
|
DLCPack *thisPack = app.m_dlcManager.getPack(nextPackIndex - SKIN_SELECT_MAX_DEFAULTS, DLCManager::e_DLCType_Skin);
|
||||||
// Fix the incorrect string type on title to display correctly
|
// Fix the incorrect string type on title to display correctly
|
||||||
const char* name = static_cast<const char*>(thisPack->getName().c_str());
|
setRightLabel(fakeWideToRealWide(thisPack->getName().c_str()));
|
||||||
int len = MultiByteToWideChar(CP_UTF8, 0, name, -1, NULL, 0);
|
|
||||||
std::wstring wName(len, 0);
|
|
||||||
MultiByteToWideChar(CP_UTF8, 0, name, -1, &wName[0], len);
|
|
||||||
setRightLabel(wName.c_str());
|
|
||||||
//setRightLabel(thisPack->getName().c_str());
|
//setRightLabel(thisPack->getName().c_str());
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
@@ -1300,11 +1301,7 @@ void UIScene_SkinSelectMenu::updatePackDisplay()
|
|||||||
{
|
{
|
||||||
DLCPack *thisPack = app.m_dlcManager.getPack(previousPackIndex - SKIN_SELECT_MAX_DEFAULTS, DLCManager::e_DLCType_Skin);
|
DLCPack *thisPack = app.m_dlcManager.getPack(previousPackIndex - SKIN_SELECT_MAX_DEFAULTS, DLCManager::e_DLCType_Skin);
|
||||||
// Fix the incorrect string type on title to display correctly
|
// Fix the incorrect string type on title to display correctly
|
||||||
const char* name = static_cast<const char*>(thisPack->getName().c_str());
|
setLeftLabel(fakeWideToRealWide(thisPack->getName().c_str()));
|
||||||
int len = MultiByteToWideChar(CP_UTF8, 0, name, -1, NULL, 0);
|
|
||||||
std::wstring wName(len, 0);
|
|
||||||
MultiByteToWideChar(CP_UTF8, 0, name, -1, &wName[0], len);
|
|
||||||
setLeftLabel(wName.c_str());
|
|
||||||
//setLeftLabel(thisPack->getName().c_str());
|
//setLeftLabel(thisPack->getName().c_str());
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
|
|||||||
Reference in New Issue
Block a user