X-Git-Url: https://ruin.nu/git/?p=moosique.git;a=blobdiff_plain;f=MooToolbar.java;fp=MooToolbar.java;h=bca50efba950d727f80be24e97136d40795fcb17;hp=5be8fdb77a29d0ddfd251bce0fd60433c9c79333;hb=d1996d82793d7049115f5280ba8651b818e52e3c;hpb=1d2d2bfd14ba0addab97692527d4414d3a87e13d diff --git a/MooToolbar.java b/MooToolbar.java index 5be8fdb..bca50ef 100644 --- a/MooToolbar.java +++ b/MooToolbar.java @@ -1,7 +1,7 @@ +import javax.sound.midi.*; import javax.swing.*; import java.awt.*; import java.awt.event.*; -import javax.sound.midi.*; /** * The application's toolbar, with the most frequently used commands. @@ -75,17 +75,16 @@ public class MooToolbar extends JToolBar { * @param tickPosition the tick position to visualize */ public void updateProgInd(long tickPosition) { - ticksPerBeat = Moosique.getSequence().getResolution(); + System.out.print("Updating to " + tickPosition + " = "); if (tickPosition == 0) { resetProgInd(); + System.out.println("1:1:1"); } else { - // Otherwise, calculates the current song position in measures, beats and ticks. - long measures = tickPosition / (beatsPerMeasure * ticksPerBeat); - long beats = (tickPosition - measures * beatsPerMeasure * ticksPerBeat) / ticksPerBeat; - long ticks = tickPosition - measures * beatsPerMeasure * ticksPerBeat - beats * ticksPerBeat; - measuresValue.setText(Long.toString(1 + measures)); - beatsValue.setText(Long.toString(1 + beats)); - ticksValue.setText(Long.toString(1 + ticks)); + int[] position = Moosique.getPositionForTicks(tickPosition); + System.out.println("" + position[0] + ":" + position[1] + ":" + position[2]); + measuresValue.setText(Integer.toString(position[0])); + beatsValue.setText(Long.toString(position[1])); + ticksValue.setText(Long.toString(position[2])); } }