當前位置: 首頁>>代碼示例>>TypeScript>>正文


TypeScript sqlops.workspace類代碼示例

本文整理匯總了TypeScript中sqlops.workspace的典型用法代碼示例。如果您正苦於以下問題:TypeScript workspace類的具體用法?TypeScript workspace怎麽用?TypeScript workspace使用的例子?那麽, 這裏精選的類代碼示例或許可以為您提供幫助。


在下文中一共展示了workspace類的3個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的TypeScript代碼示例。

示例1: openEditorWithWebview

	private openEditorWithWebview(html1: string, html2: string): void {
		let editor = sqlops.workspace.createModelViewEditor('Editor webview', { retainContextWhenHidden: true });
		editor.registerContent(async view => {
			let count = 0;
			let webview1 = view.modelBuilder.webView()
				.withProperties({
					html: html1
				})
				.component();
			let webview2 = view.modelBuilder.webView()
				.withProperties({
					html: html2
				})
				.component();
			webview1.onMessage((params) => {
				count++;
				webview2.message = count;
			});

			let editor1 = view.modelBuilder.editor()
				.withProperties({
					content: 'select * from sys.tables'
				})
				.component();

			let editor2 = view.modelBuilder.editor()
				.withProperties({
					content: 'print("Hello World !")',
					languageMode: 'python'
				})
				.component();

			let flexModel = view.modelBuilder.flexContainer().component();
			flexModel.addItem(editor1, { flex: '1' });
			flexModel.addItem(editor2, { flex: '1' });
			flexModel.setLayout({
				flexFlow: 'column',
				alignItems: 'stretch',
				height: '100%'
			});

			view.onClosed((params) => {
				vscode.window.showInformationMessage('editor1: language: ' + editor1.languageMode + ' Content1: ' + editor1.content);
				vscode.window.showInformationMessage('editor2: language: ' + editor2.languageMode + ' Content2: ' + editor2.content);
			});
			await view.initializeModel(flexModel);
		});
		editor.openEditor();
	}
開發者ID:jumpinjackie,項目名稱:sqlopsstudio,代碼行數:49,代碼來源:mainController.ts

示例2: openEditor

	private openEditor(): void {
		let editor = sqlops.workspace.createModelViewEditor('Test Model View');
		editor.registerContent(async view => {
			let inputBox = view.modelBuilder.inputBox()
				.withValidation(component => component.value !== 'valid')
				.component();
			let formModel = view.modelBuilder.formContainer()
				.withFormItems([{
					component: inputBox,
					title: 'Enter anything but "valid"'
				}]).component();
			view.onClosed((params) => {
				vscode.window.showInformationMessage('The model view editor is closed.');
			});
			await view.initializeModel(formModel);
		});
		editor.openEditor();
	}
開發者ID:jumpinjackie,項目名稱:sqlopsstudio,代碼行數:18,代碼來源:mainController.ts

示例3: openEditorWithWebview2

	private openEditorWithWebview2(): void {
		let editor = sqlops.workspace.createModelViewEditor('Editor webview2', { retainContextWhenHidden: true });
		editor.registerContent(async view => {

			let inputBox = view.modelBuilder.inputBox().component();
			let dropdown = view.modelBuilder.dropDown()
				.withProperties({
					value: 'aa',
					values: ['aa', 'bb', 'cc']
				})
				.component();
			let runIcon = path.join(__dirname, '..', 'media', 'start.svg');
			let runButton = view.modelBuilder.button()
				.withProperties({
					label: 'Run',
					iconPath: runIcon
				}).component();

			let monitorLightPath = vscode.Uri.file(path.join(__dirname, '..', 'media', 'monitor.svg'));
			let monitorIcon = {
				light: monitorLightPath,
				dark: path.join(__dirname, '..', 'media', 'monitor_inverse.svg')
			};

			let monitorButton = view.modelBuilder.button()
				.withProperties({
					label: 'Monitor',
					iconPath: monitorIcon
				}).component();
			let toolbarModel = view.modelBuilder.toolbarContainer()
				.withToolbarItems([{
					component: inputBox,
					title: 'User name:'
				}, {
					component: dropdown,
					title: 'favorite:'
				}, {
					component: runButton
				}, {
					component: monitorButton
				}]).component();


			let webview = view.modelBuilder.webView()
				.component();

			let flexModel = view.modelBuilder.flexContainer().component();
			flexModel.addItem(toolbarModel, { flex: '0' });
			flexModel.addItem(webview, { flex: '1' });
			flexModel.setLayout({
				flexFlow: 'column',
				alignItems: 'stretch',
				height: '100%'
			});

			let templateValues = { url: 'http://whoisactive.com/docs/' };
			Utils.renderTemplateHtml(path.join(__dirname, '..'), 'templateTab.html', templateValues)
				.then(html => {
					webview.html = html;
				});

			await view.initializeModel(flexModel);
		});
		editor.openEditor();
	}
開發者ID:jumpinjackie,項目名稱:sqlopsstudio,代碼行數:65,代碼來源:mainController.ts


注:本文中的sqlops.workspace類示例由純淨天空整理自Github/MSDocs等開源代碼及文檔管理平台,相關代碼片段篩選自各路編程大神貢獻的開源項目,源碼版權歸原作者所有,傳播和使用請參考對應項目的License;未經允許,請勿轉載。