log-entry-writers.js revision 048f047b98052b53a517f3e13fb240b9fefeec0d
TYPE = 'type',
VERBOSE = 'verbose',
function CollapsableConsole() {
}
// collapsable, filterable, templatable
NAME : 'collapsableconsole',
NS : 'collapsableconsole',
STRINGS : {
COLLAPSE : "Collapse",
EXPAND : "Expand"
},
ATTRS : {
/**
* A map of HTML markup templates for the _entryFromTemplate
* entryWriter to use to render log messages into the LogReader console.
*
* <code>myReader.set('templates.verbose',htmlTemplate);</code>
* to alter how messages are rendered if myReader is configured to use
* verbose output. Also available by default is 'templates.basic'.
*
* To add a new template,
* <pre>myReader.set('templates.my_template',htmlTemplate);
* myReader.set('defaultTemplate','my_template');</pre>
*
* @attribute templates
* @type Object
*/
templates : {
value : {
// Populated during instance initialization
verbose : null,
basic : null
}
},
/**
* The default template to use to render log messages. Available
* templates are held in the templates attribute. Set the value to
* the key of the templates config object representing the markup
* template you wish to use by default.
*
* Out of the box, values VERBOSE and 'basic' are supported.
*
* @attribute defaultTemplate
* @type String
* @default "verbose"
*/
defaultTemplate : {
},
entryWriters : {
value: {
entry : '_entryFromTemplate'
}
},
defaultWriter : {
},
// convenience attrib for managing defaultTemplate
verbose : {
value: true,
this.set('defaultTemplate',
return !!val;
}
}
}
});
Y.extend(CollapsableConsole, {
_values : null,
_tickSize : null,
initializer : function () {
this._initTemplates();
},
_initTemplates : function () {
// For verbose log entries
// For basic log entries
this.set('templates.basic',
'<p>'+
'{label}</span>'+
' {totalTime}ms (+{elapsedTime}) {localTime}:'+
'</span>'+
' {sourceAndDetail}'+
'</span>:'+
'</span>'+
' {message}'+
'</p>'+
'</pre>');
},
printLogEntry : function (m) {
....
},
_entryFromTemplate : function (m) {
m = this._htmlEscapeMessage(m);
return n;
},
bindUI : function () {
// get the buttons' container then
},
syncUI : function () {
},
_handleClick : function (e) {
var t = e.target;
if (t.hasClass(C_COLLAPSE)) {
}
},
_afterCollapsedChange : function (e) {
}
});