Adds more details to remotes in custom view

This commit is contained in:
Eric Amodio
2017-09-12 15:48:36 -04:00
parent ea6fdbaaf2
commit 6837414f22
4 changed files with 25 additions and 1 deletions

View File

@@ -77,6 +77,7 @@ export type GlyphChars = '\u21a9' |
'\u2937' |
'\u2190' |
'\u2194' |
'\u2192' |
'\u21e8' |
'\u2191' |
'\u2713' |
@@ -91,6 +92,7 @@ export const GlyphChars = {
ArrowDropRight: '\u2937' as GlyphChars,
ArrowLeft: '\u2190' as GlyphChars,
ArrowLeftRight: '\u2194' as GlyphChars,
ArrowRight: '\u2192' as GlyphChars,
ArrowRightHollow: '\u21e8' as GlyphChars,
ArrowUp: '\u2191' as GlyphChars,
Check: '\u2713' as GlyphChars,

View File

@@ -2,6 +2,7 @@
import { Iterables } from '../system';
import { ExtensionContext, TreeItem, TreeItemCollapsibleState } from 'vscode';
import { BranchHistoryNode } from './branchHistoryNode';
import { GlyphChars } from '../constants';
import { ExplorerNode, ResourceType } from './explorerNode';
import { GitRemote, GitService, GitUri } from '../gitService';
@@ -22,7 +23,26 @@ export class RemoteNode extends ExplorerNode {
}
getTreeItem(): TreeItem {
const item = new TreeItem(this.remote.name, TreeItemCollapsibleState.Collapsed);
const fetch = this.remote.types.includes('push');
const push = this.remote.types.includes('push');
let separator;
if (fetch && push) {
separator = GlyphChars.ArrowLeftRight;
}
else if (fetch) {
separator = GlyphChars.ArrowLeft;
}
else if (push) {
separator = GlyphChars.ArrowRight;
}
else {
separator = GlyphChars.Dash;
}
const label = `${this.remote.name} ${GlyphChars.Space}${separator}${GlyphChars.Space} ${(this.remote.provider !== undefined) ? this.remote.provider.name : this.remote.domain} ${GlyphChars.Space}${GlyphChars.Dot}${GlyphChars.Space} ${this.remote.path}`;
const item = new TreeItem(label, TreeItemCollapsibleState.Collapsed);
item.contextValue = this.resourceType;
// item.iconPath = {