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