X-Git-Url: https://ruin.nu/git/?p=moosique.git;a=blobdiff_plain;f=MooView.java;h=9bf83673048412345f35a1f5d812ae1c1c825a56;hp=c97a4a46239b745124a0cdbafe8a023121879c2b;hb=HEAD;hpb=c87df9f217c5730ae465252b415bb7e52a4f3fed diff --git a/MooView.java b/MooView.java index c97a4a4..9bf8367 100644 --- a/MooView.java +++ b/MooView.java @@ -60,7 +60,9 @@ public class MooView extends JScrollPane { trackPanel.setLayout(new FlowLayout()); MooTrackTitle title = new MooTrackTitle(tracks[0]); titlePanel.add(title); - trackPanel.add(new MooTrackView(tracks[0], title)); + MooTrackView mtv = new MooTrackView(tracks[0], title); + trackPanel.add(mtv); + title.setTrackView(mtv); } else { if (showProgress) { // Creates dialog for progress bar. @@ -85,7 +87,9 @@ public class MooView extends JScrollPane { if (Moosique.shouldBeDrawn(tracks[i])) { MooTrackTitle title = new MooTrackTitle(tracks[i]); titlePanel.add(title); - trackPanel.add(new MooTrackView(tracks[i], title)); + MooTrackView mtv = new MooTrackView(tracks[i], title); + trackPanel.add(mtv); + title.setTrackView(mtv); if (showProgress) progressBar.setValue(i); else System.out.print("."); } else { @@ -116,6 +120,19 @@ public class MooView extends JScrollPane { getViewport().setViewPosition(new Point((int)getViewport().getViewPosition().getX(), (int)(tickPosition / (Moosique.getSequence().getResolution() / 4)) * MooTrackView.NOTE_HEIGHT)); } + + /** + * Creates a view for the given track and adds it to the main view. + * @param track the track for which to find the view + */ + public MooTrackView getTrackView(Track track) { + for (int i = 0; i < trackPanel.getComponents().length; i++) { + MooTrackView mtv = (MooTrackView)(trackPanel.getComponents())[i]; + if(mtv.getTrack() == track) return mtv; + } + return null; + } + /** * Creates a view for the given track and adds it to the main view. * @param track the track for which to add a view