Selection macro:
Code: Select all
var viewState = Tracktion.getViewState();
var tagString = viewState.getProperty ('enabledTrackTags');
tagString = "" + tagString;
var enabledTags = tagString.split("|");
var numEnabledTags = enabledTags.length;
var tracks = Tracktion.getEditElements ('track');
var trackSelected = false;
Tracktion.selectItem ('none');
var numTracks = tracks.length;
for (var i = 0; i < numTracks; ++i)
{
trackSelected = false;
tagString = tracks[i].getProperty('tags');
if(tagString != "")
{
tagString = "" + tagString;
trackTags = tagString.split("|");
var numTrackTags = trackTags.length;
for (var j = 0; j < numTrackTags; ++j)
{
for (var k = 0; k < numEnabledTags; ++k)
{
if(trackTags[j] == enabledTags[k])
{
Tracktion.addObjectsToSelection (tracks[i]);
trackSelected = true;
break;
}
}
if(trackSelected == true)
break;
}
}
}
//Tracktion.soloSelectedTracks();
//Tracktion.muteSelectedTracks();
Volume plugin macro:
Code: Select all
var viewState = Tracktion.getViewState();
var tagString = viewState.getProperty ('enabledTrackTags');
tagString = "" + tagString;
var enabledTags = tagString.split("|");
var numEnabledTags = enabledTags.length;
var tracks = Tracktion.getEditElements ('track');
var selectedTracks = [];
var m = 0;
var trackSelected = false;
Tracktion.selectItem ('none');
var numTracks = tracks.length;
for (var i = 0; i < numTracks; ++i)
{
trackSelected = false;
tagString = tracks[i].getProperty('tags');
if(tagString != "")
{
tagString = "" + tagString;
trackTags = tagString.split("|");
var numTrackTags = trackTags.length;
for (var j = 0; j < numTrackTags; ++j)
{
for (var k = 0; k < numEnabledTags; ++k)
{
if(trackTags[j] == enabledTags[k])
{
selectedTracks[m] = tracks[i];
m = m + 1;
trackSelected = true;
break;
}
}
if(trackSelected == true)
break;
}
}
}
var plugins = Tracktion.getEditElements ('plugin');
var numPlugins = plugins.length - 1;
var pluginTrack;
var trackID;
var plugin;
var volPlugins = [];
m = 0;
for (var i = 0; i < numPlugins; ++i)
{
plugin = plugins[i];
if(plugin.getProperty ('type') == 'volume')
{
Tracktion.addObjectsToSelection (plugin);
var pluginTrack = Tracktion.getTrackFromSelectedObject();
trackID = pluginTrack.getProperty('mediaId');
Tracktion.selectItem ('none');
numTracks = selectedTracks.length;
for (var j = 0; j < numTracks; ++j)
{
if(selectedTracks[j].getProperty('mediaId') == trackID)
volPlugins[m] = plugin;
m = m + 1;
}
}
}
var numPlugins = volPlugins.length;
for (var i = 0; i < numPlugins; ++i)
Tracktion.addObjectsToSelection (volPlugins[i]);