]> ruin.nu Git - moosique.git/blobdiff - MooTrackTitle.java
setting mute and solo on channel instead..
[moosique.git] / MooTrackTitle.java
index b921926bd8dc9527b99ebe7825fe7816ab981f23..d5876c1485718a34f6ae3ef940152182d5f2974c 100644 (file)
@@ -12,25 +12,25 @@ import javax.sound.midi.*;
  
 public class MooTrackTitle extends JPanel {
 
+       private Track track;
        private MetaMessage trackNameMessage;
-       private String trackName = "";
        private ShortMessage programChangeMessage;
-       private int channel = 0;
+
        private JTextField title;
        private MooInstrumentList instruments;
        private JComboBox channelBox;
        private JCheckBox mute;
        private JCheckBox solo;
-       private Track track;
-       private int trackNum;
+
+       private String trackName = "";
+       private int channel = 0;
 
        /** 
         * Creates the title bar.
         */
-       public MooTrackTitle (Track aTrack, int aTrackNum) {
+       public MooTrackTitle (Track aTrack) {
                setDoubleBuffered(true);
                track = aTrack;
-               this.trackNum = aTrackNum;
 
                // Finds track name, program change and channel.
                MidiMessage msg;
@@ -49,16 +49,6 @@ public class MooTrackTitle extends JPanel {
                        }
                }
 
-/*             // Finds channel number.
-               MidiEvent event;
-               for (int i = 0; i < track.size(); i++) {
-                       event = track.get(i);
-                       if (event instanceof MooNote) {
-                               channel = ((MooNote)event).getChannel();
-                               break;
-                       }
-               }
-*/             
                // Creates and places components.
                setLayout(new GridLayout(4,1));
                setBorder(BorderFactory.createLineBorder(Color.black));
@@ -99,22 +89,22 @@ public class MooTrackTitle extends JPanel {
                checkboxes.setLayout(new GridLayout(1,3));
 
                mute = new JCheckBox("Mute");
-               mute.setSelected(Moosique.getSequencer().getTrackMute(trackNum));
+               mute.setSelected(Moosique.getChannel(channel).getMute());
                mute.setFont(Moosique.getGUI().FONT);
                mute.addActionListener(new ActionListener(){
                                public void actionPerformed(ActionEvent event){
                                        boolean selected = mute.isSelected();
                                        if (selected){
                                                solo.setSelected(false);
-                                               Moosique.getSequencer().setTrackSolo(trackNum, false);
+                                               Moosique.getChannel(channel).setSolo(false);
                                        }
-                                       Moosique.getSequencer().setTrackMute(trackNum, selected);
+                                       Moosique.getChannel(channel).setMute(selected);
 
                                }});
                checkboxes.add(mute);
 
                solo = new JCheckBox("Solo");
-               solo.setSelected(Moosique.getSequencer().getTrackSolo(trackNum));
+               solo.setSelected(Moosique.getChannel(channel).getSolo());
                solo.setFont(Moosique.getGUI().FONT);
                solo.addActionListener(new ActionListener(){
                                public void actionPerformed(ActionEvent event){
@@ -122,9 +112,9 @@ public class MooTrackTitle extends JPanel {
                                        boolean selected = solo.isSelected();
                                        if (selected){
                                                mute.setSelected(false);
-                                               Moosique.getSequencer().setTrackMute(trackNum, false);
+                                               Moosique.getChannel(channel).setMute(false);
                                        }
-                                       Moosique.getSequencer().setTrackSolo(trackNum, selected);
+                                       Moosique.getChannel(channel).setSolo(selected);
                                }});
                checkboxes.add(solo);
                add(checkboxes);