X-Git-Url: https://ruin.nu/git/?p=moosique.git;a=blobdiff_plain;f=MooTrackTitle.java;h=9cffb14570bbd48633e380441963e0865188b78b;hp=4079e4503ef0fe19814af56cecf95a49b3be1f53;hb=HEAD;hpb=e7289eb46e09ee6ed3bc5bb4a814f59902d885cb diff --git a/MooTrackTitle.java b/MooTrackTitle.java index 4079e45..9cffb14 100644 --- a/MooTrackTitle.java +++ b/MooTrackTitle.java @@ -22,7 +22,6 @@ public class MooTrackTitle extends JPanel { private JComboBox channelBox; private JCheckBox mute; private JCheckBox solo; - private JButton record; private String trackName = ""; private int channel = 0; @@ -39,7 +38,7 @@ public class MooTrackTitle extends JPanel { /** * Creates the title bar. - * @param aTrack the track that this tracktitle is operating on. + * @param aTrack the track that this track title is operating on. */ public MooTrackTitle (Track aTrack) { setDoubleBuffered(true); @@ -58,8 +57,7 @@ public class MooTrackTitle extends JPanel { } } else if (status >= 192 && status < 208) { programChangeMessage = (ShortMessage)msg; - // System.out.println("Program change " + programChangeMessage.getData1()); - channel = status - 192; + channel = programChangeMessage.getChannel(); } } @@ -77,8 +75,7 @@ public class MooTrackTitle extends JPanel { int type; if (channel == 9) type = MooInstrumentList.DRUMS; else type = MooInstrumentList.INSTRUMENTS; - instruments = new MooInstrumentList(channel, type); - // instruments = new MooInstrumentList(channel, type, programChangeMessage); + instruments = new MooInstrumentList(channel, type, programChangeMessage); add(instruments); channelBox = new JComboBox(); @@ -108,11 +105,6 @@ public class MooTrackTitle extends JPanel { solo.addActionListener(tl); checkboxes.add(solo); - record = new JButton("Record"); - record.setFont(Moosique.getGUI().FONT); - record.addActionListener(tl); - checkboxes.add(record); - add(checkboxes); } @@ -133,11 +125,13 @@ public class MooTrackTitle extends JPanel { } /** - * Checks if the focus is lost. + * When the title field loses focus, updates the corresponding MidiEvent. */ class TitleFocusListener extends FocusAdapter { public void focusLost(FocusEvent e) { - // Update the MidiEvent containing the title of this track + try { + trackNameMessage.setMessage(3, title.getText().getBytes(), title.getText().length()); + } catch (InvalidMidiDataException ex) {} } } @@ -152,7 +146,7 @@ public class MooTrackTitle extends JPanel { MidiEvent me; MooNote mn; instruments.setChannel(channel); - // Query the user before rechannelling??? + // Prompt the user before rechannelling??? for (int j = 0; j < track.size(); j++) { me = track.get(j); if (me instanceof MooNote){ @@ -174,29 +168,6 @@ public class MooTrackTitle extends JPanel { Moosique.setTrackMute(track, false); } Moosique.setTrackSolo(track, selected); - } else if (source == record) { - Sequencer sequencer = Moosique.getSequencer(); - boolean quantize = false; - if (record.getText() == "Record") { - /* Show a dialog with: - "Track" combo box, - "Channel" combo box (disabled?, - "Quantize" checkbox and - "Start Recording" button. - */ - record.setText("Stop"); - mtv.enableKeyboardRecording(); - sequencer.recordEnable(track, channel); - sequencer.startRecording(); - Moosique.setEdited(); - } else { - record.setText("Record"); - mtv.disableKeyboardRecording(); - sequencer.stopRecording(); - sequencer.recordDisable(track); - java.util.List newNotes = Moosique.convertTrack(track, quantize); - mtv.placeNewNotes(newNotes); - } } } }