Browse Source

Fix GetTableRelativeIndex() returning wrong index for datagrid rows

Relative indices weren't marked as dirty upon addition or removal of children elements.
Victor Luchitz 13 years ago
parent
commit
7d8cff7f3c
1 changed files with 2 additions and 0 deletions
  1. 2 0
      Source/Controls/ElementDataGridRow.cpp

+ 2 - 0
Source/Controls/ElementDataGridRow.cpp

@@ -386,6 +386,7 @@ void ElementDataGridRow::AddChildren(int first_row_added, int num_rows_added)
 		for (int i = first_row_added + num_rows_added; i < (int)children.size(); i++)
 		for (int i = first_row_added + num_rows_added; i < (int)children.size(); i++)
 		{
 		{
 			children[i]->SetChildIndex(i);
 			children[i]->SetChildIndex(i);
+			children[i]->DirtyTableRelativeIndex();
 		}
 		}
 
 
 		if (parent_row)
 		if (parent_row)
@@ -420,6 +421,7 @@ void ElementDataGridRow::RemoveChildren(int first_row_removed, int num_rows_remo
     for (int i = first_row_removed; i < (int) children.size(); i++)
     for (int i = first_row_removed; i < (int) children.size(); i++)
 	{
 	{
 		children[i]->SetChildIndex(i);
 		children[i]->SetChildIndex(i);
+		children[i]->DirtyTableRelativeIndex();
 	}
 	}
 
 
 	Rocket::Core::Dictionary parameters;
 	Rocket::Core::Dictionary parameters;