Search in sources :

Example 6 with Score

use of blue.score.Score in project blue by kunstmusik.

the class ScoreControllerTest method setUp.

@Before
public void setUp() {
    System.out.println("@Before setUp");
    this.scoreController = ScoreController.getInstance();
    scoreController.setScrollPane(new JScrollPane());
    InstanceContent content = new InstanceContent();
    Score score = new Score();
    scoreController.setScore(score);
    PolyObject pObj = (PolyObject) score.get(0);
    SoundLayer layer1 = new SoundLayer();
    SoundLayer layer2 = new SoundLayer();
    pObj.add(layer1);
    pObj.add(layer2);
    GenericScore score1 = new GenericScore();
    score1.setStartTime(2.0f);
    GenericScore score2 = new GenericScore();
    score2.setStartTime(4.0f);
    layer2.add(score1);
    layer2.add(score2);
    content.add(score);
    content.add(score1);
    content.add(score2);
    scoreController.setLookupAndContent(new AbstractLookup(content), content);
    this.buffer = scoreController.getScoreObjectBuffer();
}
Also used : JScrollPane(javax.swing.JScrollPane) Score(blue.score.Score) GenericScore(blue.soundObject.GenericScore) SoundLayer(blue.SoundLayer) InstanceContent(org.openide.util.lookup.InstanceContent) GenericScore(blue.soundObject.GenericScore) AbstractLookup(org.openide.util.lookup.AbstractLookup) PolyObject(blue.soundObject.PolyObject) Before(org.junit.Before)

Example 7 with Score

use of blue.score.Score in project blue by kunstmusik.

the class AutomationManager method parameterSelected.

/**
 * When parameter is selected, check if this parameter is in use and if by
 * this soundLayer, turn it off, otherwise move it to this soundLayer.
 *
 * @param soundLayer
 * @param param
 */
private void parameterSelected(ParameterIdList paramIdList, Parameter param) {
    String uniqueId = param.getUniqueId();
    if (param.isAutomationEnabled()) {
        if (paramIdList.contains(uniqueId)) {
            param.setAutomationEnabled(false);
            paramIdList.removeParameterId(uniqueId);
        } else {
            // TODO - This class needs further updating for generic
            // LayerGroup Design
            Score score = data.getScore();
            for (LayerGroup<? extends Layer> layerGroup : score) {
                if (!(layerGroup instanceof PolyObject)) {
                    continue;
                }
                PolyObject pObj = (PolyObject) layerGroup;
                for (SoundLayer layer : pObj) {
                    if (layer.getAutomationParameters() == paramIdList) {
                        continue;
                    }
                    ParameterIdList automationParameters = layer.getAutomationParameters();
                    if (automationParameters.contains(uniqueId)) {
                        automationParameters.removeParameterId(uniqueId);
                    }
                }
            }
            paramIdList.addParameterId(uniqueId);
        }
    } else {
        param.setAutomationEnabled(true);
        param.getLine().setColor(LineColors.getColor(paramIdList.size()));
        paramIdList.addParameterId(uniqueId);
        param.fireUpdateFromTimeChange();
    }
}
Also used : Score(blue.score.Score) SoundLayer(blue.SoundLayer) PolyObject(blue.soundObject.PolyObject)

Example 8 with Score

use of blue.score.Score in project blue by kunstmusik.

the class BlueProjectPropertyChangeListener method attachListeners.

protected void attachListeners(BlueProject project) {
    if (project == null) {
        return;
    }
    Score score = project.getData().getScore();
    Mixer mixer = project.getData().getMixer();
    for (LayerGroup<? extends Layer> lg : score) {
        if (lg instanceof AudioLayerGroup) {
            AudioLayerGroup alg = (AudioLayerGroup) lg;
            ChannelList channelList = findChannelListForAudioLayerGroup(mixer, alg);
            lg.addLayerGroupListener(layerGroupListener);
            AudioLayerGroupBinding binding = new AudioLayerGroupBinding(alg, channelList);
            layerGroupBindings.put(alg, binding);
            for (AudioLayer layer : alg) {
                Channel channel = ChannelList.findChannelByAssociation(channelList, layer.getUniqueId());
                if (channel != null) {
                    layerBindings.put(layer, new AudioLayerChannelBinding(layer, channel));
                }
            }
        }
    }
    score.addListener(scoreListener);
}
Also used : Score(blue.score.Score) Mixer(blue.mixer.Mixer) Channel(blue.mixer.Channel) AudioLayerChannelBinding(blue.score.layers.audio.ui.bindings.AudioLayerChannelBinding) AudioLayerGroup(blue.score.layers.audio.core.AudioLayerGroup) ChannelList(blue.mixer.ChannelList) AudioLayerGroupBinding(blue.score.layers.audio.ui.bindings.AudioLayerGroupBinding) AudioLayer(blue.score.layers.audio.core.AudioLayer)

Example 9 with Score

use of blue.score.Score in project blue by kunstmusik.

the class ScoreControllerTest method testDeleteScoreObjects.

/**
 * Test of deleteScoreObjects method, of class ScoreController.
 */
@Test
public void testDeleteScoreObjects() {
    Score score = scoreController.getScore();
    PolyObject pObj = (PolyObject) score.get(0);
    Lookup lookup = scoreController.getLookup();
    assertEquals(0, buffer.scoreObjects.size());
    assertEquals(2, pObj.get(1).size());
    assertEquals(2, lookup.lookupAll(ScoreObject.class).size());
    scoreController.deleteScoreObjects();
    assertEquals(0, buffer.scoreObjects.size());
    assertEquals(0, pObj.get(1).size());
    assertEquals(0, lookup.lookupAll(ScoreObject.class).size());
}
Also used : Score(blue.score.Score) GenericScore(blue.soundObject.GenericScore) Lookup(org.openide.util.Lookup) AbstractLookup(org.openide.util.lookup.AbstractLookup) PolyObject(blue.soundObject.PolyObject) Test(org.junit.Test)

Example 10 with Score

use of blue.score.Score in project blue by kunstmusik.

the class ScoreControllerTest method testCutScoreObjects.

/**
 * Test of cutScoreObjects method, of class ScoreController.
 */
@Test
public void testCutScoreObjects() {
    System.out.println("cut score objects");
    Score score = scoreController.getScore();
    PolyObject pObj = (PolyObject) score.get(0);
    Lookup lookup = scoreController.getLookup();
    assertEquals(0, buffer.scoreObjects.size());
    assertEquals(2, pObj.get(1).size());
    assertEquals(2, lookup.lookupAll(ScoreObject.class).size());
    scoreController.cutScoreObjects();
    assertEquals(2, buffer.scoreObjects.size());
    assertEquals(0, pObj.get(1).size());
    assertEquals(0, lookup.lookupAll(ScoreObject.class).size());
}
Also used : Score(blue.score.Score) GenericScore(blue.soundObject.GenericScore) Lookup(org.openide.util.Lookup) AbstractLookup(org.openide.util.lookup.AbstractLookup) PolyObject(blue.soundObject.PolyObject) Test(org.junit.Test)

Aggregations

Score (blue.score.Score)13 PolyObject (blue.soundObject.PolyObject)7 GenericScore (blue.soundObject.GenericScore)4 SoundLayer (blue.SoundLayer)3 Test (org.junit.Test)3 AbstractLookup (org.openide.util.lookup.AbstractLookup)3 BlueData (blue.BlueData)2 SoundObjectLibrary (blue.SoundObjectLibrary)2 ScoreObject (blue.score.ScoreObject)2 Layer (blue.score.layers.Layer)2 LayerGroup (blue.score.layers.LayerGroup)2 AudioLayerGroup (blue.score.layers.audio.core.AudioLayerGroup)2 SoundObject (blue.soundObject.SoundObject)2 Lookup (org.openide.util.Lookup)2 Channel (blue.mixer.Channel)1 ChannelList (blue.mixer.ChannelList)1 Mixer (blue.mixer.Mixer)1 ProjectPlugin (blue.project.ProjectPlugin)1 BlueProject (blue.projects.BlueProject)1 ScoreObjectLayer (blue.score.layers.ScoreObjectLayer)1