diff options
author | Matthias Sohn | 2011-12-03 14:12:07 +0000 |
---|---|---|
committer | Matthias Sohn | 2011-12-04 17:13:06 +0000 |
commit | e78d89a0605328c2dbc1a6e7037f6c6b5ae3e71d (patch) | |
tree | c81d5cd8652cb07dcf182ded4859864f7919d7a8 /org.eclipse.egit.ui/src/org/eclipse/egit | |
parent | 08617edeae778b64c4da500a0a83e4fa1334dcc0 (diff) | |
download | egit-e78d89a0605328c2dbc1a6e7037f6c6b5ae3e71d.tar.gz egit-e78d89a0605328c2dbc1a6e7037f6c6b5ae3e71d.tar.xz egit-e78d89a0605328c2dbc1a6e7037f6c6b5ae3e71d.zip |
[reflogView] Add commit message column
Change-Id: I92309a46d0fe38106beb966c090ee71d5f58a6cb
Signed-off-by: Matthias Sohn <matthias.sohn@sap.com>
Diffstat (limited to 'org.eclipse.egit.ui/src/org/eclipse/egit')
3 files changed, 39 insertions, 2 deletions
diff --git a/org.eclipse.egit.ui/src/org/eclipse/egit/ui/UIText.java b/org.eclipse.egit.ui/src/org/eclipse/egit/ui/UIText.java index 2d634ef79b..6729ea94fe 100644 --- a/org.eclipse.egit.ui/src/org/eclipse/egit/ui/UIText.java +++ b/org.eclipse.egit.ui/src/org/eclipse/egit/ui/UIText.java @@ -1219,6 +1219,9 @@ public class UIText extends NLS { public static String ReflogView_CommitColumnHeader; /** */ + public static String ReflogView_CommitMessageColumnHeader; + + /** */ public static String RefSelectionDialog_Messsage; /** */ diff --git a/org.eclipse.egit.ui/src/org/eclipse/egit/ui/internal/reflog/ReflogView.java b/org.eclipse.egit.ui/src/org/eclipse/egit/ui/internal/reflog/ReflogView.java index 4070074d0c..0408c41ee8 100644 --- a/org.eclipse.egit.ui/src/org/eclipse/egit/ui/internal/reflog/ReflogView.java +++ b/org.eclipse.egit.ui/src/org/eclipse/egit/ui/internal/reflog/ReflogView.java @@ -61,6 +61,7 @@ import org.eclipse.jgit.lib.ObjectId; import org.eclipse.jgit.lib.PersonIdent; import org.eclipse.jgit.lib.Repository; import org.eclipse.jgit.lib.RepositoryState; +import org.eclipse.jgit.revwalk.RevCommit; import org.eclipse.jgit.revwalk.RevWalk; import org.eclipse.jgit.storage.file.ReflogEntry; import org.eclipse.swt.SWT; @@ -193,6 +194,38 @@ public class ReflogView extends ViewPart implements RefsChangedListener { }); + TreeViewerColumn commitMessageColumn = createColumn(layout, + UIText.ReflogView_CommitMessageColumnHeader, 30, SWT.LEFT); + commitMessageColumn.setLabelProvider(new ColumnLabelProvider() { + + @Override + public String getText(Object element) { + final ReflogEntry entry = (ReflogEntry) element; + RevCommit c = getCommit(entry); + return c == null ? "" : c.getShortMessage(); //$NON-NLS-1$ + } + + private RevCommit getCommit(final ReflogEntry entry) { + RevWalk walk = new RevWalk(getRepository()); + walk.setRetainBody(true); + RevCommit c = null; + try { + c = walk.parseCommit(entry.getNewId()); + } catch (IOException ignored) { + // ignore + } finally { + walk.release(); + } + return c; + } + + @Override + public Image getImage(Object element) { + return branchImage; + } + + }); + TreeViewerColumn dateColumn = createColumn(layout, UIText.ReflogView_DateColumnHeader, 15, SWT.LEFT); dateColumn.setLabelProvider(new ColumnLabelProvider() { @@ -219,7 +252,7 @@ public class ReflogView extends ViewPart implements RefsChangedListener { }); TreeViewerColumn messageColumn = createColumn(layout, - UIText.ReflogView_MessageColumnHeader, 50, SWT.LEFT); + UIText.ReflogView_MessageColumnHeader, 30, SWT.LEFT); messageColumn.setLabelProvider(new ColumnLabelProvider() { private ResourceManager resourceManager = new LocalResourceManager( diff --git a/org.eclipse.egit.ui/src/org/eclipse/egit/ui/uitext.properties b/org.eclipse.egit.ui/src/org/eclipse/egit/ui/uitext.properties index 49d0a241bd..ff39626649 100644 --- a/org.eclipse.egit.ui/src/org/eclipse/egit/ui/uitext.properties +++ b/org.eclipse.egit.ui/src/org/eclipse/egit/ui/uitext.properties @@ -421,8 +421,9 @@ ReflogView_CommitterColumnHeader=Committer ReflogView_CommitterMe=me ReflogView_DateColumnHeader=Date ReflogView_ErrorOnOpenCommit=Error opening commit -ReflogView_MessageColumnHeader=Message +ReflogView_MessageColumnHeader=Reflog Message ReflogView_CommitColumnHeader=Commit +ReflogView_CommitMessageColumnHeader=Commit Message RefSelectionDialog_Messsage=Select a branch to show the reflog for RefSelectionDialog_Title=Reflog Branch Selection RefSpecDialog_AutoSuggestCheckbox=&Automatically suggest a name for the remote tracking branch |