diff --git a/include/nana/gui/widgets/label.hpp b/include/nana/gui/widgets/label.hpp index 6d72cd4e..aa28effc 100644 --- a/include/nana/gui/widgets/label.hpp +++ b/include/nana/gui/widgets/label.hpp @@ -58,6 +58,7 @@ namespace nana label(); label(window, bool visible); label(window, const nana::string& text, bool visible = true); + label(window parent, const nana::char_t* text, bool visible = true) :label(parent, nana::string(text),visible) {}; label(window, const rectangle& = {}, bool visible = true); label& transparent(bool); ///< Switchs the label widget to the transparent background mode. bool transparent() const throw(); diff --git a/source/gui/widgets/picture.cpp b/source/gui/widgets/picture.cpp index 707edce5..9733e120 100644 --- a/source/gui/widgets/picture.cpp +++ b/source/gui/widgets/picture.cpp @@ -143,7 +143,8 @@ namespace nana _m_draw_background(valid_area.width, valid_area.height); - backimg.image.paste(valid_area, graph, pos); + if ( ! backimg.image.empty()) + backimg.image.paste(valid_area, graph, pos); } } else @@ -163,7 +164,7 @@ namespace nana if (graph && (bground_mode::basic != API::effects_bground_mode(*impl_->wdg_ptr))) { - if (w < graph->size().width || h < graph->size().width || impl_->backimg.image.alpha()) + if (w < graph->size().width || h < graph->size().height /* .width ??? */ || impl_->backimg.image.alpha()) { auto & bground = impl_->gradual_bground; if (bground.gradual_from.invisible() || bground.gradual_to.invisible())