diff --git a/src/gui/moviebrowser.cpp b/src/gui/moviebrowser.cpp index 05791d791..6fd6c4f77 100644 --- a/src/gui/moviebrowser.cpp +++ b/src/gui/moviebrowser.cpp @@ -2037,6 +2037,7 @@ bool CMovieBrowser::onButtonPressMainFrame(neutrino_msg_t msg) TRACE("[mb]->new sorting %d,%s\n",m_settings.sorting.item,g_Locale->getText(m_localizedItemName[m_settings.sorting.item])); refreshBrowserList(); + refreshMovieInfo(); refreshFoot(); } } @@ -2325,19 +2326,20 @@ bool CMovieBrowser::onButtonPressMovieInfoList(neutrino_msg_t msg) return (result); } -std::string CMovieBrowser::formatDeleteMsg(MI_MOVIE_INFO *movieinfo, Font *msgFont, const int boxWidth) +std::string CMovieBrowser::formatDeleteMsg(MI_MOVIE_INFO *movieinfo, int msgFont, const int boxWidth) { + Font *msgFont_ = g_Font[msgFont]; int msgWidth = boxWidth - 20; std::string msg = g_Locale->getText(LOCALE_FILEBROWSER_DODELETE1); msg += "\n"; if (!movieinfo->epgTitle.empty()) { - int titleW = msgFont->getRenderWidth(movieinfo->epgTitle); + int titleW = msgFont_->getRenderWidth(movieinfo->epgTitle); int infoW = 0; int zW = 0; if (!movieinfo->epgInfo1.empty()) { - infoW = msgFont->getRenderWidth(movieinfo->epgInfo1); - zW = msgFont->getRenderWidth(" ()"); + infoW = msgFont_->getRenderWidth(movieinfo->epgInfo1); + zW = msgFont_->getRenderWidth(" ()"); } if ((titleW+infoW+zW) <= msgWidth) { @@ -2374,7 +2376,7 @@ bool CMovieBrowser::onDeleteFile(MI_MOVIE_INFO *movieinfo, bool skipAsk) bool result = false; /* default font for ShowMsg */ - Font *msgFont = g_Font[SNeutrinoSettings::FONT_TYPE_MENU]; + int msgFont = SNeutrinoSettings::FONT_TYPE_MENU; /* default width for ShowMsg */ int msgBoxWidth = 450; diff --git a/src/gui/moviebrowser.h b/src/gui/moviebrowser.h index a59779b83..4f502ded9 100644 --- a/src/gui/moviebrowser.h +++ b/src/gui/moviebrowser.h @@ -430,7 +430,7 @@ class CMovieBrowser : public CMenuTarget void onSetGUIWindowNext(void); void onSetGUIWindowPrev(void); bool onDelete(bool cursor_only = false); - std::string formatDeleteMsg(MI_MOVIE_INFO *movieinfo, Font *msgFont, const int boxWidth = 450); + std::string formatDeleteMsg(MI_MOVIE_INFO *movieinfo, int msgFont, const int boxWidth = 450); bool onDeleteFile(MI_MOVIE_INFO *movieinfo, bool skipAsk = false); // P4 bool onSortMovieInfoHandleList(std::vector& pv_handle_list, MB_INFO_ITEM sort_type, MB_DIRECTION direction); diff --git a/src/system/helpers.cpp b/src/system/helpers.cpp index 34b137082..266ffbf14 100644 --- a/src/system/helpers.cpp +++ b/src/system/helpers.cpp @@ -44,6 +44,7 @@ #include #include #include "debug.h" +#include #include #include using namespace std; @@ -567,21 +568,22 @@ std::string trim(std::string &str, const std::string &trimChars /*= " \n\r\t"*/) return result.erase(0, result.find_first_not_of(trimChars)); } -std::string cutString(const std::string str, Font *msgFont, const int width) +std::string cutString(const std::string str, int msgFont, const int width) { + Font *msgFont_ = g_Font[msgFont]; std::string ret = str; ret = trim(ret); - int sw = msgFont->getRenderWidth(ret); + int sw = msgFont_->getRenderWidth(ret); if (sw <= width) return ret; else { std::string z = "..."; - int zw = msgFont->getRenderWidth(z); + int zw = msgFont_->getRenderWidth(z); if (width <= 2*zw) return ret; do { ret = ret.substr(0, ret.length()-1); - sw = msgFont->getRenderWidth(ret); + sw = msgFont_->getRenderWidth(ret); } while (sw+zw > width); ret = trim(ret) + z; } diff --git a/src/system/helpers.h b/src/system/helpers.h index 9d0efec01..5c5a8be74 100644 --- a/src/system/helpers.h +++ b/src/system/helpers.h @@ -37,8 +37,6 @@ #include #include -#include - int my_system(const char * cmd); int my_system(int argc, const char *arg, ...); /* argc is number of arguments including command */ @@ -71,7 +69,7 @@ std::string getFileName(std::string &file); std::string getFileExt(std::string &file); std::string getNowTimeStr(const char* format); std::string trim(std::string &str, const std::string &trimChars = " \n\r\t"); -std::string cutString(const std::string str, Font *msgFont, const int width); +std::string cutString(const std::string str, int msgFont, const int width); std::string strftime(const char *format, const struct tm *tm); std::string strftime(const char *format, time_t when, bool gm = false); time_t toEpoch(std::string &date);