code review and int/unsigned consistence
This commit is contained in:
parent
e84f611761
commit
09da534719
@ -2356,8 +2356,8 @@ namespace nana
|
|||||||
|
|
||||||
unsigned ext_w = scheme_ptr->ext_w;
|
unsigned ext_w = scheme_ptr->ext_w;
|
||||||
if (pos == 0 && checkable) // only before the first column (display_order=0 ?)
|
if (pos == 0 && checkable) // only before the first column (display_order=0 ?)
|
||||||
ext_w += 18;
|
ext_w += 18; // add to geom. scheme (width of the checker) ??
|
||||||
header.item_width(pos, max_w + ext_w + 1 < max ? max_w + ext_w + 1 : max);
|
header.item_width(pos, std::min(max, max_w + ext_w + 1 ));
|
||||||
return max_w;
|
return max_w;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -2842,7 +2842,7 @@ namespace nana
|
|||||||
{
|
{
|
||||||
facade<element::arrow> arrow("hollow_triangle");
|
facade<element::arrow> arrow("hollow_triangle");
|
||||||
arrow.direction(essence_->lister.sort_reverse() ? ::nana::direction::south : ::nana::direction::north);
|
arrow.direction(essence_->lister.sort_reverse() ? ::nana::direction::south : ::nana::direction::north);
|
||||||
arrow.draw(graph, {}, colors::black, { x + static_cast<int>(item.pixels - 16) / 2, -4, 16, 16 }, element_state::normal);
|
arrow.draw(graph, {}, colors::black, { x + (static_cast<int>(item.pixels) - 16) / 2, -4, 16, 16 }, element_state::normal); // geometric scheme?
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -2892,11 +2892,11 @@ namespace nana
|
|||||||
auto bgcolor = wdptr->bgcolor();
|
auto bgcolor = wdptr->bgcolor();
|
||||||
auto fgcolor = wdptr->fgcolor();
|
auto fgcolor = wdptr->fgcolor();
|
||||||
|
|
||||||
unsigned header_w = essence_->header.pixels();
|
int header_w = essence_->header.pixels();
|
||||||
essence_->graph->palette(false, bgcolor);
|
essence_->graph->palette(false, bgcolor);
|
||||||
if(header_w - essence_->scroll.offset_x < rect.width)
|
if( header_w - essence_->scroll.offset_x < static_cast<int>(rect.width) )
|
||||||
essence_->graph->rectangle(rectangle{ point(rect.x + static_cast<int>(header_w)-essence_->scroll.offset_x, rect.y),
|
essence_->graph->rectangle(rectangle{ point(rect.x + header_w -essence_->scroll.offset_x, rect.y),
|
||||||
size(static_cast<int>(rect.width) + essence_->scroll.offset_x - static_cast<int>(header_w), rect.height) },
|
size(static_cast<int>(rect.width) + essence_->scroll.offset_x - header_w , rect.height) },
|
||||||
true);
|
true);
|
||||||
|
|
||||||
es_lister & lister = essence_->lister;
|
es_lister & lister = essence_->lister;
|
||||||
@ -3040,12 +3040,12 @@ namespace nana
|
|||||||
/// Draws an item
|
/// Draws an item
|
||||||
void _m_draw_item(const category_t& cat,
|
void _m_draw_item(const category_t& cat,
|
||||||
const index_pair& item_pos,
|
const index_pair& item_pos,
|
||||||
const int x,
|
const int x, ///< left coordinate ?
|
||||||
const int y,
|
const int y, ///< top coordinate
|
||||||
const int txtoff,
|
const int txtoff, ///< below y to print the text
|
||||||
unsigned width,
|
unsigned width,
|
||||||
const nana::rectangle& content_r, ///< the rectangle where the full list content have to be drawn
|
const nana::rectangle& content_r, ///< the rectangle where the full list content have to be drawn
|
||||||
const std::vector<size_type>& seqs,
|
const std::vector<size_type>& seqs, ///< columns to print
|
||||||
nana::color bgcolor,
|
nana::color bgcolor,
|
||||||
nana::color fgcolor,
|
nana::color fgcolor,
|
||||||
item_state state
|
item_state state
|
||||||
@ -3069,11 +3069,11 @@ namespace nana
|
|||||||
bgcolor = bgcolor.blend(essence_->scheme_ptr->item_selected, 0.7); /// \todo create a parametre for amount of blend
|
bgcolor = bgcolor.blend(essence_->scheme_ptr->item_selected, 0.7); /// \todo create a parametre for amount of blend
|
||||||
}
|
}
|
||||||
|
|
||||||
unsigned show_w = width - essence_->scroll.offset_x;
|
unsigned show_w = std::min(content_r.width, width - essence_->scroll.offset_x);
|
||||||
if(show_w >= content_r.width) show_w = content_r.width;
|
|
||||||
|
|
||||||
auto graph = essence_->graph;
|
auto graph = essence_->graph;
|
||||||
//draw the background
|
|
||||||
|
//draw the background for the whole item
|
||||||
graph->rectangle(rectangle{ content_r.x, y, show_w, essence_->scheme_ptr->item_height }, true, bgcolor);
|
graph->rectangle(rectangle{ content_r.x, y, show_w, essence_->scheme_ptr->item_height }, true, bgcolor);
|
||||||
|
|
||||||
int item_xpos = x;
|
int item_xpos = x;
|
||||||
@ -3094,7 +3094,7 @@ namespace nana
|
|||||||
{
|
{
|
||||||
if (essence_->checkable)
|
if (essence_->checkable)
|
||||||
{
|
{
|
||||||
content_pos += 18;
|
content_pos += 18; // checker width, geom scheme?
|
||||||
|
|
||||||
element_state estate = element_state::normal;
|
element_state estate = element_state::normal;
|
||||||
if (essence_->pointer_where.first == parts::checker)
|
if (essence_->pointer_where.first == parts::checker)
|
||||||
@ -3120,17 +3120,17 @@ namespace nana
|
|||||||
if (item.img)
|
if (item.img)
|
||||||
{
|
{
|
||||||
nana::rectangle img_r(item.img_show_size);
|
nana::rectangle img_r(item.img_show_size);
|
||||||
img_r.x = content_pos + item_xpos + static_cast<int>(16 - item.img_show_size.width) / 2;
|
img_r.x = content_pos + item_xpos + (16 - static_cast<int>(item.img_show_size.width)) / 2; // center in 16 - geom scheme?
|
||||||
img_r.y = y + static_cast<int>(essence_->scheme_ptr->item_height - item.img_show_size.height) / 2;
|
img_r.y = y + (static_cast<int>(essence_->scheme_ptr->item_height) - static_cast<int>(item.img_show_size.height)) / 2; // center
|
||||||
item.img.stretch(rectangle{ item.img.size() }, *graph, img_r);
|
item.img.stretch(rectangle{ item.img.size() }, *graph, img_r);
|
||||||
}
|
}
|
||||||
content_pos += 18;
|
content_pos += 18; // image width, geom scheme?
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
bool draw_column = true;
|
bool draw_column = true;
|
||||||
|
|
||||||
if (static_cast<unsigned>(content_pos) < header.pixels)
|
if ( content_pos < static_cast<int>(header.pixels)) // we have room
|
||||||
{
|
{
|
||||||
auto inline_wdg = _m_get_inline_pane(cat, column_pos);
|
auto inline_wdg = _m_get_inline_pane(cat, column_pos);
|
||||||
if (inline_wdg)
|
if (inline_wdg)
|
||||||
|
Loading…
x
Reference in New Issue
Block a user