X-Git-Url: https://ruin.nu/git/?a=blobdiff_plain;f=MooTrackTitle.java;h=a17c071eb90cd0d8dd841e88ffdba5663b6ced30;hb=2ee5615787c8377a17a91158ea18adbae1aa74c2;hp=2dfd67f63e2266c015cb7fd86be1902803ed6bea;hpb=c62f88aadcb432edd30b81305821a0d56b5e34eb;p=moosique.git diff --git a/MooTrackTitle.java b/MooTrackTitle.java index 2dfd67f..a17c071 100644 --- a/MooTrackTitle.java +++ b/MooTrackTitle.java @@ -22,12 +22,14 @@ public class MooTrackTitle extends JPanel { private JCheckBox mute; private JCheckBox solo; private Track track; + private int trackNum; /** * Creates the title bar. */ - public MooTrackTitle (Track aTrack) { + public MooTrackTitle (Track aTrack, int aTrackNum) { track = aTrack; + this.trackNum = aTrackNum; // Finds track name and program change MidiMessage msg; @@ -99,20 +101,32 @@ public class MooTrackTitle extends JPanel { add(channelBox); mute = new JCheckBox("Mute"); + mute.setSelected(Moosique.getSequencer().getTrackMute(trackNum)); mute.setFont(Moosique.getGUI().FONT); mute.addActionListener(new ActionListener(){ public void actionPerformed(ActionEvent event){ - //setMute - solo.setSelected(false); + boolean selected = mute.isSelected(); + if (selected){ + solo.setSelected(false); + Moosique.getSequencer().setTrackSolo(trackNum, false); + } + Moosique.getSequencer().setTrackMute(trackNum, selected); + }}); checkboxes.add(mute); solo = new JCheckBox("Solo"); + solo.setSelected(Moosique.getSequencer().getTrackSolo(trackNum)); solo.setFont(Moosique.getGUI().FONT); solo.addActionListener(new ActionListener(){ public void actionPerformed(ActionEvent event){ //setSolo - mute.setSelected(false); + boolean selected = solo.isSelected(); + if (selected){ + mute.setSelected(false); + Moosique.getSequencer().setTrackMute(trackNum, false); + } + Moosique.getSequencer().setTrackSolo(trackNum, selected); }}); checkboxes.add(solo); add(checkboxes);