4 curses库基垫(pad)处理
~~~~~~~~~~~~~~~~~~~~~~~~
4.1 基垫说明
=============
* 基垫也是一种窗口,它在各方面与WINDOW一样,只是它的大小和位置不再局限于终端屏幕的可视部分.
* 与子窗口类似,基垫也同样有子基垫(subpad)
* 大部分窗口操作的函数都可以直接作用在基垫上,只有少数才是基垫独有的.
* 由于基垫可以完全看不见,这就导致了基垫与WINDOW的一个最主要的差异,即基垫与标准屏幕没有直接关联
4.2 基垫函数说明
=================
/**
@brief 创建新基垫
@param lines,cols 指定创建基垫的总行数和总列数
@return 失败的话,返回NULL
@note 由于与标准屏幕没有任何关联,因此参数中不需要在标准屏幕中的定位参数
*/
WINDOW* newpad(int lines,int cols);
/**
@brief 创建子基垫
@param pad 要创建子基垫的父基垫
@param lines,cols 子基垫的行数和列数
@param begin_x,begin_y 子基垫左上方在父基垫中的相对位置
*/
WINDOW* subpad(WINDOW* pad,int lines,int cols,int begin_x,int begin_y);
/**
@brief 刷新基垫指定区域
@param prow,pcol 描述了基垫中需要刷新到标准屏