1 /**
  2  * @fileOverview root node represent a simple tree
  3  * @author yiminghe@gmail.com
  4  */
  5 KISSY.add("tree/base", function (S, Component, BaseNode, TreeRender, TreeMgr) {
  6 
  7     /*多继承
  8      1. 继承基节点(包括可装饰儿子节点功能)
  9      2. 继承 mixin 树管理功能
 10      3. 继承 mixin 儿子事件代理功能
 11      */
 12 
 13     /**
 14      * @name Tree
 15      * @class
 16      * KISSY Tree.
 17      * xclass: 'tree'.
 18      * @extends Tree.Node
 19      */
 20     return BaseNode.extend([Component.DelegateChildren, TreeMgr],
 21         /**
 22          * @lends Tree#
 23          */
 24         {
 25             /**
 26              * See {@link Tree.Node#expandAll}
 27              */
 28             expandAll:function () {
 29                 return BaseNode.prototype.expandAll.apply(this, arguments);
 30             }
 31         }, {
 32             ATTRS:{
 33                 xrender:{
 34                     value:TreeRender
 35                 }
 36             }
 37         }, {
 38             xclass:'tree',
 39             priority:30
 40         });
 41 
 42 }, {
 43     requires:['component', './basenode', './treeRender', './treemgr']
 44 });
 45 
 46 /**
 47  * Refer:
 48  *  - http://www.w3.org/TR/wai-aria-practices/#TreeView
 49  *
 50  * note bug:
 51  *  1. checked tree 根节点总是 selected !
 52  *  2. 根节点 hover 后取消不了了
 53  **/