当前位置: 首页>>代码示例>>TypeScript>>正文


TypeScript viewModelImpl.ViewModel类代码示例

本文整理汇总了TypeScript中vs/editor/common/viewModel/viewModelImpl.ViewModel的典型用法代码示例。如果您正苦于以下问题:TypeScript ViewModel类的具体用法?TypeScript ViewModel怎么用?TypeScript ViewModel使用的例子?那么, 这里精选的类代码示例或许可以为您提供帮助。


在下文中一共展示了ViewModel类的6个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的TypeScript代码示例。

示例1: testViewModel

export function testViewModel(text: string[], options: MockCodeEditorCreationOptions, callback: (viewModel: ViewModel, model: Model) => void): void {
	const EDITOR_ID = 1;

	let configuration = new TestConfiguration(options);

	let model = Model.createFromString(text.join('\n'));

	let factory = new CharacterHardWrappingLineMapperFactory(
		configuration.editor.wrappingInfo.wordWrapBreakBeforeCharacters,
		configuration.editor.wrappingInfo.wordWrapBreakAfterCharacters,
		configuration.editor.wrappingInfo.wordWrapBreakObtrusiveCharacters
	);

	let linesCollection = new SplitLinesCollection(
		model,
		factory,
		model.getOptions().tabSize,
		configuration.editor.wrappingInfo.wrappingColumn,
		configuration.editor.fontInfo.typicalFullwidthCharacterWidth / configuration.editor.fontInfo.typicalHalfwidthCharacterWidth,
		configuration.editor.wrappingInfo.wrappingIndent
	);

	let viewModel = new ViewModel(
		linesCollection,
		EDITOR_ID,
		configuration,
		model
	);

	callback(viewModel, model);

	viewModel.dispose();
	model.dispose();
	configuration.dispose();
}
开发者ID:wangcheng678,项目名称:vscode,代码行数:35,代码来源:testViewModel.ts

示例2: testViewModel

export function testViewModel(text: string[], options: IEditorOptions, callback: (viewModel: ViewModel, model: Model) => void): void {
	const EDITOR_ID = 1;

	let configuration = new TestConfiguration(options);

	let model = Model.createFromString(text.join('\n'));

	let viewModel = new ViewModel(EDITOR_ID, configuration, model, null);

	callback(viewModel, model);

	viewModel.dispose();
	model.dispose();
	configuration.dispose();
}
开发者ID:AlexxNica,项目名称:sqlopsstudio,代码行数:15,代码来源:testViewModel.ts

示例3: _runTest

	function _runTest(selection: Selection, editRange: Range, editText: string, editForceMoveMarkers: boolean, expected: Selection, msg: string): void {
		const model = Model.createFromString(LINES.join('\n'));
		const config = new TestConfiguration(null);
		const viewModel = new ViewModel(0, config, model, null);
		const cursor = new Cursor(config, model, viewModel);

		cursor.setSelections('tests', [selection]);
		model.applyEdits([{ range: editRange, text: editText, forceMoveMarkers: editForceMoveMarkers, identifier: null }]);
		const actual = cursor.getSelection();
		assert.deepEqual(actual.toString(), expected.toString(), msg);

		cursor.dispose();
		viewModel.dispose();
		config.dispose();
		model.dispose();
	}
开发者ID:SeanKilleen,项目名称:vscode,代码行数:16,代码来源:sideEditing.test.ts

示例4: withTestViewModel

	function withTestViewModel(opts: ITestViewModelOpts, callback: (viewModel: ViewModel, model: Model) => void): void {
		const EDITOR_ID = 1;

		let configuration = new MockConfiguration({
			wrappingColumn: opts.wrappingColumn
		});

		let model = Model.createFromString(opts.text);

		let factory = new CharacterHardWrappingLineMapperFactory(
			configuration.editor.wrappingInfo.wordWrapBreakBeforeCharacters,
			configuration.editor.wrappingInfo.wordWrapBreakAfterCharacters,
			configuration.editor.wrappingInfo.wordWrapBreakObtrusiveCharacters
		);

		let linesCollection = new SplitLinesCollection(
			model,
			factory,
			model.getOptions().tabSize,
			configuration.editor.wrappingInfo.wrappingColumn,
			configuration.editor.fontInfo.typicalFullwidthCharacterWidth / configuration.editor.fontInfo.typicalHalfwidthCharacterWidth,
			configuration.editor.wrappingInfo.wrappingIndent
		);

		let viewModel = new ViewModel(
			linesCollection,
			EDITOR_ID,
			configuration,
			model,
			() => {
				return new Range(1, 1, 1, 1);
			}
		);

		callback(viewModel, model);

		viewModel.dispose();
		model.dispose();
		configuration.dispose();
	}
开发者ID:StateFarmIns,项目名称:vscode,代码行数:40,代码来源:viewModelDecorations.test.ts

示例5: teardown

	teardown(() => {
		thisCursor.dispose();
		thisViewModel.dispose();
		thisModel.dispose();
		thisConfiguration.dispose();
	});
开发者ID:PKRoma,项目名称:vscode,代码行数:6,代码来源:cursorMoveCommand.test.ts

示例6: suite

suite('Cursor move command test', () => {

	let thisModel: TextModel;
	let thisConfiguration: TestConfiguration;
	let thisViewModel: ViewModel;
	let thisCursor: Cursor;

	setup(() => {
		let text = [
			'    \tMy First Line\t ',
			'\tMy Second Line',
			'    Third Line🐶',
			'',
			'1'
		].join('\n');

		thisModel = TextModel.createFromString(text);
		thisConfiguration = new TestConfiguration({});
		thisViewModel = new ViewModel(0, thisConfiguration, thisModel, null!);
		thisCursor = new Cursor(thisConfiguration, thisModel, thisViewModel);
	});

	teardown(() => {
		thisCursor.dispose();
		thisViewModel.dispose();
		thisModel.dispose();
		thisConfiguration.dispose();
	});

	test('move left should move to left character', () => {
		moveTo(thisCursor, 1, 8);

		moveLeft(thisCursor);

		cursorEqual(thisCursor, 1, 7);
	});

	test('move left should move to left by n characters', () => {
		moveTo(thisCursor, 1, 8);

		moveLeft(thisCursor, 3);

		cursorEqual(thisCursor, 1, 5);
	});

	test('move left should move to left by half line', () => {
		moveTo(thisCursor, 1, 8);

		moveLeft(thisCursor, 1, CursorMove.RawUnit.HalfLine);

		cursorEqual(thisCursor, 1, 1);
	});

	test('move left moves to previous line', () => {
		moveTo(thisCursor, 2, 3);

		moveLeft(thisCursor, 10);

		cursorEqual(thisCursor, 1, 21);
	});

	test('move right should move to right character', () => {
		moveTo(thisCursor, 1, 5);

		moveRight(thisCursor);

		cursorEqual(thisCursor, 1, 6);
	});

	test('move right should move to right by n characters', () => {
		moveTo(thisCursor, 1, 2);

		moveRight(thisCursor, 6);

		cursorEqual(thisCursor, 1, 8);
	});

	test('move right should move to right by half line', () => {
		moveTo(thisCursor, 1, 4);

		moveRight(thisCursor, 1, CursorMove.RawUnit.HalfLine);

		cursorEqual(thisCursor, 1, 14);
	});

	test('move right moves to next line', () => {
		moveTo(thisCursor, 1, 8);

		moveRight(thisCursor, 100);

		cursorEqual(thisCursor, 2, 1);
	});

	test('move to first character of line from middle', () => {
		moveTo(thisCursor, 1, 8);
		moveToLineStart(thisCursor);
		cursorEqual(thisCursor, 1, 1);
	});

	test('move to first character of line from first non white space character', () => {
//.........这里部分代码省略.........
开发者ID:PKRoma,项目名称:vscode,代码行数:101,代码来源:cursorMoveCommand.test.ts


注:本文中的vs/editor/common/viewModel/viewModelImpl.ViewModel类示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。