mirror of
https://gitlab.com/OpenMW/openmw.git
synced 2025-03-25 16:43:33 +00:00
Merge branch 'fullhelp' into 'master'
Move full help text after everything else (#7623) Closes #7623 See merge request OpenMW/openmw!3907
This commit is contained in:
commit
e6f64f5e71
@ -115,6 +115,7 @@
|
|||||||
Bug #7611: Beast races' idle animations slide after turning or jumping in place
|
Bug #7611: Beast races' idle animations slide after turning or jumping in place
|
||||||
Bug #7617: The death prompt asks the player if they wanted to load the character's last created save
|
Bug #7617: The death prompt asks the player if they wanted to load the character's last created save
|
||||||
Bug #7619: Long map notes may get cut off
|
Bug #7619: Long map notes may get cut off
|
||||||
|
Bug #7623: Incorrect placement of the script info in the engraved ring of healing tooltip
|
||||||
Bug #7630: Charm can be cast on creatures
|
Bug #7630: Charm can be cast on creatures
|
||||||
Bug #7631: Cannot trade with/talk to Creeper or Mudcrab Merchant when they're fleeing
|
Bug #7631: Cannot trade with/talk to Creeper or Mudcrab Merchant when they're fleeing
|
||||||
Bug #7633: Groundcover should ignore non-geometry Drawables
|
Bug #7633: Groundcover should ignore non-geometry Drawables
|
||||||
|
@ -104,13 +104,11 @@ namespace MWClass
|
|||||||
std::string_view name = getName(ptr);
|
std::string_view name = getName(ptr);
|
||||||
info.caption = MyGUI::TextIterator::toTagsString(MyGUI::UString(name)) + MWGui::ToolTips::getCountString(count);
|
info.caption = MyGUI::TextIterator::toTagsString(MyGUI::UString(name)) + MWGui::ToolTips::getCountString(count);
|
||||||
|
|
||||||
std::string text;
|
|
||||||
if (MWBase::Environment::get().getWindowManager()->getFullHelp())
|
if (MWBase::Environment::get().getWindowManager()->getFullHelp())
|
||||||
{
|
{
|
||||||
text += MWGui::ToolTips::getCellRefString(ptr.getCellRef());
|
info.extra += MWGui::ToolTips::getCellRefString(ptr.getCellRef());
|
||||||
text += MWGui::ToolTips::getMiscString(ref->mBase->mScript.getRefIdString(), "Script");
|
info.extra += MWGui::ToolTips::getMiscString(ref->mBase->mScript.getRefIdString(), "Script");
|
||||||
}
|
}
|
||||||
info.text = std::move(text);
|
|
||||||
|
|
||||||
return info;
|
return info;
|
||||||
}
|
}
|
||||||
|
@ -102,8 +102,8 @@ namespace MWClass
|
|||||||
|
|
||||||
if (MWBase::Environment::get().getWindowManager()->getFullHelp())
|
if (MWBase::Environment::get().getWindowManager()->getFullHelp())
|
||||||
{
|
{
|
||||||
text += MWGui::ToolTips::getCellRefString(ptr.getCellRef());
|
info.extra += MWGui::ToolTips::getCellRefString(ptr.getCellRef());
|
||||||
text += MWGui::ToolTips::getMiscString(ref->mBase->mScript.getRefIdString(), "Script");
|
info.extra += MWGui::ToolTips::getMiscString(ref->mBase->mScript.getRefIdString(), "Script");
|
||||||
}
|
}
|
||||||
info.text = std::move(text);
|
info.text = std::move(text);
|
||||||
|
|
||||||
|
@ -257,8 +257,8 @@ namespace MWClass
|
|||||||
|
|
||||||
if (MWBase::Environment::get().getWindowManager()->getFullHelp())
|
if (MWBase::Environment::get().getWindowManager()->getFullHelp())
|
||||||
{
|
{
|
||||||
text += MWGui::ToolTips::getCellRefString(ptr.getCellRef());
|
info.extra += MWGui::ToolTips::getCellRefString(ptr.getCellRef());
|
||||||
text += MWGui::ToolTips::getMiscString(ref->mBase->mScript.getRefIdString(), "Script");
|
info.extra += MWGui::ToolTips::getMiscString(ref->mBase->mScript.getRefIdString(), "Script");
|
||||||
}
|
}
|
||||||
|
|
||||||
info.enchant = ref->mBase->mEnchant;
|
info.enchant = ref->mBase->mEnchant;
|
||||||
|
@ -121,8 +121,8 @@ namespace MWClass
|
|||||||
|
|
||||||
if (MWBase::Environment::get().getWindowManager()->getFullHelp())
|
if (MWBase::Environment::get().getWindowManager()->getFullHelp())
|
||||||
{
|
{
|
||||||
text += MWGui::ToolTips::getCellRefString(ptr.getCellRef());
|
info.extra += MWGui::ToolTips::getCellRefString(ptr.getCellRef());
|
||||||
text += MWGui::ToolTips::getMiscString(ref->mBase->mScript.getRefIdString(), "Script");
|
info.extra += MWGui::ToolTips::getMiscString(ref->mBase->mScript.getRefIdString(), "Script");
|
||||||
}
|
}
|
||||||
|
|
||||||
info.enchant = ref->mBase->mEnchant;
|
info.enchant = ref->mBase->mEnchant;
|
||||||
|
@ -164,8 +164,8 @@ namespace MWClass
|
|||||||
|
|
||||||
if (MWBase::Environment::get().getWindowManager()->getFullHelp())
|
if (MWBase::Environment::get().getWindowManager()->getFullHelp())
|
||||||
{
|
{
|
||||||
text += MWGui::ToolTips::getCellRefString(ptr.getCellRef());
|
info.extra += MWGui::ToolTips::getCellRefString(ptr.getCellRef());
|
||||||
text += MWGui::ToolTips::getMiscString(ref->mBase->mScript.getRefIdString(), "Script");
|
info.extra += MWGui::ToolTips::getMiscString(ref->mBase->mScript.getRefIdString(), "Script");
|
||||||
}
|
}
|
||||||
|
|
||||||
info.enchant = ref->mBase->mEnchant;
|
info.enchant = ref->mBase->mEnchant;
|
||||||
|
@ -265,10 +265,10 @@ namespace MWClass
|
|||||||
|
|
||||||
if (MWBase::Environment::get().getWindowManager()->getFullHelp())
|
if (MWBase::Environment::get().getWindowManager()->getFullHelp())
|
||||||
{
|
{
|
||||||
text += MWGui::ToolTips::getCellRefString(ptr.getCellRef());
|
info.extra += MWGui::ToolTips::getCellRefString(ptr.getCellRef());
|
||||||
text += MWGui::ToolTips::getMiscString(ref->mBase->mScript.getRefIdString(), "Script");
|
info.extra += MWGui::ToolTips::getMiscString(ref->mBase->mScript.getRefIdString(), "Script");
|
||||||
if (ptr.getCellRef().getRefId() == "stolen_goods")
|
if (ptr.getCellRef().getRefId() == "stolen_goods")
|
||||||
text += "\nYou can not use evidence chests";
|
info.extra += "\nYou cannot use evidence chests";
|
||||||
}
|
}
|
||||||
|
|
||||||
info.text = std::move(text);
|
info.text = std::move(text);
|
||||||
|
@ -591,10 +591,8 @@ namespace MWClass
|
|||||||
std::string_view name = getName(ptr);
|
std::string_view name = getName(ptr);
|
||||||
info.caption = MyGUI::TextIterator::toTagsString(MyGUI::UString(name));
|
info.caption = MyGUI::TextIterator::toTagsString(MyGUI::UString(name));
|
||||||
|
|
||||||
std::string text;
|
|
||||||
if (MWBase::Environment::get().getWindowManager()->getFullHelp())
|
if (MWBase::Environment::get().getWindowManager()->getFullHelp())
|
||||||
text += MWGui::ToolTips::getMiscString(ref->mBase->mScript.getRefIdString(), "Script");
|
info.extra += MWGui::ToolTips::getMiscString(ref->mBase->mScript.getRefIdString(), "Script");
|
||||||
info.text = std::move(text);
|
|
||||||
|
|
||||||
return info;
|
return info;
|
||||||
}
|
}
|
||||||
|
@ -290,8 +290,8 @@ namespace MWClass
|
|||||||
|
|
||||||
if (MWBase::Environment::get().getWindowManager()->getFullHelp())
|
if (MWBase::Environment::get().getWindowManager()->getFullHelp())
|
||||||
{
|
{
|
||||||
text += MWGui::ToolTips::getCellRefString(ptr.getCellRef());
|
info.extra += MWGui::ToolTips::getCellRefString(ptr.getCellRef());
|
||||||
text += MWGui::ToolTips::getMiscString(ref->mBase->mScript.getRefIdString(), "Script");
|
info.extra += MWGui::ToolTips::getMiscString(ref->mBase->mScript.getRefIdString(), "Script");
|
||||||
}
|
}
|
||||||
info.text = std::move(text);
|
info.text = std::move(text);
|
||||||
|
|
||||||
|
@ -117,8 +117,8 @@ namespace MWClass
|
|||||||
|
|
||||||
if (MWBase::Environment::get().getWindowManager()->getFullHelp())
|
if (MWBase::Environment::get().getWindowManager()->getFullHelp())
|
||||||
{
|
{
|
||||||
text += MWGui::ToolTips::getCellRefString(ptr.getCellRef());
|
info.extra += MWGui::ToolTips::getCellRefString(ptr.getCellRef());
|
||||||
text += MWGui::ToolTips::getMiscString(ref->mBase->mScript.getRefIdString(), "Script");
|
info.extra += MWGui::ToolTips::getMiscString(ref->mBase->mScript.getRefIdString(), "Script");
|
||||||
}
|
}
|
||||||
|
|
||||||
MWWorld::Ptr player = MWBase::Environment::get().getWorld()->getPlayerPtr();
|
MWWorld::Ptr player = MWBase::Environment::get().getWorld()->getPlayerPtr();
|
||||||
|
@ -173,8 +173,8 @@ namespace MWClass
|
|||||||
|
|
||||||
if (MWBase::Environment::get().getWindowManager()->getFullHelp())
|
if (MWBase::Environment::get().getWindowManager()->getFullHelp())
|
||||||
{
|
{
|
||||||
text += MWGui::ToolTips::getCellRefString(ptr.getCellRef());
|
info.extra += MWGui::ToolTips::getCellRefString(ptr.getCellRef());
|
||||||
text += MWGui::ToolTips::getMiscString(ref->mBase->mScript.getRefIdString(), "Script");
|
info.extra += MWGui::ToolTips::getMiscString(ref->mBase->mScript.getRefIdString(), "Script");
|
||||||
}
|
}
|
||||||
|
|
||||||
info.text = std::move(text);
|
info.text = std::move(text);
|
||||||
|
@ -118,8 +118,8 @@ namespace MWClass
|
|||||||
|
|
||||||
if (MWBase::Environment::get().getWindowManager()->getFullHelp())
|
if (MWBase::Environment::get().getWindowManager()->getFullHelp())
|
||||||
{
|
{
|
||||||
text += MWGui::ToolTips::getCellRefString(ptr.getCellRef());
|
info.extra += MWGui::ToolTips::getCellRefString(ptr.getCellRef());
|
||||||
text += MWGui::ToolTips::getMiscString(ref->mBase->mScript.getRefIdString(), "Script");
|
info.extra += MWGui::ToolTips::getMiscString(ref->mBase->mScript.getRefIdString(), "Script");
|
||||||
}
|
}
|
||||||
|
|
||||||
info.text = std::move(text);
|
info.text = std::move(text);
|
||||||
|
@ -163,8 +163,8 @@ namespace MWClass
|
|||||||
|
|
||||||
if (MWBase::Environment::get().getWindowManager()->getFullHelp())
|
if (MWBase::Environment::get().getWindowManager()->getFullHelp())
|
||||||
{
|
{
|
||||||
text += MWGui::ToolTips::getCellRefString(ptr.getCellRef());
|
info.extra += MWGui::ToolTips::getCellRefString(ptr.getCellRef());
|
||||||
text += MWGui::ToolTips::getMiscString(ref->mBase->mScript.getRefIdString(), "Script");
|
info.extra += MWGui::ToolTips::getMiscString(ref->mBase->mScript.getRefIdString(), "Script");
|
||||||
}
|
}
|
||||||
|
|
||||||
info.text = std::move(text);
|
info.text = std::move(text);
|
||||||
|
@ -1118,7 +1118,7 @@ namespace MWClass
|
|||||||
}
|
}
|
||||||
|
|
||||||
if (fullHelp)
|
if (fullHelp)
|
||||||
info.text = MWGui::ToolTips::getMiscString(ref->mBase->mScript.getRefIdString(), "Script");
|
info.extra = MWGui::ToolTips::getMiscString(ref->mBase->mScript.getRefIdString(), "Script");
|
||||||
|
|
||||||
return info;
|
return info;
|
||||||
}
|
}
|
||||||
|
@ -114,8 +114,8 @@ namespace MWClass
|
|||||||
|
|
||||||
if (MWBase::Environment::get().getWindowManager()->getFullHelp())
|
if (MWBase::Environment::get().getWindowManager()->getFullHelp())
|
||||||
{
|
{
|
||||||
text += MWGui::ToolTips::getCellRefString(ptr.getCellRef());
|
info.extra += MWGui::ToolTips::getCellRefString(ptr.getCellRef());
|
||||||
text += MWGui::ToolTips::getMiscString(ref->mBase->mScript.getRefIdString(), "Script");
|
info.extra += MWGui::ToolTips::getMiscString(ref->mBase->mScript.getRefIdString(), "Script");
|
||||||
}
|
}
|
||||||
|
|
||||||
info.text = std::move(text);
|
info.text = std::move(text);
|
||||||
|
@ -117,8 +117,8 @@ namespace MWClass
|
|||||||
|
|
||||||
if (MWBase::Environment::get().getWindowManager()->getFullHelp())
|
if (MWBase::Environment::get().getWindowManager()->getFullHelp())
|
||||||
{
|
{
|
||||||
text += MWGui::ToolTips::getCellRefString(ptr.getCellRef());
|
info.extra += MWGui::ToolTips::getCellRefString(ptr.getCellRef());
|
||||||
text += MWGui::ToolTips::getMiscString(ref->mBase->mScript.getRefIdString(), "Script");
|
info.extra += MWGui::ToolTips::getMiscString(ref->mBase->mScript.getRefIdString(), "Script");
|
||||||
}
|
}
|
||||||
|
|
||||||
info.text = std::move(text);
|
info.text = std::move(text);
|
||||||
|
@ -119,8 +119,8 @@ namespace MWClass
|
|||||||
|
|
||||||
if (MWBase::Environment::get().getWindowManager()->getFullHelp())
|
if (MWBase::Environment::get().getWindowManager()->getFullHelp())
|
||||||
{
|
{
|
||||||
text += MWGui::ToolTips::getCellRefString(ptr.getCellRef());
|
info.extra += MWGui::ToolTips::getCellRefString(ptr.getCellRef());
|
||||||
text += MWGui::ToolTips::getMiscString(ref->mBase->mScript.getRefIdString(), "Script");
|
info.extra += MWGui::ToolTips::getMiscString(ref->mBase->mScript.getRefIdString(), "Script");
|
||||||
}
|
}
|
||||||
|
|
||||||
info.text = std::move(text);
|
info.text = std::move(text);
|
||||||
|
@ -239,8 +239,8 @@ namespace MWClass
|
|||||||
|
|
||||||
if (MWBase::Environment::get().getWindowManager()->getFullHelp())
|
if (MWBase::Environment::get().getWindowManager()->getFullHelp())
|
||||||
{
|
{
|
||||||
text += MWGui::ToolTips::getCellRefString(ptr.getCellRef());
|
info.extra += MWGui::ToolTips::getCellRefString(ptr.getCellRef());
|
||||||
text += MWGui::ToolTips::getMiscString(ref->mBase->mScript.getRefIdString(), "Script");
|
info.extra += MWGui::ToolTips::getMiscString(ref->mBase->mScript.getRefIdString(), "Script");
|
||||||
}
|
}
|
||||||
|
|
||||||
info.text = std::move(text);
|
info.text = std::move(text);
|
||||||
|
@ -410,10 +410,13 @@ namespace MWGui
|
|||||||
const std::string& image = info.icon;
|
const std::string& image = info.icon;
|
||||||
int imageSize = (!image.empty()) ? info.imageSize : 0;
|
int imageSize = (!image.empty()) ? info.imageSize : 0;
|
||||||
std::string text = info.text;
|
std::string text = info.text;
|
||||||
|
std::string_view extra = info.extra;
|
||||||
|
|
||||||
// remove the first newline (easier this way)
|
// remove the first newline (easier this way)
|
||||||
if (text.size() > 0 && text[0] == '\n')
|
if (!text.empty() && text[0] == '\n')
|
||||||
text.erase(0, 1);
|
text.erase(0, 1);
|
||||||
|
if (!extra.empty() && extra[0] == '\n')
|
||||||
|
extra = extra.substr(1);
|
||||||
|
|
||||||
const ESM::Enchantment* enchant = nullptr;
|
const ESM::Enchantment* enchant = nullptr;
|
||||||
const MWWorld::ESMStore& store = *MWBase::Environment::get().getESMStore();
|
const MWWorld::ESMStore& store = *MWBase::Environment::get().getESMStore();
|
||||||
@ -572,6 +575,24 @@ namespace MWGui
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if (!extra.empty())
|
||||||
|
{
|
||||||
|
Gui::EditBox* extraWidget = mDynamicToolTipBox->createWidget<Gui::EditBox>("SandText",
|
||||||
|
MyGUI::IntCoord(padding.left, totalSize.height + 12, 300 - padding.left, 300 - totalSize.height),
|
||||||
|
MyGUI::Align::Stretch, "ToolTipExtraText");
|
||||||
|
|
||||||
|
extraWidget->setEditStatic(true);
|
||||||
|
extraWidget->setEditMultiLine(true);
|
||||||
|
extraWidget->setEditWordWrap(info.wordWrap);
|
||||||
|
extraWidget->setCaptionWithReplacing(extra);
|
||||||
|
extraWidget->setTextAlign(MyGUI::Align::HCenter | MyGUI::Align::Top);
|
||||||
|
extraWidget->setNeedKeyFocus(false);
|
||||||
|
|
||||||
|
MyGUI::IntSize extraTextSize = extraWidget->getTextSize();
|
||||||
|
totalSize.height += extraTextSize.height + 4;
|
||||||
|
totalSize.width = std::max(totalSize.width, extraTextSize.width);
|
||||||
|
}
|
||||||
|
|
||||||
captionWidget->setCoord((totalSize.width - captionSize.width) / 2 + imageSize,
|
captionWidget->setCoord((totalSize.width - captionSize.width) / 2 + imageSize,
|
||||||
(captionHeight - captionSize.height) / 2, captionSize.width - imageSize, captionSize.height);
|
(captionHeight - captionSize.height) / 2, captionSize.width - imageSize, captionSize.height);
|
||||||
|
|
||||||
|
@ -29,6 +29,7 @@ namespace MWGui
|
|||||||
|
|
||||||
std::string caption;
|
std::string caption;
|
||||||
std::string text;
|
std::string text;
|
||||||
|
std::string extra;
|
||||||
std::string icon;
|
std::string icon;
|
||||||
int imageSize;
|
int imageSize;
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user