Exemple #1
0
void ShowSelOnly(COMMAND_T*)
{
	for (int i = 1; i <= GetNumTracks(); i++)
	{
		MediaTrack* tr = CSurf_TrackFromID(i, false);
		if (*(int*)GetSetMediaTrackInfo(tr, "I_SELECTED", NULL))
			SetTrackVis(tr, 3);
		else
			SetTrackVis(tr, 0);

	}
	TrackList_AdjustWindows(MAJORADJUST);
	UpdateTimeline();
	Undo_OnStateChangeEx(__LOCALIZE("Show selected tracks, hide others","sws_undo"), UNDO_STATE_TRACKCFG, -1);
}
Exemple #2
0
void HideAll(COMMAND_T* = NULL)
{
	for (int i = 1; i <= GetNumTracks(); i++)
		SetTrackVis(CSurf_TrackFromID(i, false), 0);
	TrackList_AdjustWindows(MAJORADJUST);
	UpdateTimeline();
	Undo_OnStateChangeEx(__LOCALIZE("Hide all tracks","sws_undo"), UNDO_STATE_TRACKCFG, -1);
}
Exemple #3
0
bool FilteredVisState::UpdateReaper(bool bHideFiltered)
{
	bool bChanged = false;

	// Remove tracks from filteredOut that aren't in the project
	for (int i = 0; i < m_filteredOut.GetSize(); i++)
		if (CSurf_TrackToID(m_filteredOut.Get(i)->tr, false) <= 0)
			m_filteredOut.Delete(i--, true);

	for (int i = 1; i <= GetNumTracks(); i++)
	{
		MediaTrack* tr = CSurf_TrackFromID(i, false);
		int iVis = GetTrackVis(tr);
		int iNewVis = iVis;
		bool bShow = !bHideFiltered || MatchesFilter(tr);

		// Is this track in the filteredOut list?
		int j;
		for (j = 0; j < m_filteredOut.GetSize(); j++)
			if (m_filteredOut.Get(j)->tr == tr)
				break;
		
		if (j < m_filteredOut.GetSize())
		{
			if (bShow)
			{
				iNewVis = m_filteredOut.Get(j)->iVis;
				m_filteredOut.Delete(j, true);
			}
			else
				iNewVis = 0;
		}
		else if (!bShow)
		{
			iNewVis = 0;
			TrackVisState* tvs = m_filteredOut.Add(new TrackVisState);
			tvs->tr = tr;
			tvs->iVis = iVis;
		}

		if (iVis != iNewVis)
		{
			SetTrackVis(tr, iNewVis);
			bChanged = true;
		}
	}

	if (bChanged)
	{
		TrackList_AdjustWindows(false);
		UpdateTimeline();
	}

	return bChanged;
}
Exemple #4
0
void ShowAllTCP(COMMAND_T*)
{
	for (int i = 1; i <= GetNumTracks(); i++)
	{
		MediaTrack* tr = CSurf_TrackFromID(i, false);
		SetTrackVis(tr, GetTrackVis(tr) | 2);
	}
	TrackList_AdjustWindows(MAJORADJUST);
	UpdateTimeline();
	Undo_OnStateChangeEx(__LOCALIZE("Show all tracks in TCP","sws_undo"), UNDO_STATE_TRACKCFG, -1);
}
Exemple #5
0
void ToggleHide(COMMAND_T*)
{
	for (int i = 1; i <= GetNumTracks(); i++)
	{
		MediaTrack* tr = CSurf_TrackFromID(i, false);
		if (*(int*)GetSetMediaTrackInfo(tr, "I_SELECTED", NULL))
			SetTrackVis(tr, GetTrackVis(tr) ? 0 : 3);
	}
	TrackList_AdjustWindows(MAJORADJUST);
	UpdateTimeline();
	Undo_OnStateChangeEx(__LOCALIZE("Toggle selected tracks fully visible/hidden","sws_undo"), UNDO_STATE_TRACKCFG, -1);
}