diff --git a/src/gui/components/cc_item_infobox.cpp b/src/gui/components/cc_item_infobox.cpp index 77ff00bd5..1a9490aab 100644 --- a/src/gui/components/cc_item_infobox.cpp +++ b/src/gui/components/cc_item_infobox.cpp @@ -81,6 +81,19 @@ void CComponentsInfoBox::initVarInfobox() x_offset = 10; } +void CComponentsInfoBox::setPicture(const std::string& picture_name) +{ + pic_name = picture_name; +} + +void CComponentsInfoBox::setPicture(const char* picture_name) +{ + string s_tmp = ""; + if (picture_name) + s_tmp = string(picture_name); + setPicture(s_tmp); +} + void CComponentsInfoBox::paintPicture() { //ensure empty pic object diff --git a/src/gui/components/cc_item_infobox.h b/src/gui/components/cc_item_infobox.h index afcfffd5b..362ab03a8 100644 --- a/src/gui/components/cc_item_infobox.h +++ b/src/gui/components/cc_item_infobox.h @@ -73,8 +73,10 @@ class CComponentsInfoBox : public CComponentsText ///set property: space around fram and beetween picture and textbox inline void setSpaceOffset(const int offset){x_offset = offset;}; - ///set property: path or name of displayed image - inline void setPicture(const std::string& picture_name){pic_name = picture_name;}; + ///set property: path or name of displayed image, parameter as string + void setPicture(const std::string& picture_name); + ///set property: path or name of displayed image, parameter as const char* + void setPicture(const char* picture_name); ///paint item void paint(bool do_save_bg = CC_SAVE_SCREEN_YES); diff --git a/src/gui/components/cc_item_picture.cpp b/src/gui/components/cc_item_picture.cpp index bc8f67472..f7ea5f2b8 100644 --- a/src/gui/components/cc_item_picture.cpp +++ b/src/gui/components/cc_item_picture.cpp @@ -87,6 +87,13 @@ void CComponentsPicture::setPicture(const std::string& picture_name) initCCItem(); } +void CComponentsPicture::setPicture(const char* picture_name) +{ + string s_tmp = ""; + if (picture_name) + s_tmp = string(picture_name); + setPicture(s_tmp); +} void CComponentsPicture::setPictureAlign(const int alignment) { @@ -230,6 +237,14 @@ void CComponentsChannelLogo::setPicture(const std::string& picture_name) initVarPictureChannellLogo(); } +void CComponentsChannelLogo::setPicture(const char* picture_name) +{ + string s_tmp = ""; + if (picture_name) + s_tmp = string(picture_name); + this->setPicture(s_tmp); +} + void CComponentsChannelLogo::setChannel(const uint64_t& channelId, const std::string& channelName) { channel_id = channelId; diff --git a/src/gui/components/cc_item_picture.h b/src/gui/components/cc_item_picture.h index 0b2710be9..56b90859e 100644 --- a/src/gui/components/cc_item_picture.h +++ b/src/gui/components/cc_item_picture.h @@ -87,6 +87,7 @@ class CComponentsPicture : public CComponentsItem virtual inline void setPicturePaint(bool paint_p){pic_paint = paint_p;}; virtual inline void setPicturePaintBackground(bool paintBg){pic_paintBg = paintBg;}; virtual void setPicture(const std::string& picture_name); + virtual void setPicture(const char* picture_name); virtual void setPictureAlign(const int alignment); virtual inline bool isPicPainted(){return pic_painted;}; @@ -120,6 +121,7 @@ class CComponentsChannelLogo : public CComponentsPicture, CPictureViewer void setChannel(const uint64_t& channelId, const std::string& channelName); void setPicture(const std::string& picture_name); + void setPicture(const char* picture_name); bool hasLogo(){return has_logo;}; void paint(bool do_save_bg = CC_SAVE_SCREEN_YES); };