]> ruin.nu Git - moosique.git/blobdiff - MooTrackView.java
Fixed the FileFilter, implemented some menu options, tweaked the GUI and organized...
[moosique.git] / MooTrackView.java
index ed2bcc62fbc39c13147bf8ea6bf80bde221401e8..71018d1ea765a2a4b8305bc0986be9e9791c12ce 100644 (file)
@@ -1,36 +1,36 @@
 import javax.swing.*;
-import java.awt.event.MouseListener;
-import java.awt.event.MouseEvent;
-import java.awt.event.MouseMotionAdapter;
-import java.awt.event.MouseMotionListener;
-import java.awt.Dimension;
+import java.awt.event.*;
 import java.awt.*;
-//import java.awt.Graphics;
-//import java.awt.Graphics2D;
-//import java.awt.Rectangle;
 
 /**
- * 
+ * Graphical representation of a MIDI track.
  * 
  * @author  Andersson, Andreen, Lanneskog, Pehrson
  * @version 1
  */
  
-public class MooTrackView extends JPanel{
+public class MooTrackView extends JPanel {
 
        private MooTrackTitle title;
-       private noteView notes;
+       private NoteArea notes;
+       private Rectangle box;
+       private Rectangle box2;
+       //private JPanel notes;
+
+       private static final int PANEL_WIDTH = 65;
+       private static final int TITLE_HEIGHT = 40;
+       private static final int NOTEVIEW_HEIGHT = 200;
        
        /** 
         * Creates 
         */
        public MooTrackView () {
-       this.addMouseMotionListener(doScrollRectToVisible);
-       setLayout(new GridLayout(2,0));
-       notes = new noteView();
-       
-       add(trackTitle());
-       add(noteEdit());
+               addMouseMotionListener(doScrollRectToVisible);
+               addKeyListener(new MooKeyboard());
+               setLayout(new BorderLayout());
+               setBorder(BorderFactory.createLineBorder(Color.black));
+               add(trackTitle(), BorderLayout.NORTH);
+               add(noteView(), BorderLayout.CENTER);
        }
        
        MouseMotionListener doScrollRectToVisible = new MouseMotionAdapter() {
@@ -41,27 +41,32 @@ public class MooTrackView extends JPanel{
        };
        
        private JPanel trackTitle () {
-               setPreferredSize(new Dimension(PANEL_WIDTH, TITLE_HEIGHT));
                title = new MooTrackTitle();
+               title.setPreferredSize(new Dimension(PANEL_WIDTH, TITLE_HEIGHT));
+               title.setBorder(BorderFactory.createLineBorder(Color.black));
                return title;
        }
-       
-       private JPanel noteEdit () {
-               setPreferredSize(new Dimension(PANEL_WIDTH, NOTEVIEW_HEIGHT));
-               notes = new noteView();
+
+       private JPanel noteView () {
+               notes = new NoteArea(); 
                notes.setBackground(Color.white);
-               notes.setBorder(BorderFactory.createLineBorder(Color.black));
-               return notes;
+               notes.setBorder(BorderFactory.createLineBorder(Color.black));   
+               return notes;           
        }
        
-       class noteView extends JPanel {
-               public noteView () {
-                       setLayout(new FlowLayout());
+       class NoteArea extends JPanel {
+               public void RectanglePanel() {
+                       setPreferredSize(new Dimension(20, 20));
                }
                
-       }       
-
-       private static final int PANEL_WIDTH = 65;
-       private static final int TITLE_HEIGHT = 50;
-       private static final int NOTEVIEW_HEIGHT = 200;
-}
+               
+               public void paintComponent(Graphics g) {
+                       super.paintComponent(g);
+                       Graphics2D g2 = (Graphics2D)g;
+                       box = new Rectangle(0,0,20,20);
+                       g2.draw(box);
+                       box2 = new Rectangle(20,0,20,20);
+                       g2.draw(box2);
+               }
+       }
+}
\ No newline at end of file