X-Git-Url: https://ruin.nu/git/?a=blobdiff_plain;f=MooViewCounter.java;h=8383b6cb44405a8749a0ba046101689c7d05e8d6;hb=ce9a16d679f2058454af367e972888ba8e2c34c0;hp=3f646e853d4bec2ff8c7625e7dbe87008945dae5;hpb=e471d9aaa190fa2a38f3eb08bbc4c6a29681d91e;p=moosique.git diff --git a/MooViewCounter.java b/MooViewCounter.java index 3f646e8..8383b6c 100644 --- a/MooViewCounter.java +++ b/MooViewCounter.java @@ -1,8 +1,9 @@ +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 @@ -10,18 +11,18 @@ import java.awt.*; 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; @@ -47,14 +48,12 @@ public class MooViewCounter extends JPanel { } 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, CELL_HEIGHT, c * CELL_HEIGHT * halfBeat); // 1/8 + g2.drawLine(0, c * CELL_HEIGHT * halfBeat, 10, c * CELL_HEIGHT * halfBeat); // 1/8 g2.drawLine(0, c * CELL_HEIGHT * beat, 15, c * CELL_HEIGHT * beat); // 1/4 g2.drawLine(0, c * CELL_HEIGHT * halfNote, 20, c * CELL_HEIGHT * halfNote); // 1/2 g2.drawLine(0, c * CELL_HEIGHT * measure, 30, c * CELL_HEIGHT * measure); // 1/1