⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 convertorpanel.java

📁 fortran并行计算包
💻 JAVA
📖 第 1 页 / 共 3 页
字号:
/* *  (C) 2001 by Argonne National Laboratory *      See COPYRIGHT in top-level directory. *//* *  @author  Anthony Chan */package viewer.convertor;import java.awt.Color;import java.awt.Insets;import java.awt.Dimension;import java.awt.Component;import java.awt.Window;import java.awt.event.ActionEvent;import java.awt.event.ActionListener;import javax.swing.Box;import javax.swing.BoxLayout;import javax.swing.JPanel;import javax.swing.JLabel;import javax.swing.JButton;import javax.swing.JComboBox;import javax.swing.JTextField;import javax.swing.JScrollPane;import javax.swing.JSplitPane;import javax.swing.JProgressBar;import javax.swing.ImageIcon;import javax.swing.AbstractButton;import javax.swing.BorderFactory;import javax.swing.border.Border;import javax.swing.border.TitledBorder;import javax.swing.SwingUtilities;import javax.swing.UIManager;import java.util.Properties;import java.io.File;import java.io.InputStream;import java.io.InputStreamReader;import java.io.BufferedReader;import java.io.IOException;import java.net.URL;import logformat.slog2.input.InputLog;import viewer.common.Const;import viewer.common.Dialogs;import viewer.common.Routines;import viewer.common.CustomCursor;import viewer.common.ActableTextField;import viewer.common.LogFileChooser;import viewer.common.RuntimeExecCommand;public class ConvertorPanel extends JPanel                            implements WaitingContainer{    private JComboBox          cmd_pulldown;    private ActableTextField   cmd_infile;    private JButton            infile_btn;    private JTextField         cmd_outfile;    private JButton            outfile_btn;    private AdvancingTextArea  cmd_textarea;    private JTextField         cmd_outfile_size;    private JProgressBar       cmd_progress;    private JTextField         cmd_option4jvm;    private JTextField         cmd_option4jar;    private JTextField         cmd_path2jvm;    private ActableTextField   cmd_path2jardir;    private JTextField         cmd_path2tracelib;    private JSplitPane         cmd_splitter;    private JButton            cmd_start_btn;    private JButton            cmd_stop_btn;    private JButton            cmd_help_btn;    private JButton            cmd_close4ok_btn;    private JButton            cmd_close4cancel_btn;    private Window             top_window;    private LogFileChooser     file_chooser;    private String             file_sep, path_sep;    private String             err_msg;    private SwingProcessWorker logconv_worker;    public ConvertorPanel( LogFileChooser  in_file_chooser )    {        super();        this.initComponents( in_file_chooser != null );        this.initAllTextFields();        if ( in_file_chooser != null )            file_chooser  = in_file_chooser;        else            file_chooser  = new LogFileChooser( false );        cmd_pulldown.addActionListener( new PulldownListener() );        cmd_infile.addActionListener( new LogNameListener() );        infile_btn.addActionListener( new InputFileSelectorListener() );        outfile_btn.addActionListener( new OutputFileSelectorListener() );        cmd_path2jardir.addActionListener( new JarDirectoryListener() );        cmd_start_btn.addActionListener( new StartConvertorListener() );        cmd_stop_btn.addActionListener( new StopConvertorListener() );        cmd_help_btn.addActionListener( new HelpConvertorListener() );        this.finalizeWaiting();        logconv_worker = null;    }    public void init( String filename )    {        top_window = SwingUtilities.windowForComponent( this );        cmd_splitter.setDividerLocation( 1.0d );        if ( filename != null && filename.length() > 0 ) {            cmd_infile.setText( filename );            cmd_infile.fireActionPerformed(); // Invoke LogNameListener()            cmd_pulldown.setSelectedItem(                         ConvertorConst.getDefaultConvertor( filename ) );            if ( cmd_close4ok_btn != null )                cmd_close4ok_btn.setEnabled( false );            if ( cmd_close4cancel_btn != null )                cmd_close4cancel_btn.setEnabled( true );        }        if ( err_msg != null )            Dialogs.error( top_window, err_msg );    }    private URL getURL( String filename )    {        URL url = null;        url = getClass().getResource( filename );        return url;    }    private void initComponents( boolean has_close4ok_btn )    {        Border   raised_border, etched_border;        raised_border  = BorderFactory.createRaisedBevelBorder();        etched_border  = BorderFactory.createEtchedBorder();        //  Setup all relevant Dimension of various components        Dimension   row_pref_sz;   // for typical row JPanel        Dimension   lbl_pref_sz;   // for all JLabel        Dimension   fld_pref_sz;   // for all JTextField        Dimension   pfld_pref_sz;  // for JProgressBar        Dimension   pbar_pref_sz;  // for JTextField of Output File Size        row_pref_sz  = new Dimension( 410, 30 );        lbl_pref_sz  = new Dimension( 130, 26 );        fld_pref_sz  = new Dimension( row_pref_sz.width - lbl_pref_sz.width,                                      lbl_pref_sz.height );        pfld_pref_sz = new Dimension( lbl_pref_sz.width,                                      2 * lbl_pref_sz.height );        pbar_pref_sz = new Dimension( row_pref_sz.width,                                      pfld_pref_sz.height );        super.setLayout( new BoxLayout( this, BoxLayout.Y_AXIS ) );            Color thumb_color, pulldown_bg_color;            thumb_color = UIManager.getColor( "ScrollBar.thumb" );            pulldown_bg_color = Routines.getSlightBrighterColor( thumb_color );            JLabel  label;            Insets  btn_insets;            URL     icon_URL;            JPanel  upper_panel = new JPanel();            upper_panel.setAlignmentX( Component.CENTER_ALIGNMENT );            upper_panel.setLayout( new BoxLayout( upper_panel,                                                  BoxLayout.Y_AXIS ) );            upper_panel.add( Box.createVerticalStrut( 4 ) );                JPanel  cmd_name_panel = new JPanel();                cmd_name_panel.setAlignmentX( Component.CENTER_ALIGNMENT );                cmd_name_panel.setLayout( new BoxLayout( cmd_name_panel,                                                         BoxLayout.X_AXIS ) );                cmd_name_panel.add( Box.createHorizontalStrut( 5 ) );                    cmd_pulldown = new JComboBox();                    cmd_pulldown.setForeground( Color.yellow );                    cmd_pulldown.setBackground( pulldown_bg_color );                    cmd_pulldown.setToolTipText( " Logfile Convertor's Name " );                    cmd_pulldown.addItem( ConvertorConst.CLOG2_TO_SLOG2 );                    cmd_pulldown.addItem( ConvertorConst.CLOG_TO_SLOG2 );                    cmd_pulldown.addItem( ConvertorConst.RLOG_TO_SLOG2 );                    cmd_pulldown.addItem( ConvertorConst.UTE_TO_SLOG2 );                    cmd_pulldown.addItem( ConvertorConst.TXT_TO_SLOG2 );                    cmd_pulldown.setBorder( raised_border );                    cmd_pulldown.setEditable( false );                    cmd_pulldown.setAlignmentX( Component.CENTER_ALIGNMENT );                cmd_name_panel.add( cmd_pulldown );                cmd_name_panel.add( Box.createHorizontalStrut( 5 ) );                Routines.setShortJComponentSizes( cmd_name_panel,                                                  row_pref_sz );            upper_panel.add( cmd_name_panel );            upper_panel.add( Box.createVerticalStrut( 4 ) );                btn_insets      = new Insets( 1, 1, 1, 1 );                JPanel  cmd_infile_panel = new JPanel();                cmd_infile_panel.setAlignmentX( Component.CENTER_ALIGNMENT );                cmd_infile_panel.setLayout( new BoxLayout( cmd_infile_panel,                                                           BoxLayout.X_AXIS ) );                    label = new JLabel( " Input File Spec. : " );                    label.setToolTipText(                          "File Specification of the Input Trace File." );                    Routines.setShortJComponentSizes( label, lbl_pref_sz );                cmd_infile_panel.add( label );                    cmd_infile = new ActableTextField();                cmd_infile_panel.add( cmd_infile );                    icon_URL = getURL( Const.IMG_PATH + "Open24.gif" );                    infile_btn = null;                    if ( icon_URL != null )                        infile_btn = new JButton( new ImageIcon( icon_URL ) );                    else                        infile_btn = new JButton( "Browse" );                    infile_btn.setToolTipText( "Select a new Input Logfile" );                    infile_btn.setMargin( btn_insets );                cmd_infile_panel.add( infile_btn );                Routines.setShortJComponentSizes( cmd_infile_panel,                                                  row_pref_sz );            upper_panel.add( cmd_infile_panel );            upper_panel.add( Box.createVerticalStrut( 4 ) );                JPanel  cmd_outfile_panel = new JPanel();                cmd_outfile_panel.setAlignmentX( Component.CENTER_ALIGNMENT );                cmd_outfile_panel.setLayout( new BoxLayout( cmd_outfile_panel,                                                           BoxLayout.X_AXIS ) );                    label = new JLabel( " Output File Name : " );                    label.setToolTipText( "File Name of the SLOG-2 File" );                    Routines.setShortJComponentSizes( label, lbl_pref_sz );                cmd_outfile_panel.add( label );                    cmd_outfile = new JTextField();                cmd_outfile_panel.add( cmd_outfile );                    icon_URL = getURL( Const.IMG_PATH + "Open24.gif" );                    outfile_btn = null;                    if ( icon_URL != null )                        outfile_btn = new JButton( new ImageIcon( icon_URL ) );                    else                        outfile_btn = new JButton( "Browse" );                    outfile_btn.setToolTipText( "Select a new Output Logfile" );                    outfile_btn.setMargin( btn_insets );                cmd_outfile_panel.add( outfile_btn );                Routines.setShortJComponentSizes( cmd_outfile_panel,                                                  row_pref_sz );            upper_panel.add( cmd_outfile_panel );            upper_panel.add( Box.createVerticalStrut( 4 ) );                    cmd_textarea = new AdvancingTextArea();                    cmd_textarea.setColumns( 50 );                    cmd_textarea.setRows( 5 );                    cmd_textarea.setEditable( false );                    cmd_textarea.setLineWrap( false );                JScrollPane scroller = new JScrollPane( cmd_textarea );                scroller.setAlignmentX( Component.CENTER_ALIGNMENT );            upper_panel.add( scroller );            upper_panel.add( Box.createVerticalStrut( 4 ) );                JPanel cmd_outfile_status_panel = new JPanel();                cmd_outfile_status_panel.setAlignmentX(                                         Component.CENTER_ALIGNMENT );                cmd_outfile_status_panel.setLayout(                                   new BoxLayout( cmd_outfile_status_panel,                                                  BoxLayout.X_AXIS ) );                    JPanel cmd_outfile_size_panel = new JPanel();                    cmd_outfile_size_panel.setAlignmentY(                                       Component.CENTER_ALIGNMENT );                    cmd_outfile_size_panel.setLayout(                                     new BoxLayout( cmd_outfile_size_panel,                                                    BoxLayout.X_AXIS ) );                    cmd_outfile_size_panel.setBorder(                        new TitledBorder( etched_border,                                          " Output File Size ") );                        cmd_outfile_size = new JTextField();                        cmd_outfile_size.setEditable( false );                    cmd_outfile_size_panel.add( cmd_outfile_size );                    Routines.setShortJComponentSizes( cmd_outfile_size_panel,                                                      pfld_pref_sz );                cmd_outfile_status_panel.add( cmd_outfile_size_panel );                    JPanel cmd_progress_panel = new JPanel();                    cmd_progress_panel.setAlignmentY(                                       Component.CENTER_ALIGNMENT );                    cmd_progress_panel.setLayout(                                       new BoxLayout( cmd_progress_panel,                                                      BoxLayout.X_AXIS ) );                    cmd_progress_panel.setBorder(                        new TitledBorder( etched_border,                            " Output to Input Logfile Size Ratio " ) );                        cmd_progress = new JProgressBar();                        cmd_progress.setStringPainted( true );                    cmd_progress_panel.add( cmd_progress );                    Routines.setShortJComponentSizes( cmd_progress_panel,                                                      pbar_pref_sz );                cmd_outfile_status_panel.add( cmd_progress_panel );            upper_panel.add( cmd_outfile_status_panel );        row_pref_sz  = new Dimension( 410, 27 );        lbl_pref_sz  = new Dimension( 130, 25 );        fld_pref_sz  = new Dimension( row_pref_sz.width - lbl_pref_sz.width,                                      lbl_pref_sz.height );            JPanel  lower_panel = new JPanel();            lower_panel.setAlignmentX( Component.CENTER_ALIGNMENT );            lower_panel.setLayout( new BoxLayout( lower_panel,

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -