Search in sources :

Example 11 with Score

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

the class ScoreTopComponent method listChanged.

@Override
public void listChanged(ObservableListEvent<LayerGroup<? extends Layer>> evt) {
    if (evt.getType() == ObservableListEvent.DATA_ADDED) {
        Score score = data.getScore();
        for (int i = evt.getStartIndex(); i <= evt.getEndIndex(); i++) {
            addPanelsForLayerGroup(i, score.get(i), score.getTimeState());
        }
        layerHeaderPanel.revalidate();
        checkSize();
    } else if (evt.getType() == ObservableListEvent.DATA_REMOVED) {
        removePanelsForLayerGroups(evt.getStartIndex(), evt.getEndIndex());
    } else if (evt.getType() == ObservableListEvent.DATA_CHANGED) {
        List<LayerGroup<? extends Layer>> layerGroups = evt.getAffectedItems();
        JComponent c = (JComponent) layerPanel.getComponent(evt.getStartIndex());
        LayerGroup lGroup = (LayerGroup) c.getClientProperty("layerGroup");
        if (layerGroups.get(1) == lGroup) {
            // handle push down
            Component comp = layerPanel.getComponent(evt.getEndIndex());
            layerPanel.remove(comp);
            layerPanel.add(comp, evt.getStartIndex());
            Component comp2 = layerHeaderPanel.getComponent(evt.getEndIndex());
            layerHeaderPanel.remove(comp2);
            layerHeaderPanel.add(comp2, evt.getStartIndex());
            layerPanel.revalidate();
            layerHeaderPanel.revalidate();
            layerPanel.repaint();
            layerHeaderPanel.repaint();
        } else {
            // handle push up
            Component comp = layerPanel.getComponent(evt.getStartIndex());
            layerPanel.remove(comp);
            layerPanel.add(comp, evt.getEndIndex());
            Component comp2 = layerHeaderPanel.getComponent(evt.getStartIndex());
            layerHeaderPanel.remove(comp2);
            layerHeaderPanel.add(comp2, evt.getEndIndex());
            layerPanel.revalidate();
            layerHeaderPanel.revalidate();
            layerPanel.repaint();
            layerHeaderPanel.repaint();
        }
    }
}
Also used : Score(blue.score.Score) LayerGroup(blue.score.layers.LayerGroup) TopComponent(org.openide.windows.TopComponent) Layer(blue.score.layers.Layer)

Example 12 with Score

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

the class ScoreTopComponent method reinitialize.

public synchronized void reinitialize() {
    BlueProject project = BlueProjectManager.getInstance().getCurrentProject();
    BlueData currentData = null;
    if (project != null) {
        currentData = project.getData();
    }
    if (this.currentTimeState != null) {
        this.currentTimeState.removePropertyChangeListener(this);
    }
    if (this.data != null) {
        this.data.removePropertyChangeListener(this);
        data.getScore().removeListener(this);
        content.remove(data.getScore());
    }
    this.clearAll();
    this.data = currentData;
    AutomationManager.getInstance().setData(this.data);
    for (ScoreObject scoreObj : getLookup().lookupAll(ScoreObject.class)) {
        content.remove(scoreObj);
    }
    if (data != null) {
        Tempo tempo = data.getScore().getTempo();
        tempoControlPanel.setTempo(tempo);
        tempoEditor.setTempo(tempo);
        timeBar.setData(data);
        this.data.addPropertyChangeListener(this);
        Score score = data.getScore();
        score.addListener(this);
        ScoreController.getInstance().setScore(score);
        content.add(score);
    } else {
    }
    layerHeaderPanel.repaint();
}
Also used : BlueData(blue.BlueData) Score(blue.score.Score) Tempo(blue.score.tempo.Tempo) BlueProject(blue.projects.BlueProject) ScoreObject(blue.score.ScoreObject)

Example 13 with Score

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

the class SoundObjectLibraryUtils method removeLibrarySoundObject.

public static void removeLibrarySoundObject(BlueData data, SoundObject sObj) {
    SoundObjectLibrary library = data.getSoundObjectLibrary();
    library.removeSoundObject(sObj);
    for (SoundObject tempObj : library) {
        if (tempObj instanceof PolyObject) {
            removeSoundObjectInstances((PolyObject) tempObj, sObj);
        }
    }
    Score score = data.getScore();
    for (LayerGroup layerGroup : score) {
        if (layerGroup instanceof PolyObject) {
            PolyObject pObj = (PolyObject) layerGroup;
            removeSoundObjectInstances(pObj, sObj);
        }
    }
}
Also used : Score(blue.score.Score) SoundObject(blue.soundObject.SoundObject) SoundObjectLibrary(blue.SoundObjectLibrary) LayerGroup(blue.score.layers.LayerGroup) PolyObject(blue.soundObject.PolyObject)

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