]> ruin.nu Git - moosique.git/blobdiff - MooTrackView.java
försöker och försöker
[moosique.git] / MooTrackView.java
index 04b675583b3aa18bf50406026be52cda4f350d0e..d7833e4719c37417d7af181be49c1d721c1672c4 100644 (file)
@@ -1,4 +1,13 @@
 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.*;
+//import java.awt.Graphics;
+//import java.awt.Graphics2D;
+//import java.awt.Rectangle;
 
 /**
  * 
@@ -7,12 +16,64 @@ import javax.swing.*;
  * @version 1
  */
  
-public class MooTrackView {
+public class MooTrackView extends JPanel{
 
+       private MooTrackTitle title;
+       private NoteArea notes;
+       private Rectangle box;
+       private Rectangle box2;
+       //private JPanel notes;
+       
        /** 
         * Creates 
         */
        public MooTrackView () {
+       this.addMouseMotionListener(doScrollRectToVisible);
+       setLayout(new BorderLayout());
+       this.setBorder(BorderFactory.createLineBorder(Color.black));
+       add(trackTitle(), BorderLayout.NORTH);
+       add(noteView(), BorderLayout.CENTER);
+       }
+       
+       MouseMotionListener doScrollRectToVisible = new MouseMotionAdapter() {
+       public void mouseDragged(MouseEvent e) {
+               Rectangle r = new Rectangle(e.getX(), e.getY(), 1, 1);
+               ((JPanel)e.getSource()).scrollRectToVisible(r);
+       }
+       };
+       
+       private JPanel trackTitle () {
+               title = new MooTrackTitle();
+               title.setPreferredSize(new Dimension(PANEL_WIDTH, TITLE_HEIGHT));
+               title.setBorder(BorderFactory.createLineBorder(Color.black));
+               return title;
+       }
 
+       private JPanel noteView () {
+               notes = new NoteArea(); 
+               notes.setBackground(Color.white);
+               notes.setBorder(BorderFactory.createLineBorder(Color.black));   
+               return notes;           
        }
+       
+       class NoteArea extends JPanel {
+               public void RectanglePanel() {
+                       setPreferredSize(new Dimension(20, 20));
+               }
+               
+               
+               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);
+               }
+       }
+       
+       private static final int PANEL_WIDTH = 65;
+       private static final int TITLE_HEIGHT = 20;
+       private static final int NOTEVIEW_HEIGHT = 200;
+
 }