[svn.haxx.se] · SVN Dev · SVN Users · SVN Org · TSVN Dev · TSVN Users · Subclipse Dev · Subclipse Users · this month's index

Re: Tag or branch name as label decoration

From: Mark Phippard <MarkP_at_softlanding.com>
Date: 2004-12-07 15:14:12 CET

What if we did something like the following:

Search for "/tags/" in URL, if found display item immediately following
If not found
      Search for "/branches/" in URL. if found display item immediately
following
If not found
     Search for "/trunk/" in URL. If found display "trunk".
Otherwise, we could display the full URL, or the what you just did.

Also, I was thinking we could probably have a unique icon decorator for
each of the above items.

Thoughts?

Mark

Cédric Chabanois <cchabanois@no-log.org> wrote on 12/07/2004 09:11:42 AM:

> I applied your patch but I modified it.
> url_short is now the path of the resource relative to repository root
url.
>
> Cédric
>
> > Hi Devs,
> >
> > in the CVS plugin I liked very much that I could decorate projects,
> > folders and files with the currently checked out tag or branch name.
> > In Subclipse there is a similiar functionality that decorates with the

> > repository url. For its length that url can sometimes be unpractical.
> > Attached you'll find a patch for the ui-plugin project that makes a
> > new decoration {url_short} available showing only the part of the url
> > above the project name. For example if your url is something like
> > "http://svn.foo.org/foo/bar/myproject/src/mypackage/myfile.java" the
> > {url_short} decoration would resolve to "bar" for the project, the
> > package and the file, which is in most cases the current branch or tag

> > name.
> >
> > I thought some others could find the patch useful, so here it is.
> >
> > Regards
> > Matthias
> >
> > P.S. The patch was made against the 0.9.24 sources.
> >
>
>------------------------------------------------------------------------
> >
> >Index:
>
ui/src/org/tigris/subversion/subclipse/ui/decorator/SVNDecoratorConfiguration.java
> >===================================================================
> >---
>
ui/src/org/tigris/subversion/subclipse/ui/decorator/SVNDecoratorConfiguration.
> java (revision 1130)
> >+++
>
ui/src/org/tigris/subversion/subclipse/ui/decorator/SVNDecoratorConfiguration.
> java (working copy)
> >@@ -63,6 +63,7 @@
> > public static final String RESOURCE_AUTHOR = "author";
//$NON-NLS-1$
> > public static final String RESOURCE_DATE = "date"; //$NON-NLS-1$
> > public static final String RESOURCE_URL = "url"; //$NON-NLS-1$
> >+ public static final String RESOURCE_URL_SHORT = "url_short";
//$NON-NLS-1$
> >
> > // bindings for resource states
> > public static final String DIRTY_FLAG = "dirty_flag"; //$NON-NLS-1$
> >Index:
ui/src/org/tigris/subversion/subclipse/ui/decorator/SVNLightweightDecorator.java
> >===================================================================
> >---
>
ui/src/org/tigris/subversion/subclipse/ui/decorator/SVNLightweightDecorator.
> java (revision 1130)
> >+++
>
ui/src/org/tigris/subversion/subclipse/ui/decorator/SVNLightweightDecorator.
> java (working copy)
> >@@ -248,7 +248,7 @@
> > */
> > public void decorateTextLabel(IResource resource, IDecoration
decoration,
> boolean isDirty) {
> > try {
> >- Map bindings = new HashMap(5);
> >+ Map bindings = new HashMap(6);
> >
> > // if the resource does not have a location then return. This
can
> happen if the resource
> > // has been deleted after we where asked to decorate it.
> >@@ -279,6 +279,11 @@
> > bindings.put(
> > SVNDecoratorConfiguration.RESOURCE_URL,
> > status.getUrl().toString());
> >+ String shortUrl = status.getUrl().toString().substring(0,
> status.getUrl().toString().length() -
resource.getFullPath().toString().length());
> >+ shortUrl = shortUrl.substring(shortUrl.lastIndexOf('/') +
1);
> >+ bindings.put(
> >+ SVNDecoratorConfiguration.RESOURCE_URL_SHORT,
> >+ shortUrl);
> > }
> >
> > if (status.isAdded()) {
> >Index:
>
ui/src/org/tigris/subversion/subclipse/ui/preferences/SVNDecoratorPreferencesPage.java
> >===================================================================
> >---
>
ui/src/org/tigris/subversion/subclipse/ui/preferences/SVNDecoratorPreferencesPage.
> java (revision 1130)
> >+++
>
ui/src/org/tigris/subversion/subclipse/ui/preferences/SVNDecoratorPreferencesPage.
> java (working copy)
> >@@ -181,6 +181,7 @@
> > bindings.put(SVNDecoratorConfiguration.RESOURCE_AUTHOR,
"cchab");
> //$NON-NLS-1$
> > bindings.put(SVNDecoratorConfiguration.RESOURCE_DATE,
DateFormat.
> getInstance().format(new Date())); //$NON-NLS-1$
> > bindings.put(SVNDecoratorConfiguration.RESOURCE_URL, "http:
> //localhost:8080/svn/repos/"); //$NON-NLS-1$
> >+ bindings.put(SVNDecoratorConfiguration.RESOURCE_URL_SHORT,
"repos");
> //$NON-NLS-1$
> > bindings.put(SVNDecoratorConfiguration.DIRTY_FLAG,
dirtyFlag.getText());
> > bindings.put(SVNDecoratorConfiguration.ADDED_FLAG,
addedFlag.getText());
> > bindings.put(SVNDecoratorConfiguration.EXTERNAL_FLAG,
externalFlag.getText());
> >@@ -499,6 +500,7 @@
> > bindings.put(SVNDecoratorConfiguration.RESOURCE_NAME, Policy.
> bind("SVNDecoratorPreferencesPage.nameResourceVariable")); //$NON-NLS-1$
> > bindings.put(SVNDecoratorConfiguration.DIRTY_FLAG, Policy.
> bind("SVNDecoratorPreferencesPage.flagDirtyVariable")); //$NON-NLS-1$
> > bindings.put(SVNDecoratorConfiguration.RESOURCE_URL, Policy.
> bind("SVNDecoratorPreferencesPage.remoteLocationVariable"));
//$NON-NLS-1$
> >+ bindings.put(SVNDecoratorConfiguration.RESOURCE_URL_SHORT,
Policy.
> bind("SVNDecoratorPreferencesPage.remoteLocationVariableShort"));
//$NON-
> NLS-1$
> > return bindings;
> > }
> >
> >Index: ui/src/org/tigris/subversion/subclipse/ui/messages.properties
> >===================================================================
> >--- ui/src/org/tigris/subversion/subclipse/ui/messages.properties
(revision 1130)
> >+++ ui/src/org/tigris/subversion/subclipse/ui/messages.properties
(working copy)
> >@@ -535,6 +535,7 @@
> > SVNDecoratorPreferencesPage.newResources=Indicate is &new resource
> > SVNDecoratorPreferencesPage.projectFormat=&Project Format:
> > SVNDecoratorPreferencesPage.remoteLocationVariable=url of remote
repository
> >+SVNDecoratorPreferencesPage.remoteLocationVariableShort=last part of
remote
> repository url (tag or branch name)
> > SVNDecoratorPreferencesPage.revisionResourceVariable=last revision
loaded
> into workspace
> > SVNDecoratorPreferencesPage.selectFormats=Select the format for file,
> folders, and project text labels:
> > SVNDecoratorPreferencesPage.selectVariablesToAdd=Select the &variables
to
> add to the decoration format:
> >
> >
> >
>
>------------------------------------------------------------------------
> >
> >---------------------------------------------------------------------
> >To unsubscribe, e-mail: dev-unsubscribe@subclipse.tigris.org
> >For additional commands, e-mail: dev-help@subclipse.tigris.org
> >
>
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: dev-unsubscribe@subclipse.tigris.org
> For additional commands, e-mail: dev-help@subclipse.tigris.org
>
>
>
_____________________________________________________________________________
> Scanned for SoftLanding Systems, Inc. by IBM Email Security Management
> Services powered by MessageLabs.
>
_____________________________________________________________________________

_____________________________________________________________________________
Scanned for SoftLanding Systems, Inc. by IBM Email Security Management Services powered by MessageLabs.
_____________________________________________________________________________
Received on Wed Dec 8 01:14:12 2004

This is an archived mail posted to the Subclipse Dev mailing list.

This site is subject to the Apache Privacy Policy and the Apache Public Forum Archive Policy.