/**
* 该模块上下左右联动滚动容器组件<br>:
* <strong>
* 页面需要导入的文件
* <ul>
* <li>cmp-tableList.js</li>
* <li>cmp-listView.js</li>
* <li>cmp-listView.css</li>
* <li>cmp-tableList.css</li>
* </ul>
* </strong>
* @module tableList
* @subtitle 数据列表
*/
/**
* @class tableList
*/
/**
* 上下左右联动滚动容器组件
* <br>类似于excel的布局风格,滚动内容区域时:左右滚动时,左边的行列表不会滚动头部导航栏可以滚动;上下滚动时,头部导航栏不滚动,左边行列表滚动,目前提供两组风格,开发者可自行配置<br>
* <ul>
* <li>纯列表展示(左边行列表是数字)</li>
* <li>可选进行选择的数据展示(左边行列表有选择框)</li>
* </ul>
* @namespace cmp
* @class tableList
* @constructor
* @param {String} container 列表容器标识,querySelector能定位的css选择器均可,比如:id、.class等,如:"#id"、".class"(必须符合以上两种形式的查询)
* @param {Object} options 配置参数
* @param {Object} options.fields 用于头部导航栏显示的显示内容,格式如:<br>
* {"key1":"计划表","key2":"姓名"}<br>
* key:代表的是对应列数据关键字,key的值代表的是对应导航栏展示的文字
* @param {Number} options.type 列表数据是否是可选择的<br>
* <ul>
* <li>1:默认不可选择(数字排序)</li>
* <li>2,可进行选择的</li>
* </ul>
* @param {Boolean} options.radio 是否只能进行单选 true 只能单选,false进行多选(默认:false)
* @param {Object} options.params 上拉下拉刷新请求函数需要的参数,格式:{ticket: "luodx"}
* @param {Number} [options.pageSize] 分页数,默认20
* @param {String} [options.theme] 主题配置
* @param {String} [options.theme.headerStyle] 标题头部的样式,接受以css字符串的形式
* @param {String} [options.theme.sidebarStyle] 侧边栏样式,以css字符串的形式
* @param {String} [options.theme.rowClass] 列表class类,由开发者自己定义,一般是定义的错峰显示的不同底色的类
* @param {Number} [options.headerH] 标题头部的高度,默认32
* @param {Number} [options.sidebarW] 侧边栏的宽度,默认50
* @param {Number} [options.rowH] 列表行高,默认41
* @param {Number} [options.captionType] 下拉上拉控件显示类型<br>
* <ul>
* <li>0:不显示条数,只显示文字</li>
* <li>1:显示条数和文字(默认)</li>
* </ul>
* @param {Number} [options.purpose] 列表用作的方式,应用场景当首次请求无数据时,以一个开发者自定义的html来展示.<br/>
* <ul>
* <li>1:普通内容展示;</li>
* <li>2:搜索内容展示</li>
* <li>以后进行扩展</li>
* <li>-1:开发者自己渲染无数据的页面,还是要走开发者定义的渲染方法,只是返回的数据为空</li>
* </ul>
* @param {Function} options.dataFunc 上拉下拉刷新请求数据的函数
* @param {Boolean} [options.multiLevel] 是否是多级查看 <br> true 会出现一个向右的按钮,可进行到下一级的回调函数,false:不会出现向右的按钮
* @param {Boolean} [options.multiLevelCallback] 如果可进行下一级查看 进入下一级的回调函数
* @param {Object} [options.down] 下拉控件的文字、数据数量配置
* @param {String} [options.down.contentdown] 在下拉可刷新状态时,下拉刷新控件上显示的标题内容(默认:"下拉可以刷新")
* @param {String} [options.down.contentover] 在释放可刷新状态时,下拉刷新控件上显示的标题内容(默认:"释放立即刷新")
* @param {String} [options.down.contentrefresh] 正在刷新状态时,下拉刷新控件上显示的标题内容(默认:"正在刷新...")
* @param {String} [options.down.contentprepage] 请求数据条数超过一屏了,需要显示【上一页】的文字
* @param {Object} [options.up] 上拉控件的文字、数据数量配置
* @param {String} [options.up.contentdown] 在上拉可刷新状态时,上拉刷新控件上显示的标题内容(默认:"上拉显示更多")
* @param {String} [options.up.contentrefresh] 正在加载状态时,上拉加载控件上显示的标题内容(默认:"正在加载...")
* @param {String} [options.up.contentnomore] 请求完毕若没有更多数据时显示的提醒内容(默认:"没有更多数据了")
* @param {String} [options.up.contentnextpage] 请求数据条数满一屏了,需要显示【下一页】的文字
* @param {Function} [options.callback] 点击列表数据回调函
* @demo cmp-tableList.html
* @demo cmp-tableList2.html
* @returns {Object} 返回tableList对象<br>
* 对象提供的方法
* <ul>
* <li>如果设置的是可选择类型的:则提供 getChoosedData方法,返回被选中的数据<br>
* var tableList = cmp.tableList("linkContainer",....);<br>
* var choosedData = tableList.getChoosedData();
* </li>
* </ul>
* @cutline 请点击[http://open.seeyon.com/seeyon/cmp2.0/demo/demo/pagings/v5/cmp-listview-tableList-default.html](http://open.seeyon.com/seeyon/cmp2.0/demo/demo/pagings/v5/cmp-listview-tableList-default.html)查看demo
*/