fix menu image issue
This commit is contained in:
parent
ee9d102f8d
commit
331f19e679
@ -17,7 +17,6 @@
|
|||||||
#include "widget.hpp"
|
#include "widget.hpp"
|
||||||
#include <nana/concepts.hpp>
|
#include <nana/concepts.hpp>
|
||||||
#include <nana/key_type.hpp>
|
#include <nana/key_type.hpp>
|
||||||
//#include <nana/paint/graphics.hpp>
|
|
||||||
#include <functional>
|
#include <functional>
|
||||||
#include <initializer_list>
|
#include <initializer_list>
|
||||||
|
|
||||||
|
@ -108,7 +108,7 @@ namespace nana
|
|||||||
|
|
||||||
virtual void background(graph_reference, window) = 0;
|
virtual void background(graph_reference, window) = 0;
|
||||||
virtual void item(graph_reference, const nana::rectangle&, const attr&) = 0;
|
virtual void item(graph_reference, const nana::rectangle&, const attr&) = 0;
|
||||||
virtual void item_image(graph_reference, const nana::point&, const paint::image&) = 0;
|
virtual void item_image(graph_reference, const nana::point&, unsigned image_px, const paint::image&) = 0;
|
||||||
virtual void item_text(graph_reference, const nana::point&, const nana::string&, unsigned text_pixels, const attr&) = 0;
|
virtual void item_text(graph_reference, const nana::point&, const nana::string&, unsigned text_pixels, const attr&) = 0;
|
||||||
virtual void sub_arrow(graph_reference, const nana::point&, unsigned item_pixels, const attr&) = 0;
|
virtual void sub_arrow(graph_reference, const nana::point&, unsigned item_pixels, const attr&) = 0;
|
||||||
};
|
};
|
||||||
|
@ -144,9 +144,9 @@ namespace nana
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
void item_image(graph_reference graph, const nana::point& pos, const paint::image& img)
|
void item_image(graph_reference graph, const nana::point& pos, unsigned image_px, const paint::image& img)
|
||||||
{
|
{
|
||||||
img.paste(graph, pos.x, pos.y);
|
img.stretch(img.size(), graph, { pos, ::nana::size(image_px, image_px)});
|
||||||
}
|
}
|
||||||
|
|
||||||
void item_text(graph_reference graph, const nana::point& pos, const nana::string& text, unsigned text_pixels, const attr& at)
|
void item_text(graph_reference graph, const nana::point& pos, const nana::string& text, unsigned text_pixels, const attr& at)
|
||||||
@ -524,6 +524,7 @@ namespace nana
|
|||||||
renderer->background(*graph_, *widget_);
|
renderer->background(*graph_, *widget_);
|
||||||
|
|
||||||
const unsigned item_h_px = _m_item_height();
|
const unsigned item_h_px = _m_item_height();
|
||||||
|
const unsigned image_px = item_h_px - 2;
|
||||||
nana::rectangle item_r(2, 2, graph_->width() - 4, item_h_px);
|
nana::rectangle item_r(2, 2, graph_->width() - 4, item_h_px);
|
||||||
|
|
||||||
unsigned strpixels = item_r.width - 60;
|
unsigned strpixels = item_r.width - 60;
|
||||||
@ -552,7 +553,7 @@ namespace nana
|
|||||||
nana::string text = API::transform_shortkey_text(m.text, hotkey, &hotkey_pos);
|
nana::string text = API::transform_shortkey_text(m.text, hotkey, &hotkey_pos);
|
||||||
|
|
||||||
if(m.image.empty() == false)
|
if(m.image.empty() == false)
|
||||||
renderer->item_image(*graph_, nana::point(item_r.x + 5, item_r.y + (item_h_px - m.image.size().height) / 2), m.image);
|
renderer->item_image(*graph_, nana::point(item_r.x + 5, item_r.y + static_cast<int>(item_h_px - image_px) / 2 - 1), image_px, m.image);
|
||||||
|
|
||||||
renderer->item_text(*graph_, nana::point(item_r.x + 40, item_r.y + text_top_off), text, strpixels, attr);
|
renderer->item_text(*graph_, nana::point(item_r.x + 40, item_r.y + text_top_off), text, strpixels, attr);
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user