亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? frm_def.c

?? ncurses-5.4 需要的就來下把 一定會有用的哦
?? C
字號:
/**************************************************************************** * Copyright (c) 1998-2002,2003 Free Software Foundation, Inc.              * *                                                                          * * Permission is hereby granted, free of charge, to any person obtaining a  * * copy of this software and associated documentation files (the            * * "Software"), to deal in the Software without restriction, including      * * without limitation the rights to use, copy, modify, merge, publish,      * * distribute, distribute with modifications, sublicense, and/or sell       * * copies of the Software, and to permit persons to whom the Software is    * * furnished to do so, subject to the following conditions:                 * *                                                                          * * The above copyright notice and this permission notice shall be included  * * in all copies or substantial portions of the Software.                   * *                                                                          * * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS  * * OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF               * * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.   * * IN NO EVENT SHALL THE ABOVE COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM,   * * DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR    * * OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR    * * THE USE OR OTHER DEALINGS IN THE SOFTWARE.                               * *                                                                          * * Except as contained in this notice, the name(s) of the above copyright   * * holders shall not be used in advertising or otherwise to promote the     * * sale, use or other dealings in this Software without prior written       * * authorization.                                                           * ****************************************************************************//**************************************************************************** *   Author:  Juergen Pfeifer, 1995,1997                                    * ****************************************************************************/#include "form.priv.h"MODULE_ID("$Id: frm_def.c,v 1.13 2003/11/08 20:37:53 tom Exp $")/* this can't be readonly */static FORM default_form = {  0,                                    /* status     */  0,                                    /* rows       */  0,                                    /* cols       */  0,                                    /* currow     */  0,                                    /* curcol     */  0,                                    /* toprow     */  0,                                    /* begincol   */  -1,                                   /* maxfield   */  -1,                                   /* maxpage    */  -1,                                   /* curpage    */  ALL_FORM_OPTS,                        /* opts       */  (WINDOW *)0,                          /* win        */  (WINDOW *)0,                          /* sub        */  (WINDOW *)0,                          /* w          */  (FIELD **)0,                          /* field      */  (FIELD *)0,                           /* current    */  (_PAGE *)0,                           /* page       */  (char *)0,                            /* usrptr     */  NULL,			                /* forminit   */  NULL,                                 /* formterm   */  NULL,                                 /* fieldinit  */  NULL                                  /* fieldterm  */};NCURSES_EXPORT_VAR(FORM *) _nc_Default_Form = &default_form;/*---------------------------------------------------------------------------|   Facility      :  libnform  |   Function      :  static FIELD *Insert_Field_By_Position(|                                     FIELD *new_field, |                                     FIELD *head )|   |   Description   :  Insert new_field into sorted fieldlist with head "head"|                    and return new head of sorted fieldlist. Sorting|                    criteria is (row,column). This is a circular list.||   Return Values :  New head of sorted fieldlist+--------------------------------------------------------------------------*/static FIELD *Insert_Field_By_Position(FIELD *newfield, FIELD *head){  FIELD *current, *newhead;    assert(newfield);  if (!head)    { /* empty list is trivial */      newhead = newfield->snext = newfield->sprev = newfield;    }  else    {      newhead = current = head;      while((current->frow < newfield->frow) || 	    ((current->frow==newfield->frow) && 	     (current->fcol < newfield->fcol)) )	{	  current = current->snext;	  if (current==head)	    { /* We cycled through. Reset head to indicate that */	      head = (FIELD *)0;	      break;	    }	}      /* we leave the loop with current pointing to the field after newfield*/      newfield->snext	 = current;      newfield->sprev	 = current->sprev;      newfield->snext->sprev = newfield;      newfield->sprev->snext = newfield;      if (current==head) 	newhead = newfield;    }  return(newhead);}/*---------------------------------------------------------------------------|   Facility      :  libnform  |   Function      :  static void Disconnect_Fields(FORM *form)|   |   Description   :  Break association between form and array of fields.||   Return Values :  -+--------------------------------------------------------------------------*/static void Disconnect_Fields( FORM * form ){  if (form->field)    {      FIELD **fields;      for(fields=form->field;*fields;fields++)	{	  if (form == (*fields)->form) 	    (*fields)->form = (FORM *)0;	}            form->rows = form->cols = 0;      form->maxfield = form->maxpage = -1;      form->field = (FIELD **)0;      if (form->page) 	free(form->page);      form->page = (_PAGE *)0;    }	}/*---------------------------------------------------------------------------|   Facility      :  libnform  |   Function      :  static int Connect_Fields(FORM *form, FIELD **fields)|   |   Description   :  Set association between form and array of fields.||   Return Values :  E_OK            - no error|                    E_CONNECTED     - a field is already connected|                    E_BAD_ARGUMENT  - Invalid form pointer or field array|                    E_SYSTEM_ERROR  - not enough memory+--------------------------------------------------------------------------*/static int Connect_Fields(FORM  * form, FIELD ** fields){  int field_cnt, j;  int page_nr;  int maximum_row_in_field, maximum_col_in_field;  _PAGE *pg;    assert(form);  form->field    = fields;  form->maxfield = 0;  form->maxpage  = 0;  if (!fields)    RETURN(E_OK);    page_nr = 0;  /* store formpointer in fields and count pages */  for(field_cnt=0;fields[field_cnt];field_cnt++)    {      if (fields[field_cnt]->form) 	RETURN(E_CONNECTED);      if ( field_cnt==0 || 	  (fields[field_cnt]->status & _NEWPAGE)) 	page_nr++;      fields[field_cnt]->form = form;    }	  if (field_cnt==0)    RETURN(E_BAD_ARGUMENT);    /* allocate page structures */  if ( (pg = (_PAGE *)malloc(page_nr * sizeof(_PAGE))) != (_PAGE *)0 )    {      form->page = pg;    }  else    RETURN(E_SYSTEM_ERROR);    /* Cycle through fields and calculate page boundaries as well as     size of the form */  for(j=0;j<field_cnt;j++)    {      if (j==0) 	pg->pmin = j;      else	{	  if (fields[j]->status & _NEWPAGE)	    {	      pg->pmax = j-1;	      pg++;	      pg->pmin = j;	    }	}            maximum_row_in_field = fields[j]->frow + fields[j]->rows;      maximum_col_in_field = fields[j]->fcol + fields[j]->cols;            if (form->rows < maximum_row_in_field) 	form->rows = maximum_row_in_field;      if (form->cols < maximum_col_in_field) 	form->cols = maximum_col_in_field;    }    pg->pmax       = field_cnt-1;  form->maxfield = field_cnt;  form->maxpage  = page_nr;     /* Sort fields on form pages */  for(page_nr = 0;page_nr < form->maxpage; page_nr++)    {      FIELD *fld = (FIELD *)0;      for(j = form->page[page_nr].pmin;j <= form->page[page_nr].pmax;j++)	{	  fields[j]->index = j;	  fields[j]->page  = page_nr;	  fld = Insert_Field_By_Position(fields[j],fld);	}      form->page[page_nr].smin = fld->index;      form->page[page_nr].smax = fld->sprev->index;    }  RETURN(E_OK);}/*---------------------------------------------------------------------------|   Facility      :  libnform  |   Function      :  static int Associate_Fields(FORM *form, FIELD **fields)|   |   Description   :  Set association between form and array of fields. |                    If there are fields, position to first active field.||   Return Values :  E_OK            - success|                    any other       - error occurred+--------------------------------------------------------------------------*/INLINE static int Associate_Fields(FORM  *form, FIELD **fields){  int res = Connect_Fields(form,fields);  if (res == E_OK)    {      if (form->maxpage>0)	{	  form->curpage = 0;	  form_driver(form,FIRST_ACTIVE_MAGIC);	}      else	{	  form->curpage = -1;	  form->current = (FIELD *)0;	}     }  return(res);}			    /*---------------------------------------------------------------------------|   Facility      :  libnform  |   Function      :  FORM *new_form( FIELD **fields )|   |   Description   :  Create new form with given array of fields.||   Return Values :  Pointer to form. NULL if error occurred.+--------------------------------------------------------------------------*/NCURSES_EXPORT(FORM *)new_form (FIELD ** fields){	  int err = E_SYSTEM_ERROR;  FORM *form = (FORM *)malloc(sizeof(FORM));    if (form)    {      *form = *_nc_Default_Form;      if ((err=Associate_Fields(form,fields))!=E_OK)	{	  free_form(form);	  form = (FORM *)0;	}    }  if (!form)    SET_ERROR(err);    return(form);}/*---------------------------------------------------------------------------|   Facility      :  libnform  |   Function      :  int free_form( FORM *form )|   |   Description   :  Release internal memory associated with form.||   Return Values :  E_OK           - no error|                    E_BAD_ARGUMENT - invalid form pointer|                    E_POSTED       - form is posted+--------------------------------------------------------------------------*/NCURSES_EXPORT(int)free_form (FORM * form){  if ( !form )	    RETURN(E_BAD_ARGUMENT);  if ( form->status & _POSTED)      RETURN(E_POSTED);    Disconnect_Fields( form );  if (form->page)     free(form->page);  free(form);    RETURN(E_OK);}/*---------------------------------------------------------------------------|   Facility      :  libnform  |   Function      :  int set_form_fields( FORM *form, FIELD **fields )|   |   Description   :  Set a new association of an array of fields to a form||   Return Values :  E_OK              - no error|                    E_BAD_ARGUMENT    - invalid form pointer|                    E_POSTED          - form is posted+--------------------------------------------------------------------------*/NCURSES_EXPORT(int)set_form_fields (FORM  * form, FIELD ** fields){  FIELD **old;  int res;    if ( !form )	    RETURN(E_BAD_ARGUMENT);  if ( form->status & _POSTED )	    RETURN(E_POSTED);    old = form->field;  Disconnect_Fields( form );    if( (res = Associate_Fields( form, fields )) != E_OK )    Connect_Fields( form, old );    RETURN(res);}	/*---------------------------------------------------------------------------|   Facility      :  libnform  |   Function      :  FIELD **form_fields( const FORM *form )|   |   Description   :  Retrieve array of fields||   Return Values :  Pointer to field array+--------------------------------------------------------------------------*/NCURSES_EXPORT(FIELD **)form_fields (const FORM * form){  return (Normalize_Form( form )->field);}/*---------------------------------------------------------------------------|   Facility      :  libnform  |   Function      :  int field_count( const FORM *form )|   |   Description   :  Retrieve number of fields||   Return Values :  Number of fields, -1 if none are defined+--------------------------------------------------------------------------*/NCURSES_EXPORT(int)field_count (const FORM * form){  return (Normalize_Form( form )->maxfield);}/* frm_def.c ends here */

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
国产不卡在线播放| 国产综合色视频| 中文字幕佐山爱一区二区免费| 精品国产髙清在线看国产毛片| 6080国产精品一区二区| 欧美日韩亚洲综合一区二区三区| 在线观看免费亚洲| 色天使久久综合网天天| 欧美制服丝袜第一页| 91久久国产最好的精华液| 在线观看视频91| 欧美手机在线视频| 欧美人妖巨大在线| 欧美麻豆精品久久久久久| 欧美福利视频一区| 欧美一区二区二区| 精品国产网站在线观看| 久久青草国产手机看片福利盒子| 国产欧美日韩综合精品一区二区| 国产婷婷精品av在线| 国产精品久久久久婷婷| 亚洲特黄一级片| 亚洲第一狼人社区| 亚洲午夜久久久久久久久久久| 午夜伦理一区二区| 久久99精品久久只有精品| 国产精品资源网站| av一区二区久久| 欧美日免费三级在线| 日韩欧美国产综合| 国产日韩精品一区二区三区| 亚洲欧美日韩国产综合| 舔着乳尖日韩一区| 国产在线精品一区二区不卡了| 高清成人免费视频| 在线这里只有精品| 日韩一级高清毛片| 中文字幕免费在线观看视频一区| 一区二区三区视频在线观看 | 精油按摩中文字幕久久| 国产白丝网站精品污在线入口| 91女人视频在线观看| 欧美日韩国产一级二级| 精品国产一区a| 日韩毛片视频在线看| 蜜臀av性久久久久蜜臀aⅴ| 成人精品免费看| 欧美嫩在线观看| 欧美高清一级片在线观看| 亚洲一区二区三区四区不卡| 国产一区二区三区av电影| 97久久精品人人爽人人爽蜜臀| 91精品欧美久久久久久动漫| 欧美国产日韩精品免费观看| 天天综合色天天综合色h| 国产成a人亚洲精品| 欧美日韩一区在线| 国产欧美精品一区aⅴ影院 | 国产精品自拍av| 欧美视频在线观看一区| 国产三级欧美三级日产三级99| 亚洲国产中文字幕| 国产成人精品影院| 欧美精品18+| 亚洲手机成人高清视频| 久久精工是国产品牌吗| 91成人在线免费观看| www激情久久| 天堂影院一区二区| 波多野结衣中文一区| 欧美成人一区二区三区片免费| 亚洲另类春色国产| 国产福利精品一区| 欧美一级欧美一级在线播放| 亚洲日本一区二区| 国产精品123| 欧美一级免费大片| 亚洲一区二区黄色| av一区二区不卡| 久久这里只有精品视频网| 亚洲电影视频在线| 成人18视频在线播放| www国产成人免费观看视频 深夜成人网| 一区二区三区在线影院| 成人免费的视频| 久久久青草青青国产亚洲免观| 天堂va蜜桃一区二区三区 | 日韩一级完整毛片| 亚洲一区二区黄色| 欧亚洲嫩模精品一区三区| 国产精品乱人伦中文| 国产69精品一区二区亚洲孕妇| 日韩欧美色综合网站| 午夜国产不卡在线观看视频| 在线区一区二视频| 国产精品青草综合久久久久99| 国产制服丝袜一区| 精品免费视频.| 麻豆专区一区二区三区四区五区| 欧美日本乱大交xxxxx| 亚洲一区二区中文在线| 91国产福利在线| 亚洲毛片av在线| 色综合一区二区| 国产亲近乱来精品视频| 久久99久久99精品免视看婷婷| 欧美男生操女生| 亚洲香肠在线观看| 色妹子一区二区| 69p69国产精品| 亚洲成a人在线观看| 色香蕉久久蜜桃| 综合精品久久久| 国产激情一区二区三区四区| 国产亚洲成aⅴ人片在线观看| 奇米精品一区二区三区在线观看 | 成人app软件下载大全免费| 91精品国产入口| 蜜臀久久久99精品久久久久久| 欧美色国产精品| 亚洲午夜久久久久| 日本福利一区二区| 亚洲裸体xxx| 在线观看亚洲精品视频| 亚洲一区二区在线观看视频| 在线国产电影不卡| 亚洲在线中文字幕| 91高清在线观看| 国产精品蜜臀在线观看| 日本精品视频一区二区三区| 亚洲理论在线观看| 欧美午夜精品久久久久久孕妇| 亚洲亚洲人成综合网络| 欧美精选一区二区| 一区二区三区四区乱视频| 欧美福利电影网| 麻豆精品视频在线观看视频| 欧美成人精品3d动漫h| 麻豆精品一二三| 久久精品日韩一区二区三区| 成人性视频免费网站| 亚洲欧美综合在线精品| 91片在线免费观看| 麻豆国产一区二区| 久久综合色一综合色88| 国产91精品露脸国语对白| 综合久久给合久久狠狠狠97色 | 欧美日韩精品一区二区在线播放 | 亚洲成人动漫精品| 在线91免费看| 日韩av电影免费观看高清完整版| 久久久蜜桃精品| 99国产精品99久久久久久| 一个色综合网站| 日韩亚洲欧美高清| 久久不见久久见免费视频1| 国产精品高潮呻吟| 欧美性色黄大片手机版| 麻豆成人91精品二区三区| 国产婷婷色一区二区三区在线| 91麻豆精品在线观看| 国产真实精品久久二三区| 国产精品久久午夜夜伦鲁鲁| 欧美日韩小视频| 国产精品一线二线三线| 中文字幕亚洲区| 精品噜噜噜噜久久久久久久久试看| 国产美女一区二区| 亚洲精品国产a久久久久久| 欧美一区二区三区免费视频| 成人性视频免费网站| 日本欧美在线观看| 中文字幕日韩精品一区| 制服丝袜在线91| 波多野结衣视频一区| 亚洲综合一区二区三区| 久久九九久精品国产免费直播| 欧美在线免费观看亚洲| 国产一区二区三区美女| 曰韩精品一区二区| 欧美电影免费提供在线观看| 欧美一a一片一级一片| 国产一区不卡在线| 亚洲一级不卡视频| 久久精品一区二区| 日韩欧美中文一区二区| 91免费国产在线| 国产一区二区三区电影在线观看 | wwwwxxxxx欧美| 欧美视频中文一区二区三区在线观看| 不卡电影一区二区三区| 麻豆国产欧美一区二区三区| 一区二区三区久久久| 国产午夜亚洲精品理论片色戒| 欧美在线观看一区| 91丨porny丨国产入口| 久久激情五月婷婷| 亚洲一二三级电影| 亚洲视频你懂的| 18欧美亚洲精品|