MetricsManager class
The manager for all workspace metrics calculations.
Signature:
export declare class MetricsManager implements IMetricsManager
Implements: IMetricsManager
Constructors
Constructor | Modifiers | Description |
---|---|---|
(constructor)(workspace) | Constructs a new instance of the MetricsManager class |
Properties
Property | Modifiers | Type | Description |
---|---|---|---|
workspace_ |
|
WorkspaceSvg | The workspace to calculate metrics for. |
Methods
Method | Modifiers | Description |
---|---|---|
getAbsoluteMetrics() | Gets the absolute left and absolute top in pixel coordinates. This is where the visible workspace starts in relation to the SVG container. | |
getComputedFixedEdges_(opt_viewMetrics) | protected |
Computes the fixed edges of the scroll area. |
getContentMetrics(opt_getWorkspaceCoordinates) | Gets content metrics in either pixel or workspace coordinates. The content area is a rectangle around all the top bounded elements on the workspace (workspace comments and blocks). | |
getDimensionsPx_(elem) | protected |
Gets the dimensions of the given workspace component, in pixel coordinates. |
getFlyoutMetrics(opt_own) | Gets the width and the height of the flyout in pixel coordinates. By default, will get metrics for either a simple flyout (owned directly by the workspace) or for the flyout owned by the toolbox. If you pass opt_own as true then only metrics for the simple flyout will be returned, and it will return 0 for the width and height if the workspace has a category toolbox instead of a simple toolbox. |
|
getMetrics() | Returns an object with all the metrics required to size scrollbars for a top level workspace. The following properties are computed: Coordinate system: pixel coordinates, -left, -up, +right, +down .viewHeight: Height of the visible portion of the workspace. .viewWidth: Width of the visible portion of the workspace. .contentHeight: Height of the content. .contentWidth: Width of the content. .scrollHeight: Height of the scroll area. .scrollWidth: Width of the scroll area. .svgHeight: Height of the Blockly div (the view + the toolbox, simple or otherwise), .svgWidth: Width of the Blockly div (the view + the toolbox, simple or otherwise), .viewTop: Top-edge of the visible portion of the workspace, relative to the workspace origin. .viewLeft: Left-edge of the visible portion of the workspace, relative to the workspace origin. .contentTop: Top-edge of the content, relative to the workspace origin. .contentLeft: Left-edge of the content relative to the workspace origin. .scrollTop: Top-edge of the scroll area, relative to the workspace origin. .scrollLeft: Left-edge of the scroll area relative to the workspace origin. .absoluteTop: Top-edge of the visible portion of the workspace, relative to the blocklyDiv. .absoluteLeft: Left-edge of the visible portion of the workspace, relative to the blocklyDiv. .toolboxWidth: Width of the toolbox, if it exists. Otherwise zero. .toolboxHeight: Height of the toolbox, if it exists. Otherwise zero. .flyoutWidth: Width of the flyout if it is always open. Otherwise zero. .flyoutHeight: Height of the flyout if it is always open. Otherwise zero. .toolboxPosition: Top, bottom, left or right. Use TOOLBOX_AT constants to compare. | |
getPaddedContent_(viewMetrics, contentMetrics) | protected |
Returns the content area with added padding. |
getScrollMetrics(opt_getWorkspaceCoordinates, opt_viewMetrics, opt_contentMetrics) | Returns the metrics for the scroll area of the workspace. | |
getSvgMetrics() | Gets the width and height of the workspace's parent SVG element in pixel coordinates. This area includes the toolbox and the visible workspace area. | |
getToolboxMetrics() | Gets the width, height and position of the toolbox on the workspace in pixel coordinates. Returns 0 for the width and height if the workspace has a simple toolbox instead of a category toolbox. To get the width and height of a simple toolbox, see . | |
getUiMetrics() | Returns common metrics used by UI elements. | |
getViewMetrics(opt_getWorkspaceCoordinates) | Gets the metrics for the visible workspace in either pixel or workspace coordinates. The visible workspace does not include the toolbox or flyout. |