import camidion.chordhelper.ButtonIcon;
import camidion.chordhelper.midieditor.SequenceTickIndex;
import camidion.chordhelper.midieditor.SequenceTrackListTableModel;
+import camidion.chordhelper.midieditor.SequencerSpeedSlider;
/**
* MIDIシーケンサモデル
addChangeListener(new ChangeListener() {
@Override
public void stateChanged(ChangeEvent e) {
- int val = getValue();
- getSequencer().setTempoFactor((float)(
- val == 0 ? 1.0 : Math.pow( 2.0, ((double)val)/12.0 )
- ));
+ getSequencer().setTempoFactor(SequencerSpeedSlider.tempoFactorOf(getValue()));
}
});
}};
/**
* シーケンサに合わせてミリ秒位置を更新するタイマー
*/
- private javax.swing.Timer timeRangeUpdater = new javax.swing.Timer(
- 20,
+ private javax.swing.Timer timeRangeUpdater = new javax.swing.Timer( 20,
new ActionListener(){
@Override
public void actionPerformed(ActionEvent e) {
timeRangeUpdater.start();
SequenceTrackListTableModel sequenceTableModel = getSequenceTrackListTableModel();
if( sequenceTableModel != null && sequenceTableModel.hasRecordChannel() ) {
- for(MidiTransceiverListModel m : deviceModelList) m.resetMicrosecondPosition();
+ deviceModelList.resetMicrosecondPosition();
System.gc();
sequencer.startRecording();
}
if( sequenceTableModel != null || getSequencer().isOpen() ) {
getSequencer().setSequence(sequenceTableModel == null ? null : sequenceTableModel.getSequence());
}
- if( this.sequenceTableModel != null ) {
- this.sequenceTableModel.fireTableDataChanged();
- }
- if( sequenceTableModel != null ) {
- sequenceTableModel.fireTableDataChanged();
- }
+ if( this.sequenceTableModel != null ) this.sequenceTableModel.fireTableDataChanged();
+ if( sequenceTableModel != null ) sequenceTableModel.fireTableDataChanged();
this.sequenceTableModel = sequenceTableModel;
fireStateChanged();
}