curs_scr_dump.3x.html 6.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138
  1. <!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN">
  2. <!--
  3. ****************************************************************************
  4. * Copyright (c) 1998-2005,2006 Free Software Foundation, Inc. *
  5. * *
  6. * Permission is hereby granted, free of charge, to any person obtaining a *
  7. * copy of this software and associated documentation files (the *
  8. * "Software"), to deal in the Software without restriction, including *
  9. * without limitation the rights to use, copy, modify, merge, publish, *
  10. * distribute, distribute with modifications, sublicense, and/or sell *
  11. * copies of the Software, and to permit persons to whom the Software is *
  12. * furnished to do so, subject to the following conditions: *
  13. * *
  14. * The above copyright notice and this permission notice shall be included *
  15. * in all copies or substantial portions of the Software. *
  16. * *
  17. * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS *
  18. * OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF *
  19. * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. *
  20. * IN NO EVENT SHALL THE ABOVE COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, *
  21. * DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR *
  22. * OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR *
  23. * THE USE OR OTHER DEALINGS IN THE SOFTWARE. *
  24. * *
  25. * Except as contained in this notice, the name(s) of the above copyright *
  26. * holders shall not be used in advertising or otherwise to promote the *
  27. * sale, use or other dealings in this Software without prior written *
  28. * authorization. *
  29. ****************************************************************************
  30. * @Id: curs_scr_dump.3x,v 1.7 2006/12/24 16:05:49 tom Exp @
  31. -->
  32. <HTML>
  33. <HEAD>
  34. <TITLE>curs_scr_dump 3x</TITLE>
  35. <link rev=made href="mailto:bug-ncurses@gnu.org">
  36. <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
  37. </HEAD>
  38. <BODY>
  39. <H1>curs_scr_dump 3x</H1>
  40. <HR>
  41. <PRE>
  42. <!-- Manpage converted by man2html 3.0.1 -->
  43. <STRONG><A HREF="curs_scr_dump.3x.html">curs_scr_dump(3x)</A></STRONG> <STRONG><A HREF="curs_scr_dump.3x.html">curs_scr_dump(3x)</A></STRONG>
  44. </PRE>
  45. <H2>NAME</H2><PRE>
  46. <STRONG>scr_dump</STRONG>, <STRONG>scr_restore</STRONG>, <STRONG>scr_init</STRONG>, <STRONG>scr_set</STRONG> - read (write) a
  47. <STRONG>curses</STRONG> screen from (to) a file
  48. </PRE>
  49. <H2>SYNOPSIS</H2><PRE>
  50. <STRONG>#include</STRONG> <STRONG>&lt;curses.h&gt;</STRONG>
  51. <STRONG>int</STRONG> <STRONG>scr_dump(const</STRONG> <STRONG>char</STRONG> <STRONG>*filename);</STRONG>
  52. <STRONG>int</STRONG> <STRONG>scr_restore(const</STRONG> <STRONG>char</STRONG> <STRONG>*filename);</STRONG>
  53. <STRONG>int</STRONG> <STRONG>scr_init(const</STRONG> <STRONG>char</STRONG> <STRONG>*filename);</STRONG>
  54. <STRONG>int</STRONG> <STRONG>scr_set(const</STRONG> <STRONG>char</STRONG> <STRONG>*filename);</STRONG>
  55. </PRE>
  56. <H2>DESCRIPTION</H2><PRE>
  57. The <STRONG>scr_dump</STRONG> routine dumps the current contents of the
  58. virtual screen to the file <EM>filename</EM>.
  59. The <STRONG>scr_restore</STRONG> routine sets the virtual screen to the
  60. contents of <EM>filename</EM>, which must have been written using
  61. <STRONG>scr_dump</STRONG>. The next call to <STRONG>doupdate</STRONG> restores the screen
  62. to the way it looked in the dump file.
  63. The <STRONG>scr_init</STRONG> routine reads in the contents of <EM>filename</EM> and
  64. uses them to initialize the <STRONG>curses</STRONG> data structures about
  65. what the terminal currently has on its screen. If the da-
  66. ta is determined to be valid, <STRONG>curses</STRONG> bases its next update
  67. of the screen on this information rather than clearing the
  68. screen and starting from scratch. <STRONG>scr_init</STRONG> is used after
  69. <STRONG>initscr</STRONG> or a <STRONG>system</STRONG> call to share the screen with another
  70. process which has done a <STRONG>scr_dump</STRONG> after its <STRONG>endwin</STRONG> call.
  71. The data is declared invalid if the terminfo capabilities
  72. <STRONG>rmcup</STRONG> and <STRONG>nrrmc</STRONG> exist; also if the terminal has been writ-
  73. ten to since the preceding <STRONG>scr_dump</STRONG> call.
  74. The <STRONG>scr_set</STRONG> routine is a combination of <STRONG>scr_restore</STRONG> and
  75. <STRONG>scr_init</STRONG>. It tells the program that the information in
  76. <EM>filename</EM> is what is currently on the screen, and also what
  77. the program wants on the screen. This can be thought of
  78. as a screen inheritance function.
  79. To read (write) a window from (to) a file, use the <STRONG>getwin</STRONG>
  80. and <STRONG>putwin</STRONG> routines [see <STRONG><A HREF="curs_util.3x.html">curs_util(3x)</A></STRONG>].
  81. </PRE>
  82. <H2>RETURN VALUE</H2><PRE>
  83. All routines return the integer <STRONG>ERR</STRONG> upon failure and <STRONG>OK</STRONG>
  84. upon success.
  85. X/Open defines no error conditions. In this implementa-
  86. tion, each will return an error if the file cannot be
  87. opened.
  88. </PRE>
  89. <H2>NOTES</H2><PRE>
  90. Note that <STRONG>scr_init</STRONG>, <STRONG>scr_set</STRONG>, and <STRONG>scr_restore</STRONG> may be
  91. macros.
  92. </PRE>
  93. <H2>PORTABILITY</H2><PRE>
  94. The XSI Curses standard, Issue 4, describes these func-
  95. tions (adding the const qualifiers).
  96. The SVr4 docs merely say under <STRONG>scr_init</STRONG> that the dump data
  97. is also considered invalid "if the time-stamp of the tty
  98. is old" but do not define "old".
  99. </PRE>
  100. <H2>SEE ALSO</H2><PRE>
  101. <STRONG><A HREF="ncurses.3x.html">curses(3x)</A></STRONG>, <STRONG><A HREF="curs_initscr.3x.html">curs_initscr(3x)</A></STRONG>, <STRONG><A HREF="curs_refresh.3x.html">curs_refresh(3x)</A></STRONG>,
  102. <STRONG><A HREF="curs_util.3x.html">curs_util(3x)</A></STRONG>, <STRONG><A HREF="system.3.html">system(3)</A></STRONG>
  103. <STRONG><A HREF="curs_scr_dump.3x.html">curs_scr_dump(3x)</A></STRONG>
  104. </PRE>
  105. <HR>
  106. <ADDRESS>
  107. Man(1) output converted with
  108. <a href="http://www.oac.uci.edu/indiv/ehood/man2html.html">man2html</a>
  109. </ADDRESS>
  110. </BODY>
  111. </HTML>