Package net.sourceforge.squirrel_sql.client.session.action

Source Code of net.sourceforge.squirrel_sql.client.session.action.EditWhereColsAction

package net.sourceforge.squirrel_sql.client.session.action;
/*
* Copyright (C) 2003-2004 Maury Hammel
*
* Modifications Copyright (C) 2003-2004 Jason Height
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public
* License as published by the Free Software Foundation; either
* version 2.1 of the License, or (at your option) any later version.
*
* This library 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
* Lesser General Public License for more details.
*
* You should have received a copy of the GNU Lesser General Public
* License along with this library; if not, write to the Free Software
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
*/
import java.awt.event.ActionEvent;

import net.sourceforge.squirrel_sql.client.IApplication;
import net.sourceforge.squirrel_sql.client.action.SquirrelAction;
import net.sourceforge.squirrel_sql.client.session.IObjectTreeAPI;
import net.sourceforge.squirrel_sql.fw.gui.CursorChanger;
import net.sourceforge.squirrel_sql.fw.sql.DatabaseObjectType;
import net.sourceforge.squirrel_sql.fw.sql.IDatabaseObjectInfo;
import net.sourceforge.squirrel_sql.fw.util.StringManager;
import net.sourceforge.squirrel_sql.fw.util.StringManagerFactory;
/**
* EditWhereColsAction.java
*
* Adapted from SQLFilterAction.java by Maury Hammel.
*/
public class EditWhereColsAction extends SquirrelAction
                implements IObjectTreeAction
{
  /** The object tree which this Action applies. */
  private IObjectTreeAPI _tree;

    /** Internationalized strings for this class. */
    private static final StringManager s_stringMgr =
        StringManagerFactory.getStringManager(EditWhereColsAction.class);

   
  /**
   * Ctor.
   *
   * @param  app    A reference to the SQuirreL application instance
   */
  public EditWhereColsAction(IApplication app)
  {
    super(app);
  }

  /**
   * Set the Object Tree that we are working with.
   *
   * @param  tree  Object tree that we want to work with.
   */
  public void setObjectTree(IObjectTreeAPI tree)
  {
    _tree = tree;
      setEnabled(null != _tree);
     
  }

  /**
   * Perform this action.
   *
   * @param  evt  The current event.
   */
  public void actionPerformed(ActionEvent evt)
  {
    final IApplication app = getApplication();
    if (_tree != null)
    {
      // Ensure that the proper type of Object is selected in the Object
      // Tree.
      IDatabaseObjectInfo selectedObjects[] =  _tree.getSelectedDatabaseObjects();
      int objectTotal = selectedObjects.length;

      if ((objectTotal == 1)
        && (selectedObjects[0].getDatabaseObjectType()
          == DatabaseObjectType.TABLE))
      {
        CursorChanger cursorChg = new CursorChanger(getApplication().getMainFrame());
        cursorChg.show();
        try
        {
          new EditWhereColsCommand(app, _tree, selectedObjects[0]).execute();
        }
        finally
        {
          cursorChg.restore();
        }
      }
      else
      {
                //i18n[EditWhereColsAction.singleObjectMessage=You must have a
                //single table selected to limit the colums used in the Edit
                //WHERE clause]
                String msg =
                    s_stringMgr.getString("EditWhereColsAction.singleObjectMessage");
        _tree.getSession().showMessage(msg);
      }
    }
  }
}
TOP

Related Classes of net.sourceforge.squirrel_sql.client.session.action.EditWhereColsAction

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.