/** * Accionado quando se faz clique no botao para extrair uma directoria do ficheiro RFP. * * <p>Permite extrair uma directoria do ficheiro RFP na pasta de destino escolhida pelo * utilizador. * * <p>Se o objecto selecionado for uma directoria, irá então ser extraido o conteúdo dessa mesma * directoria. * * <p>É lançado uma excepção caso seja impossivel extrair os conteúdos da directoria selecionada. * * @param evt */ private void jMenuItem11ActionPerformed( java.awt.event.ActionEvent evt) { // GEN-FIRST:event_jMenuItem11ActionPerformed try { // verificar a seleccão int row = jTable1.getSelectedRow(); Object obj = jTable1.getModel().getValueAt(row, 0); if (obj instanceof RFPDirectoryHeader) { final JFileChooser fc = new JFileChooser(); fc.setFileSelectionMode(JFileChooser.DIRECTORIES_ONLY); int returnVal = fc.showOpenDialog(this); if (returnVal == JFileChooser.APPROVE_OPTION) { File dir = fc.getCurrentDirectory(); File dest = fc.getSelectedFile(); rfpFile.extractAll(((RFPDirectoryHeader) obj).getId(), dest.getPath()); } } else { JOptionPane.showMessageDialog( null, "Impossível extrair directoria.", "Extrair Directoria", JOptionPane.ERROR_MESSAGE); } } catch (Exception ex) { JOptionPane.showMessageDialog( null, "Impossível extrair directoria.", "Extrair Directoria", JOptionPane.ERROR_MESSAGE); } } // GEN-LAST:event_jMenuItem11ActionPerformed
/** * Accionado quando se faz clique no botao para extrair todos os ficheiros. * * <p>Permite extrair todo o conteudo do ficheiro rfp para a directoria selecionada pelo * utilizador. * * <p>É lançado uma excepção caso a extracção falhe. * * @param evt */ private void jMenuItem7ActionPerformed( java.awt.event.ActionEvent evt) { // GEN-FIRST:event_jMenuItem7ActionPerformed try { // verificar a seleccão final JFileChooser fc = new JFileChooser(); fc.setFileSelectionMode(JFileChooser.DIRECTORIES_ONLY); int returnVal = fc.showOpenDialog(this); if (returnVal == JFileChooser.APPROVE_OPTION) { File dir = fc.getCurrentDirectory(); File dest = fc.getSelectedFile(); rfpFile.extractAll(0, dest.getPath()); } } catch (Exception ex) { JOptionPane.showMessageDialog( null, "Impossivel extrair todos os ficheiros.", "Extrair Todos Os Ficheiros", JOptionPane.ERROR_MESSAGE); } } // GEN-LAST:event_jMenuItem7ActionPerformed