| 758 | } |
| 759 | |
| 760 | void |
| 761 | TrackerPanel::insertTableRow(const TrackMarkerPtr & node, |
| 762 | int index) |
| 763 | { |
| 764 | assert(index >= 0); |
| 765 | |
| 766 | _imp->model->insertRow(index); |
| 767 | |
| 768 | TrackDatas data; |
| 769 | data.marker = node; |
| 770 | _imp->makeTrackRowItems(*node, index, data); |
| 771 | |
| 772 | if ( index >= (int)_imp->items.size() ) { |
| 773 | _imp->items.push_back(data); |
| 774 | } else { |
| 775 | TrackItems::iterator it = _imp->items.begin(); |
| 776 | std::advance(it, index); |
| 777 | _imp->items.insert(it, data); |
| 778 | } |
| 779 | } |
| 780 | |
| 781 | void |
| 782 | TrackerPanel::blockSelection() |