⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 options.c

📁 该程序是C语言编写的
💻 C
字号:
/****************************************************************/
/* Idlok(), clearok(), leaveok(), scrollok(), nodelay(), key-	*/
/* pad(), meta(), cursoff() and curson() routines of the	*/
/* PCcurses package.						*/
/*								*/
/****************************************************************/
/* This version of curses is based on ncurses, a curses version	*/
/* originally written by Pavel Curtis at Cornell University.	*/
/* I have made substantial changes to make it run on IBM PC's,	*/
/* and therefore consider myself free to make it public domain.	*/
/*				Bjorn Larsson (bl@infovox.se)	*/
/****************************************************************/
/* 1.4:  Use of short wherever possible. Portability		*/
/*	 improvements:					900114	*/
/* 1.3:	 MSC -W3, Turbo'C' -w -w-pro checkes:		881005	*/
/* 1.2:	 Rcsid[] string for maintenance:		881002	*/
/* 1.0:	 Release:					870515	*/
/****************************************************************/

#include <curses.h>
#include <curspriv.h>

char _curses_options_rcsid[] = "@(#)option.c     v.1.4  - 900114";

static bool	hasold = FALSE;		/* for remembering old cursor type */
static int	oldmode;

/****************************************************************/
/* Idlok() is used to set  flag for using the terminal insert/	*/
/* delete line capabilities. This is not relevant for the PC	*/
/* version of curses, and thus nothing is done.			*/
/****************************************************************/

void idlok()
  {
  } /* idlok */

/****************************************************************/
/* Clearok() marks window 'win' to cause screen clearing and	*/
/* redraw the next time a refresh is done.			*/
/****************************************************************/

void clearok(win, flag)
  WINDOW	*win;
  bool		 flag;
  {
  if (win == curscr)
    _cursvar.tmpwin->_clear = flag;
  else
    win->_clear = flag;
  } /* clearok */

/****************************************************************/
/* Leaveok() marks window 'win' to allow the update routines	*/
/* to leave the hardware cursor where it happens to be at the	*/
/* end of update. Usually used in combination with cursoff().	*/
/****************************************************************/

void leaveok(win, flag)
  WINDOW	*win;
  bool		 flag;
  {
  win->_leave = flag;
  } /* leaveok */

/****************************************************************/
/* Scrollok() marks window 'win' to allow the scrolling region	*/
/* of it to actually scroll.					*/
/****************************************************************/

void scrollok(win, flag)
  WINDOW	*win;
  bool		 flag;
  {
  win->_scroll = flag;
  } /* scrollok */

/****************************************************************/
/* Nodelay() marks the window to make character input non-	*/
/* waiting, i.e. if there is no character to get, -1 will be	*/
/* returned.							*/
/****************************************************************/

void nodelay(win, flag)
  WINDOW	*win;
  bool		 flag;
  {
  win->_nodelay = flag;
  } /* nodelay */

/****************************************************************/
/* Keypad() marks window 'win' to use the special keypad mode.	*/
/****************************************************************/

void keypad(win, flag)
  WINDOW	*win;
  bool		 flag;
  {
  win->_keypad = flag;
  } /* keypad */

/****************************************************************/
/* Meta() allows use of any alternate character set allowed by	*/
/* the terminal. We always allow this on the PC, so this one	*/
/* does nothing.						*/
/****************************************************************/

void meta()
  {
  } /* meta */

/****************************************************************/
/* Cursoff() turns off the hardware cursor.			*/
/****************************************************************/

void cursoff()
  {
  if (!hasold)
    {
    oldmode = _cursesgcmode();		/* get old cursor type */
    hasold = TRUE;
    }
  _cursescmode(31,30);			/* turn it off */
  } /* cursoff */

/****************************************************************/
/* Curson() turns on the hardware cursor.			*/
/****************************************************************/

void curson()
  {
  if (hasold)
    {
    _cursescmode(oldmode >> 8,oldmode);
    hasold = FALSE;
    }
  } /* curson */

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -