scr_dump , scr_init , scr_restore , scr_set 子例程

用途

文件输入/输出函数。

Curses 库 (libcurses.a)

语法

#include <curses.h>

int scr_dump
(const char *filename);

int scr_init
(const char *filename);

int scr_restore
(const char *filename);

int scr_set
(const char *filename);

描述

scr_dump 子例程将虚拟屏幕的当前内容以未指定的格式写入由 filename 指定的文件。

scr_restore 子例程将虚拟屏幕设置为 filename指定的文件的内容,该文件必须是使用 scr_dump 子例程编写的。 下一个刷新操作将屏幕恢复到它在转储文件中的查看方式。

scr_init 子例程读取由 filename 指定的文件的内容,并使用这些内容将 Curses 数据结构初始化为终端当前在其屏幕上的内容。 下一个刷新操作将此信息的任何更新作为基础,除非满足以下任一条件:

  • 自从将虚拟屏幕转储到 filename之后,已写入终端。
  • 针对当前终端定义了 terminfo 功能 rmcup 和 nrrmc。

scr_set 子例程是 scr_restorescr_init 子例程的组合。 它告诉程序,文件名命名的信息 i 是屏幕上当前的内容,也是程序在屏幕上想要的内容。 这可以被认为是屏幕继承函数。

参数

描述
filename  

返回值

成功完成后,这些子例程将返回 "正常"。 否则,将返回 ERR。

示例

对于 scr_dump 子例程:

要将虚拟屏幕的内容写入/tmp/virtual.dump文件,使用:

scr_dump("/tmp/virtual.dump");

对于 scr_restrore 子例程:

要从虚拟屏幕中恢复虚拟屏幕的内容,请执行以下操作:/tmp/virtual.dump文件并更新终端屏幕,使用:

scr_restore("/tmp/virtual.dump");
doupdate();