• 设为首页
  • 点击收藏
  • 手机版
    手机扫一扫访问
    迪恩网络手机版
  • 关注官方公众号
    微信扫一扫关注
    公众号

TypeScript viewLayout.ViewLayout类代码示例

原作者: [db:作者] 来自: [db:来源] 收藏 邀请

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



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

示例1:

		this._renderOnce(() => {
			let changeAccessor: editorBrowser.IViewZoneChangeAccessor = {
				addZone: (zone: editorBrowser.IViewZone): number => {
					zonesHaveChanged = true;
					return this.viewZones.addZone(zone);
				},
				removeZone: (id: number): void => {
					if (!id) {
						return;
					}
					zonesHaveChanged = this.viewZones.removeZone(id) || zonesHaveChanged;
				},
				layoutZone: (id: number): void => {
					if (!id) {
						return;
					}
					zonesHaveChanged = this.viewZones.layoutZone(id) || zonesHaveChanged;
				}
			};

			safeInvoke1Arg(callback, changeAccessor);

			// Invalidate changeAccessor
			changeAccessor.addZone = null;
			changeAccessor.removeZone = null;

			if (zonesHaveChanged) {
				this.layoutProvider.onHeightMaybeChanged();
				this._context.privateViewEventBus.emit(new viewEvents.ViewZonesChangedEvent());
			}
		});
开发者ID:wangcheng678,项目名称:vscode,代码行数:31,代码来源:viewImpl.ts


示例2: onConfigurationChanged

	public onConfigurationChanged(e: viewEvents.ViewConfigurationChangedEvent): boolean {
		if (e.viewInfo.editorClassName) {
			this.domNode.setClassName(this._context.configuration.editor.viewInfo.editorClassName);
		}
		if (e.layoutInfo) {
			this._setLayout();
		}
		this.layoutProvider.onConfigurationChanged(e);
		return false;
	}
开发者ID:wangcheng678,项目名称:vscode,代码行数:10,代码来源:viewImpl.ts


示例3: getCompletelyVisibleViewRangeAtScrollTop

	public getCompletelyVisibleViewRangeAtScrollTop(scrollTop: number): Range {
		const partialData = this.layoutProvider.getLinesViewportDataAtScrollTop(scrollTop);
		const startViewLineNumber = partialData.completelyVisibleStartLineNumber;
		const endViewLineNumber = partialData.completelyVisibleEndLineNumber;

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


示例4: _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._textAreaHandler.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._textAreaHandler.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._textAreaHandler.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:wangcheng678,项目名称:vscode,代码行数:44,代码来源:viewImpl.ts


示例5: dispose

	public dispose(): void {
		this._isDisposed = true;
		if (this._renderAnimationFrame !== null) {
			this._renderAnimationFrame.dispose();
			this._renderAnimationFrame = null;
		}

		this.eventDispatcher.removeEventHandler(this);
		this.outgoingEvents.dispose();

		this.pointerHandler.dispose();

		this.viewLines.dispose();

		// Destroy view parts
		for (let i = 0, len = this.viewParts.length; i < len; i++) {
			this.viewParts[i].dispose();
		}
		this.viewParts = [];

		this.layoutProvider.dispose();

		super.dispose();
	}
开发者ID:wangcheng678,项目名称:vscode,代码行数:24,代码来源:viewImpl.ts


示例6: onFlushed

	public onFlushed(e: viewEvents.ViewFlushedEvent): boolean {
		this.layoutProvider.onFlushed(this._context.model.getLineCount());
		return false;
	}
开发者ID:wangcheng678,项目名称:vscode,代码行数:4,代码来源:viewImpl.ts


示例7: setScrollPosition

	public setScrollPosition(scrollPosition: editorCommon.INewScrollPosition): void {
		this.layoutProvider.setScrollPosition(scrollPosition);
	}
开发者ID:wangcheng678,项目名称:vscode,代码行数:3,代码来源:viewImpl.ts


示例8: getVerticalOffsetForViewLineNumber

	public getVerticalOffsetForViewLineNumber(viewLineNumber: number): number {
		return this.layoutProvider.getVerticalOffsetForLineNumber(viewLineNumber);
	}
开发者ID:wangcheng678,项目名称:vscode,代码行数:3,代码来源:viewImpl.ts


示例9: getScrollHeight

	public getScrollHeight(): number {
		return this.layoutProvider.getScrollHeight();
	}
开发者ID:wangcheng678,项目名称:vscode,代码行数:3,代码来源:viewImpl.ts


示例10: getScrollTop

	public getScrollTop(): number {
		return this.layoutProvider.getScrollTop();
	}
开发者ID:wangcheng678,项目名称:vscode,代码行数:3,代码来源:viewImpl.ts



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


鲜花

握手

雷人

路过

鸡蛋
该文章已有0人参与评论

请发表评论

全部评论

专题导读
上一篇:
TypeScript viewLineParts.createLineParts函数代码示例发布时间:2022-05-25
下一篇:
TypeScript viewLayout.LayoutProvider类代码示例发布时间:2022-05-25
热门推荐
热门话题
阅读排行榜

扫描微信二维码

查看手机版网站

随时了解更新最新资讯

139-2527-9053

在线客服(服务时间 9:00~18:00)

在线QQ客服
地址:深圳市南山区西丽大学城创智工业园
电邮:jeky_zhao#qq.com
移动电话:139-2527-9053

Powered by 互联科技 X3.4© 2001-2213 极客世界.|Sitemap