+import javax.sound.midi.*;
import javax.swing.*;
import java.awt.*;
/**
- *
+ * A graphical representation of the time signature of the current sequence.
*
* @author Andersson, Andreen, Lanneskog, Pehrson
* @version 1
public class MooViewCounter extends JPanel {
- private int timeSig1, timeSig2, measure, halfBeat, beat, halfNote;
+ private int measure, halfBeat, beat, halfNote;
private static final int CELL_HEIGHT = 10;
/**
* Creates an musical ruler depending on the timesignature
*/
- public MooViewCounter (int ts1, int ts2) {
- timeSig1 = ts1;
- timeSig2 = ts2;
- setBackground(Color.black);
+ public MooViewCounter (MetaMessage[] timeSigs) {
+ int timeSig1 = 4, timeSig2 = 4; // ...for now
+ setBackground(Moosique.getGUI().bgColor);
setPreferredSize(new Dimension(35, 200 * CELL_HEIGHT));
+
switch (timeSig2) {
case 16: measure = timeSig1; // 1/16
break;
}
public void paintComponent(Graphics g) {
super.paintComponent(g);
- setBackground(Color.black);
-
if (!(g instanceof Graphics2D)) return;
Graphics2D g2 = (Graphics2D)g;
- g2.setColor(Color.white);
+ g2.setColor(Color.black);
for (int c = 0; c < 200; c++) {
g2.drawLine(0, c * CELL_HEIGHT, 5, c * CELL_HEIGHT); // 1/16
g2.drawLine(0, c * CELL_HEIGHT * halfBeat, 10, c * CELL_HEIGHT * halfBeat); // 1/8