void Editor_updateTrackScroll() { int track_start_offset, sel_track, total_track_width = 0; int track_start_pixel = s_editorData.trackViewInfo.startPixel; TrackData* track_data = getTrackData(); TrackViewInfo* view_info = getTrackViewInfo(); total_track_width = TrackView_getWidth(getTrackViewInfo(), getTrackData()); track_start_offset = TrackView_getStartOffset(); track_start_pixel = eclampi(track_start_pixel, 0, emaxi(total_track_width - (view_info->windowSizeX / 2), 0)); sel_track = TrackView_getScrolledTrack(view_info, track_data, track_data->activeTrack, track_start_offset - track_start_pixel); if (sel_track != track_data->activeTrack) TrackData_setActiveTrack(track_data, sel_track); s_editorData.trackViewInfo.startPixel = track_start_pixel; }
bool TrackView_isSelectedTrackVisible(TrackViewInfo* viewInfo, TrackData* trackData, int track) { return TrackView_getScrolledTrack(viewInfo, trackData, track, TrackView_getStartOffset() - viewInfo->startPixel) == track; }