From: <dal...@us...> - 2009-03-30 20:30:30
|
Revision: 14878 http://jedit.svn.sourceforge.net/jedit/?rev=14878&view=rev Author: daleanson Date: 2009-03-30 20:30:27 +0000 (Mon, 30 Mar 2009) Log Message: ----------- minor updates to streamline checkout process Modified Paths: -------------- plugins/SVNPlugin/trunk/src/ise/plugin/svn/action/CheckoutAction.java plugins/SVNPlugin/trunk/src/ise/plugin/svn/gui/PVSVNOptionPane.java Modified: plugins/SVNPlugin/trunk/src/ise/plugin/svn/action/CheckoutAction.java =================================================================== --- plugins/SVNPlugin/trunk/src/ise/plugin/svn/action/CheckoutAction.java 2009-03-30 19:58:26 UTC (rev 14877) +++ plugins/SVNPlugin/trunk/src/ise/plugin/svn/action/CheckoutAction.java 2009-03-30 20:30:27 UTC (rev 14878) @@ -28,23 +28,19 @@ package ise.plugin.svn.action; -//import java.awt.BorderLayout; -//import java.awt.FlowLayout; -//import java.awt.event.ActionListener; import java.awt.event.ActionEvent; import java.beans.PropertyChangeListener; import java.beans.PropertyChangeEvent; import javax.swing.*; import projectviewer.ProjectManager; import projectviewer.ProjectViewer; -//import projectviewer.config.ProjectPropertiesPane; import projectviewer.config.ProjectOptions; +import projectviewer.config.VersionControlService; import projectviewer.importer.RootImporter; import projectviewer.vpt.*; import ise.plugin.svn.gui.CheckoutDialog; import ise.plugin.svn.gui.OutputPanel; import ise.plugin.svn.library.GUIUtils; -//import ise.plugin.svn.library.PrivilegedAccessor; import ise.plugin.svn.io.*; import ise.plugin.svn.data.*; import ise.plugin.svn.*; @@ -69,6 +65,8 @@ if ( data == null ) throw new IllegalArgumentException( "data may not be null" ); this.data = data; + setUsername( data.getUsername() ); + setPassword( data.getPassword() ); } public void propertyChange( PropertyChangeEvent pce ) { @@ -87,6 +85,19 @@ return ; // user canceled } + if ( data.getUsername() == null ) { + verifyLogin( data.getPaths().get( 0 ) ); + if ( isCanceled() ) { + return ; + } + data.setUsername( getUsername() ); + data.setPassword( getPassword() ); + } + else { + setUsername( data.getUsername() ); + setPassword( data.getPassword() ); + } + data.setOut( new ConsolePrintStream( getView() ) ); getView().getDockableWindowManager().showDockableWindow( "subversion" ); @@ -169,19 +180,35 @@ index = index == -1 ? 0 : index + 1; String project_name = path.substring( index ); final VPTProject project = new VPTProject( project_name ); + + // set some project properties so the user doesn't have to project.setRootPath( path ); - ProjectOptions.run(project, true, null); + saveProjectSVNInfo( project.getName() ); + project.setProperty( VersionControlService.VC_SERVICE_KEY, "Subversion" ); + + // show the 'create project' dialog + ProjectOptions.run( project, true, null ); + + // get the group as set in the 'create project' dialog VPTGroup group = ( VPTGroup ) project.getParent(); if ( group == null ) { group = VPTRoot.getInstance(); } - ProjectManager.getInstance().addProject(project, group); - ProjectViewer.setActiveNode(jEdit.getActiveView(), project); - RootImporter ipi = new RootImporter(project, null, ProjectViewer.getViewer(jEdit.getActiveView()), jEdit.getActiveView()); - ipi.setLockProject(false); + + // actually add the project to ProjectManager and set it as the active project + ProjectManager.getInstance().addProject( project, group ); + ProjectViewer.setActiveNode( jEdit.getActiveView(), project ); + + // import the checked out files into the project. This next line is a suggestion + // from Marcelo that will automatically choose the 'Use CVS or SVN Entries' for + // importing the files. + projectviewer.importer.ImportUtils.saveFilter( project.getProperties(), new projectviewer.importer.CVSEntriesFilter(), "projectviewer.import" ); + RootImporter ipi = new RootImporter( project, null, ProjectViewer.getViewer( jEdit.getActiveView() ), jEdit.getActiveView() ); + ipi.setLockProject( false ); ipi.doImport(); - saveProjectSVNInfo( project.getName() ); + // now show ProjectViewer + getView().getDockableWindowManager().showDockableWindow( "projectviewer" ); } private void saveProjectSVNInfo( String projectName ) { Modified: plugins/SVNPlugin/trunk/src/ise/plugin/svn/gui/PVSVNOptionPane.java =================================================================== --- plugins/SVNPlugin/trunk/src/ise/plugin/svn/gui/PVSVNOptionPane.java 2009-03-30 19:58:26 UTC (rev 14877) +++ plugins/SVNPlugin/trunk/src/ise/plugin/svn/gui/PVSVNOptionPane.java 2009-03-30 20:30:27 UTC (rev 14878) @@ -62,14 +62,11 @@ private String projectName = null; - - public PVSVNOptionPane() { - super( "ise.plugin.svn" ); - setLayout( new KappaLayout() ); - } + private static final String internalName = "ise.plugin.svn.pv.options"; + public PVSVNOptionPane(String projectName) { - super( "ise.plugin.svn" ); + super( internalName ); setLayout( new KappaLayout() ); this.projectName = projectName; } @@ -85,7 +82,7 @@ url = new HistoryTextField(URL); url.setText( jEdit.getProperty( PVHelper.PREFIX + projectName + ".url" ) ); url.setColumns( 30 ); - + // username field username_label = new JLabel( jEdit.getProperty( PVHelper.PREFIX + "username.label" ) ); username = new HistoryTextField(USERNAME); @@ -124,15 +121,14 @@ // #_save() : void /** Saves properties from the option pane. */ protected void _save() { - String name = getProjectName(); jEdit.setProperty( - PVHelper.PREFIX + name + ".url", + PVHelper.PREFIX + projectName + ".url", ( url == null ? "" : url.getText() ) ); url.addCurrentToHistory(); jEdit.setProperty( - PVHelper.PREFIX + name + ".username", + PVHelper.PREFIX + projectName + ".username", ( username == null ? "" : username.getText() ) ); username.addCurrentToHistory(); @@ -144,7 +140,7 @@ } pwd = PasswordHandler.encryptPassword(pwd); jEdit.setProperty( - PVHelper.PREFIX + name + ".password", + PVHelper.PREFIX + projectName + ".password", pwd ); } @@ -159,11 +155,6 @@ return project_root; } - - public String getName() { - return "ise.plugin.svn.pv.options"; - } - class Runner extends SwingWorker<List<SVNInfo>, Object> { @Override This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |