Files
blockly/core/utils/metrics.js
Christopher Allen 51d9dad31f Re-export Blockly.utils.* submodules from Blockly.utils (#5465)
* Reexport Blockly.utils.* modules from Blockly.utils

* Update metadata (file sizes) again

  blockly_compressed.js has gotten too big for the second time this
  quarter.  Update the expected file sizes for it so that tests
  will continue to pass.
2021-09-16 18:23:33 +01:00

155 lines
2.8 KiB
JavaScript

/**
* @license
* Copyright 2020 Google LLC
* SPDX-License-Identifier: Apache-2.0
*/
/**
* @fileoverview Workspace metrics definitions.
* @author samelh@google.com (Sam El-Husseini)
*/
'use strict';
/**
* @name Blockly.utils.Metrics
* @namespace
*/
goog.module('Blockly.utils.Metrics');
/**
* @record
*/
const Metrics = function() {};
/**
* Height of the visible portion of the workspace.
* @type {number}
*/
Metrics.prototype.viewHeight;
/**
* Width of the visible portion of the workspace.
* @type {number}
*/
Metrics.prototype.viewWidth;
/**
* Height of the content.
* @type {number}
*/
Metrics.prototype.contentHeight;
/**
* Width of the content.
* @type {number}
*/
Metrics.prototype.contentWidth;
/**
* Height of the scroll area.
* @type {number}
*/
Metrics.prototype.scrollHeight;
/**
* Width of the scroll area.
* @type {number}
*/
Metrics.prototype.scrollWidth;
/**
* Top-edge of the visible portion of the workspace, relative to the workspace
* origin.
* @type {number}
*/
Metrics.prototype.viewTop;
/**
* Left-edge of the visible portion of the workspace, relative to the workspace
* origin.
* @type {number}
*/
Metrics.prototype.viewLeft;
/**
* Top-edge of the content, relative to the workspace origin.
* @type {number}
*/
Metrics.prototype.contentTop;
/**
* Left-edge of the content relative to the workspace origin.
* @type {number}
*/
Metrics.prototype.contentLeft;
/**
* Top-edge of the scroll area, relative to the workspace origin.
* @type {number}
*/
Metrics.prototype.scrollTop;
/**
* Left-edge of the scroll area relative to the workspace origin.
* @type {number}
*/
Metrics.prototype.scrollLeft;
/**
* Top-edge of the visible portion of the workspace, relative to the blocklyDiv.
* @type {number}
*/
Metrics.prototype.absoluteTop;
/**
* Left-edge of the visible portion of the workspace, relative to the
* blocklyDiv.
* @type {number}
*/
Metrics.prototype.absoluteLeft;
/**
* Height of the Blockly div (the view + the toolbox, simple of otherwise).
* @type {number}
*/
Metrics.prototype.svgHeight;
/**
* Width of the Blockly div (the view + the toolbox, simple or otherwise).
* @type {number}
*/
Metrics.prototype.svgWidth;
/**
* Width of the toolbox, if it exists. Otherwise zero.
* @type {number}
*/
Metrics.prototype.toolboxWidth;
/**
* Height of the toolbox, if it exists. Otherwise zero.
* @type {number}
*/
Metrics.prototype.toolboxHeight;
/**
* Top, bottom, left or right. Use TOOLBOX_AT constants to compare.
* @type {number}
*/
Metrics.prototype.toolboxPosition;
/**
* Width of the flyout if it is always open. Otherwise zero.
* @type {number}
*/
Metrics.prototype.flyoutWidth;
/**
* Height of the flyout if it is always open. Otherwise zero.
* @type {number}
*/
Metrics.prototype.flyoutHeight;
exports = Metrics;