summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorTannin <devnull@localhost>2015-02-25 17:57:38 +0100
committerTannin <devnull@localhost>2015-02-25 17:57:38 +0100
commitcbe84327c685626cf816f956b5857557a5f3090e (patch)
tree9428b980b40e4ae2e2a68b13145b052894df1ae1
parentce228e512cfd2b249a1ebc2ef0e576825afb29a0 (diff)
- added content icon for BSAs
- improved display of content icons (better scaling and some borders) - bugfix: contains changes missing from changeset bc6b6430017b
-rw-r--r--src/modinfo.cpp2
-rw-r--r--src/modinfo.h4
-rw-r--r--src/modlist.cpp29
-rw-r--r--src/modlist.h2
-rw-r--r--src/resources.qrc4
-rw-r--r--src/resources/contents/breastplate.pngbin10578 -> 1419 bytes
-rw-r--r--src/resources/contents/checkbox-tree.pngbin1144 -> 658 bytes
-rw-r--r--src/resources/contents/conversation.pngbin7980 -> 1506 bytes
-rw-r--r--src/resources/contents/double-quaver.pngbin5877 -> 1009 bytes
-rw-r--r--src/resources/contents/empty-chessboard.pngbin959 -> 706 bytes
-rw-r--r--src/resources/contents/hand-of-god.pngbin7105 -> 1101 bytes
-rw-r--r--src/resources/contents/jigsaw-piece.pngbin5971 -> 952 bytes
-rw-r--r--src/resources/contents/locked-chest.pngbin0 -> 1440 bytes
-rw-r--r--src/resources/contents/lyre.pngbin9368 -> 1388 bytes
-rw-r--r--src/resources/contents/tinker.pngbin6475 -> 1038 bytes
-rw-r--r--src/resources/contents/usable.pngbin9919 -> 1345 bytes
16 files changed, 26 insertions, 15 deletions
diff --git a/src/modinfo.cpp b/src/modinfo.cpp
index cf8fa5c5..c7d1101d 100644
--- a/src/modinfo.cpp
+++ b/src/modinfo.cpp
@@ -90,6 +90,7 @@ QString ModInfo::getContentTypeName(int contentType)
case CONTENT_PLUGIN: return tr("Plugins");
case CONTENT_TEXTURE: return tr("Textures");
case CONTENT_MESH: return tr("Meshes");
+ case CONTENT_BSA: return tr("BSA");
case CONTENT_INTERFACE: return tr("UI Changes");
case CONTENT_MUSIC: return tr("Music");
case CONTENT_SOUND: return tr("Sound Effects");
@@ -151,7 +152,6 @@ bool ModInfo::removeMod(unsigned int index)
if (index >= s_Collection.size()) {
throw MyException(tr("invalid index %1").arg(index));
}
-
// update the indices first
ModInfo::Ptr modInfo = s_Collection[index];
s_ModsByName.erase(s_ModsByName.find(modInfo->name()));
diff --git a/src/modinfo.h b/src/modinfo.h
index 9a4c7c94..33e6ec96 100644
--- a/src/modinfo.h
+++ b/src/modinfo.h
@@ -72,6 +72,7 @@ public:
CONTENT_PLUGIN,
CONTENT_TEXTURE,
CONTENT_MESH,
+ CONTENT_BSA,
CONTENT_INTERFACE,
CONTENT_MUSIC,
CONTENT_SOUND,
@@ -966,6 +967,9 @@ private:
NexusBridge m_NexusBridge;
+ mutable std::vector<ModInfo::EContent> m_CachedContent;
+ mutable QTime m_LastContentCheck;
+
};
diff --git a/src/modlist.cpp b/src/modlist.cpp
index 23b74300..06123359 100644
--- a/src/modlist.cpp
+++ b/src/modlist.cpp
@@ -164,12 +164,14 @@ QVariantList ModList::contentsToIcons(const std::vector<ModInfo::EContent> &cont
QString ModList::contentsToToolTip(const std::vector<ModInfo::EContent> &contents) const
{
- QString result("<table>");
+ QString result("<table cellspacing=7>");
std::set<ModInfo::EContent> contentsSet(contents.begin(), contents.end());
for (auto iter = m_ContentIcons.begin(); iter != m_ContentIcons.end(); ++iter) {
if (contentsSet.find(iter->first) != contentsSet.end()) {
- result.append(QString("<tr><td><img src=\"%1\" width=32/></td><td valign=\"middle\">%2</td></tr>").arg(std::get<1>(iter->second)).arg(std::get<2>(iter->second)));
+ result.append(QString("<tr><td><img src=\"%1\" width=32/></td>"
+ "<td valign=\"middle\">%2</td></tr>")
+ .arg(std::get<0>(iter->second)).arg(std::get<1>(iter->second)));
}
}
result.append("</table>");
@@ -968,17 +970,18 @@ QString ModList::getColumnToolTip(int column)
case COL_MODID: return tr("Id of the mod as used on Nexus.");
case COL_FLAGS: return tr("Emblemes to highlight things that might require attention.");
case COL_CONTENT: return tr("Depicts the content of the mod:<br>"
- "<img src=\":/MO/gui/content/plugin\" width=32/>Game plugins (esp/esm)<br>"
- "<img src=\":/MO/gui/content/interface\" width=32/>interface<br>"
- "<img src=\":/MO/gui/content/mesh\" width=32/>Meshes<br>"
- "<img src=\":/MO/gui/content/texture\" width=32/>Textures<br>"
- "<img src=\":/MO/gui/content/sound\" width=32/>Sounds<br>"
- "<img src=\":/MO/gui/content/music\" width=32/>Music<br>"
- "<img src=\":/MO/gui/content/string\" width=32/>Strings<br>"
- "<img src=\":/MO/gui/content/script\" width=32/>Scripts (Papyrus)<br>"
- "<img src=\":/MO/gui/content/skse\" width=32/>Script Extender plugins<br>"
- "<img src=\":/MO/gui/content/skyproc\" width=32/>SkyProc Patcher<br>"
- );
+ "<table cellspacing=7>"
+ "<tr><td><img src=\":/MO/gui/content/plugin\" width=32/></td><td>Game plugins (esp/esm)</tr>"
+ "<tr><td><img src=\":/MO/gui/content/interface\" width=32/></td><td>Interface</tr>"
+ "<tr><td><img src=\":/MO/gui/content/mesh\" width=32/></td><td>Meshes</tr>"
+ "<tr><td><img src=\":/MO/gui/content/texture\" width=32/></td><td>Textures</tr>"
+ "<tr><td><img src=\":/MO/gui/content/sound\" width=32/></td><td>Sounds</tr>"
+ "<tr><td><img src=\":/MO/gui/content/music\" width=32/></td><td>Music</tr>"
+ "<tr><td><img src=\":/MO/gui/content/string\" width=32/></td><td>Strings</tr>"
+ "<tr><td><img src=\":/MO/gui/content/script\" width=32/></td><td>Scripts (Papyrus)</tr>"
+ "<tr><td><img src=\":/MO/gui/content/skse\" width=32/></td><td>Script Extender plugins</tr>"
+ "<tr><td><img src=\":/MO/gui/content/skyproc\" width=32/></td><td>SkyProc Patcher</tr>"
+ "</table>");
case COL_INSTALLTIME: return tr("Time this mod was installed");
default: return tr("unknown");
}
diff --git a/src/modlist.h b/src/modlist.h
index 8475d97a..ecd30875 100644
--- a/src/modlist.h
+++ b/src/modlist.h
@@ -301,7 +301,7 @@ private:
SignalModStateChanged m_ModStateChanged;
SignalModMoved m_ModMoved;
- std::map<ModInfo::EContent, std::tuple<QIcon, QString, QString> > m_ContentIcons;
+ std::map<ModInfo::EContent, std::tuple<QString, QString> > m_ContentIcons;
};
diff --git a/src/resources.qrc b/src/resources.qrc
index 20b0e3fe..85cd6ec7 100644
--- a/src/resources.qrc
+++ b/src/resources.qrc
@@ -77,5 +77,9 @@
<file alias="script">resources/contents/tinker.png</file>
<file alias="mesh">resources/contents/breastplate.png</file>
<file alias="string">resources/contents/conversation.png</file>
+ <file alias="bsa">resources/contents/locked-chest.png</file>
+ </qresource>
+ <qresource prefix="/qt/etc">
+ <file>qt.conf</file>
</qresource>
</RCC>
diff --git a/src/resources/contents/breastplate.png b/src/resources/contents/breastplate.png
index e42d0888..d3d39407 100644
--- a/src/resources/contents/breastplate.png
+++ b/src/resources/contents/breastplate.png
Binary files differ
diff --git a/src/resources/contents/checkbox-tree.png b/src/resources/contents/checkbox-tree.png
index ba6da286..a44dd5fd 100644
--- a/src/resources/contents/checkbox-tree.png
+++ b/src/resources/contents/checkbox-tree.png
Binary files differ
diff --git a/src/resources/contents/conversation.png b/src/resources/contents/conversation.png
index 73e5980e..11030fff 100644
--- a/src/resources/contents/conversation.png
+++ b/src/resources/contents/conversation.png
Binary files differ
diff --git a/src/resources/contents/double-quaver.png b/src/resources/contents/double-quaver.png
index a7e06c72..7102f472 100644
--- a/src/resources/contents/double-quaver.png
+++ b/src/resources/contents/double-quaver.png
Binary files differ
diff --git a/src/resources/contents/empty-chessboard.png b/src/resources/contents/empty-chessboard.png
index 1ccbbd12..b5983010 100644
--- a/src/resources/contents/empty-chessboard.png
+++ b/src/resources/contents/empty-chessboard.png
Binary files differ
diff --git a/src/resources/contents/hand-of-god.png b/src/resources/contents/hand-of-god.png
index 9d55580e..e3a05335 100644
--- a/src/resources/contents/hand-of-god.png
+++ b/src/resources/contents/hand-of-god.png
Binary files differ
diff --git a/src/resources/contents/jigsaw-piece.png b/src/resources/contents/jigsaw-piece.png
index 0f276ea0..0b26d56b 100644
--- a/src/resources/contents/jigsaw-piece.png
+++ b/src/resources/contents/jigsaw-piece.png
Binary files differ
diff --git a/src/resources/contents/locked-chest.png b/src/resources/contents/locked-chest.png
new file mode 100644
index 00000000..d70d448e
--- /dev/null
+++ b/src/resources/contents/locked-chest.png
Binary files differ
diff --git a/src/resources/contents/lyre.png b/src/resources/contents/lyre.png
index 1ee4765f..041dbb01 100644
--- a/src/resources/contents/lyre.png
+++ b/src/resources/contents/lyre.png
Binary files differ
diff --git a/src/resources/contents/tinker.png b/src/resources/contents/tinker.png
index 8ac7bfdd..9709cee8 100644
--- a/src/resources/contents/tinker.png
+++ b/src/resources/contents/tinker.png
Binary files differ
diff --git a/src/resources/contents/usable.png b/src/resources/contents/usable.png
index dbbf6619..2bc93a7d 100644
--- a/src/resources/contents/usable.png
+++ b/src/resources/contents/usable.png
Binary files differ