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


TypeScript LayoutProvider.getLinesViewportData方法代码示例

本文整理汇总了TypeScript中vs/editor/common/viewLayout/viewLayout.LayoutProvider.getLinesViewportData方法的典型用法代码示例。如果您正苦于以下问题:TypeScript LayoutProvider.getLinesViewportData方法的具体用法?TypeScript LayoutProvider.getLinesViewportData怎么用?TypeScript LayoutProvider.getLinesViewportData使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在vs/editor/common/viewLayout/viewLayout.LayoutProvider的用法示例。


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

示例1: Error

				getCompletelyVisibleViewRange: (): Range => {
					if (this._isDisposed) {
						throw new Error('ViewImpl.codeEditorHelper.getCompletelyVisibleViewRange: View is disposed');
					}

					// Ensure we share the state of the view model
					this._flushAnyAccumulatedEvents();

					const partialData = this.layoutProvider.getLinesViewportData();
					const startViewLineNumber = partialData.completelyVisibleStartLineNumber;
					const endViewLineNumber = partialData.completelyVisibleEndLineNumber;

					return new Range(
						startViewLineNumber, this._context.model.getLineMinColumn(startViewLineNumber),
						endViewLineNumber, this._context.model.getLineMaxColumn(endViewLineNumber)
					);
				}
开发者ID:m-khosravi,项目名称:vscode,代码行数:17,代码来源:viewImpl.ts

示例2: _actualRender

	private _actualRender(): void {
		if (!dom.isInDOM(this.domNode.domNode)) {
			return;
		}

		let viewPartsToRender = this._getViewPartsToRender();

		if (!this.viewLines.shouldRender() && viewPartsToRender.length === 0) {
			// Nothing to render
			this.keyboardHandler.writeToTextArea();
			return;
		}

		let partialViewportData = this.layoutProvider.getLinesViewportData();
		this._context.model.setViewport(partialViewportData.startLineNumber, partialViewportData.endLineNumber, partialViewportData.centeredLineNumber);

		let viewportData = new ViewportData(partialViewportData, this._context.model);

		if (this.viewLines.shouldRender()) {
			this.viewLines.renderText(viewportData, () => {
				this.keyboardHandler.writeToTextArea();
			});
			this.viewLines.onDidRender();

			// Rendering of viewLines might cause scroll events to occur, so collect view parts to render again
			viewPartsToRender = this._getViewPartsToRender();
		} else {
			this.keyboardHandler.writeToTextArea();
		}

		let renderingContext = new RenderingContext(this.layoutProvider, viewportData, this.viewLines);

		// Render the rest of the parts
		for (let i = 0, len = viewPartsToRender.length; i < len; i++) {
			let viewPart = viewPartsToRender[i];
			viewPart.prepareRender(renderingContext);
		}

		for (let i = 0, len = viewPartsToRender.length; i < len; i++) {
			let viewPart = viewPartsToRender[i];
			viewPart.render(renderingContext);
			viewPart.onDidRender();
		}
	}
开发者ID:m-khosravi,项目名称:vscode,代码行数:44,代码来源:viewImpl.ts


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