Thread: Dumb Netbeans Q
View Single Post
  #11 (permalink)  
Old 05-26-2008, 10:42 AM
carderne carderne is offline
Senior Member
 
Join Date: Nov 2007
Posts: 155
Rep Power: 3
carderne is on a distinguished road
Default
Sorry it's so much.
I wasn't sure what you wanted exactly...

Thanks again for your help.

Code:
package MusicMan;

public class Start extends javax.swing.JFrame
{
    Action ac = new Action(); //the Action class has all of the important methods

    public Start()
    {
        initComponents();
    }//dc
    
    @SuppressWarnings("unchecked")
    // <editor-fold defaultstate="collapsed" desc="Generated Code">//GEN-BEGIN:initComponents
    private void initComponents() {
        bindingGroup = new org.jdesktop.beansbinding.BindingGroup();

        btnImport = new javax.swing.JButton();
        btnPlaylist = new javax.swing.JButton();
        labelOutput = new javax.swing.JLabel();
        jScrollPane2 = new javax.swing.JScrollPane();
        list = new javax.swing.JList(ac.displayLists());
        labelPlaylists = new javax.swing.JLabel();
        jScrollPane1 = new javax.swing.JScrollPane();
        output = new javax.swing.JList();
        btnEdit = new javax.swing.JButton();
        browse = new javax.swing.JButton();
        btnManual = new javax.swing.JButton();

        setDefaultCloseOperation(javax.swing.WindowConstants.EXIT_ON_CLOSE);
        setBounds(new java.awt.Rectangle(10, 10, 10, 10));
        setMaximizedBounds(new java.awt.Rectangle(0, 1, 0, 1));

        org.jdesktop.beansbinding.Binding binding = org.jdesktop.beansbinding.Bindings.createAutoBinding(org.jdesktop.beansbinding.AutoBinding.UpdateStrategy.READ_WRITE, btnImport, org.jdesktop.beansbinding.ELProperty.create("MusicMan"), this, org.jdesktop.beansbinding.BeanProperty.create("title"));
        bindingGroup.addBinding(binding);

        btnImport.setText("Import Songs");
        btnImport.setToolTipText("Import songs from a text file");
        btnImport.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                btnImportActionPerformed(evt);
            }
        });

        btnPlaylist.setText("Add Playlist");
        btnPlaylist.setToolTipText("Select songs first");
        btnPlaylist.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                btnPlaylistActionPerformed(evt);
            }
        });

        labelOutput.setFont(new java.awt.Font("Courier New", 0, 12));
        labelOutput.setLabelFor(output);
        labelOutput.setText("Name                                  |  Artist                                |  Album                                 |  Date Added ");
        labelOutput.setBorder(javax.swing.BorderFactory.createEtchedBorder());

        list.setFont(new java.awt.Font("Courier New", 0, 12));
        list.setSelectionMode(javax.swing.ListSelectionModel.SINGLE_SELECTION);
        list.addMouseListener(new java.awt.event.MouseAdapter() {
            public void mouseClicked(java.awt.event.MouseEvent evt) {
                listMouseClicked(evt);
            }
        });
        jScrollPane2.setViewportView(list);

        labelPlaylists.setLabelFor(list);
        labelPlaylists.setText("Playlists");
        labelPlaylists.setBorder(javax.swing.BorderFactory.createEtchedBorder());

        output.setFont(new java.awt.Font("Courier New", 0, 12));
        jScrollPane1.setViewportView(output);

        btnEdit.setText("Edit Song Info");
        btnEdit.setToolTipText("Select songs first");
        btnEdit.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                btnEditActionPerformed(evt);
            }
        });

        browse.setText("Import iTunes Playlist");
        browse.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                browseActionPerformed(evt);
            }
        });

        btnManual.setText("Manual Song Add");
        btnManual.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                btnManualActionPerformed(evt);
            }
        });

        javax.swing.GroupLayout layout = new javax.swing.GroupLayout(getContentPane());
        getContentPane().setLayout(layout);
        layout.setHorizontalGroup(
            layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGroup(layout.createSequentialGroup()
                .addContainerGap()
                .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                    .addGroup(layout.createSequentialGroup()
                        .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.TRAILING, false)
                            .addComponent(labelPlaylists, javax.swing.GroupLayout.Alignment.LEADING, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
                            .addComponent(jScrollPane2, javax.swing.GroupLayout.Alignment.LEADING, javax.swing.GroupLayout.DEFAULT_SIZE, 111, Short.MAX_VALUE))
                        .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                            .addGroup(layout.createSequentialGroup()
                                .addGap(18, 18, 18)
                                .addComponent(labelOutput, javax.swing.GroupLayout.DEFAULT_SIZE, 1044, Short.MAX_VALUE))
                            .addGroup(layout.createSequentialGroup()
                                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED)
                                .addComponent(jScrollPane1, javax.swing.GroupLayout.DEFAULT_SIZE, 1052, Short.MAX_VALUE)))
                        .addContainerGap())
                    .addGroup(layout.createSequentialGroup()
                        .addComponent(browse)
                        .addGap(18, 18, 18)
                        .addComponent(btnManual)
                        .addGap(18, 18, 18)
                        .addComponent(btnPlaylist)
                        .addGap(18, 18, 18)
                        .addComponent(btnEdit)
                        .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED, 421, Short.MAX_VALUE)
                        .addComponent(btnImport)
                        .addGap(173, 173, 173))))
        );
        layout.setVerticalGroup(
            layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGroup(layout.createSequentialGroup()
                .addContainerGap()
                .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                    .addComponent(browse)
                    .addComponent(btnPlaylist)
                    .addComponent(btnEdit)
                    .addComponent(btnManual)
                    .addComponent(btnImport))
                .addGap(37, 37, 37)
                .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                    .addComponent(labelPlaylists)
                    .addComponent(labelOutput))
                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                    .addGroup(layout.createSequentialGroup()
                        .addComponent(jScrollPane2, javax.swing.GroupLayout.PREFERRED_SIZE, 313, javax.swing.GroupLayout.PREFERRED_SIZE)
                        .addGap(390, 390, 390))
                    .addGroup(layout.createSequentialGroup()
                        .addComponent(jScrollPane1, javax.swing.GroupLayout.DEFAULT_SIZE, 692, Short.MAX_VALUE)
                        .addContainerGap())))
        );

        bindingGroup.bind();

        pack();
    }// </editor-fold>//GEN-END:initComponents

private void btnImportActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_btnImportActionPerformed
    ac.addMusicFromText("songs.txt");
    output.setListData(ac.showMusic(0));
}//GEN-LAST:event_btnImportActionPerformed

private void btnPlaylistActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_btnPlaylistActionPerformed
    output.setListData(ac.showMusic(ac.addPlaylist(output.getSelectedIndices())));
    list.setListData(ac.displayLists());
}//GEN-LAST:event_btnPlaylistActionPerformed

private void listMouseClicked(java.awt.event.MouseEvent evt) {//GEN-FIRST:event_listMouseClicked
    output.setListData(ac.showMusic(list.getSelectedIndex()));
}//GEN-LAST:event_listMouseClicked

private void btnEditActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_btnEditActionPerformed
    ac.edit(output.getSelectedIndex());
    output.setListData(ac.showMusic(0));
}//GEN-LAST:event_btnEditActionPerformed

private void browseActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_browseActionPerformed
    Browse br = new Browse();
    br.browser.showOpenDialog(null);
    ac.addMusicFromText(br.browser.getName(br.browser.getSelectedFile()));
    output.setListData(ac.showMusic(0));
}//GEN-LAST:event_browseActionPerformed

private void btnManualActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_btnManualActionPerformed
    SongEntry se = new SongEntry(new Start(), true);
    se.setVisible(true);
    ac.addMusic(se.nameEntry.getText(), se.artistEntry.getText(), se.albumEntry.getText());
    output.setListData(ac.showMusic(0));
}//GEN-LAST:event_btnManualActionPerformed

    public static void main(String args[])
    {
        java.awt.EventQueue.invokeLater(new Runnable()
        {
            public void run()
            {
                new Start().setVisible(true);
            }
        });
    }//main

    // Variables declaration - do not modify//GEN-BEGIN:variables
    private javax.swing.JButton browse;
    private javax.swing.JButton btnEdit;
    private javax.swing.JButton btnImport;
    private javax.swing.JButton btnManual;
    private javax.swing.JButton btnPlaylist;
    private javax.swing.JScrollPane jScrollPane1;
    private javax.swing.JScrollPane jScrollPane2;
    private javax.swing.JLabel labelOutput;
    private javax.swing.JLabel labelPlaylists;
    private javax.swing.JList list;
    javax.swing.JList output;
    private org.jdesktop.beansbinding.BindingGroup bindingGroup;
    // End of variables declaration//GEN-END:variables

}
Code:
package MusicMan;

public class Browse extends javax.swing.JInternalFrame {

    public Browse() {
        initComponents();
    }

    @SuppressWarnings("unchecked")
    // <editor-fold defaultstate="collapsed" desc="Generated Code">//GEN-BEGIN:initComponents
    private void initComponents() {

        browser = new javax.swing.JFileChooser();

        browser.setFileHidingEnabled(false);
        browser.setDragEnabled(true);

        javax.swing.GroupLayout layout = new javax.swing.GroupLayout(getContentPane());
        getContentPane().setLayout(layout);
        layout.setHorizontalGroup(
            layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGroup(layout.createSequentialGroup()
                .addContainerGap()
                .addComponent(browser, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
                .addContainerGap(javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE))
        );
        layout.setVerticalGroup(
            layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGroup(layout.createSequentialGroup()
                .addComponent(browser, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
                .addContainerGap(19, Short.MAX_VALUE))
        );

        pack();
    }// </editor-fold>//GEN-END:initComponents


    // Variables declaration - do not modify//GEN-BEGIN:variables
    public javax.swing.JFileChooser browser;
    // End of variables declaration//GEN-END:variables

}
Reply With Quote