MetricsManager 類別
管理所有工作區指標計算的管理員。
Signature:
export declare class MetricsManager implements IMetricsManager
實作: IMetricsManager
建構函式
建構函式 | 修飾符 | 說明 |
---|---|---|
(constructor)(workspace) | 建構 MetricsManager 類別的新例項 |
屬性
屬性 | 修飾符 | 類型 | 說明 |
---|---|---|---|
workspace_ |
|
WorkspaceSvg | 要計算指標的 Workspace。 |
方法
方法 | 修飾符 | 說明 |
---|---|---|
getAbsoluteMetrics() | 取得絕對左側和絕對頂部的像素座標。這是可見工作區與 SVG 容器的起始位置。 | |
getComputedFixedEdges_(opt_viewMetrics) | protected |
計算捲動區域的固定邊緣。 |
getContentMetrics(opt_getWorkspaceCoordinates) | 以像素或工作區座標取得內容指標。內容區域是圍繞工作區中所有頂層邊界元素 (工作區註解和區塊) 的矩形。 | |
getDimensionsPx_(elem) | protected |
以像素座標取得指定工作區元件的尺寸。 |
getFlyoutMetrics(opt_own) | 以像素座標取得彈出式視窗的寬度和高度。根據預設,系統會取得簡易彈出式視窗 (直接由工作區擁有) 或工具箱擁有的彈出式視窗指標。如果您將 opt_own 傳遞為 true ,系統只會傳回簡易彈出式視窗的評估指標,如果工作區包含類別工具箱而非簡易工具箱,則會傳回 0 做為寬度和高度。 |
|
getMetrics() | 傳回物件,其中包含為頂層工作區大小調整捲軸所需的所有指標。系統會計算下列屬性:座標系統:像素座標、-left、-up、+right、+down .viewHeight:工作區可見部分的高度。.viewWidth:工作區可見部分的寬度。.contentHeight:內容高度。.contentWidth:內容的寬度。.scrollHeight:捲動區域的高度。.scrollWidth:捲動區域的寬度。.svgHeight:Blockly div 的高度 (檢視畫面 + 工具箱,不論是否簡單);.svgWidth:Blockly div 的寬度 (檢視畫面 + 工具箱,不論是否簡單);.viewTop:相對於工作區起點,工作區可見部分的上緣。.viewLeft:相對於工作區原點,工作區可見部分的左邊緣。.contentTop:相對於工作區起點的內容頂端邊緣。.contentLeft:相對於工作區起點的內容左側邊緣。.scrollTop:相對於工作區起點的捲動區域頂端邊緣。.scrollLeft:相對於工作區起點的捲動區域左邊緣。.absoluteTop:相對於 blocklyDiv 的顯示工作區頂端邊緣。.absoluteLeft:相對於 blocklyDiv 的左側邊緣,顯示工作區的可見部分。.toolboxWidth:工具箱的寬度 (如果有)。否則為零。.toolboxHeight:工具箱的高度 (如有)。否則為零。.flyoutWidth:如果彈出式視窗一律開啟,則彈出式視窗的寬度。否則為零。.flyoutHeight:如果彈出式視窗一律處於開啟狀態,則為彈出式視窗的高度。否則為零。.toolboxPosition:頂端、底部、左側或右側。使用 TOOLBOX_AT 常數進行比較。 | |
getPaddedContent_(viewMetrics, contentMetrics) | protected |
傳回內容區域,並加上邊距。 |
getScrollMetrics(opt_getWorkspaceCoordinates, opt_viewMetrics, opt_contentMetrics) | 傳回工作區捲動區域的指標。 | |
getSvgMetrics() | 以像素座標取得工作區的父項 SVG 元素寬度和高度。這個區域包含工具箱和可見的工作區範圍。 | |
getToolboxMetrics() | 以像素座標取得工作區中工具箱的寬度、高度和位置。如果工作區包含簡易工具箱,而非類別工具箱,則會傳回 0 做為寬度和高度。如要取得簡易工具箱的寬度和高度,請參閱。 | |
getUiMetrics() | 傳回 UI 元素使用的常用指標。 | |
getViewMetrics(opt_getWorkspaceCoordinates) | 取得可見工作區的像素或工作區座標指標。可見工作區不包含工具箱或彈出式視窗。 |