mirror of
https://github.com/tuxbox-fork-migrations/recycled-ni-neutrino.git
synced 2025-09-04 12:18:27 +02:00
framebuffer_ng: implement getIconPath
this implements upstream commit1cfe8b44
in framebuffer_ng Origin commit data ------------------ Branch: ni/coolstream Commit:3f48c41090
Author: Stefan Seyfried <seife@tuxbox-git.slipkontur.de> Date: 2016-10-22 (Sat, 22 Oct 2016) ------------------ This commit was generated by Migit
This commit is contained in:
@@ -719,6 +719,18 @@ void CFrameBuffer::setIconBasePath(const std::string & iconPath)
|
||||
iconBasePath += "/";
|
||||
}
|
||||
|
||||
std::string CFrameBuffer::getIconPath(std::string icon_name, std::string file_type)
|
||||
{
|
||||
std::string path, filetype;
|
||||
filetype = "." + file_type;
|
||||
path = std::string(ICONSDIR_VAR) + "/" + icon_name + filetype;
|
||||
if (access(path.c_str(), F_OK))
|
||||
path = iconBasePath + "/" + icon_name + filetype;
|
||||
if (icon_name.find("/", 0) != std::string::npos)
|
||||
path = icon_name;
|
||||
return path;
|
||||
}
|
||||
|
||||
void CFrameBuffer::getIconSize(const char * const filename, int* width, int *height)
|
||||
{
|
||||
*width = 0;
|
||||
@@ -816,13 +828,7 @@ bool CFrameBuffer::paintIcon(const std::string & filename, const int x, const in
|
||||
/* we cache and check original name */
|
||||
it = icon_cache.find(filename);
|
||||
if(it == icon_cache.end()) {
|
||||
std::string newname = filename;
|
||||
/* if it is not an absolute path, search in configured paths */
|
||||
if (filename.find("/", 0) == std::string::npos) {
|
||||
newname = ICONSDIR_VAR + filename + ".png";
|
||||
if (access(newname.c_str(), F_OK))
|
||||
newname = iconBasePath + filename + ".png";
|
||||
}
|
||||
std::string newname = getIconPath(filename);
|
||||
//printf("CFrameBuffer::paintIcon: check for %s\n", newname.c_str());fflush(stdout);
|
||||
|
||||
data = g_PicViewer->getIcon(newname, &width, &height);
|
||||
@@ -841,9 +847,7 @@ bool CFrameBuffer::paintIcon(const std::string & filename, const int x, const in
|
||||
goto _display;
|
||||
}
|
||||
|
||||
newname = ICONSDIR_VAR + filename + ".raw";
|
||||
if (access(newname.c_str(), F_OK))
|
||||
newname = iconBasePath + filename + ".raw";
|
||||
newname = getIconPath(filename, "raw");
|
||||
|
||||
lfd = open(newname.c_str(), O_RDONLY);
|
||||
|
||||
|
Reference in New Issue
Block a user