X-Git-Url: https://ruin.nu/git/?a=blobdiff_plain;f=MooTrackView.java;h=c94657b6314ed33d18f62d7c506bcb345f7a639d;hb=9f708407a52d8d0864e238cb37c0c30a5a783dc0;hp=0bc564cf1dadf74190bb588ed540b972d558d41a;hpb=92b3a4029b75b5b5800c2f8965bef75e20fdf784;p=moosique.git diff --git a/MooTrackView.java b/MooTrackView.java index 0bc564c..c94657b 100644 --- a/MooTrackView.java +++ b/MooTrackView.java @@ -57,16 +57,18 @@ public class MooTrackView extends JPanel implements ActionListener { * Updates the track view. */ public void update() { - + repaint(); } class NoteArea extends JPanel { - public static final int NOTE_SIZE = 25; + public static final int NOTE_HEIGHT = 10; + public static final int NOTE_WIDTH = 40; private int trackLength; public NoteArea(Track track) { + System.out.println("Creating track view..."); setLayout(null); - trackLength = 60; + trackLength = 140; MidiEvent note; MooNoteElement elem; boolean isOccupied; @@ -82,23 +84,24 @@ public class MooTrackView extends JPanel implements ActionListener { // Places the note element in the appropriate place. x = insets.left; - y = insets.top + (int)(mn.getTick() / 24) * NOTE_SIZE; - height = NOTE_SIZE; - // height = (mn.getDuration() / 24) * NOTE_SIZE; - System.out.println("Comp at: " + x + ", " + y + " is: " + findComponentAt(x + 10, y + 10)); + y = insets.top + (int)(mn.getTick() / 24) * NOTE_HEIGHT; + height = NOTE_HEIGHT; + // height = (mn.getDuration() / 24) * NOTE_HEIGHT; + // System.out.println("Comp at: " + x + ", " + y + " is: " + findComponentAt(x + 10, y + 10)); while(findComponentAt(x, y) instanceof MooNoteElement || - findComponentAt(x, y + height - 1) instanceof MooNoteElement) x += NOTE_SIZE; - elem.setBounds(x, y, NOTE_SIZE, height); + findComponentAt(x, y + height - 1) instanceof MooNoteElement) x += NOTE_WIDTH; + elem.setBounds(x, y, NOTE_WIDTH, height); } } + validate(); } public void paintComponent(Graphics g) { super.paintComponent(g); Graphics2D g2 = (Graphics2D)g; - for (int c = 0; c < (trackLength*NOTE_SIZE); c += NOTE_SIZE) { - for (int r = 0; r < (10*NOTE_SIZE); r += NOTE_SIZE) { - box = new Rectangle(r, c, NOTE_SIZE, NOTE_SIZE); + for (int c = 0; c < (trackLength*NOTE_HEIGHT); c += NOTE_HEIGHT) { + for (int r = 0; r < (10*NOTE_WIDTH); r += NOTE_WIDTH) { + box = new Rectangle(r, c, NOTE_WIDTH, NOTE_HEIGHT); g2.setColor(Color.gray); g2.draw(box); }