code: function(oColumn) {
      oColumn = this.getColumn(oColumn);
      if(oColumn && !oColumn.selected) {
          // Only bottom-level Columns can get hidden
          if(oColumn.getKeyIndex() !== null) {
              oColumn.selected = true;
              
              // Update head cell
              var elTh = oColumn.getThEl();
              Dom.addClass(elTh,DT.CLASS_SELECTED);
  
              // Update body cells
              var allRows = this.getTbodyEl().rows;
              var oChainRender = this._oChainRender;
              oChainRender.add({
                  method: function(oArg) {
                      if((this instanceof DT) && this._sId && allRows[oArg.rowIndex] && allRows[oArg.rowIndex].cells[oArg.cellIndex]) {
                          Dom.addClass(allRows[oArg.rowIndex].cells[oArg.cellIndex],DT.CLASS_SELECTED);                    
                      }
                      oArg.rowIndex++;
                  },
                  scope: this,
                  iterations: allRows.length,
                  argument: {rowIndex:0,cellIndex:oColumn.getKeyIndex()}
              });
  
              this._clearTrTemplateEl();
              
              this._elTbody.style.display = "none";
              this._runRenderChain();
              this._elTbody.style.display = "";      
              
              this.fireEvent("columnSelectEvent",{column:oColumn});
              YAHOO.log("Column \"" + oColumn.key + "\" selected", "info", this.toString());
          }
          else {
              YAHOO.log("Could not select Column \"" + oColumn.key + "\". Only non-nested Columns can be selected", "warn", this.toString());
          }
      }
  }
docs: Selects given Column. NOTE: You cannot select/unselect nested Columns. You can only
  select/unselect non-nested Columns, and bottom-level key Columns.
  
  @method selectColumn
  @param column {HTMLElement | String | Number} DOM reference or ID string to a
  TH/TD element (or child of a TH/TD element), a Column key, or a ColumnSet key index.