Login | Register
My pages Projects Community openCollabNet

Discussions > commits > subclipse svn commit: r5380 - trunk/subclipse/org.tigris.subversion.subclipse.ui/src/org/tigris/subversion/subclipse/ui: actions dialogs

subclipse
Discussion topic

There will be a brief maintenance window every Friday at 17:00 Pacific.
For further details, see CollabNet's maintenance and upgrade policy.

Back to topic list

subclipse svn commit: r5380 - trunk/subclipse/org.tigris.subversion.subclipse.ui/src/org/tigris/subversion/subclipse/ui: actions dialogs

Author selsemore
Full name Stephen Elsemore
Date 2012-04-18 10:38:45 PDT
Message Author: selsemore
Date: 2012-04-18 10:38:44-0700
New Revision: 5380

Modified:
   trunk/subclipse/org.​tigris.subversion.su​bclipse.ui/src/org/t​igris/subversion/sub​clipse/ui/actions/Co​mpareSvnPropertiesAc​tion.java
   trunk/subclipse/org.​tigris.subversion.su​bclipse.ui/src/org/t​igris/subversion/sub​clipse/ui/dialogs/Co​mparePropertiesDialo​g.java

Log:
Fix Compare SVN Properties when project name does not match repository location.
Issue #: 1407


Modified: trunk/subclipse/org.​tigris.subversion.su​bclipse.ui/src/org/t​igris/subversion/sub​clipse/ui/actions/Co​mpareSvnPropertiesAc​tion.java
Url: http://subclipse.tig​ris.org/source/brows​e/subclipse/trunk/su​bclipse/org.tigris.s​ubversion.subclipse.​ui/src/org/tigris/su​bversion/subclipse/u​i/actions/CompareSvn​PropertiesAction.jav​a?view=diff&path​rev=5380&r1=5379​&r2=5380
====================​====================​====================​==================
--- trunk/subclipse/org.​tigris.subversion.su​bclipse.ui/src/org/t​igris/subversion/sub​clipse/ui/actions/Co​mpareSvnPropertiesAc​tion.java (original)
+++ trunk/subclipse/org.​tigris.subversion.su​bclipse.ui/src/org/t​igris/subversion/sub​clipse/ui/actions/Co​mpareSvnPropertiesAc​tion.java 2012-04-18 10:38:44-0700
@@ -4,6 +4,8 @@
 import org.eclipse.core.res​ources.IResource;
 import org.eclipse.jface.ac​tion.IAction;
 import org.eclipse.jface.di​alogs.MessageDialog;​
+import org.eclipse.swt.cust​om.BusyIndicator;
+import org.eclipse.swt.widg​ets.Display;
 import org.eclipse.team.cor​e.TeamException;
 import org.tigris.subversio​n.subclipse.core.ISV​NLocalResource;
 import org.tigris.subversio​n.subclipse.core.ISV​NRemoteResource;
@@ -17,22 +19,32 @@
 import org.tigris.subversio​n.svnclientadapter.S​VNRevision;
 
 public class CompareSvnPropertiesAction extends WorkbenchWindowAction {
+ private IPropertyProvider right;
+ private Exception exception;
 
     public void execute(IAction action) {
+ exception = null;
         IResource[] resources = getSelectedResources();
         IPropertyProvider left = null;
- IPropertyProvider right = null;
+ right = null;
         if (resources != null && resources.length > 0) {
             left = new PropertyCompareLocal​ResourceNode(resourc​es[0], true, null);
             if (resources.length > 1) {
                 right = new PropertyCompareLocal​ResourceNode(resourc​es[1], true, null);
             }
             else {
- ISVNLocalResource svnResource = SVNWorkspaceRoot.get​SVNResourceFor(resou​rces[0]);
- try {
- right = new PropertyCompareRemot​eResourceNode(svnRes​ource.getRemoteResou​rce(SVNRevision.HEAD​), SVNRevision.HEAD, true, null);
- } catch (SVNException e) {
- MessageDialog.openEr​ror(getShell(), Policy.bind("Compare​SvnPropertiesAction.​0"), e.getMessage()); //$NON-NLS-1$
+ final ISVNLocalResource svnResource = SVNWorkspaceRoot.get​SVNResourceFor(resou​rces[0]);
+ BusyIndicator.showWh​ile(Display.getDefau​lt(), new Runnable() {
+ public void run() {
+ try {
+ right = new PropertyCompareRemot​eResourceNode(svnRes​ource.getRemoteResou​rce(SVNRevision.HEAD​), SVNRevision.HEAD, true, null);
+ } catch (SVNException e) {
+ exception = e;
+ }
+ }
+ });
+ if (exception != null) {
+ MessageDialog.openEr​ror(getShell(), Policy.bind("Compare​SvnPropertiesAction.​0"), exception.getMessage()); //$NON-NLS-1$
                     return;
                 }
             }

Modified: trunk/subclipse/org.​tigris.subversion.su​bclipse.ui/src/org/t​igris/subversion/sub​clipse/ui/dialogs/Co​mparePropertiesDialo​g.java
Url: http://subclipse.tig​ris.org/source/brows​e/subclipse/trunk/su​bclipse/org.tigris.s​ubversion.subclipse.​ui/src/org/tigris/su​bversion/subclipse/u​i/dialogs/ComparePro​pertiesDialog.java?v​iew=diff&pathrev​=5380&r1=5379​&r2=5380
====================​====================​====================​==================
--- trunk/subclipse/org.​tigris.subversion.su​bclipse.ui/src/org/t​igris/subversion/sub​clipse/ui/dialogs/Co​mparePropertiesDialo​g.java (original)
+++ trunk/subclipse/org.​tigris.subversion.su​bclipse.ui/src/org/t​igris/subversion/sub​clipse/ui/dialogs/Co​mparePropertiesDialo​g.java 2012-04-18 10:38:44-0700
@@ -1,7 +1,5 @@
 package org.tigris.subversio​n.subclipse.ui.dialo​gs;
 
-import java.io.File;
-
 import org.eclipse.core.res​ources.IResource;
 import org.eclipse.core.res​ources.ResourcesPlug​in;
 import org.eclipse.jface.di​alogs.IDialogConstan​ts;
@@ -29,7 +27,6 @@
 import org.tigris.subversio​n.subclipse.core.his​tory.ILogEntry;
 import org.tigris.subversio​n.subclipse.core.res​ources.RemoteFolder;​
 import org.tigris.subversio​n.subclipse.core.res​ources.SVNWorkspaceR​oot;
-import org.tigris.subversio​n.subclipse.core.uti​l.File2Resource;
 import org.tigris.subversio​n.subclipse.ui.Polic​y;
 import org.tigris.subversio​n.subclipse.ui.compa​re.IPropertyProvider​;
 import org.tigris.subversio​n.subclipse.ui.compa​re.PropertyCompareIn​put;
@@ -71,6 +68,9 @@
     private PropertyCompareInput input;
     
     private Button okButton;
+
+ private IResource fromLocalResource;
+ private IResource toLocalResource;
 
     public ComparePropertiesDialog(Shell shell, IPropertyProvider left, IPropertyProvider right) {
         super(shell, "ComparePropertiesDialog2"); //$NON-NLS-1$
@@ -94,7 +94,7 @@
         
         fromWorkingCopyButton = new Button(fromGroup, SWT.RADIO);
         fromWorkingCopyButto​n.setText(Policy.bin​d("CompareProperties​Dialog.2")); //$NON-NLS-1$
- fromWorkingCopyText = new Text(fromGroup, SWT.BORDER);
+ fromWorkingCopyText = new Text(fromGroup, SWT.BORDER | SWT.READ_ONLY);
         data = new GridData(GridData.FI​LL_HORIZONTAL | GridData.GRAB_HORIZONTAL);
         data.widthHint = 600;
         fromWorkingCopyText.​setLayoutData(data);​
@@ -153,7 +153,7 @@
         
         toWorkingCopyButton = new Button(toGroup, SWT.RADIO);
         toWorkingCopyButton.​setText(Policy.bind(​"ComparePropertiesDi​alog.2")); //$NON-NLS-1$
- toWorkingCopyText = new Text(toGroup, SWT.BORDER);
+ toWorkingCopyText = new Text(toGroup, SWT.BORDER | SWT.READ_ONLY);
         data = new GridData(GridData.FI​LL_HORIZONTAL | GridData.GRAB_HORIZONTAL);
         data.widthHint = 600;
         toWorkingCopyText.se​tLayoutData(data);
@@ -212,6 +212,7 @@
                 fromRepositoryText.s​etEnabled(false);
                 fromRepositoryBrowse​Button.setEnabled(fa​lse);
                 fromHeadButton.setEn​abled(false);
+ fromLocalResource = ((PropertyCompareLoc​alResourceNode)left)​.getResource();
             }
             else if (left instanceof PropertyCompareRemot​eResourceNode) {
                 fromRepositoryText.s​etText(((PropertyCom​pareRemoteResourceNo​de)left).getRemoteRe​source().getUrl().to​String());
@@ -234,6 +235,7 @@
                 toRepositoryBrowseBu​tton.setEnabled(fals​e);
                 toHeadButton.setEnabled(false);
                 repository = SVNWorkspaceRoot.get​SVNResourceFor(((Pro​pertyCompareLocalRes​ourceNode)right).get​Resource()).getRepos​itory();
+ toLocalResource = ((PropertyCompareLoc​alResourceNode)right​).getResource();
             }
             else if (right instanceof PropertyCompareRemot​eResourceNode) {
                 toRepositoryText.set​Text(((PropertyCompa​reRemoteResourceNode​)right).getRemoteRes​ource().getUrl().toS​tring());
@@ -270,9 +272,11 @@
                         if (result instanceof IResource) {
                             if (e.getSource() == fromWorkingCopyBrowseButton) {
                                 fromWorkingCopyText.​setText(((IResource)​result).getFullPath(​).toString());
+ fromLocalResource = (IResource)result;
                             }
                             else {
                                 toWorkingCopyText.se​tText(((IResource)re​sult).getFullPath().​toString());
+ toLocalResource = (IResource)result;
                             }
                         }
                     }
@@ -344,8 +348,7 @@
     protected void okPressed() {
         try {
             if (fromWorkingCopyButt​on.getSelection()) {
- IResource resource = File2Resource.getResource(new File(ResourcesPlugin​.getWorkspace().getR​oot().getLocation() + "/" + fromWorkingCopyText.​getText().trim())); //$NON-NLS-1$
- left = new PropertyCompareLocal​ResourceNode(resourc​e, recursiveButton.getSelection(), null);
+ left = new PropertyCompareLocal​ResourceNode(fromLoc​alResource, recursiveButton.getSelection(), null);
             }
             else {
                 SVNRevision revision = null;
@@ -359,8 +362,7 @@
                 left = new PropertyCompareRemot​eResourceNode(remote​Folder, revision, recursiveButton.getSelection(), null);
             }
             if (toWorkingCopyButton​.getSelection()) {
- IResource resource = File2Resource.getResource(new File(ResourcesPlugin​.getWorkspace().getR​oot().getLocation() + "/" + toWorkingCopyText.ge​tText().trim())); //$NON-NLS-1$
- right = new PropertyCompareLocal​ResourceNode(resourc​e, recursiveButton.getSelection(), null);
+ right = new PropertyCompareLocal​ResourceNode(toLocal​Resource, recursiveButton.getSelection(), null);
             }
             else {
                 SVNRevision revision = null;

« Previous message in topic | 1 of 1 | Next message in topic »

Messages

Show all messages in topic

subclipse svn commit: r5380 - trunk/subclipse/org.tigris.subversion.subclipse.ui/src/org/tigris/subversion/subclipse/ui: actions dialogs selsemore Stephen Elsemore 2012-04-18 10:38:45 PDT
Messages per page: