File: core_8h-source.html

package info (click to toggle)
iterm 0.5-3.2
  • links: PTS
  • area: main
  • in suites: sarge
  • size: 3,208 kB
  • ctags: 1,934
  • sloc: sh: 12,139; ansic: 11,446; makefile: 240
file content (120 lines) | stat: -rw-r--r-- 10,383 bytes parent folder | download | duplicates (3)
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> &nbsp; <a class="qindex" href="annotated.html">Data Structures</a> &nbsp; <a class="qindex" href="files.html">File List</a> &nbsp; <a class="qindex" href="functions.html">Data Fields</a> &nbsp; <a class="qindex" href="globals.html">Globals</a> &nbsp; <a class="qindex" href="pages.html">Related Pages</a> &nbsp; </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 &lt;stdio.h&gt;</span>
00024 <span class="preprocessor">#include &lt;wchar.h&gt;</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>