X-Git-Url: https://ruin.nu/git/?p=moosique.git;a=blobdiff_plain;f=MooView.java;h=ca9d68db48ad49fb5fa0732489532a92b2bb512e;hp=3323540b55ae4cda0af8ac21659730ecd64a4bae;hb=fe67e0acf0d44c09dcfbbfd1a02a91f43d2cf60e;hpb=f024dae5fba8aec9c8b03aba6093dd252269169c diff --git a/MooView.java b/MooView.java index 3323540..ca9d68d 100644 --- a/MooView.java +++ b/MooView.java @@ -29,7 +29,6 @@ public class MooView extends JScrollPane { JViewport columnHeader = new JViewport(); columnHeader.setView(titlePanel); setColumnHeaderView(columnHeader); - numberOfTracks = tracks.length; setTracks(tracks); } @@ -38,7 +37,8 @@ public class MooView extends JScrollPane { * @param tracks the tracks for which to add views */ public void setTracks(Track[] tracks) { - if (tracks.length == 1) { + numberOfTracks = tracks.length; + if (numberOfTracks == 1) { // If MIDI file is of type 0, creates a view for the track. trackPanel.add(new MooTrackView(tracks[0])); titlePanel.add(new MooTrackTitle(tracks[0])); @@ -55,7 +55,7 @@ public class MooView extends JScrollPane { // Starts filling the track panel with track views, while updating the progress bar. trackPanel.removeAll(); - trackPanel.setLayout(new GridLayout(1,tracks.length)); + trackPanel.setLayout(new GridLayout(1,numberOfTracks)); for (int i = 1; i < tracks.length; i++) { trackPanel.add(new MooTrackView(tracks[i])); titlePanel.add(new MooTrackTitle(tracks[i])); @@ -63,6 +63,16 @@ public class MooView extends JScrollPane { } progressDialog.dispose(); } +/* JPanel filler = new JPanel(); + int totalViewLength = trackPanel.getComponents().length * MooTrackView.VIEW_WIDTH; + if (totalViewLength < getWidth()) { + System.out.println("Adding filler since width = " + getWidth() + " and tracks = " + totalViewLength); + ((GridLayout)trackPanel.getLayout()).setColumns(numberOfTracks + 1); + filler.setPreferredSize(new Dimension(getWidth() - totalViewLength, 140 * MooTrackView.NOTE_HEIGHT)); + trackPanel.add(filler); + setPreferredSize(new Dimension(getWidth(), getHeight())); + } +*/ trackPanel.validate(); setViewportView(trackPanel); }