private String trackName = "";
private int channel = 0;
+ /**
+ * Creates the title bar for an empty track, and therefore an initial channel is required.
+ * @param aTrack the track that this tracktitle is operating on.
+ * @param chan the initial channel
+ */
+ public MooTrackTitle (Track aTrack, int chan) {
+ this(aTrack);
+ channel = chan;
+ }
+
/**
* Creates the title bar.
* @param aTrack the track that this tracktitle is operating on.
title.addFocusListener(new TitleFocusListener());
add(title);
- instruments = new MooInstrumentList(channel);
- // instruments = new MooInstrumentList(channel, programChangeMessage);
+ int type;
+ if (channel == 9) type = MooInstrumentList.DRUMS;
+ else type = MooInstrumentList.INSTRUMENTS;
+ instruments = new MooInstrumentList(channel, type);
+ // instruments = new MooInstrumentList(channel, type, programChangeMessage);
add(instruments);
channelBox = new JComboBox();
channelBox.addActionListener(new ActionListener(){
public void actionPerformed(ActionEvent e){
- int chan = channelBox.getSelectedIndex();
+ channel = channelBox.getSelectedIndex();
MidiEvent me;
MooNote mn;
- instruments.setChannel(channelBox.getSelectedIndex());
+ instruments.setChannel(channel);
for (int j = 0; j < track.size(); j++) {
me = track.get(j);
if (me instanceof MooNote){
mn = (MooNote)me;
- mn.setChannel(chan);
+ mn.setChannel(channel);
}
}}});
add(channelBox);
checkboxes.setLayout(new GridLayout(1,3));
mute = new JCheckBox("Mute");
- mute.setSelected(Moosique.getChannel(channel).getMute());
+ mute.setSelected(false);
+ Moosique.setTrackMute(track, false);
mute.setFont(Moosique.getGUI().FONT);
mute.addActionListener(new ActionListener(){
public void actionPerformed(ActionEvent event){
boolean selected = mute.isSelected();
if (selected){
solo.setSelected(false);
- Moosique.getChannel(channel).setSolo(false);
+ Moosique.setTrackSolo(track, false);
}
- Moosique.getChannel(channel).setMute(selected);
+ Moosique.setTrackMute(track, selected);
}});
checkboxes.add(mute);
solo = new JCheckBox("Solo");
- solo.setSelected(Moosique.getChannel(channel).getSolo());
+ solo.setSelected(false);
+ Moosique.setTrackSolo(track, false);
solo.setFont(Moosique.getGUI().FONT);
solo.addActionListener(new ActionListener(){
public void actionPerformed(ActionEvent event){
boolean selected = solo.isSelected();
if (selected){
mute.setSelected(false);
- Moosique.getChannel(channel).setMute(false);
+ Moosique.setTrackMute(track, false);
}
- Moosique.getChannel(channel).setSolo(selected);
+ Moosique.setTrackSolo(track, selected);
}});
checkboxes.add(solo);
add(checkboxes);