Merge pull request #1588 from TheKodeToad/resource-meta

Implement tracking and updates for files other than mods
This commit is contained in:
TheKodeToad
2024-10-30 17:03:54 +00:00
committed by GitHub
61 changed files with 1808 additions and 1344 deletions

View File

@ -84,7 +84,7 @@ void InfoFrame::updateWithMod(Mod const& m)
QString text = "";
QString name = "";
QString link = m.metaurl();
QString link = m.homepage();
if (m.name().isEmpty())
name = m.internal_id();
else
@ -93,7 +93,7 @@ void InfoFrame::updateWithMod(Mod const& m)
if (link.isEmpty())
text = name;
else {
text = "<a href=\"" + link + "\">" + name + "</a>";
text = "<a href=\"" + QUrl(link).toEncoded() + "\">" + name + "</a>";
}
if (!m.authors().isEmpty())
text += " by " + m.authors().join(", ");
@ -145,7 +145,13 @@ void InfoFrame::updateWithMod(Mod const& m)
void InfoFrame::updateWithResource(const Resource& resource)
{
setName(resource.name());
const QString homepage = resource.homepage();
if (!homepage.isEmpty())
setName("<a href=\"" + homepage + "\">" + resource.name() + "</a>");
else
setName(resource.name());
setImage();
}
@ -209,14 +215,28 @@ QString InfoFrame::renderColorCodes(QString input)
void InfoFrame::updateWithResourcePack(ResourcePack& resource_pack)
{
setName(renderColorCodes(resource_pack.name()));
QString name = renderColorCodes(resource_pack.name());
const QString homepage = resource_pack.homepage();
if (!homepage.isEmpty()) {
name = "<a href=\"" + homepage + "\">" + name + "</a>";
}
setName(name);
setDescription(renderColorCodes(resource_pack.description()));
setImage(resource_pack.image({ 64, 64 }));
}
void InfoFrame::updateWithTexturePack(TexturePack& texture_pack)
{
setName(renderColorCodes(texture_pack.name()));
QString name = renderColorCodes(texture_pack.name());
const QString homepage = texture_pack.homepage();
if (!homepage.isEmpty()) {
name = "<a href=\"" + homepage + "\">" + name + "</a>";
}
setName(name);
setDescription(renderColorCodes(texture_pack.description()));
setImage(texture_pack.image({ 64, 64 }));
}