# Yahoo! UI Library

### console 3.3.0

Yahoo! UI Library > console > Console
Search:
Filters Show Private Show Protected Show Deprecated

## Class Console - extends Widget

Console creates a visualization for messages logged through calls to a YUI instance's `Y.log( message, category, source )` method. The debug versions of YUI modules will include logging statements to offer some insight into the steps executed during that module's operation. Including log statements in your code will cause those messages to also appear in the Console. Use Console to aid in developing your page or application. Entry categories "info", "warn", and "error" are also referred to as the log level, and entries are filtered against the configured logLevel.

### Constructor

Console `( conf )`

Parameters:
  `conf <Object>` Configuration object (see Configuration attributes)

### Properties

#### _body - `protected Node`

Reference to the Node instance that will house the console messages.
Default Value: null

#### _evtCat - `protected string`

Category to prefix all event subscriptions to allow for ease of detach during destroy.

#### _foot - `protected Node`

Reference to the Node instance containing the footer contents.
Default Value: null

#### _head - `protected Node`

Reference to the Node instance containing the header contents.
Default Value: null

#### _printLoop - `protected Object`

Holds the object API returned from `Y.later` for the print loop interval.
Default Value: null

#### buffer - `protected Array`

Array of normalized message objects awaiting printing.
Default Value: null

#### Console.ATTRS - `static Object`

Static property used to define the default attribute configuration of the Widget.

#### Console.BODY_TEMPLATE - `static String`

Markup template used to generate the DOM structure for the Console body (where the messages are inserted) when it is rendered. The template includes only the {placeholder} "console_bd_class", which is constributed by Console.CHROME_CLASSES.

#### Console.CHROME_CLASSES - `static Object`

Map (object) of classNames used to populate the placeholders in the Console.HEADER_TEMPLATE, Console.BODY_TEMPLATE, and Console.FOOTER_TEMPLATE markup when rendering the Console UI.

By default, the keys contained in the object are:

- console_hd_class
- console_bd_class
- console_ft_class
- console_controls_class
- console_checkbox_class
- console_pause_class
- console_pause_label_class
- console_button_class
- console_clear_class
- console_collapse_class
- console_title_class

#### Console.ENTRY_CLASSES - `static Object`

Map (object) of classNames used to populate the placeholders in the Console.ENTRY_TEMPLATE markup when rendering a new Console entry.

By default, the keys contained in the object are:

- entry_class
- entry_meta_class
- entry_cat_class
- entry_src_class
- entry_time_class
- entry_content_class

#### Console.ENTRY_TEMPLATE - `static String`

Default markup template used to create the DOM structure for Console entries. The markup contains {placeholder}s for content and classes that are replaced via Y.substitute. The default template contains the {placeholder}s identified in Console.ENTRY_CLASSES as well as the following placeholders that will be populated by the log entry data:

- cat_class
- src_class
- totalTime
- elapsedTime
- localTime
- sourceAndDetail
- message

#### Console.FOOTER_TEMPLATE - `static String`

Markup template used to generate the DOM structure for the footer section of the Console when it is rendered. The template includes many of the {placeholder}s from Console.CHROME_CLASSES as well as:

- id_guid - generated unique id, relates the label and checkbox
- str_pause - pulled from attribute strings.pause
- str_clear - pulled from attribute strings.clear

#### Console.HEADER_TEMPLATE - `static String`

Markup template used to generate the DOM structure for the header section of the Console when it is rendered. The template includes these {placeholder}s:

- console_button_class - contributed by Console.CHROME_CLASSES
- console_collapse_class - contributed by Console.CHROME_CLASSES
- console_hd_class - contributed by Console.CHROME_CLASSES
- console_title_class - contributed by Console.CHROME_CLASSES
- str_collapse - pulled from attribute strings.collapse
- str_title - pulled from attribute strings.title

#### Console.LOG_LEVEL_ERROR - `static String`

Static identifier for logLevel configuration setting to allow only incoming messages of logLevel "error" to generate Console entries.

#### Console.LOG_LEVEL_INFO - `static String`

Static identifier for logLevel configuration setting to allow all incoming messages to generate Console entries.

#### Console.LOG_LEVEL_WARN - `static String`

Static identifier for logLevel configuration setting to allow only incoming messages of logLevel "warn" or "error" to generate Console entries.

#### Console.NAME - `static String`

The identity of the widget.

#### Properties inherited from Plugin.Host:

`PluginHost`

#### Properties inherited from Attribute:

``

#### Properties inherited from Widget:

`_UI_ATTRS, BOUNDING_TEMPLATE, CONTENT_TEMPLATE, DEF_PARENT_NODE, DEF_UNIT, UI_EVENTS`

#### Properties inherited from Base:

`name`

### Methods

#### _afterCollapsedChange

`protected void _afterCollapsedChange ( e )`
Updates the className of the contentBox, which should trigger CSS to hide or show the body and footer sections depending on the new value.

Parameters:
  `e <Event>` Custom event for the attribute change

#### _afterConsoleLimitChange

`protected void _afterConsoleLimitChange ( e )`
Calls this._trimOldEntries() in response to changes in the configured consoleLimit attribute.

Parameters:
  `e <Event>` Custom event for the attribute change

#### _afterPausedChange

`protected void _afterPausedChange ( e )`
Updates the UI and schedules or cancels the print loop.

Parameters:
  `e <Event>` Custom event for the attribute change

#### _afterStringsChange

`protected void _afterStringsChange ( e )`
Updates the UI if changes are made to any of the strings in the strings attribute.

Parameters:
  `e <Event>` Custom event for the attribute change

#### _afterVisibleChange

`protected void _afterVisibleChange ( e )`
Makes adjustments to the UI if needed when the Console is hidden or shown

Parameters:
  `e <Event>` the visibleChange event

#### _cancelPrintLoop

`protected void _cancelPrintLoop ( )`
Clears the timeout for printing buffered messages.

#### _createEntryHTML

`protected _createEntryHTML ( m )`
Translates message meta into the markup for a console entry.

Parameters:
  `m <Object>` object literal containing normalized message metadata

Returns: ``
  String

#### _defEntryFn

`protected void _defEntryFn ( e )`
Buffers incoming message objects and schedules the printing.

Parameters:
  `e <Event>` The Custom event carrying the message in its payload

#### _defResetFn

`protected void _defResetFn ( )`
Clears the console, resets the startTime attribute, enables and unpauses the widget.

#### _encodeHTML

`protected _encodeHTML ( s )`
Returns the input string with ampersands (&), <, and > encoded as HTML entities.

Parameters:
  `s <String>` the raw string

Returns: ``
  String the encoded string

#### _getUseBrowserConsole

`protected Boolean _getUseBrowserConsole ( )`
Getter method for useBrowserConsole attribute. Just a pass through to the YUI instance configuration setting.

Returns: `Boolean`
  or null if logSource is not a YUI instance

#### _htmlEscapeMessage

`protected _htmlEscapeMessage ( m )`
Performs HTML escaping on strings in the message object.

Parameters:
  `m <Object>` the normalized message object

Returns: ``
  Object the message object with proper escapement

#### _initBody

`protected void _initBody ( )`
Create the DOM structure for the console body—where messages are rendered.

#### _initFoot

`protected void _initFoot ( )`
Create the DOM structure for the footer elements.

#### _initHead

`protected void _initHead ( )`
Create the DOM structure for the header elements.

#### _isInLogLevel

`protected void _isInLogLevel ( )`
Determine if incoming log messages are within the configured logLevel to be buffered for printing.

#### _normalizeMessage

`protected _normalizeMessage ( e )`
Create a log entry message from the inputs including the following keys:

- time - this moment
- message - leg message
- category - logLevel or custom category for the message
- source - when provided, the widget or util calling Y.log
- sourceAndDetail - same as source but can include instance info
- localTime - readable version of time
- elapsedTime - ms since last entry
- totalTime - ms since Console was instantiated or reset

Parameters:
  `e <Event>` custom event containing the log message

Returns: ``
  Object the message object

#### _onClearClick

`protected void _onClearClick ( e )`
Event handler for clicking on the Clear button. Pass-through to `this.clearConsole()`.

Parameters:
  `e <Event>` DOM event facade for the click event

#### _onCollapseClick

`protected void _onCollapseClick ( e )`
Event handler for clicking on the Collapse/Expand button. Sets the "collapsed" attribute accordingly.

Parameters:
  `e <Event>` DOM event facade for the click event

#### _onLogEvent

`protected void _onLogEvent ( msg , cat , src )`
Responds to log events by normalizing qualifying messages and passing them along through the entry event for buffering etc.

Parameters:
  `msg <String>` the log message
  `cat <String>` OPTIONAL the category or logLevel of the message
  `src <String>` OPTIONAL the source of the message (e.g. widget name)

#### _onPauseClick

`protected void _onPauseClick ( e )`
Event handler for clicking on the Pause checkbox to update the paused attribute.

Parameters:
  `e <Event>` DOM event facade for the click event

#### _schedulePrint

`protected void _schedulePrint ( )`
Sets an interval for buffered messages to be output to the console.

#### _setLogLevel

`protected _setLogLevel ( v )`
Setter method for logLevel attribute. Acceptable values are "error", "warn", and "info" (case insensitive). Other values are treated as "info".

Parameters:
  `v <String>` the desired log level

Returns: ``
  String One of Console.LOG_LEVEL_INFO, _WARN, or _ERROR

#### _setUseBrowserConsole

`protected Boolean _setUseBrowserConsole ( v )`
Setter method for useBrowserConsole attributes. Only functional if the logSource attribute points to a YUI instance. Passes the value down to the YUI instance. NOTE: multiple Console instances cannot maintain independent useBrowserConsole values, since it is just a pass through to the YUI instance configuration.

Parameters:
  `v <Boolean>` false to disable browser console printing (default)

Returns: `Boolean`
  true|false if logSource is a YUI instance

#### _trimOldEntries

`protected void _trimOldEntries ( )`
Removes the oldest message entries from the UI to maintain the limit specified in the consoleLimit configuration.

#### _uiSetHeight

`protected void _uiSetHeight ( v )`
Set the height of the Console container. Set the body height to the difference between the configured height and the calculated heights of the header and footer. Overrides Widget.prototype._uiSetHeight.

Parameters:
  `v <String|Number>` the new height

#### _uiSizeCB

`protected void _uiSizeCB ( )`
Over-ride default content box sizing to do nothing, since we're sizing the body section to fill out height ourselves.

#### _uiUpdateCollapsed

`protected void _uiUpdateCollapsed ( v )`
Updates the UI to reflect the new Collapsed state

Parameters:
  `v <Boolean>` true for collapsed, false for expanded

#### _uiUpdateFromHideShow

`protected void _uiUpdateFromHideShow ( v )`
Recalculates dimensions and updates appropriately when shown

Parameters:
  `v <Boolean>` true for visible, false for hidden

#### _uiUpdatePaused

`protected void _uiUpdatePaused ( on )`
Checks or unchecks the paused checkbox

Parameters:
  `on <Boolean>` the new checked state

#### _validateLogSource

`protected Boolean _validateLogSource ( v )`
Validator for logSource attribute.

Parameters:
  `v <Object>` the desired logSource

Returns: `Boolean`
  true if the input is an object with an `on` method

#### _validateStyle

`protected Boolean _validateStyle ( style )`
Validates input value for style attribute. Accepts only values 'inline', 'block', and 'separate'.

Parameters:
  `style <String>` the proposed value

Returns: `Boolean`
  pass/fail

#### bindUI

`protected void bindUI ( )`
Set up event listeners to wire up the UI to the internal state.

#### clearConsole

`void clearConsole ( )`
Clear the console of messages and flush the buffer of pending messages.
Chainable: This method is chainable.

#### collapse

`void collapse ( )`
Collapses the body and footer.
Chainable: This method is chainable.

#### destructor

`protected void destructor ( )`
Tears down the instance, flushing event subscriptions and purging the UI.

#### expand

`void expand ( )`
Expands the body and footer if collapsed.
Chainable: This method is chainable.

#### initializer

`protected void initializer ( )`
Constructor code. Set up the buffer and entry template, publish internal events, and subscribe to the configured logEvent.

#### log

`void log ( arg* )`
Wrapper for `Y.log`.

Parameters:
  `arg* <MIXED>` (all arguments passed through to `Y.log`)

Chainable: This method is chainable.

#### printBuffer

`void printBuffer ( limit )`
Outputs buffered messages to the console UI. This is typically called from a scheduled interval until the buffer is empty (referred to as the print loop). The number of buffered messages output to the Console is limited to the number provided as an argument. If no limit is passed, all buffered messages are rendered.

Parameters:
  `limit <Number>` (optional) max number of buffered entries to write

Chainable: This method is chainable.

#### renderUI

`protected void renderUI ( )`
Generate the Console UI.

#### reset

`void reset ( )`
Clears the console and resets internal timers.
Chainable: This method is chainable.

#### scrollToLatest

`void scrollToLatest ( )`
Scrolls to the most recent entry
Chainable: This method is chainable.

#### syncUI

`void syncUI ( )`
Sync the UI state to the current attribute state.

#### Methods inherited from EventTarget:

`_getType, _monitor, _parseType, addTarget, after, before, bubble, detach, detachAll, fire, getEvent, getTargets, on, once, parseType, publish, removeTarget, subscribe, unsubscribe, unsubscribeAll`

#### Methods inherited from Attribute:

`_addAttrs, _addLazyAttr, _defAttrChangeFn, _fireAttrChange, _getAttr, _getAttrCfg, _getAttrInitVal, _getAttrs, _getStateVal, _isLazyAttr, _normAttrVals, _protectAttrs, _set, _setAttr, _setAttrs, _setAttrVal, _setStateVal, addAttr, addAttrs, attrAdded, get, getAttrs, modifyAttr, removeAttr, reset, set, setAttrs`

#### Methods inherited from Widget:

`_applyParsedConfig, _applyParser, _bindAttrUI, _bindDOM, _bindUI, _createUIEvent, _defaultCB, _defRenderFn, _destroyUIEvents, _getHtmlParser, _getSrcNode, _getStrings, _getUIEventNode, _guid, _initUIEvent, _isUIEvent, _onDocFocus, _onDocMouseDown, _removeLoadingClassNames, _renderBox, _renderBoxClassNames, _renderUI, _setAttrUI, _setBB, _setBox, _setCB, _setStrings, _strSetter, _syncAttrUI, _syncUI, _uiSetDim, _uiSetDisabled, _uiSetFocused, _uiSetHeight, _uiSetTabIndex, _uiSetVisible, _uiSetWidth, _uiSizeCB, _unbindDOM, _unbindUI, _validTabIndex, bindUI, blur, destructor, disable, enable, focus, getClassName, getDefaultLocale, getSkinName, getString, getStrings, hide, initializer, render, renderer, renderUI, show, syncUI, toString`

#### Methods inherited from Base:

`_aggregateAttrs, _defDestroyFn, _defInitFn, _destroyHierarchy, _filterAttrCfs, _getAttrCfgs, _getClasses, _initHierarchy, _initHierarchyData, _preInitEventCfg, destroy, init, toString`

#### Methods inherited from Plugin.Host:

`_destroyPlugins, _initPlugins, hasPlugin, plug, unplug`

### Events

#### collapsedChange

`collapsedChange ( event )`
Fires when the value for the configuration attribute 'collapsed' is changed. You can listen for the event using the on method if you wish to be notified before the attribute's value has changed, or using the after method if you wish to be notified after the attribute's value has changed.

Parameters:
  `event <Event.Facade>` An Event Facade object with the following attribute specific properties added:
  prevVal
    The value of the attribute, prior to it being set
  newVal
    The value the attribute is to be set to
  attrName
    The name of the attribute being set
  subAttrName
    If setting a property within the attribute's value, the name of the sub-attribute property being set

#### consoleLimitChange

`consoleLimitChange ( event )`
Fires when the value for the configuration attribute 'consoleLimit' is changed. You can listen for the event using the on method if you wish to be notified before the attribute's value has changed, or using the after method if you wish to be notified after the attribute's value has changed.

Parameters:
  `event <Event.Facade>` An Event Facade object with the following attribute specific properties added:
  prevVal
    The value of the attribute, prior to it being set
  newVal
    The value the attribute is to be set to
  attrName
    The name of the attribute being set
  subAttrName
    If setting a property within the attribute's value, the name of the sub-attribute property being set

#### defaultCategoryChange

`defaultCategoryChange ( event )`
Fires when the value for the configuration attribute 'defaultCategory' is changed. You can listen for the event using the on method if you wish to be notified before the attribute's value has changed, or using the after method if you wish to be notified after the attribute's value has changed.

Parameters:
  `event <Event.Facade>` An Event Facade object with the following attribute specific properties added:
  prevVal
    The value of the attribute, prior to it being set
  newVal
    The value the attribute is to be set to
  attrName
    The name of the attribute being set
  subAttrName
    If setting a property within the attribute's value, the name of the sub-attribute property being set

#### defaultSourceChange

`defaultSourceChange ( event )`
Fires when the value for the configuration attribute 'defaultSource' is changed. You can listen for the event using the on method if you wish to be notified before the attribute's value has changed, or using the after method if you wish to be notified after the attribute's value has changed.

Parameters:
  `event <Event.Facade>` An Event Facade object with the following attribute specific properties added:
  prevVal
    The value of the attribute, prior to it being set
  newVal
    The value the attribute is to be set to
  attrName
    The name of the attribute being set
  subAttrName
    If setting a property within the attribute's value, the name of the sub-attribute property being set

#### entry

`entry ( event )`
Transfers a received message to the print loop buffer. Default behavior defined in _defEntryFn.

Parameters:
  `event <Event.Facade>` An Event Facade object with the following attribute specific properties added:
  message
    The message data normalized into an object literal (see _normalizeMessage)

Preventable: This event is preventable by method e.preventDefault(). The default function executed by this event is _defEntryFn.

#### entryTemplateChange

`entryTemplateChange ( event )`
Fires when the value for the configuration attribute 'entryTemplate' is changed. You can listen for the event using the on method if you wish to be notified before the attribute's value has changed, or using the after method if you wish to be notified after the attribute's value has changed.

Parameters:
  `event <Event.Facade>` An Event Facade object with the following attribute specific properties added:
  prevVal
    The value of the attribute, prior to it being set
  newVal
    The value the attribute is to be set to
  attrName
    The name of the attribute being set
  subAttrName
    If setting a property within the attribute's value, the name of the sub-attribute property being set

#### heightChange

`heightChange ( event )`
Fires when the value for the configuration attribute 'height' is changed. You can listen for the event using the on method if you wish to be notified before the attribute's value has changed, or using the after method if you wish to be notified after the attribute's value has changed.

Parameters:
  `event <Event.Facade>` An Event Facade object with the following attribute specific properties added:
  prevVal
    The value of the attribute, prior to it being set
  newVal
    The value the attribute is to be set to
  attrName
    The name of the attribute being set
  subAttrName
    If setting a property within the attribute's value, the name of the sub-attribute property being set

#### lastTimeChange

`lastTimeChange ( event )`
Fires when the value for the configuration attribute 'lastTime' is changed. You can listen for the event using the on method if you wish to be notified before the attribute's value has changed, or using the after method if you wish to be notified after the attribute's value has changed.

Parameters:
  `event <Event.Facade>` An Event Facade object with the following attribute specific properties added:
  prevVal
    The value of the attribute, prior to it being set
  newVal
    The value the attribute is to be set to
  attrName
    The name of the attribute being set
  subAttrName
    If setting a property within the attribute's value, the name of the sub-attribute property being set

#### logEventChange

`logEventChange ( event )`
Fires when the value for the configuration attribute 'logEvent' is changed. You can listen for the event using the on method if you wish to be notified before the attribute's value has changed, or using the after method if you wish to be notified after the attribute's value has changed.

Parameters:
  `event <Event.Facade>` An Event Facade object with the following attribute specific properties added:
  prevVal
    The value of the attribute, prior to it being set
  newVal
    The value the attribute is to be set to
  attrName
    The name of the attribute being set
  subAttrName
    If setting a property within the attribute's value, the name of the sub-attribute property being set

#### logLevelChange

`logLevelChange ( event )`
Fires when the value for the configuration attribute 'logLevel' is changed. You can listen for the event using the on method if you wish to be notified before the attribute's value has changed, or using the after method if you wish to be notified after the attribute's value has changed.

Parameters:
  `event <Event.Facade>` An Event Facade object with the following attribute specific properties added:
  prevVal
    The value of the attribute, prior to it being set
  newVal
    The value the attribute is to be set to
  attrName
    The name of the attribute being set
  subAttrName
    If setting a property within the attribute's value, the name of the sub-attribute property being set

#### logSourceChange

`logSourceChange ( event )`
Fires when the value for the configuration attribute 'logSource' is changed. You can listen for the event using the on method if you wish to be notified before the attribute's value has changed, or using the after method if you wish to be notified after the attribute's value has changed.

Parameters:
  `event <Event.Facade>` An Event Facade object with the following attribute specific properties added:
  prevVal
    The value of the attribute, prior to it being set
  newVal
    The value the attribute is to be set to
  attrName
    The name of the attribute being set
  subAttrName
    If setting a property within the attribute's value, the name of the sub-attribute property being set

#### newestOnTopChange

`newestOnTopChange ( event )`
Fires when the value for the configuration attribute 'newestOnTop' is changed. You can listen for the event using the on method if you wish to be notified before the attribute's value has changed, or using the after method if you wish to be notified after the attribute's value has changed.

Parameters:
  `event <Event.Facade>` An Event Facade object with the following attribute specific properties added:
  prevVal
    The value of the attribute, prior to it being set
  newVal
    The value the attribute is to be set to
  attrName
    The name of the attribute being set
  subAttrName
    If setting a property within the attribute's value, the name of the sub-attribute property being set

#### pausedChange

`pausedChange ( event )`
Fires when the value for the configuration attribute 'paused' is changed. You can listen for the event using the on method if you wish to be notified before the attribute's value has changed, or using the after method if you wish to be notified after the attribute's value has changed.

Parameters:
  `event <Event.Facade>` An Event Facade object with the following attribute specific properties added:
  prevVal
    The value of the attribute, prior to it being set
  newVal
    The value the attribute is to be set to
  attrName
    The name of the attribute being set
  subAttrName
    If setting a property within the attribute's value, the name of the sub-attribute property being set

#### printLimitChange

`printLimitChange ( event )`
Fires when the value for the configuration attribute 'printLimit' is changed. You can listen for the event using the on method if you wish to be notified before the attribute's value has changed, or using the after method if you wish to be notified after the attribute's value has changed.

Parameters:
  `event <Event.Facade>` An Event Facade object with the following attribute specific properties added:
  prevVal
    The value of the attribute, prior to it being set
  newVal
    The value the attribute is to be set to
  attrName
    The name of the attribute being set
  subAttrName
    If setting a property within the attribute's value, the name of the sub-attribute property being set

#### printTimeoutChange

`printTimeoutChange ( event )`
Fires when the value for the configuration attribute 'printTimeout' is changed. You can listen for the event using the on method if you wish to be notified before the attribute's value has changed, or using the after method if you wish to be notified after the attribute's value has changed.

Parameters:
  `event <Event.Facade>` An Event Facade object with the following attribute specific properties added:
  prevVal
    The value of the attribute, prior to it being set
  newVal
    The value the attribute is to be set to
  attrName
    The name of the attribute being set
  subAttrName
    If setting a property within the attribute's value, the name of the sub-attribute property being set

#### reset

`reset ( event )`
Triggers the reset behavior via the default logic in _defResetFn.

Parameters:
  `event <Event.Facade>` Event Facade object

Preventable: This event is preventable by method e.preventDefault(). The default function executed by this event is _defResetFn.

#### scrollIntoViewChange

`scrollIntoViewChange ( event )`
Fires when the value for the configuration attribute 'scrollIntoView' is changed. You can listen for the event using the on method if you wish to be notified before the attribute's value has changed, or using the after method if you wish to be notified after the attribute's value has changed.

Parameters:
  `event <Event.Facade>` An Event Facade object with the following attribute specific properties added:
  prevVal
    The value of the attribute, prior to it being set
  newVal
    The value the attribute is to be set to
  attrName
    The name of the attribute being set
  subAttrName
    If setting a property within the attribute's value, the name of the sub-attribute property being set

#### startTimeChange

`startTimeChange ( event )`
Fires when the value for the configuration attribute 'startTime' is changed. You can listen for the event using the on method if you wish to be notified before the attribute's value has changed, or using the after method if you wish to be notified after the attribute's value has changed.

Parameters:
  `event <Event.Facade>` An Event Facade object with the following attribute specific properties added:
  prevVal
    The value of the attribute, prior to it being set
  newVal
    The value the attribute is to be set to
  attrName
    The name of the attribute being set
  subAttrName
    If setting a property within the attribute's value, the name of the sub-attribute property being set

#### stringsChange

`stringsChange ( event )`
Fires when the value for the configuration attribute 'strings' is changed. You can listen for the event using the on method if you wish to be notified before the attribute's value has changed, or using the after method if you wish to be notified after the attribute's value has changed.

Parameters:
  `event <Event.Facade>` An Event Facade object with the following attribute specific properties added:
  prevVal
    The value of the attribute, prior to it being set
  newVal
    The value the attribute is to be set to
  attrName
    The name of the attribute being set
  subAttrName
    If setting a property within the attribute's value, the name of the sub-attribute property being set

#### styleChange

`styleChange ( event )`
Fires when the value for the configuration attribute 'style' is changed. You can listen for the event using the on method if you wish to be notified before the attribute's value has changed, or using the after method if you wish to be notified after the attribute's value has changed.

Parameters:
  `event <Event.Facade>` An Event Facade object with the following attribute specific properties added:
  prevVal
    The value of the attribute, prior to it being set
  newVal
    The value the attribute is to be set to
  attrName
    The name of the attribute being set
  subAttrName
    If setting a property within the attribute's value, the name of the sub-attribute property being set

#### useBrowserConsoleChange

`useBrowserConsoleChange ( event )`
Fires when the value for the configuration attribute 'useBrowserConsole' is changed. You can listen for the event using the on method if you wish to be notified before the attribute's value has changed, or using the after method if you wish to be notified after the attribute's value has changed.

Parameters:
  `event <Event.Facade>` An Event Facade object with the following attribute specific properties added:
  prevVal
    The value of the attribute, prior to it being set
  newVal
    The value the attribute is to be set to
  attrName
    The name of the attribute being set
  subAttrName
    If setting a property within the attribute's value, the name of the sub-attribute property being set

#### widthChange

`widthChange ( event )`
Fires when the value for the configuration attribute 'width' is changed. You can listen for the event using the on method if you wish to be notified before the attribute's value has changed, or using the after method if you wish to be notified after the attribute's value has changed.

Parameters:
  `event <Event.Facade>` An Event Facade object with the following attribute specific properties added:
  prevVal
    The value of the attribute, prior to it being set
  newVal
    The value the attribute is to be set to
  attrName
    The name of the attribute being set
  subAttrName
    If setting a property within the attribute's value, the name of the sub-attribute property being set

#### Events inherited from Widget:

`boundingBoxChange, contentBoxChange, disabledChange, focusedChange, heightChange, idChange, localeChange, renderChange, renderedChange, srcNodeChange, stringsChange, tabIndexChange, visibleChange, widget:contentUpdate, widget:render, widthChange,`

#### Events inherited from Base:

`destroy, destroyedChange, init, initializedChange,`

### Configuration Attributes

#### collapsed `- Boolean`

Controls the collapsed state of the Console
Default Value: false

#### consoleLimit `- Number`

Maximum number of Console entries allowed in the Console body at one time. This is used to keep acquired messages from exploding the DOM tree and impacting page performance.
Default Value: 300

#### defaultCategory `- String`

If a category is not specified in the Y.log(..) statement, this category will be used. Categories "info", "warn", and "error" are also called log level.
Default Value: "info"

#### defaultSource `- String`

If a source is not specified in the Y.log(..) statement, this source will be used.
Default Value: "global"

#### entryTemplate `- String`

Markup template used to create the DOM structure for Console entries.
Default Value: Console.ENTRY_TEMPLATE

#### height `- {String | Number}`

String with units, or number, representing the height of the Console, inclusive of header and footer. If a number is provided, the default unit, defined by Widget's DEF_UNIT, property is used.
Default Value: "300px"

#### lastTime `- Date`

The precise time the last entry was logged. Used to measure elapsed time between log messages.
Default Value: The moment the console module is `use`d

#### logEvent `- String`

Name of the custom event that will communicate log messages.
Default Value: "yui:log"

#### logLevel `- String`

Minimum entry log level to render into the Console. The initial logLevel value for all Console instances defaults from the Y.config.logLevel YUI configuration, or Console.LOG_LEVEL_INFO if that configuration is not set. Possible values are "info", "warn", "error" (case insensitive), or their corresponding statics Console.LOG_LEVEL_INFO and so on.
Default Value: Y.config.logLevel or Console.LOG_LEVEL_INFO

#### logSource `- EventTarget`

Object that will emit the log events. By default the YUI instance. To have a single Console capture events from all YUI instances, set this to the Y.Global object.
Default Value: Y

#### newestOnTop `- Boolean`

New entries should display at the top of the Console or the bottom?
Default Value: true

#### paused `- boolean`

Boolean to pause the outputting of new messages to the console. When paused, messages will accumulate in the buffer.
Default Value: false

#### printLimit `- Number`

Maximum number of entries printed in each iteration of the print loop. This is used to prevent excessive logging locking the page UI.
Default Value: 50

#### printTimeout `- Number`

Millisecond timeout between iterations of the print loop, moving entries from the buffer to the UI.
Default Value: 100

#### scrollIntoView `- Boolean`

When new entries are added to the Console UI, should they be scrolled into view?
Default Value: true

#### startTime `- Date`

The baseline time for this Console instance, used to measure elapsed time from the moment the console module is `use`d to the moment each new entry is logged (not rendered). This value is reset by the instance method myConsole.reset().
Default Value: The moment the console module is `use`d

#### strings `- Object`

Collection of strings used to label elements in the Console UI. Default collection contains the following name:value pairs:

- title : "Log Console"
- pause : "Pause"
- clear : "Clear"
- collapse : "Collapse"
- expand : "Expand"

#### style `- {String}`

Allows the Console to flow in the document. Available values are 'inline', 'block', and 'separate' (the default).
Default Value: 'separate'

#### useBrowserConsole `- {Boolean}`

Pass through to the YUI instance useBrowserConsole configuration. By default this is set to false, which will disable logging to the browser console when a Console instance is created. If the logSource is not a YUI instance, this has no effect.
Default Value: false

#### width `- {String | Number}`

String with units, or number, representing the width of the Console. If a number is provided, the default unit, defined by Widget's DEF_UNIT, property is used.
Default Value: "300px"

#### Configuration attributes inherited from Widget:

`boundingBox, contentBox, disabled, focused, height, id, locale render rendered srcNode strings tabIndex visible width`

#### Configuration attributes inherited from Base:

`destroyed initialized`

Copyright © 2011 Yahoo! Inc. All rights reserved.