/*
*
* Perforce/JBuilder Opentool
* Copyright (C) 2002 Mark Ackerman
*
* 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;
* version 2.1 of the License.
*
* 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
*
*/
package com.dafreels.opentools.actions;
//JBuilder
import com.borland.primetime.*;
import com.borland.primetime.actions.*;
import com.borland.primetime.node.*;
import com.borland.jbuilder.*;
import com.borland.primetime.ide.*;
import com.borland.primetime.editor.*;
//Java
import java.awt.Cursor;
import javax.swing.*;
import java.awt.event.*;
//JBuilder OT
import com.dafreels.opentools.*;
import com.dafreels.opentools.properties.*;
import com.dafreels.opentools.actions.ui.FileIntegrateDialog;
//Perforce OT
import com.dafreels.vcs.command.*;
import com.dafreels.vcs.util.ExtensionRegistry;
import com.dafreels.vcs.util.ActionImages;
/**
* Title: Perforce OpenTool
* Description: Action to display the File Integration dialog
* Copyright: Copyright (c) 2002
* Company:
* @author Mark Ackerman
* @version 1.0
*/
public class IntegrateAction extends PerforceAction
{
private final ExtensionRegistry m_reg = ExtensionRegistry.getInstance();
private FileIntegrateDialog _dialog;
public IntegrateAction(boolean onFileTabMenu)
{
super("Branch Integration", "Branch Integration", null, onFileTabMenu);
super.setSmallIcon(ActionImages.P4_INTEGRATE);
}
public void actionPerformed(Browser browser)
{
Cursor savedEditorCursor = null;
EditorPane editor = null;
try
{
editor = EditorAction.getFocusedEditor();
Cursor waitCursor = Cursor.getPredefinedCursor(Cursor.WAIT_CURSOR);
if ( editor != null )
{
savedEditorCursor = editor.getCursor();
editor.setCursor(waitCursor);
}
browser.setCursor(waitCursor);
//com.dafreels.vcs.command.Command cmd = new com.dafreels.vcs.command.Command(com.dafreels.vcs.command.Command.OPENED);
//String cmd = "opened";
//Run the command
//CommandTool.runCommand(cmd.toString(), Main.m_props);
//Output the p4 messages
//MessageWriter.outputErrorMessages(MessageFormatter.getInstance());
Node[] nodes = getSelectedNodes(browser,null);
if ( nodes == null || nodes.length == 0 )
{
return;
}
if ( _dialog == null )
{
_dialog = new FileIntegrateDialog(Browser.getActiveBrowser(), false);
}
//_dialog.fillForm(MessageFormatter.getInstance());
_dialog.setSelectedNodes(nodes);
_dialog.setVisible(true);
}
finally
{
browser.setCursor(Cursor.getDefaultCursor());
if ( editor != null && savedEditorCursor != null )
{
editor.setCursor(savedEditorCursor);
}
}
}
}