1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120
|
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
<title>core.h Source File</title>
<link href="doxygen.css" rel="stylesheet" type="text/css">
</head><body>
<!-- Generated by Doxygen 1.3-rc2 -->
<center>
<a class="qindex" href="index.html">Main Page</a> <a class="qindex" href="annotated.html">Data Structures</a> <a class="qindex" href="files.html">File List</a> <a class="qindex" href="functions.html">Data Fields</a> <a class="qindex" href="globals.html">Globals</a> <a class="qindex" href="pages.html">Related Pages</a> </center>
<hr><h1>core.h</h1><a href="core_8h.html">Go to the documentation of this file.</a><div class="fragment"><pre>00001 <span class="comment">/* This software is subject to the terms of the Common Public License</span>
00002 <span class="comment"> You must accept the terms of this license to use this software.</span>
00003 <span class="comment"></span>
00004 <span class="comment"> Copyright (C) 2002, International Business Machines Corporation</span>
00005 <span class="comment"> and others. All Rights Reserved.</span>
00006 <span class="comment"></span>
00007 <span class="comment"> Further information about Common Public License Version 0.5 is obtained</span>
00008 <span class="comment"> from url http://oss.software.ibm.com/developer/opensource/license-cpl.html</span>
00009 <span class="comment">*/</span>
00021 <span class="preprocessor">#ifndef __VTCORE_H__</span>
00022 <span class="preprocessor"></span><span class="preprocessor">#define __VTCORE_H__</span>
00023 <span class="preprocessor"></span><span class="preprocessor">#include <stdio.h></span>
00024 <span class="preprocessor">#include <wchar.h></span>
00025 <span class="preprocessor">#include "<a class="code" href="io_8h.html">io.h</a>"</span>
00026 <span class="preprocessor">#include "<a class="code" href="screen_8h.html">screen.h</a>"</span>
00027
00028 <span class="keyword">enum</span> {
00029 <a class="code" href="core_8h.html#a64a1">VTM_SHIFT</a> = 0x0004,
00030 <a class="code" href="core_8h.html#a64a2">VTM_META</a> = 0x0008,
00031 <a class="code" href="core_8h.html#a64a3">VTM_CONTROL</a> = 0x0010,
00032 <a class="code" href="core_8h.html#a64a4">VTK_LEFT</a> = 0xFF51,
00033 <a class="code" href="core_8h.html#a64a5">VTK_UP</a> = 0xFF52,
00034 <a class="code" href="core_8h.html#a64a6">VTK_RIGHT</a> = 0xFF53,
00035 <a class="code" href="core_8h.html#a64a7">VTK_DOWN</a> = 0xFF54,
00037 <a class="code" href="core_8h.html#a64a8">VTK_CR</a> = 0xFF0D,
00039 <a class="code" href="core_8h.html#a64a9">VTK_KP_0</a> = 0xFF00,
00040 <a class="code" href="core_8h.html#a64a10">VTK_KP_1</a> = 0xFF01,
00041 <a class="code" href="core_8h.html#a64a11">VTK_KP_2</a> = 0xFF02,
00042 <a class="code" href="core_8h.html#a64a12">VTK_KP_3</a> = 0xFF03,
00043 <a class="code" href="core_8h.html#a64a13">VTK_KP_4</a> = 0xFF04,
00044 <a class="code" href="core_8h.html#a64a14">VTK_KP_5</a> = 0xFF05,
00045 <a class="code" href="core_8h.html#a64a15">VTK_KP_6</a> = 0xFF06,
00046 <a class="code" href="core_8h.html#a64a16">VTK_KP_7</a> = 0xFF07,
00047 <a class="code" href="core_8h.html#a64a17">VTK_KP_8</a> = 0xFF08,
00048 <a class="code" href="core_8h.html#a64a18">VTK_KP_9</a> = 0xFF09,
00050 <a class="code" href="core_8h.html#a64a19">VTK_KP_DASH</a> = 0xFF0A,
00051 <a class="code" href="core_8h.html#a64a20">VTK_KP_COMMA</a> = 0xFF0B,
00052 <a class="code" href="core_8h.html#a64a21">VTK_KP_PERIOD</a> = 0xFF0C,
00053 <a class="code" href="core_8h.html#a64a22">VTK_KP_ENTER</a> = 0xFF0D,
00055 <a class="code" href="core_8h.html#a64a23">VTK_KP_PF1</a> = 0xFF0E,
00056 <a class="code" href="core_8h.html#a64a24">VTK_KP_PF2</a> = 0xFF0F,
00057 <a class="code" href="core_8h.html#a64a25">VTK_KP_PF3</a> = 0xFF10,
00058 <a class="code" href="core_8h.html#a64a26">VTK_KP_PF4</a> = 0xFF11,
00060 <a class="code" href="core_8h.html#a64a27">VTK_F1</a> = 0x1000,
00061 <a class="code" href="core_8h.html#a64a28">VTK_F2</a> = 0x1001,
00062 <a class="code" href="core_8h.html#a64a29">VTK_F3</a> = 0x1002,
00063 <a class="code" href="core_8h.html#a64a30">VTK_F4</a> = 0x1003,
00064 <a class="code" href="core_8h.html#a64a31">VTK_F5</a> = 0x1004,
00065 <a class="code" href="core_8h.html#a64a32">VTK_F6</a> = 0x1005,
00066 <a class="code" href="core_8h.html#a64a33">VTK_F7</a> = 0x1006,
00067 <a class="code" href="core_8h.html#a64a34">VTK_F8</a> = 0x1007,
00068 <a class="code" href="core_8h.html#a64a35">VTK_F9</a> = 0x1008,
00069 <a class="code" href="core_8h.html#a64a36">VTK_F10</a> = 0x1009,
00070 <a class="code" href="core_8h.html#a64a37">VTK_F11</a> = 0x1010,
00071 <a class="code" href="core_8h.html#a64a38">VTK_F12</a> = 0x1011,
00072 <a class="code" href="core_8h.html#a64a39">VTK_F13</a> = 0x1012,
00073 <a class="code" href="core_8h.html#a64a40">VTK_F14</a> = 0x1013,
00074 <a class="code" href="core_8h.html#a64a41">VTK_F15</a> = 0x1014,
00075 <a class="code" href="core_8h.html#a64a42">VTK_F16</a> = 0x1015,
00076 <a class="code" href="core_8h.html#a64a43">VTK_F17</a> = 0x1016,
00077 <a class="code" href="core_8h.html#a64a44">VTK_F18</a> = 0x1017
00078 };
00079
00080
00081 <span class="keyword">struct </span>_VTScreen;
00082 <span class="keyword">struct </span>_VT100;
00089 <span class="keyword">typedef</span> <span class="keyword">struct </span>_VTCore
00090 {
00091 <span class="keyword">struct </span>_VTScreen *screen;
00093 TerminalIO *host_io;
00095 <span class="keyword">struct </span>_VT100 *vt100;
00098 <span class="keywordtype">unsigned</span> <span class="keywordtype">char</span> buffer[BUFSIZ];
00101 <span class="keywordtype">int</span> remain;
00104 mbstate_t ps;
00107 <span class="keywordtype">char</span> **cursor;
00109 void (*exit_callback)(<a class="code" href="struct__VTScreenView.html">VTScreenView</a> *view);
00112 } VTCore ;
00115 VTCore *VTCore_new(TerminalIO *io, <span class="keywordtype">int</span> num_cols, <span class="keywordtype">int</span> num_rows,
00116 <span class="keywordtype">int</span> num_history);
00117
00118 <span class="keywordtype">void</span> VTCore_destroy(VTCore *core);
00119 <span class="keywordtype">int</span> VTCore_write(<span class="keyword">struct</span> _VTCore *core, <span class="keywordtype">char</span> *mb, <span class="keywordtype">int</span> length);
00120 <span class="keywordtype">int</span> VTCore_send_key(VTCore *core, <span class="keywordtype">int</span> type);
00121 <span class="keywordtype">void</span> VTCore_redraw(VTCore *core, <span class="keywordtype">int</span> scol, <span class="keywordtype">int</span> srow,<span class="keywordtype">int</span> ecol, <span class="keywordtype">int</span> erow);
00122 <span class="keywordtype">void</span> VTCore_set_screen_view(VTCore *core, <a class="code" href="struct__VTScreenView.html">VTScreenView</a> *view);
00123 <span class="keywordtype">void</span> VTCore_set_screen_size(VTCore *core, <span class="keywordtype">int</span> width, <span class="keywordtype">int</span> height);
00124 <span class="keywordtype">void</span> VTCore_start_selection(VTCore *core, <span class="keywordtype">int</span> scol, <span class="keywordtype">int</span> srow, <span class="keywordtype">int</span> type);
00125 <span class="keywordtype">void</span> VTCore_extend_selection(VTCore *core, <span class="keywordtype">int</span> scol, <span class="keywordtype">int</span> srow);
00126 <span class="keywordtype">void</span> VTCore_copy_buffer(VTCore *core, <span class="keywordtype">int</span> scol, <span class="keywordtype">int</span> srow,
00127 <span class="keywordtype">int</span> ecol, <span class="keywordtype">int</span> erow, <span class="keywordtype">char</span> *dest, <span class="keywordtype">int</span> dest_size);
00128 <span class="keywordtype">void</span> VTCore_copy_selected_buffer(VTCore *core, <span class="keywordtype">char</span> *dest, <span class="keywordtype">int</span> dest_size);
00129 <span class="keywordtype">void</span> VTCore_clear_selection(VTCore *core);
00130 <span class="keywordtype">void</span> VTCore_scroll(VTCore *core, <span class="keywordtype">double</span> top);
00131 <span class="keywordtype">void</span> VTCore_set_exit_callback(VTCore *core, <span class="keywordtype">void</span> (*proc)(<a class="code" href="struct__VTScreenView.html">VTScreenView</a> *view));
00132 <span class="keywordtype">void</span> VTCore_set_reverse_video(VTCore *core, <span class="keywordtype">int</span> on);
00133 <span class="keywordtype">void</span> VTCore_scroll_up(VTCore *core, <span class="keywordtype">int</span> num_line);
00134 <span class="keywordtype">void</span> VTCore_scroll_down(VTCore *core, <span class="keywordtype">int</span> num_line);
00135 <span class="keywordtype">int</span> VTCore_send_mouse_position(VTCore *core, <span class="keywordtype">int</span> button, <span class="keywordtype">int</span> modifiers,
00136 <span class="keywordtype">int</span> pressed, <span class="keywordtype">int</span> col, <span class="keywordtype">int</span> row);
00137 <span class="keywordtype">void</span> VTCore_dispatch(VTCore *core);
00138 <span class="preprocessor">#ifdef BIDI</span>
00139 <span class="preprocessor"></span><span class="keywordtype">void</span> VTCore_set_direction(VTCore *core, <span class="keywordtype">int</span> dir);
00140 <span class="keywordtype">int</span> VTCore_is_direction_LTR(VTCore *core);
00141 <span class="preprocessor">#endif</span>
00142 <span class="preprocessor"></span><span class="preprocessor">#endif</span>
00143 <span class="preprocessor"></span>
</pre></div><hr><address style="align: right;"><small>Generated on Sun Dec 29 16:55:32 2002 by
<a href="http://www.doxygen.org/index.html">
<img src="doxygen.png" alt="doxygen" align="middle" border=0
width=110 height=53></a>1.3-rc2 </small></address>
</body>
</html>
|