I was playing around with putting tooltips on the col headers of a grid. Might be worth adding to the code, or at least inspire you to do something cooler 
Code:
cm = new YAHOO.ext.grid.DefaultColumnModel(
[{header:'Index', hidden:true /*width:50*/},
{header:'Name', width: 90, tooltip:'Click to sort'},
{header:'Code', width: 50},
{header:'Viewable', width:65, editor:new YAHOO.ext.grid.CheckboxEditor(), renderer:renderBool}
]);
In gridview.js
var htemplate = dh.createTemplate({
tag: 'span', cls: 'ygrid-hd ygrid-header-{0}', children: [{
tag: 'span',
cls: 'ygrid-hd-body',
html: '<table>' +
'<tbody><tr><td><span>{1}</span></td>' +
'<td><span></span><span></span></td>' +
'</tr></tbody></table>'
}]
});
htemplate.compile();
for(var i = 0; i < colCount; i++){
var hd = htemplate.append(hrow, [i, colModel.getColumnHeader(i), colModel.getColumnTooltip(i)]);
var spans = hd.getElementsByTagName('span');
hd.textNode = spans[1];
hd.sortDesc = spans[2];
in DefaultColumnModel.js
/**
* Returns the tooltip for the specified column.
* @param {Number} col The column index
* @return {String}
*/
getColumnTooltip : function(col){
return this.config[col].tooltip;
},
/**
* Sets the tooltip for a column.
* @param {Number} col The column index
* @param {String} tooltip The new tooltip
*/
setColumnTooltip : function(col, header){
this.config[col].tooltip = tooltip;
//this.onTooltipChange.fireDirect(this, col, tooltip); // TODO-maybe:
},