import javax.swing.*;
+import java.awt.*;
-/*
+/**
*
*
* @author Andersson, Andreen, Lanneskog, Pehrson
* @version 1
*/
-public class MooViewCounter {
+public class MooViewCounter extends JPanel {
- /*
+ //public static final int LINE_LENGTH;
+ private int measure, halfBeat, beat, halfNote;
+ //private String check;
+ //private Line[];
+
+ /**
* Creates
*/
- public MooViewCounter () {
+ private int timeSig1, timeSig2;
+
+ public MooViewCounter (int ts1, int ts2) {
+ timeSig1 = ts1;
+ timeSig2 = ts2;
+
+ switch (timeSig2) {
+ case 16: measure = timeSig1;
+ break;
+ case 8: measure = timeSig1 * 2;
+ halfBeat = measure/timeSig1;
+ break;
+ case 4: measure = timeSig1 * (int)Math.pow(2,2);
+ break;
+ case 2: measure = timeSig1 * (int)Math.pow(2,3);
+ break;
+ case 1: measure = timeSig1 * (int)Math.pow(2,4);
+ break;
+ }
+
+ }
+ public void paintComponent(Graphics g) {
+ super.paintComponent(g);
+ setBackground(Color.black);
+ if (!(g instanceof Graphics2D)) return;
+ Graphics2D g2 = (Graphics2D)g;
+ setPreferredSize(new Dimension(50,200*10));
+ g2.setColor(Color.white);
+ for (int c = 0; c < 200; c++) {
+ g2.drawLine(0,c*10,5,c*10); // 1/16
+ g2.drawLine(0,c*10*halfBeat,10,c*10*halfBeat); // 1/8
+ g2.drawLine(0,c*10*(beat/4),15,c*10*(beat/4)); // 1/4
+ g2.drawLine(0,c*10*(halfNote/2),20,c*10*(halfNote/2)); // 1/2
+ g2.drawLine(0,c*10*measure,35,c*10*measure); // 1/1
+
+ }
}
-}
+}
\ No newline at end of file