1 package de.java2html; 2 3 import java.awt.BorderLayout ; 4 import java.awt.FlowLayout ; 5 import java.awt.event.ActionEvent ; 6 import java.awt.event.ActionListener ; 7 8 import javax.swing.Box ; 9 import javax.swing.JButton ; 10 import javax.swing.JFrame ; 11 import javax.swing.JPanel ; 12 import javax.swing.JTabbedPane ; 13 14 import de.java2html.gui.DirectTextConversionPanel; 15 import de.java2html.gui.FileConversionPanel; 16 import de.java2html.gui.GuiTools; 17 import de.java2html.gui.IStatisticsView; 18 import de.java2html.gui.Java2HtmlOptionsPanel; 19 import de.java2html.javasource.JavaSourceStatistic; 20 21 49 public class Java2HtmlApplication { 50 51 private final JFrame frame; 52 53 private final JButton bExit; 54 private final Java2HtmlOptionsPanel optionsPanel = new Java2HtmlOptionsPanel(); 55 56 public Java2HtmlApplication() { 57 final JTabbedPane tabbedPane = new JTabbedPane (); 58 tabbedPane.addTab("File Conversion", new FileConversionPanel(optionsPanel).getContent()); 59 tabbedPane.addTab("Direct Text Conversion", new DirectTextConversionPanel( 60 optionsPanel, 61 new IStatisticsView() { 62 public void setStatistics(JavaSourceStatistic statistic) { 63 } 65 }).getContent()); 66 67 bExit = new JButton ("Exit"); 68 bExit.addActionListener(new ActionListener () { 69 public void actionPerformed(ActionEvent evt) { 70 System.exit(0); 71 } 72 }); 73 74 final JPanel southPanel = new JPanel (new FlowLayout (FlowLayout.RIGHT)); 75 southPanel.add(bExit); 76 77 final JPanel pOptions = GuiTools.createBorderedPanel("Options"); 78 pOptions.setLayout(new BorderLayout ()); 79 pOptions.add(optionsPanel.getContent(), BorderLayout.CENTER); 80 81 JPanel p = new JPanel (new BorderLayout ()); 82 p.add(pOptions, BorderLayout.NORTH); 83 p.add(Box.createVerticalGlue(), BorderLayout.CENTER); 84 85 frame = new JFrame (Version.getJava2HtmlConverterTitle()); 86 frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); 87 frame.getContentPane().setLayout(new BorderLayout (4, 4)); 88 frame.getContentPane().add(p, BorderLayout.EAST); 89 frame.getContentPane().add(tabbedPane, BorderLayout.CENTER); 90 frame.getContentPane().add(southPanel, BorderLayout.SOUTH); 91 } 92 93 private void show() { 94 frame.pack(); 95 GuiTools.centerOnScreen(frame); 96 frame.setVisible(true); 97 } 98 99 public static void main(String args[]) { 100 if (args != null && args.length > 0) { 101 Java2Html.main(args); 102 return; 103 } 104 GuiTools.setNativeLookAndFeel(); 105 Java2HtmlApplication application = new Java2HtmlApplication(); 106 application.show(); 107 } 108 } | Popular Tags |