提交 981cd09c 编写于 作者: B Benjamin Pasero

💄 add folder

上级 58b081de
......@@ -1135,14 +1135,14 @@ export class WindowsManager implements IWindowsMainService {
}
public pickFileAndOpen(forceNewWindow?: boolean, path?: string, window?: CodeWindow, data?: ITelemetryData): void {
this.fileDialog.pickAndOpen({ pickFiles: true, forceNewWindow, path, window }, 'openFile', data);
this.fileDialog.pickAndOpen({ pickFiles: true, forceNewWindow, path, window, title: nls.localize('openFile', "Open File") }, 'openFile', data);
}
public pickFolderAndOpen(forceNewWindow?: boolean, window?: CodeWindow, data?: ITelemetryData): void {
this.fileDialog.pickAndOpen({ pickFolders: true, forceNewWindow, window }, 'openFolder', data);
this.fileDialog.pickAndOpen({ pickFolders: true, forceNewWindow, window, title: nls.localize('openFolder', "Open Folder") }, 'openFolder', data);
}
public pickFolder(options?: { buttonLabel: string }): TPromise<string[]> {
public pickFolder(options?: { buttonLabel: string; title: string; }): TPromise<string[]> {
return new TPromise((c, e) => {
this.fileDialog.getFileOrFolderPaths({ pickFolders: true, buttonLabel: options && options.buttonLabel }, folders => {
c(folders || []);
......@@ -1169,6 +1169,7 @@ export class WindowsManager implements IWindowsMainService {
}
interface INativeOpenDialogOptions {
title?: string;
pickFolders?: boolean;
pickFiles?: boolean;
path?: string;
......@@ -1215,6 +1216,7 @@ class FileDialog {
}
dialog.showOpenDialog(focussedWindow && focussedWindow.win, {
title: options && options.title ? options.title : void 0,
defaultPath: workingDir,
properties: pickerProperties,
buttonLabel: options && options.buttonLabel ? options.buttonLabel : void 0
......
......@@ -24,7 +24,7 @@ export interface IWindowsService {
pickFileFolderAndOpen(windowId: number, forceNewWindow?: boolean, data?: ITelemetryData): TPromise<void>;
pickFileAndOpen(windowId: number, forceNewWindow?: boolean, path?: string, data?: ITelemetryData): TPromise<void>;
pickFolderAndOpen(windowId: number, forceNewWindow?: boolean, data?: ITelemetryData): TPromise<void>;
pickFolder(options?: { buttonLabel: string }): TPromise<string[]>;
pickFolder(options?: { buttonLabel: string; title: string; }): TPromise<string[]>;
reloadWindow(windowId: number): TPromise<void>;
openDevTools(windowId: number): TPromise<void>;
toggleDevTools(windowId: number): TPromise<void>;
......@@ -78,7 +78,7 @@ export interface IWindowService {
pickFileFolderAndOpen(forceNewWindow?: boolean, data?: ITelemetryData): TPromise<void>;
pickFileAndOpen(forceNewWindow?: boolean, path?: string, data?: ITelemetryData): TPromise<void>;
pickFolderAndOpen(forceNewWindow?: boolean, data?: ITelemetryData): TPromise<void>;
pickFolder(options?: { buttonLabel: string }): TPromise<string[]>;
pickFolder(options?: { buttonLabel: string; title: string; }): TPromise<string[]>;
reloadWindow(): TPromise<void>;
openDevTools(): TPromise<void>;
toggleDevTools(): TPromise<void>;
......
......@@ -17,7 +17,7 @@ export interface IWindowsChannel extends IChannel {
call(command: 'pickFileFolderAndOpen', arg: [number, boolean, ITelemetryData]): TPromise<void>;
call(command: 'pickFileAndOpen', arg: [number, boolean, string, ITelemetryData]): TPromise<void>;
call(command: 'pickFolderAndOpen', arg: [number, boolean, ITelemetryData]): TPromise<void>;
call(command: 'pickFolder', arg: { buttonLabel: string }): TPromise<string[]>;
call(command: 'pickFolder', arg: { buttonLabel: string; title: string; }): TPromise<string[]>;
call(command: 'reloadWindow', arg: number): TPromise<void>;
call(command: 'toggleDevTools', arg: number): TPromise<void>;
call(command: 'closeFolder', arg: number): TPromise<void>;
......@@ -129,7 +129,7 @@ export class WindowsChannelClient implements IWindowsService {
return this.channel.call('pickFolderAndOpen', [windowId, forceNewWindow, data]);
}
pickFolder(options?: { buttonLabel: string }): TPromise<string[]> {
pickFolder(options?: { buttonLabel: string; title: string; }): TPromise<string[]> {
return this.channel.call('pickFolder', options);
}
......
......@@ -34,7 +34,7 @@ export class WindowService implements IWindowService {
return this.windowsService.pickFolderAndOpen(this.windowId, forceNewWindow, data);
}
pickFolder(options?: { buttonLabel: string }): TPromise<string[]> {
pickFolder(options?: { buttonLabel: string; title: string; }): TPromise<string[]> {
return this.windowsService.pickFolder(options);
}
......
......@@ -52,7 +52,7 @@ export interface IWindowsMainService {
pickFileFolderAndOpen(forceNewWindow?: boolean, data?: ITelemetryData): void;
pickFileAndOpen(forceNewWindow?: boolean, path?: string, window?: ICodeWindow, data?: ITelemetryData): void;
pickFolderAndOpen(forceNewWindow?: boolean, window?: ICodeWindow, data?: ITelemetryData): void;
pickFolder(options?: { buttonLabel: string }): TPromise<string[]>;
pickFolder(options?: { buttonLabel: string; title: string; }): TPromise<string[]>;
focusLastActive(cli: ParsedArgs, context: OpenContext): ICodeWindow;
getLastActiveWindow(): ICodeWindow;
findWindow(workspacePath: string, filePath?: string, extensionDevelopmentPath?: string): ICodeWindow;
......
......@@ -67,7 +67,7 @@ export class WindowsService implements IWindowsService, IDisposable {
return TPromise.as(null);
}
pickFolder(options?: { buttonLabel: string }): TPromise<string[]> {
pickFolder(options?: { buttonLabel: string; title: string; }): TPromise<string[]> {
return this.windowsMainService.pickFolder(options);
}
......
......@@ -72,7 +72,7 @@ export class AddRootFolderAction extends Action {
return this.windowService.pickFolderAndOpen(false /* prefer same window */);
}
return this.windowService.pickFolder({ buttonLabel: nls.localize('add', "Add") }).then(folders => {
return this.windowService.pickFolder({ buttonLabel: nls.localize('add', "Add"), title: nls.localize('addRootFolder', "Add Root Folder") }).then(folders => {
return this.workspaceEditingService.addRoots(folders.map(folder => URI.file(folder))).then(() => {
return this.viewletService.openViewlet(this.viewletService.getDefaultViewletId(), true);
});
......
......@@ -858,7 +858,7 @@ export class TestWindowService implements IWindowService {
return TPromise.as(void 0);
}
pickFolder(options?: { buttonLabel: string }): TPromise<string[]> {
pickFolder(options?: { buttonLabel: string; title: string; }): TPromise<string[]> {
return TPromise.as([]);
}
......@@ -981,7 +981,7 @@ export class TestWindowsService implements IWindowsService {
return TPromise.as(void 0);
}
pickFolder(options?: { buttonLabel: string }): TPromise<string[]> {
pickFolder(options?: { buttonLabel: string; title: string; }): TPromise<string[]> {
return TPromise.as([]);
}
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册