import java.util.NoSuchElementException;
import javax.swing.Box;
-import javax.swing.JApplet;
import javax.swing.JCheckBoxMenuItem;
import javax.swing.JFileChooser;
import javax.swing.JFrame;
+import javax.swing.JInternalFrame;
import javax.swing.JLabel;
import javax.swing.JMenu;
import javax.swing.JMenuBar;
import org.forester.util.ForesterUtil;
import org.forester.util.WindowsUtils;
-public abstract class MainFrame extends JFrame implements ActionListener {
-
- final static NHFilter nhfilter = new NHFilter();
- final static NHXFilter nhxfilter = new NHXFilter();
- final static XMLFilter xmlfilter = new XMLFilter();
- final static TolFilter tolfilter = new TolFilter();
- final static NexusFilter nexusfilter = new NexusFilter();
- final static PdfFilter pdffilter = new PdfFilter();
- final static GraphicsFileFilter graphicsfilefilter = new GraphicsFileFilter();
- final static MsaFileFilter msafilter = new MsaFileFilter();
- final static SequencesFileFilter seqsfilter = new SequencesFileFilter();
- final static DefaultFilter defaultfilter = new DefaultFilter();
+public abstract class MainFrame extends JInternalFrame implements ActionListener {
+
+ public final static NHFilter nhfilter = new NHFilter();
+ public final static NHXFilter nhxfilter = new NHXFilter();
+ public final static XMLFilter xmlfilter = new XMLFilter();
+ public final static TolFilter tolfilter = new TolFilter();
+ public final static NexusFilter nexusfilter = new NexusFilter();
+ public final static PdfFilter pdffilter = new PdfFilter();
+ public final static GraphicsFileFilter graphicsfilefilter = new GraphicsFileFilter();
+ public final static MsaFileFilter msafilter = new MsaFileFilter();
+ public final static SequencesFileFilter seqsfilter = new SequencesFileFilter();
+ public final static DefaultFilter defaultfilter = new DefaultFilter();
static final String USE_MOUSEWHEEL_SHIFT_TO_ROTATE = "rotate with mousewheel + Shift (or A and S), D toggles between horizontal and radial labels";
static final String PHYLOXML_REF_TOOL_TIP = AptxConstants.PHYLOXML_REFERENCE; //TODO //FIXME
static final String APTX_REF_TOOL_TIP = AptxConstants.APTX_REFERENCE;
static final String OPTIONS_HEADER = "Options";
static final String SEARCH_SUBHEADER = "Search:";
static final String DISPLAY_SUBHEADER = "Display:";
- static final String SEARCH_TERMS_ONLY_LABEL = "Match Complete Terms Only";
- static final String SEARCH_REGEX_LABEL = "Search with Regular Expressions";
- static final String SEARCH_CASE_SENSITIVE_LABEL = "Case Sensitive";
- static final String INVERSE_SEARCH_RESULT_LABEL = "Negate Result";
+ static final String SEARCH_TERMS_ONLY_LABEL = "Words";
+ static final String SEARCH_REGEX_LABEL = "Regex";
+ static final String SEARCH_CASE_SENSITIVE_LABEL = "Match Case";
+ static final String INVERSE_SEARCH_RESULT_LABEL = "Inverse";
static final String COLOR_BY_TAXONOMIC_GROUP = "Colorize by Taxonomic Group";
static final String DISPLAY_SCALE_LABEL = "Scale";
static final String NON_LINED_UP_CLADOGRAMS_LABEL = "Non-Lined Up Cladogram";
JMenuItem _write_to_tif_item;
JMenuItem _write_to_png_item;
JMenuItem _write_to_bmp_item;
+ JMenuItem _write_to_eps_item;
// tools menu:
JMenuItem _midpoint_root_item;
JMenuItem _taxcolor_item;
JMenuItem _about_item;
JMenuItem _help_item;
JMenuItem _website_item;
+ JMenuItem _aptxjs_website_item;
JMenuItem _mailing_list_item;
JMenuItem _phyloxml_website_item;
JMenuItem _phyloxml_ref_item;
@Override
public void actionPerformed( final ActionEvent e ) {
final Object o = e.getSource();
- boolean is_applet = false;
- JApplet applet = null;
- if ( getCurrentTreePanel() != null ) {
- is_applet = getCurrentTreePanel().isApplet();
- if ( is_applet ) {
- applet = getCurrentTreePanel().obtainApplet();
- }
- }
+
if ( o == _exit_item ) {
close();
}
showWhole();
}
else if ( o == _search_case_senstive_cbmi ) {
+ if ( ( _search_with_regex_cbmi != null ) && _search_case_senstive_cbmi.isSelected() ) {
+ _search_with_regex_cbmi.setSelected( false );
+ }
updateOptions( getOptions() );
getMainPanel().getControlPanel().search0();
getMainPanel().getControlPanel().search1();
_search_whole_words_only_cbmi.setSelected( false );
}
if ( ( _search_case_senstive_cbmi != null ) && _search_with_regex_cbmi.isSelected() ) {
- _search_case_senstive_cbmi.setSelected( true );
+ _search_case_senstive_cbmi.setSelected( false );
}
updateOptions( getOptions() );
getMainPanel().getControlPanel().search0();
}
else if ( o == _help_item ) {
try {
- AptxUtil.openWebsite( AptxConstants.APTX_DOC_SITE, is_applet, applet );
+ AptxUtil.openWebsite( AptxConstants.APTX_DOC_SITE );
}
catch ( final IOException e1 ) {
ForesterUtil.printErrorMessage( AptxConstants.PRG_NAME, e1.toString() );
}
else if ( o == _website_item ) {
try {
- AptxUtil.openWebsite( AptxConstants.APTX_WEB_SITE, is_applet, applet );
+ AptxUtil.openWebsite( AptxConstants.APTX_WEB_SITE);
+ }
+ catch ( final IOException e1 ) {
+ ForesterUtil.printErrorMessage( AptxConstants.PRG_NAME, e1.toString() );
+ }
+ }
+ else if ( o == _aptxjs_website_item ) {
+ try {
+ AptxUtil.openWebsite( AptxConstants.APTX_JS_WEB_SITE);;
}
catch ( final IOException e1 ) {
ForesterUtil.printErrorMessage( AptxConstants.PRG_NAME, e1.toString() );
}
else if ( o == _mailing_list_item ) {
try {
- AptxUtil.openWebsite( AptxConstants.APTX_MAILING_LIST, is_applet, applet );
+ AptxUtil.openWebsite( AptxConstants.APTX_MAILING_LIST );
}
catch ( final IOException e1 ) {
ForesterUtil.printErrorMessage( AptxConstants.PRG_NAME, e1.toString() );
}
else if ( o == _phyloxml_website_item ) {
try {
- AptxUtil.openWebsite( AptxConstants.PHYLOXML_WEB_SITE, is_applet, applet );
+ AptxUtil.openWebsite( AptxConstants.PHYLOXML_WEB_SITE );
}
catch ( final IOException e1 ) {
ForesterUtil.printErrorMessage( AptxConstants.PRG_NAME, e1.toString() );
}
else if ( o == _aptx_ref_item ) {
try {
- AptxUtil.openWebsite( AptxConstants.APTX_REFERENCE_URL, is_applet, applet );
+ AptxUtil.openWebsite( AptxConstants.APTX_REFERENCE_URL );
}
catch ( final IOException e1 ) {
ForesterUtil.printErrorMessage( AptxConstants.PRG_NAME, e1.toString() );
}
else if ( o == _phyloxml_ref_item ) {
try {
- AptxUtil.openWebsite( AptxConstants.PHYLOXML_REFERENCE_URL, is_applet, applet );
+ AptxUtil.openWebsite( AptxConstants.PHYLOXML_REFERENCE_URL );
}
catch ( final IOException e1 ) {
ForesterUtil.printErrorMessage( AptxConstants.PRG_NAME, e1.toString() );
setCurrentDir( new_dir );
}
}
+ else if (o == _write_to_eps_item) {
+ final File new_dir = writeToGraphicsFile(_mainpanel.getCurrentPhylogeny(),
+ GraphicsExportType.EPS,
+ _mainpanel,
+ _writetographics_filechooser,
+ this,
+ getContentPane(),
+ _current_dir );
+ if (new_dir != null) {
+ setCurrentDir(new_dir);
+ }
+ }
else if ( o == _print_item ) {
print( getCurrentTreePanel(), getOptions(), this );
}
_process_menu.setForeground( Color.RED );
}
_process_menu.removeAll();
- final String text = "processes running: " + _process_pool.size();
+ final String text = "Processes Running: " + _process_pool.size();
_process_menu.setText( text );
_jmenubar.add( _process_menu );
for( int i = 0; i < _process_pool.size(); ++i ) {
}
}
- void activateSaveAllIfNeeded() {
+ public void activateSaveAllIfNeeded() {
if ( ( getMainPanel().getTabbedPane() != null ) && ( getMainPanel().getTabbedPane().getTabCount() > 1 ) ) {
_save_all_item.setEnabled( true );
}
}
void buildFileMenu() {
- _file_jmenu = MainFrame.createMenu( "File", getConfiguration() );
- _file_jmenu.add( _save_item = new JMenuItem( "Save Tree As..." ) );
- _file_jmenu.addSeparator();
- _file_jmenu.add( _write_to_pdf_item = new JMenuItem( "Export to PDF file ..." ) );
- if ( AptxUtil.canWriteFormat( "tif" ) || AptxUtil.canWriteFormat( "tiff" ) || AptxUtil.canWriteFormat( "TIF" ) ) {
- _file_jmenu.add( _write_to_tif_item = new JMenuItem( "Export to TIFF file..." ) );
- }
- _file_jmenu.add( _write_to_png_item = new JMenuItem( "Export to PNG file..." ) );
- _file_jmenu.add( _write_to_jpg_item = new JMenuItem( "Export to JPG file..." ) );
- if ( AptxUtil.canWriteFormat( "gif" ) ) {
- _file_jmenu.add( _write_to_gif_item = new JMenuItem( "Export to GIF file..." ) );
- }
- if ( AptxUtil.canWriteFormat( "bmp" ) ) {
- _file_jmenu.add( _write_to_bmp_item = new JMenuItem( "Export to BMP file..." ) );
- }
- _file_jmenu.addSeparator();
- _file_jmenu.add( _print_item = new JMenuItem( "Print..." ) );
- _file_jmenu.addSeparator();
- _file_jmenu.add( _exit_item = new JMenuItem( "Exit" ) );
- customizeJMenuItem( _save_item );
- customizeJMenuItem( _write_to_pdf_item );
- customizeJMenuItem( _write_to_png_item );
- customizeJMenuItem( _write_to_jpg_item );
- customizeJMenuItem( _write_to_gif_item );
- customizeJMenuItem( _write_to_tif_item );
- customizeJMenuItem( _write_to_bmp_item );
- customizeJMenuItem( _print_item );
- customizeJMenuItem( _exit_item );
- _jmenubar.add( _file_jmenu );
+// _file_jmenu = MainFrame.createMenu( "File", getConfiguration() );
+// _file_jmenu.add( _save_item = new JMenuItem( "Save Tree As..." ) );
+// _file_jmenu.addSeparator();
+// _file_jmenu.add( _write_to_pdf_item = new JMenuItem( "Export to PDF file ..." ) );
+// if ( AptxUtil.canWriteFormat( "tif" ) || AptxUtil.canWriteFormat( "tiff" ) || AptxUtil.canWriteFormat( "TIF" ) ) {
+// _file_jmenu.add( _write_to_tif_item = new JMenuItem( "Export to TIFF file..." ) );
+// }
+// _file_jmenu.add( _write_to_png_item = new JMenuItem( "Export to PNG file..." ) );
+// _file_jmenu.add( _write_to_jpg_item = new JMenuItem( "Export to JPG file..." ) );
+// if ( AptxUtil.canWriteFormat( "gif" ) ) {
+// _file_jmenu.add( _write_to_gif_item = new JMenuItem( "Export to GIF file..." ) );
+// }
+// if ( AptxUtil.canWriteFormat( "bmp" ) ) {
+// _file_jmenu.add( _write_to_bmp_item = new JMenuItem( "Export to BMP file..." ) );
+// }
+//
+// _file_jmenu.add( _write_to_eps_item = new JMenuItem("Export to EPS file...") );
+//
+// _file_jmenu.addSeparator();
+// _file_jmenu.add( _print_item = new JMenuItem( "Print..." ) );
+// _file_jmenu.addSeparator();
+// _file_jmenu.add( _exit_item = new JMenuItem( "Exit" ) );
+// customizeJMenuItem( _save_item );
+// customizeJMenuItem( _write_to_pdf_item );
+// customizeJMenuItem( _write_to_png_item );
+// customizeJMenuItem( _write_to_jpg_item );
+// customizeJMenuItem( _write_to_gif_item );
+// customizeJMenuItem( _write_to_tif_item );
+// customizeJMenuItem( _write_to_bmp_item );
+// customizeJMenuItem(_write_to_eps_item);
+// customizeJMenuItem( _print_item );
+// customizeJMenuItem( _exit_item );
+// _jmenubar.add( _file_jmenu );
}
void buildFontSizeMenu() {
_help_jmenu.add( _help_item = new JMenuItem( "Documentation" ) );
_help_jmenu.addSeparator();
_help_jmenu.add( _website_item = new JMenuItem( "Archaeopteryx Home" ) );
+ _help_jmenu.add( _aptxjs_website_item = new JMenuItem( "NEW! Archaeopteryx online version: Archaeopteryx.js" ) );
_help_jmenu.add( _mailing_list_item = new JMenuItem( "Mailing List" ) );
_aptx_ref_item = new JMenuItem( "Archaeopteryx Reference" ); //TODO need to add this...
_help_jmenu.add( _phyloxml_website_item = new JMenuItem( "phyloXML Home" ) );
_help_jmenu.add( _about_item = new JMenuItem( "About" ) );
customizeJMenuItem( _help_item );
customizeJMenuItem( _website_item );
+ customizeJMenuItem( _aptxjs_website_item );
customizeJMenuItem( _mailing_list_item );
customizeJMenuItem( _phyloxml_website_item );
customizeJMenuItem( _aptx_ref_item );