GUI: simplify icon display by moving up the thumbnail test up to reslistpager as it was identical in restable and reslist
This commit is contained in:
parent
f500474643
commit
1eeeba4874
@ -143,7 +143,6 @@ public:
|
||||
virtual void suggest(const vector<string>uterms,
|
||||
map<string, vector<string> >& sugg);
|
||||
virtual string absSep() {return (const char *)(prefs.abssep.toUtf8());}
|
||||
virtual string iconUrl(RclConfig *, Rcl::Doc& doc);
|
||||
#ifdef USING_WEBENGINE
|
||||
virtual string linkPrefix() override {return "http://localhost/";}
|
||||
#endif
|
||||
@ -292,29 +291,6 @@ void QtGuiResListPager::suggest(const vector<string>uterms,
|
||||
}
|
||||
}
|
||||
|
||||
string QtGuiResListPager::iconUrl(RclConfig *config, Rcl::Doc& doc)
|
||||
{
|
||||
if (doc.ipath.empty()) {
|
||||
vector<Rcl::Doc> docs;
|
||||
docs.push_back(doc);
|
||||
vector<string> paths;
|
||||
Rcl::docsToPaths(docs, paths);
|
||||
if (!paths.empty()) {
|
||||
string path;
|
||||
LOGDEB2("ResList::iconUrl: source path [" << paths[0] << "]\n");
|
||||
if (thumbPathForUrl(cstr_fileu + paths[0], 128, path)) {
|
||||
LOGDEB2("ResList::iconUrl: icon path [" << path << "]\n");
|
||||
return cstr_fileu + path;
|
||||
} else {
|
||||
LOGDEB2("ResList::iconUrl: no icon: path [" << path << "]\n");
|
||||
}
|
||||
} else {
|
||||
LOGDEB("ResList::iconUrl: docsToPaths failed\n");
|
||||
}
|
||||
}
|
||||
return ResListPager::iconUrl(config, doc);
|
||||
}
|
||||
|
||||
/////// /////// End reslistpager methods
|
||||
|
||||
string PlainToRichQtReslist::startMatch(unsigned int idx)
|
||||
|
||||
@ -83,7 +83,6 @@ public:
|
||||
virtual string trans(const string& in);
|
||||
virtual const string &parFormat();
|
||||
virtual string absSep() {return (const char *)(prefs.abssep.toUtf8());}
|
||||
virtual string iconUrl(RclConfig *, Rcl::Doc& doc);
|
||||
private:
|
||||
ResTable *m_parent;
|
||||
};
|
||||
@ -109,22 +108,6 @@ const string& ResTablePager::parFormat()
|
||||
return prefs.creslistformat;
|
||||
}
|
||||
|
||||
string ResTablePager::iconUrl(RclConfig *config, Rcl::Doc& doc)
|
||||
{
|
||||
if (doc.ipath.empty()) {
|
||||
vector<Rcl::Doc> docs;
|
||||
docs.push_back(doc);
|
||||
vector<string> paths;
|
||||
Rcl::docsToPaths(docs, paths);
|
||||
if (!paths.empty()) {
|
||||
string path;
|
||||
if (thumbPathForUrl(cstr_fileu + paths[0], 128, path)) {
|
||||
return cstr_fileu + path;
|
||||
}
|
||||
}
|
||||
}
|
||||
return ResListPager::iconUrl(config, doc);
|
||||
}
|
||||
|
||||
/////////////////////////////////////////////////////////////////////////////
|
||||
/// Detail text area methods
|
||||
|
||||
@ -478,9 +478,29 @@ string ResListPager::prevUrl()
|
||||
|
||||
string ResListPager::iconUrl(RclConfig *config, Rcl::Doc& doc)
|
||||
{
|
||||
// If this is a top level doc, check for a thumbnail image
|
||||
if (doc.ipath.empty()) {
|
||||
vector<Rcl::Doc> docs;
|
||||
docs.push_back(doc);
|
||||
vector<string> paths;
|
||||
Rcl::docsToPaths(docs, paths);
|
||||
if (!paths.empty()) {
|
||||
string path;
|
||||
LOGDEB2("ResList::iconUrl: source path [" << paths[0] << "]\n");
|
||||
if (thumbPathForUrl(cstr_fileu + paths[0], 128, path)) {
|
||||
LOGDEB2("ResList::iconUrl: icon path [" << path << "]\n");
|
||||
return cstr_fileu + path;
|
||||
} else {
|
||||
LOGDEB2("ResList::iconUrl: no icon: path [" << path << "]\n");
|
||||
}
|
||||
} else {
|
||||
LOGDEB("ResList::iconUrl: docsToPaths failed\n");
|
||||
}
|
||||
}
|
||||
|
||||
// No thumbnail, look for the MIME type icon.
|
||||
string apptag;
|
||||
doc.getmeta(Rcl::Doc::keyapptg, &apptag);
|
||||
|
||||
return path_pathtofileurl(config->getMimeIconPath(doc.mimetype, apptag));
|
||||
}
|
||||
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user