- m_bound_hilight.x -= 3;
- m_bound_hilight.y -= 3;
- m_bound_hilight.width += 7;
- m_bound_hilight.height += 7;
+ m_bound_hilight.x -= 5;
+ m_bound_hilight.y -= 5;
+ m_bound_hilight.width += 9;
+ m_bound_hilight.height += 9;
m_bound_label.width = lw;
m_bound_label.height = lh;
AssignRect( m_bound_hilight, m_bound_label );
m_bound_label.width = lw;
m_bound_label.height = lh;
AssignRect( m_bound_hilight, m_bound_label );
AssignRect( m_bound_hilight, m_bound_all );
AssignRect( m_bound_icon, 0, 0, 0, 0 );
break;
AssignRect( m_bound_hilight, m_bound_all );
AssignRect( m_bound_icon, 0, 0, 0, 0 );
break;
AssignRect( m_bound_icon, 0, 0, 0, 0 );
AssignRect( m_bound_icon, 0, 0, 0, 0 );
- dc->DrawRectangle( m_bound_hilight.x-2, m_bound_hilight.y-2,
- m_bound_hilight.width+4, m_bound_hilight.height+4 );
+ dc->DrawRectangle( m_bound_hilight.x, m_bound_hilight.y,
+ m_bound_hilight.width, m_bound_hilight.height );
- dc->DrawRectangle( m_bound_hilight.x-2, m_bound_hilight.y-2,
- m_bound_hilight.width+4, m_bound_hilight.height+4 );
+ dc->DrawRectangle( m_bound_hilight.x, m_bound_hilight.y,
+ m_bound_hilight.width, m_bound_hilight.height );
wxListLineData *line = (wxListLineData*)node->Data();
int dummy = 0;
line->GetSize( dummy, lineSpacing );
wxListLineData *line = (wxListLineData*)node->Data();
int dummy = 0;
line->GetSize( dummy, lineSpacing );
int entireHeight = m_lines.Number() * lineSpacing + 10;
SetScrollbars( m_xScroll, m_yScroll, 0, (entireHeight+10) / m_yScroll, 0, 0, TRUE );
GetClientSize( &clientWidth, &clientHeight );
int entireHeight = m_lines.Number() * lineSpacing + 10;
SetScrollbars( m_xScroll, m_yScroll, 0, (entireHeight+10) / m_yScroll, 0, 0, TRUE );
GetClientSize( &clientWidth, &clientHeight );
node = m_lines.First();
while (node)
{
wxListLineData *line = (wxListLineData*)node->Data();
line->SetPosition( &dc, x, y, clientWidth );
node = m_lines.First();
while (node)
{
wxListLineData *line = (wxListLineData*)node->Data();
line->SetPosition( &dc, x, y, clientWidth );
for (int i = 0; i < GetColumnCount(); i++)
{
line->SetColumnPosition( i, col_x );
for (int i = 0; i < GetColumnCount(); i++)
{
line->SetColumnPosition( i, col_x );
- wxNode *node = m_lines.Nth( item.m_itemId );
- if (node)
- m_lines.Insert( node, line );
+ if ((item.m_itemId >= 0) && (item.m_itemId < (int)m_lines.GetCount()))
+ {
+ wxNode *node = m_lines.Nth( item.m_itemId );
+ if (node) m_lines.Insert( node, line );
+ }
{
if (item.m_width == wxLIST_AUTOSIZE_USEHEADER) item.m_width = GetTextLength( item.m_text );
wxListHeaderData *column = new wxListHeaderData( item );
{
if (item.m_width == wxLIST_AUTOSIZE_USEHEADER) item.m_width = GetTextLength( item.m_text );
wxListHeaderData *column = new wxListHeaderData( item );
- wxNode *node = m_columns.Nth( col );
- if (node)
- m_columns.Insert( node, column );
+ if ((col >= 0) && (col < (int)m_columns.GetCount()))
+ {
+ wxNode *node = m_columns.Nth( col );
+ if (node)
+ m_columns.Insert( node, column );
+ }