From fda240cadadaadba0af1aff42f376f89cc1c7481 Mon Sep 17 00:00:00 2001 From: Christof Marti Date: Thu, 28 Jun 2018 11:36:23 +0200 Subject: [PATCH] Include showQuickPick example --- quickinput-sample/src/basicInput.ts | 17 ++++++++++++++++- quickinput-sample/src/extension.ts | 3 ++- 2 files changed, 18 insertions(+), 2 deletions(-) diff --git a/quickinput-sample/src/basicInput.ts b/quickinput-sample/src/basicInput.ts index 33b24912..4146db1c 100644 --- a/quickinput-sample/src/basicInput.ts +++ b/quickinput-sample/src/basicInput.ts @@ -5,6 +5,18 @@ import { window } from 'vscode'; +/** + * Shows a pick list using window.showQuickPick(). + */ +export async function showQuickPick() { + let i = 0; + const result = await window.showQuickPick(['eins', 'zwei', 'drei'], { + placeHolder: 'eins, zwei or drei', + onDidSelectItem: item => window.showInformationMessage(`Focus ${++i}: ${item}`) + }); + window.showInformationMessage(`Got: ${result}`); +} + /** * Shows an input box using window.showInputBox(). */ @@ -13,7 +25,10 @@ export async function showInputBox() { value: 'abcdef', valueSelection: [2, 4], placeHolder: 'For example: fedcba. But not: 123', - validateInput: text => Promise.resolve(text === '123' ? 'Not 123!' : null) + validateInput: text => { + window.showInformationMessage(`Validating: ${text}`); + return text === '123' ? 'Not 123!' : null; + } }); window.showInformationMessage(`Got: ${result}`); } diff --git a/quickinput-sample/src/extension.ts b/quickinput-sample/src/extension.ts index d3480730..107b6153 100644 --- a/quickinput-sample/src/extension.ts +++ b/quickinput-sample/src/extension.ts @@ -6,13 +6,14 @@ 'use strict'; import { window, commands, ExtensionContext } from 'vscode'; -import { showInputBox } from './basicInput'; +import { showQuickPick, showInputBox } from './basicInput'; import { multiStepInput } from './multiStepInput'; import { quickOpen } from './quickOpen'; export function activate(context: ExtensionContext) { context.subscriptions.push(commands.registerCommand('samples.quickInput', async () => { const options: { [key: string]: (context: ExtensionContext) => Promise } = { + showQuickPick, showInputBox, multiStepInput, quickOpen,