</head>
<body onload="prettyPrint(); highlight();">
<pre class="prettyprint lang-js"><span id='Ext-util-TextMetrics'>/**
-</span> * @class Ext.util.TextMetrics
- * <p>
- * Provides precise pixel measurements for blocks of text so that you can determine exactly how high and
+</span> * Provides precise pixel measurements for blocks of text so that you can determine exactly how high and
* wide, in pixels, a given block of text will be. Note that when measuring text, it should be plain text and
- * should not contain any HTML, otherwise it may not be measured correctly.</p>
- * <p>The measurement works by copying the relevant CSS styles that can affect the font related display,
+ * should not contain any HTML, otherwise it may not be measured correctly.
+ *
+ * The measurement works by copying the relevant CSS styles that can affect the font related display,
* then checking the size of an element that is auto-sized. Note that if the text is multi-lined, you must
- * provide a <b>fixed width</b> when doing the measurement.</p>
- *
- * <p>
+ * provide a **fixed width** when doing the measurement.
+ *
* If multiple measurements are being done on the same element, you create a new instance to initialize
* to avoid the overhead of copying the styles to the element repeatedly.
- * </p>
*/
Ext.define('Ext.util.TextMetrics', {
statics: {
* @param {String} text The text to measure
* @param {Number} fixedWidth (optional) If the text will be multiline, you have to set a fixed width
* in order to accurately measure the text height
- * @return {Object} An object containing the text's size {width: (width), height: (height)}
+ * @return {Object} An object containing the text's size `{width: (width), height: (height)}`
*/
measure: function(el, text, fixedWidth){
var me = this,
},
<span id='Ext-util-TextMetrics-method-constructor'> /**
-</span> * @constructor
+</span> * Creates new TextMetrics.
* @param {Mixed} bindTo The element to bind to.
- * @param {Number} fixedWidth A fixed width to apply to the measuring element.
+ * @param {Number} fixedWidth (optional) A fixed width to apply to the measuring element.
*/
constructor: function(bindTo, fixedWidth){
var measure = this.measure = Ext.getBody().createChild({
},
<span id='Ext-util-TextMetrics-method-getSize'> /**
-</span> * <p><b>Only available on the instance returned from {@link #createInstance}, <u>not</u> on the singleton.</b></p>
- * Returns the size of the specified text based on the internal element's style and width properties
+</span> * Returns the size of the specified text based on the internal element's style and width properties
* @param {String} text The text to measure
- * @return {Object} An object containing the text's size {width: (width), height: (height)}
+ * @return {Object} An object containing the text's size `{width: (width), height: (height)}`
*/
getSize: function(text){
var measure = this.measure,
<span id='Ext-core-Element-method-getTextWidth'> /**
</span> * Returns the width in pixels of the passed text, or the width of the text in this Element.
* @param {String} text The text to measure. Defaults to the innerHTML of the element.
- * @param {Number} min (Optional) The minumum value to return.
- * @param {Number} max (Optional) The maximum value to return.
+ * @param {Number} min (optional) The minumum value to return.
+ * @param {Number} max (optional) The maximum value to return.
* @return {Number} The text width in pixels.
- * @member Ext.core.Element getTextWidth
+ * @member Ext.core.Element
*/
getTextWidth : function(text, min, max){
return Ext.Number.constrain(Ext.util.TextMetrics.measure(this.dom, Ext.value(text, this.dom.innerHTML, true)).width, min || 0, max || 1000000);