提交 d5ca886e 编写于 作者: J Johannes Rieken

tweak label

上级 9e5bd5fb
......@@ -13,6 +13,7 @@ import uri from 'vs/base/common/uri';
import paths = require('vs/base/common/paths');
import { IWorkspaceFolderProvider, getPathLabel, IUserHomeProvider } from 'vs/base/common/labels';
import { IDisposable, combinedDisposable } from 'vs/base/common/lifecycle';
import { Color } from 'vs/base/common/color';
export interface IIconLabelCreationOptions {
supportHighlights?: boolean;
......@@ -22,6 +23,7 @@ export interface IIconLabelOptions {
title?: string;
extraClasses?: string[];
italic?: boolean;
color?: Color;
matches?: IMatch[];
}
......@@ -127,6 +129,8 @@ export class IconLabel {
if (options.italic) {
classes.push('italic');
}
this.element.style.color = options.color ? options.color.toString() : '';
}
this.domNode.className = classes.join(' ');
......@@ -163,4 +167,4 @@ export class FileLabel extends IconLabel {
this.setValue(paths.basename(file.fsPath), parent && parent !== '.' ? getPathLabel(parent, provider, userHome) : '', { title: file.fsPath });
}
}
\ No newline at end of file
}
......@@ -25,6 +25,7 @@ import { Schemas } from 'vs/base/common/network';
import { FileKind } from 'vs/platform/files/common/files';
import { IModel } from 'vs/editor/common/editorCommon';
import { IThemeService } from 'vs/platform/theme/common/themeService';
import { Color } from 'vs/base/common/color';
export interface IResourceLabel {
name: string;
......@@ -179,23 +180,30 @@ export class ResourceLabel extends IconLabel {
extraClasses.push(...this.options.extraClasses);
}
let deco: IResourceDecoration;
const italic = this.options && this.options.italic;
const matches = this.options && this.options.matches;
let color: Color;
if (this.options) {
let deco: IResourceDecoration;
if (this.options.showDecorations) {
deco = this.decorationsService.getTopDecoration(resource, false);
} else if (this.options.showAllDecorations) {
deco = this.decorationsService.getTopDecoration(resource, true);
}
}
// set/unset color from decoration
const color = deco && this.themeService.getTheme().getColor(deco.color, true);
this.element.style.color = color ? color.toString() : '';
const italic = this.options && this.options.italic;
const matches = this.options && this.options.matches;
if (deco) {
color = this.themeService.getTheme().getColor(deco.color);
}
}
this.setValue(this.label.name, this.label.description, { title, extraClasses, italic, matches });
this.setValue(this.label.name, this.label.description, {
title,
extraClasses,
italic,
matches,
color
});
}
public dispose(): void {
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册