public void saveWorkingInstancesToFileQ(){
  if (m_IOThread == null) {
    m_FileChooser.setCapabilitiesFilter(m_FilterEditor.getCapabilitiesFilter());
    m_FileChooser.setAcceptAllFileFilterUsed(false);
    int returnVal=m_FileChooser.showSaveDialog(this);
    if (returnVal == JFileChooser.APPROVE_OPTION) {
      Instances inst=new Instances(m_Instances);
      inst.setClassIndex(m_AttVisualizePanel.getColoringIndex());
      saveInstancesToFile(m_FileChooser.getSaver(),inst);
    }
    FileFilter temp=m_FileChooser.getFileFilter();
    m_FileChooser.setAcceptAllFileFilterUsed(true);
    m_FileChooser.setFileFilter(temp);
  }
 else {
    JOptionPane.showMessageDialog(this,"Can't save at this time,\n" + "currently busy with other IO","Save Instances",JOptionPane.WARNING_MESSAGE);
  }
}

public void saveWorkingInstancesToFileQ ( ) { if ( m_IOThread == null ) { m_FileChooser . setCapabilitiesFilter ( m_FilterEditor . getCapabilitiesFilter ( ) ) ; m_FileChooser . setAcceptAllFileFilterUsed ( false ) ; int returnVal = m_FileChooser . showSaveDialog ( this ) ; if ( returnVal == JFileChooser . APPROVE_OPTION ) { Instances inst = new Instances ( m_Instances ) ; inst . setClassIndex ( m_AttVisualizePanel . getColoringIndex ( ) ) ; saveInstancesToFile ( m_FileChooser . getSaver ( ) , inst ) ; } FileFilter temp = m_FileChooser . getFileFilter ( ) ; m_FileChooser . setAcceptAllFileFilterUsed ( true ) ; m_FileChooser . setFileFilter ( temp ) ; } else { JOptionPane . showMessageDialog ( this , "Can't save at this time,\n" + "currently busy with other IO" , "Save Instances" , JOptionPane . WARNING_MESSAGE ) ; } }
queries the user for a file to save instances as , then saves the instances in a background process . this is done in the io thread , and an error message is popped up if the io thread is busy .
