| 445 | } |
| 446 | |
| 447 | void MultiListBox::insertItemAt(size_t _index, const UString& _name, Any _data) |
| 448 | { |
| 449 | MYGUI_ASSERT(!mVectorColumnInfo.empty(), "MultiListBox::insertItemAt"); |
| 450 | MYGUI_ASSERT_RANGE_INSERT(_index, mVectorColumnInfo.front().list->getItemCount(), "MultiListBox::insertItemAt"); |
| 451 | if (ITEM_NONE == _index) |
| 452 | _index = mVectorColumnInfo.front().list->getItemCount(); |
| 453 | |
| 454 | // если надо, то меняем выделенный элемент |
| 455 | // при сортировке, обновится |
| 456 | if ((mItemSelected != ITEM_NONE) && (_index <= mItemSelected)) |
| 457 | mItemSelected++; |
| 458 | |
| 459 | size_t index = BiIndexBase::insertItemAt(_index); |
| 460 | |
| 461 | // вставляем во все поля пустые, а потом присваиваем первому |
| 462 | for (auto& iter : mVectorColumnInfo) |
| 463 | { |
| 464 | iter.list->insertItemAt(index, UString()); |
| 465 | } |
| 466 | mVectorColumnInfo.front().list->setItemNameAt(index, _name); |
| 467 | mVectorColumnInfo.front().list->setItemDataAt(index, _data); |
| 468 | |
| 469 | frameAdvise(true); |
| 470 | } |
| 471 | |
| 472 | void MultiListBox::removeItemAt(size_t _index) |
| 473 | { |
nothing calls this directly
no test coverage detected