Package com.mockturtlesolutions.jpHtools.maintenance

Source Code of com.mockturtlesolutions.jpHtools.maintenance.jpHtoolsCustodianFrame$SrcSelectListener

package com.mockturtlesolutions.jpHtools.maintenance;

//Copyright (C) 2005  Daniel P. Dougherty
//
//This program is free software; you can redistribute it and/or
//modify it under the terms of the GNU General Public
//License as published by the Free Software Foundation; either
//version 2 of the License, or (at your option) any later version.
//
//This program is distributed in the hope that it will be useful,
//but WITHOUT ANY WARRANTY; without even the implied warranty of
//MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
//General Public License for more details.
//
//You should have received a copy of the GNU General Public
//License along with this program; if not, write to the Free Software
//Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
//
//$Id:  $

import javax.swing.BoxLayout;
import javax.swing.JLabel;
import javax.swing.JFrame;
import javax.swing.Box;
import javax.swing.JScrollPane;
import javax.swing.JTextArea;
import javax.swing.JOptionPane;
import javax.swing.JButton;
import javax.swing.JTextField;
import java.awt.Container;
import java.awt.event.*;
import java.awt.Dimension;
import com.mockturtlesolutions.jpHtools.database.*;
import com.mockturtlesolutions.snifflib.guitools.components.*;
import com.mockturtlesolutions.snifflib.reposconfig.database.*;
import com.mockturtlesolutions.snifflib.reposconfig.graphical.ReposConfigFrame;
import com.mockturtlesolutions.snifflib.graphics.*;
import com.mockturtlesolutions.snifflib.datatypes.DblMatrix;
import com.mockturtlesolutions.snifflib.datatypes.DataSet;
import javax.swing.BorderFactory;
import javax.swing.border.Border;
import javax.swing.border.TitledBorder;
import javax.swing.border.EtchedBorder;

import java.util.Vector;


public class jpHtoolsCustodianFrame extends JFrame
{
  private JButton srcRepos;
  //private JButton destRepos;
  private JButton expClean;
  private JButton buffClean;
 
  private Container contentPane;
  private ActionListener okcancelListener;
  private JButton okButton;
  private JButton cancelButton;
  private ReposConfigFrame srcEditor;
  private ReposConfigFrame destEditor;
  private FindNameDialog expFind;
  private FindNameDialog buffFind;
  protected pHtoolsConfig Config;
  private pHtoolsConnectivity Connection;
  protected pHtoolsPrefs Prefs;
  private IconServer iconServer;
  private Vector selectedBuffers;
  private Vector selectedExperiments;
 
 
  public jpHtoolsCustodianFrame()
  {
    super("Manage repositories...");
    this.selectedExperiments = new Vector();
    this.selectedBuffers = new Vector();
   
    this.setSize(400,400);
    this.contentPane = this.getContentPane();
   
    this.contentPane.setLayout(new BoxLayout(this.contentPane,BoxLayout.Y_AXIS));
   
    this.iconServer = new PhtoolsIconServer();
   
    this.Config = new pHtoolsConfig();
    this.Config.initialize();
    this.Prefs = new pHtoolsPrefs();
    this.Prefs.initialize();
    this.Connection = new pHtoolsConnectivity(this.Config);
   
    this.srcEditor = new ReposConfigFrame(this.Config);
    this.srcEditor.setVisible(false);
    this.srcEditor.addSelectListener(new SrcSelectListener());
   
   
    Box reposBox = Box.createHorizontalBox();
   
   
   
    JLabel srcLabel = new JLabel("Repository");
   
    this.srcRepos = new JButton("default");
 
    this.srcRepos.addActionListener(new ActionListener()
            {
              public void actionPerformed(java.awt.event.ActionEvent e)
              { 
                selectedExperiments = new Vector();
                selectedBuffers = new Vector();
                srcEditor.setVisible(true);
              }
            }
          );
   
   
   
   
   
    srcLabel.setLabelFor(this.srcRepos);
   
    Box srcBox = Box.createVerticalBox();
    srcBox.add(srcLabel);
    srcBox.add(this.srcRepos);
   
   
    reposBox.add(srcBox);
   
   
    Box cleanBox = Box.createVerticalBox();
   
    JLabel transLabel = new JLabel("Remove disabled...");
    this.expClean = new JButton("Experiments");
    this.buffClean = new JButton("Buffers");
    this.buffClean.setSize(this.expClean.getSize());
    this.buffClean.setMaximumSize(this.expClean.getMaximumSize());
    this.buffClean.setPreferredSize(this.expClean.getPreferredSize());
   
    this.expFind = new FindNameDialog(this.Config,this.iconServer,FindNameDialog.EXPERIMENT_SEARCH);
    this.expFind.setEnabled(false);
    this.expFind.setEnabledEnabled(false);
   
    this.buffFind = new FindNameDialog(this.Config,this.iconServer,FindNameDialog.BUFFER_SEARCH);
    this.buffFind.setEnabled(false);
    this.buffFind.setEnabledEnabled(false);
   
    this.expFind.setVisible(false);
    this.expFind.setMaxSelections(-1); //Arbitrary number of selections.
    this.buffFind.setVisible(false);
    this.buffFind.setMaxSelections(-1); //Arbitrary number of selections.
   
    this.expFind.addOkListener(new ActionListener()
            { 
                     public void actionPerformed(ActionEvent e)
                     {
                      
                String[] sel = (String[])expFind.getSelectedNames();
               
                selectedExperiments = new Vector();
                for (int k=0;k<sel.length;k++)
                {
                  selectedExperiments.add(sel[k]);
                }
               
               
                expFind.setVisible(false);
              }
                   }
          );
         
    this.expFind.addCancelListener(new ActionListener()
            { 
                     public void actionPerformed(ActionEvent e)
                     {
               
                expFind.setVisible(false);
              }
                   }
          );
         
    this.buffFind.addOkListener(new ActionListener()
            { 
                     public void actionPerformed(ActionEvent e)
                     {
                      
                String[] sel = (String[])buffFind.getSelectedNames();
               
                selectedBuffers = new Vector();
                for (int k=0;k<sel.length;k++)
                {
                  selectedBuffers.add(sel[k]);
                }
               
                buffFind.setVisible(false);
              }
                   }
          );
    this.buffFind.addCancelListener(new ActionListener()
            { 
                     public void actionPerformed(ActionEvent e)
                     {
                buffFind.setVisible(false);
              }
                   }
          );
   
    this.expClean.addActionListener(new ActionListener()
            { 
                     public void actionPerformed(ActionEvent e)
                     {
                String restrict_repos = srcRepos.getText();
                expFind.restrictToRepository(restrict_repos);
               
                       expFind.setVisible(true);
              }
                   }
          );

    this.buffClean.addActionListener(new ActionListener()
            { 
                     public void actionPerformed(ActionEvent e)
                     {
                String restrict_repos = srcRepos.getText();
                buffFind.restrictToRepository(restrict_repos);
                buffFind.setVisible(true);
              }
                   }
          );
   
   
    cleanBox.add(transLabel);
    cleanBox.add(this.expClean);
    cleanBox.add(this.buffClean);
   
   
    Box aBox = Box.createHorizontalBox();
    aBox.add(Box.createHorizontalGlue());
    aBox.add(reposBox);
    aBox.add(Box.createHorizontalGlue());
   
    Box bBox = Box.createHorizontalBox();
    bBox.add(Box.createHorizontalGlue());
    bBox.add(cleanBox);
    bBox.add(Box.createHorizontalGlue());
   
   
    TitledBorder border = BorderFactory.createTitledBorder("Purge disabled:");
   
    Box removeBox = Box.createVerticalBox();
    removeBox.add(aBox);
    //removeBox.add(Box.createVerticalGlue());
    removeBox.add(bBox);
    removeBox.add(Box.createVerticalGlue());
    removeBox.setBorder(border);
    //this.add(removeBox);
   
   
    // border = BorderFactory.createTitledBorder("Optimizer settings:");
//     JButton optimizerbut = new JButton("Configure optimizer...");
//     Box optimizerBox = Box.createHorizontalBox();
//     optimizerBox.add(Box.createHorizontalGlue());
//     optimizerBox.add(optimizerbut);
//     optimizerBox.add(Box.createHorizontalGlue());
//     optimizerBox.setBorder(border);
//     //this.add(optimizerBox);
   
    Box organizeThingsBox = Box.createVerticalBox();
    //organizeThingsBox.add(optimizerBox);
    organizeThingsBox.add(removeBox);
    this.add(organizeThingsBox);
   
   
//    
   
   
    this.okButton = new JButton("Ok");
    okButton.addActionListener(new ActionListener()
            {
              public void actionPerformed(ActionEvent e)
              {
               
                pHtoolsConnectivity Connection = null;
                pHtoolsConfig Config = null;


                Config = new pHtoolsConfig();
                Config.initialize();
                Connection = new pHtoolsConnectivity(Config);

                //String[] repos = Config.getRepositories();
                String repos = srcRepos.getText();
                try
                {
                  if (Config.isEnabled(repos))
                  {
                    jpHtoolsMaintenance man = (jpHtoolsMaintenance)Connection.getCustodian(repos);
                   
                    man.cleanOnlyExperiments(selectedExperiments);
                    man.cleanOnlyBuffers(selectedBuffers);
                    man.cleanExperiments();
                    man.cleanBuffers();
                  }
                  // for (int j=0;j<repos.length;j++)
//                   {
//
//                     jpHtoolsMaintenance man = (jpHtoolsMaintenance)Connection.getManager(repos[j]);
//
//                     man.cleanExperiments();
//                     man.cleanBuffers();
//                   }
             
                }
                catch (Exception err)
                {
                  throw new RuntimeException("Problem performing transfer.",err);
                }
               
                if (okcancelListener != null)
                {
                  okcancelListener.actionPerformed(e);
                }
               
               
              }
            }
      );
   
    this.cancelButton = new JButton("Cancel");
    cancelButton.addActionListener(new ActionListener()
            {
              public void actionPerformed(ActionEvent e)
              {
                //nameText.setText(name);
                //System.out.println("Cancel pushed");
                if (okcancelListener != null)
                {
                  //System.out.println("Listener not null");
                  okcancelListener.actionPerformed(e);
                }
               
                //setVisible(false);
              }
            }
    );
   

   
    Box controlBox = Box.createHorizontalBox();
    controlBox.add(Box.createHorizontalGlue());
    controlBox.add(this.okButton);
    controlBox.add(this.cancelButton);
    controlBox.add(Box.createHorizontalGlue());
    this.add(controlBox);
    //this.setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE);
    this.pack();
   
    this.setVisible(false);
   
  }
 
 
 
  private class SrcSelectListener implements ActionListener
  {
    public void actionPerformed(ActionEvent e)
    {
      srcRepos.setText(srcEditor.getCurrentRepository());
      srcEditor.setVisible(false);

    }
  }
 
  // private class DestSelectListener implements ActionListener
//   {
//     public void actionPerformed(ActionEvent e)
//     {
//       destRepos.setText(destEditor.getCurrentRepository());
//       destEditor.setVisible(false);
//
//     }
//   }
//  
 
 
  public void setOkCancelListener(ActionListener listen)
  {
    this.okcancelListener = listen;
 
  }
 
 
 
  public void showError(String msg)
  {  JOptionPane dialog = new JOptionPane();
    JTextArea area = new JTextArea(msg);
    JScrollPane jsp = new JScrollPane(area);
    jsp.setPreferredSize(new Dimension(500,200));
    dialog.showMessageDialog(this,jsp,"Error",JOptionPane.ERROR_MESSAGE);
  }
 
}
TOP

Related Classes of com.mockturtlesolutions.jpHtools.maintenance.jpHtoolsCustodianFrame$SrcSelectListener

TOP
Copyright © 2018 www.massapi.com. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.