OSDN Git Service

31caf16c391daecb797cf9787f4397a09a97d0f9
[drdeamon64/drdeamon64.git] / include / libedittext.h
1 /*DrDeAmOn64DrDeAmOn64DrDeAmOn64DrDeAmOn64DrDeAmOn64DrDeAmOn64DrDeAmOn64
2
3                          D r . D e a m o n  6 4
4                         for INTEL64(R), AMD64(R)
5         
6    Copyright(C) 2007- Koine Yuusuke(koinec). All rights reserved.
7
8 Redistribution and use in source and binary forms, with or without
9 modification, are permitted provided that the following conditions are met:
10
11  1. Redistributions of source code must retain the above copyright notice,
12     this list of conditions and the following disclaimer.
13  2. Redistributions in binary form must reproduce the above copyright
14     notice, this list of conditions and the following disclaimer in the
15     documentation and/or other materials provided with the distribution.
16
17 THIS SOFTWARE IS PROVIDED BY Koine Yuusuke(koinec) ``AS IS'' AND ANY
18 EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
19 WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
20 DISCLAIMED. IN NO EVENT SHALL Koine Yuusuke(koinec) OR CONTRIBUTORS BE
21 LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
22 CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
23 SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
24 INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
25 CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
26 ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED
27 OF THE POSSIBILITY OF SUCH DAMAGE.
28
29 DrDeAmOn64DrDeAmOn64DrDeAmOn64DrDeAmOn64DrDeAmOn64DrDeAmOn64DrDeAmOn64*/
30
31 /* File Info -----------------------------------------------------------
32 File: drcc.h
33 Function: DrDeamon64 Control Center Header 
34 Comment: 
35 ----------------------------------------------------------------------*/
36
37 #ifndef DRD64_HEADER_LIBEDITTEXT
38 #define DRD64_HEADER_LIBEDITTEXT
39
40 #include"../include/drd64_types.h"
41 #include"../include/drd64_defines.h"
42 #include"../include/drd64_error.h"
43 #include"../include/drd64_conf.h"
44
45 #define LIBEDITTEXT_FLAGFIND_NORMAL                     0x00
46 #define LIBEDITTEXT_FLAGFIND_IGNOREICASE        0x01
47
48 #define LIBEDITTEXT_RET_FINDMATCH                       0x00
49 #define LIBEDITTEXT_RET_FINDMATCH_ROUND         0x01
50 #define LIBEDITTEXT_RET_FINDNOMATCH                     0x02
51
52
53 #ifdef DRD64_SRC_LIBEDITTEXT_SYSTEM
54         #define LIBEDITTEXT_API_SYSTEM
55 #else
56         #define LIBEDITTEXT_API_SYSTEM  extern
57 #endif
58 LIBEDITTEXT_API_SYSTEM int LibEditText_Term( void );
59 LIBEDITTEXT_API_SYSTEM int LibEditText_Init( void );
60
61 #ifdef DRD64_SRC_LIBEDITTEXT_FILE
62         #define LIBEDITTEXT_API_FILE
63 #else
64         #define LIBEDITTEXT_API_FILE    extern
65 #endif
66 LIBEDITTEXT_API_FILE
67     int LibEditText_OpenTextFile( char *pstr_path, char *pstr_filename );
68 LIBEDITTEXT_API_FILE
69     int LibEditText_CreateTextFile( char *pstr_path, char *pstr_filename );
70 LIBEDITTEXT_API_FILE
71     int LibEditText_CloseFile( int i_tinfoid );
72 LIBEDITTEXT_API_FILE
73     int LibEditText_SaveTextFile( char *pstr_path, char *pstr_filename, int i_tinfoid );
74
75 #ifdef DRD64_SRC_LIBEDITTEXT_LINEAPI
76         #define LIBEDITTEXT_API_LINEAPI
77 #else
78         #define LIBEDITTEXT_API_LINEAPI extern
79 #endif
80 LIBEDITTEXT_API_LINEAPI
81         int LibEditText_DeleteLine_toLine( int i_tinfoid, DWord dw_line );
82 LIBEDITTEXT_API_LINEAPI
83         int LibEditText_JoinLine_toLine( int i_tinfoid, DWord dw_line );
84 LIBEDITTEXT_API_LINEAPI
85         int LibEditText_InsertLine_toLine(
86                         int i_tinfoid, DWord dw_line, char *pstr_text, DWord dw_length );
87 LIBEDITTEXT_API_LINEAPI
88         int LibEditText_AppendLastLine( int i_tinfoid, char *pstr_text, DWord dw_length );
89 LIBEDITTEXT_API_LINEAPI
90         int LibEditText_DeleteString_toLine(
91                         int i_tinfoid, DWord dw_line, DWord dw_pos, DWord dw_len );
92 LIBEDITTEXT_API_LINEAPI
93         int LibEditText_BackSpace_toLine( int i_tinfoid, DWord dw_line, DWord dw_pos );
94 LIBEDITTEXT_API_LINEAPI
95         int LibEditText_InsertChar_toLine(
96                         int i_tinfoid, DWord dw_line, DWord dw_pos, Byte b_char );
97 LIBEDITTEXT_API_LINEAPI
98         int LibEditText_InsertString_toLine(
99                         int i_tinfoid, DWord dw_line, DWord dw_pos, char *pstr_string );
100
101 #ifdef DRD64_SRC_LIBEDITTEXT_CURSORAPI_INFO
102         #define LIBEDITTEXT_API_CURSORAPI_INFO
103 #else
104         #define LIBEDITTEXT_API_CURSORAPI_INFO  extern
105 #endif
106
107 LIBEDITTEXT_API_CURSORAPI_INFO
108         int LibEditText_GetCursorPosition(
109                         int i_tinfoid, int i_curid, DWord *pdw_curline, DWord *pdw_curpos );
110 LIBEDITTEXT_API_CURSORAPI_INFO
111         DWord LibEditText_GetMaxLines( int i_tinfoid ); 
112 LIBEDITTEXT_API_CURSORAPI_INFO
113         const char *LibEditText_GetCursorRangeNextString( int i_tinfoid, int i_curid, DWord *pdw_len );
114 LIBEDITTEXT_API_CURSORAPI_INFO
115         const char * LibEditText_GetCursorRangeString( int i_tinfoid, int i_curid, DWord *pdw_len );
116 LIBEDITTEXT_API_CURSORAPI_INFO
117         const char *LibEditText_GetCursorEndString( int i_tinfoid, int i_curid, DWord *pdw_len );
118 LIBEDITTEXT_API_CURSORAPI_INFO
119         const char *LibEditText_GetCursorStartString( int i_tinfoid, int i_curid, DWord *pdw_len );
120 LIBEDITTEXT_API_CURSORAPI_INFO
121         const char *LibEditText_GetCursorLineString( int i_tinfoid, int i_curid, DWord *pdw_len  );
122 LIBEDITTEXT_API_CURSORAPI_INFO
123         int LibEditText_AllocCursor( int i_tinfid, DWord dw_ranges );
124 LIBEDITTEXT_API_CURSORAPI_INFO
125         int LibEditText_FreeCursor( int i_tinfid, int i_curid );
126
127 #ifdef DRD64_SRC_LIBEDITTEXT_CURSORAPI_EDIT
128         #define LIBEDITTEXT_API_CURSORAPI_EDIT
129 #else
130         #define LIBEDITTEXT_API_CURSORAPI_EDIT  extern
131 #endif
132
133 LIBEDITTEXT_API_CURSORAPI_EDIT
134         int LibEditText_InsertString( int i_tinfoid, int i_curid, char *pstr_data, DWord dw_size );
135 LIBEDITTEXT_API_CURSORAPI_EDIT
136         int LibEditText_InsertChar( int i_tinfoid, int i_curid, char c_char );
137 LIBEDITTEXT_API_CURSORAPI_EDIT
138         int LibEditText_InsertLine( int i_tinfoid, int i_curid );
139 LIBEDITTEXT_API_CURSORAPI_EDIT
140         int LibEditText_AppendLine( int i_tinfoid, int i_curid );
141 LIBEDITTEXT_API_CURSORAPI_EDIT
142         int LibEditText_BackSpace( int i_tinfoid, int i_curid );
143 LIBEDITTEXT_API_CURSORAPI_EDIT
144         int LibEditText_DeleteString( int i_tinfoid, int i_curid, DWord dw_size );
145 LIBEDITTEXT_API_CURSORAPI_EDIT
146         int LibEditText_DeleteChar( int i_tinfoid, int i_curid );
147 LIBEDITTEXT_API_CURSORAPI_EDIT
148         int LibEditText_DeleteLine( int i_tinfoid, int i_curid );
149 LIBEDITTEXT_API_CURSORAPI_EDIT
150         int LibEditText_JoinLine( int i_tinfoid, int i_curid );
151
152 #ifdef DRD64_SRC_LIBEDITTEXT_CURSORAPI_MOVE
153         #define LIBEDITTEXT_API_CURSORAPI_MOVE
154 #else
155         #define LIBEDITTEXT_API_CURSORAPI_MOVE  extern
156 #endif
157
158 #define LibEditText_ForwardCursor(m,n)  LibEditText_MoveRightCursor((m),(n),1)
159 #define LibEditText_BackCursor(m,n)             LibEditText_MoveLeftCursor((m),(n),1)
160 #define LibEditText_UpCursor(m,n)               LibEditText_MoveUpCursor((m),(n),1)
161 #define LibEditText_DownCursor(m,n)             LibEditText_MoveDownCursor((m),(n),1)
162
163 LIBEDITTEXT_API_CURSORAPI_MOVE
164         int LibEditText_SetCursor( int i_tinfoid, int i_curid, DWord dw_pos );
165 LIBEDITTEXT_API_CURSORAPI_MOVE
166         int LibEditText_MoveEndCursor( int i_tinfoid, int i_curid );
167 LIBEDITTEXT_API_CURSORAPI_MOVE
168         int LibEditText_MoveStartCursor( int i_tinfoid, int i_curid );
169 LIBEDITTEXT_API_CURSORAPI_MOVE
170         int LibEditText_MoveUpCursor( int i_tinfoid, int i_curid, DWord dw_lines );
171 LIBEDITTEXT_API_CURSORAPI_MOVE
172         int LibEditText_MoveDownCursor( int i_tinfoid, int i_curid, DWord dw_lines );
173 LIBEDITTEXT_API_CURSORAPI_MOVE
174         int LibEditText_MoveRightCursor( int i_tinfoid, int i_curid, DWord dw_len );
175 LIBEDITTEXT_API_CURSORAPI_MOVE
176         int LibEditText_MoveLeftCursor( int i_tinfoid, int i_curid, DWord dw_len );
177 LIBEDITTEXT_API_CURSORAPI_MOVE
178         int LibEditText_JumpCursor( int i_tinfoid, int i_curid, DWord dw_line );
179
180 #ifdef DRD64_SRC_LIBEDITTEXT_CURSORAPI_FIND
181         #define LIBEDITTEXT_API_CURSORAPI_FIND
182 #else
183         #define LIBEDITTEXT_API_CURSORAPI_FIND  extern
184 #endif
185 LIBEDITTEXT_API_CURSORAPI_FIND
186         int LibEditText_FindString(
187                         int i_tinfoid, int i_curid, char *pstr_regex, DWord dw_regexlen, DWord *pdw_len );
188 LIBEDITTEXT_API_CURSORAPI_FIND
189         int LibEditText_FindNextString( int i_tinfoid, int i_curid, DWord *pdw_len );
190
191
192 #ifdef DRD64_SRC_LIBEDITTEXT_UNDOEDIT
193         #define LIBEDITTEXT_API_UNDOEDIT
194 #else
195         #define LIBEDITTEXT_API_UNDOEDIT        extern
196 #endif
197 LIBEDITTEXT_API_UNDOEDIT
198         int LibEditText_ExecRedo( int i_tinfoid );
199 LIBEDITTEXT_API_UNDOEDIT
200         int LibEditText_ExecUndo( int i_tinfoid );
201
202
203 #endif  /* DRD64_HEADER_DRCC_INCLUDE */
204
205
206 /* EOF of drd64_.h ----------------------------------- */