import javax.swing.*; import java.awt.*; import java.awt.event.*; import java.io.*; import java.net.*; public class OntoDataFrame extends JFrame implements ActionListener{ OntoApp oa; JTextArea ta=new JTextArea(); JButton b1=new JButton("Use data"); JButton bRead=new JButton("Read from file"); JButton bWrite=new JButton("Write to file"); JButton bclose=new JButton("Close frame"); public OntoDataFrame(OntoApp oa){ this.oa=oa; getContentPane().add(new JScrollPane(ta), BorderLayout.CENTER); JPanel buttonPanel=new JPanel(new GridLayout()); buttonPanel.add(b1); if(oa.isStandalone){ buttonPanel.add(bRead); buttonPanel.add(bWrite); } buttonPanel.add(bclose); getContentPane().add(buttonPanel, BorderLayout.NORTH); b1.addActionListener(this); bRead.addActionListener(this); bWrite.addActionListener(this); bclose.addActionListener(this); setSize(300, 300); setTitle("OntoApp data"); } public void actionPerformed(ActionEvent e){ try{ if(e.getSource()==bclose){ this.setVisible(false); } if(e.getSource()==b1){ try{ oa.od.readDataFromText(ta.getText()); oa.od.normalizeData(); oa.os.initialize(); oa.addTable(); oa.repaint(); }catch(Exception ex2){ JOptionPane.showMessageDialog(null, ex2.toString(), "Problem", JOptionPane.ERROR_MESSAGE); } } if(e.getSource()==bRead){ JFileChooser jfc=new JFileChooser(new File(".")); if(jfc.showSaveDialog(this)==JFileChooser.APPROVE_OPTION){ File f=jfc.getSelectedFile(); BufferedReader br=new BufferedReader(new FileReader(f)); String s=br.readLine(); StringBuffer sb=new StringBuffer(); while(s!=null){ sb.append(s+"\n"); s=br.readLine(); } br.close(); ta.setText(sb.toString()); } } if(e.getSource()==bWrite){ JFileChooser jfc=new JFileChooser(new File(".")); if(jfc.showOpenDialog(this)==JFileChooser.APPROVE_OPTION){ File f=jfc.getSelectedFile(); PrintWriter pw=new PrintWriter(new FileWriter(f)); pw.print(ta.getText()); pw.close(); } } }catch(Exception ex){ ex.printStackTrace(); } } }