- JMenuItem _open_item;
- JMenuItem _open_url_item;
- JMenuItem _save_item;
- JMenuItem _save_all_item;
- JMenuItem _close_item;
- JMenuItem _exit_item;
- JMenuItem _new_item;
- JMenuItem _print_item;
- JMenuItem _write_to_pdf_item;
- JMenuItem _write_to_jpg_item;
- JMenuItem _write_to_gif_item;
- JMenuItem _write_to_tif_item;
- JMenuItem _write_to_png_item;
- JMenuItem _write_to_bmp_item;
- JMenu _file_jmenu;
-
-
- void writePhylogenyToGraphicsFile( final String file_name, final GraphicsExportType type ) {
- _mainpanel.getCurrentTreePanel().calcParametersForPainting( _mainpanel.getCurrentTreePanel().getWidth(),
- _mainpanel.getCurrentTreePanel().getHeight() );
- String file_written_to = "";
- boolean error = false;
- try {
- file_written_to = AptxUtil.writePhylogenyToGraphicsFile( file_name,
- _mainpanel.getCurrentTreePanel().getWidth(),
- _mainpanel.getCurrentTreePanel().getHeight(),
- _mainpanel.getCurrentTreePanel(),
- _mainpanel.getControlPanel(),
- type,
- getOptions() );
- }
- catch ( final IOException e ) {
- error = true;
- JOptionPane.showMessageDialog( this, e.getMessage(), "Error", JOptionPane.ERROR_MESSAGE );
- }
- if ( !error ) {
- if ( ( file_written_to != null ) && ( file_written_to.length() > 0 ) ) {
- JOptionPane.showMessageDialog( this,
- "Wrote image to: " + file_written_to,
- "Graphics Export",
- JOptionPane.INFORMATION_MESSAGE );
- }
- else {
- JOptionPane.showMessageDialog( this,
- "There was an unknown problem when attempting to write to an image file: \""
- + file_name + "\"",
- "Error",
- JOptionPane.ERROR_MESSAGE );
- }
- }
- _contentpane.repaint();
- }
-
- void writeToFile( final Phylogeny t ) {
- if ( t == null ) {
- return;
- }
- String initial_filename = null;
- if ( getMainPanel().getCurrentTreePanel().getTreeFile() != null ) {
- try {
- initial_filename = getMainPanel().getCurrentTreePanel().getTreeFile().getCanonicalPath();
- }
- catch ( final IOException e ) {
- initial_filename = null;
- }
- }
- if ( !ForesterUtil.isEmpty( initial_filename ) ) {
- _save_filechooser.setSelectedFile( new File( initial_filename ) );
- }
- else {
- _save_filechooser.setSelectedFile( new File( "" ) );
- }
- final File my_dir = getCurrentDir();
- if ( my_dir != null ) {
- _save_filechooser.setCurrentDirectory( my_dir );
- }
- final int result = _save_filechooser.showSaveDialog( _contentpane );
- final File file = _save_filechooser.getSelectedFile();
- setCurrentDir( _save_filechooser.getCurrentDirectory() );
- boolean exception = false;
- if ( ( file != null ) && ( result == JFileChooser.APPROVE_OPTION ) ) {
- if ( file.exists() ) {
- final int i = JOptionPane.showConfirmDialog( this,
- file + " already exists.\nOverwrite?",
- "Overwrite?",
- JOptionPane.OK_CANCEL_OPTION,
- JOptionPane.QUESTION_MESSAGE );
- if ( i != JOptionPane.OK_OPTION ) {
- return;
- }
- else {
- final File to = new File( file.getAbsoluteFile().toString() + Constants.BACKUP_FILE_SUFFIX );
- try {
- ForesterUtil.copyFile( file, to );
- }
- catch ( final Exception e ) {
- JOptionPane.showMessageDialog( this,
- "Failed to create backup copy " + to,
- "Failed to Create Backup Copy",
- JOptionPane.WARNING_MESSAGE );
- }
- try {
- file.delete();
- }
- catch ( final Exception e ) {
- JOptionPane.showMessageDialog( this,
- "Failed to delete: " + file,
- "Failed to Delete",
- JOptionPane.WARNING_MESSAGE );
- }
- }
- }
- if ( _save_filechooser.getFileFilter() == MainFrame.nhfilter ) {
- exception = writeAsNewHampshire( t, exception, file );
- }
- else if ( _save_filechooser.getFileFilter() == MainFrame.xmlfilter ) {
- exception = writeAsPhyloXml( t, exception, file );
- }
- else if ( _save_filechooser.getFileFilter() == MainFrame.nexusfilter ) {
- exception = writeAsNexus( t, exception, file );
- }
- // "*.*":
- else {
- final String file_name = file.getName().trim().toLowerCase();
- if ( file_name.endsWith( ".nh" ) || file_name.endsWith( ".newick" ) || file_name.endsWith( ".phy" )
- || file_name.endsWith( ".tree" ) ) {
- exception = writeAsNewHampshire( t, exception, file );
- }
- else if ( file_name.endsWith( ".nex" ) || file_name.endsWith( ".nexus" ) ) {
- exception = writeAsNexus( t, exception, file );
- }
- // XML is default:
- else {
- exception = writeAsPhyloXml( t, exception, file );
- }
- }
- if ( !exception ) {
- getMainPanel().setTitleOfSelectedTab( file.getName() );
- getMainPanel().getCurrentTreePanel().setTreeFile( file );
- getMainPanel().getCurrentTreePanel().setEdited( false );
- }
- }
- }
-
- void writeToGraphicsFile( final Phylogeny t, final GraphicsExportType type ) {
- if ( ( t == null ) || t.isEmpty() ) {
- return;
- }
- String initial_filename = "";
- if ( getMainPanel().getCurrentTreePanel().getTreeFile() != null ) {
- initial_filename = getMainPanel().getCurrentTreePanel().getTreeFile().toString();
- }
- if ( initial_filename.indexOf( '.' ) > 0 ) {
- initial_filename = initial_filename.substring( 0, initial_filename.lastIndexOf( '.' ) );
- }
- initial_filename = initial_filename + "." + type;
- _writetographics_filechooser.setSelectedFile( new File( initial_filename ) );
- final File my_dir = getCurrentDir();
- if ( my_dir != null ) {
- _writetographics_filechooser.setCurrentDirectory( my_dir );
- }
- final int result = _writetographics_filechooser.showSaveDialog( _contentpane );
- File file = _writetographics_filechooser.getSelectedFile();
- setCurrentDir( _writetographics_filechooser.getCurrentDirectory() );
- if ( ( file != null ) && ( result == JFileChooser.APPROVE_OPTION ) ) {
- if ( !file.toString().toLowerCase().endsWith( type.toString() ) ) {
- file = new File( file.toString() + "." + type );
- }
- if ( file.exists() ) {
- final int i = JOptionPane.showConfirmDialog( this,
- file + " already exists. Overwrite?",
- "Warning",
- JOptionPane.OK_CANCEL_OPTION,
- JOptionPane.WARNING_MESSAGE );
- if ( i != JOptionPane.OK_OPTION ) {
- return;
- }
- else {
- try {
- file.delete();
- }
- catch ( final Exception e ) {
- JOptionPane.showMessageDialog( this,
- "Failed to delete: " + file,
- "Error",
- JOptionPane.WARNING_MESSAGE );
- }
- }
- }
- writePhylogenyToGraphicsFile( file.toString(), type );
- }
- }