LIBEDITTEXT_API_FILE
int LibEditText_SaveTextFile( char *pstr_path, char *pstr_filename, int i_tinfoid );
-#ifdef DRD64_SRC_LIBEDITTEXT_LINECTRL
- #define LIBEDITTEXT_API_LINECTRL
+#ifdef DRD64_SRC_LIBEDITTEXT_LINEAPI
+ #define LIBEDITTEXT_API_LINEAPI
#else
- #define LIBEDITTEXT_API_LINECTRL extern
+ #define LIBEDITTEXT_API_LINEAPI extern
#endif
-LIBEDITTEXT_API_LINECTRL
+LIBEDITTEXT_API_LINEAPI
int LibEditText_DeleteLine_toLine( int i_tinfoid, DWord dw_line );
-LIBEDITTEXT_API_LINECTRL
+LIBEDITTEXT_API_LINEAPI
int LibEditText_JoinLine_toLine( int i_tinfoid, DWord dw_line );
-LIBEDITTEXT_API_LINECTRL
+LIBEDITTEXT_API_LINEAPI
int LibEditText_InsertLine_toLine(
int i_tinfoid, DWord dw_line, char *pstr_text, DWord dw_length );
-LIBEDITTEXT_API_LINECTRL
+LIBEDITTEXT_API_LINEAPI
int LibEditText_AppendLine( int i_tinfoid, char *pstr_text, DWord dw_length );
#ifdef DRD64_SRC_LIBEDITTEXT_LINEEDIT
drd64_libedittext_lineinfo.o \
drd64_libedittext_linectrl.o \
drd64_libedittext_lineedit.o \
+ drd64_libedittext_lineapi.o \
drd64_libedittext_section.o \
drd64_libedittext_cursorinfo.o \
drd64_libedittext_cursorctrl.o \
drd64_libedittext_lineedit.o: drd64_libedittext_lineedit.c $(HEADER)
$(CC) -c -o drd64_libedittext_lineedit.o $(FLAGS_DEBUG) $(FLAGS_COMPILE) \
drd64_libedittext_lineedit.c
+drd64_libedittext_lineapi.o: drd64_libedittext_lineapi.c $(HEADER)
+ $(CC) -c -o drd64_libedittext_lineapi.o $(FLAGS_DEBUG) $(FLAGS_COMPILE) \
+ drd64_libedittext_lineapi.c
drd64_libedittext_file.o: drd64_libedittext_file.c $(HEADER)
$(CC) -c -o drd64_libedittext_file.o $(FLAGS_DEBUG) $(FLAGS_COMPILE) \
drd64_libedittext_file.c
#define DRD64_SRC_LIBEDITTEXT_SYSTEM_SRCID 0x01
#define DRD64_SRC_LIBEDITTEXT_FILE_SRCID 0x02
-#define DRD64_SRC_LIBEDITTEXT_LINEINFO_SRCID 0x03
-#define DRD64_SRC_LIBEDITTEXT_LINECTRL_SRCID 0x04
-#define DRD64_SRC_LIBEDITTEXT_LINEEDIT_SRCID 0x05
-#define DRD64_SRC_LIBEDITTEXT_SECTION_SRCID 0x06
-#define DRD64_SRC_LIBEDITTEXT_CURSORINFO_SRCID 0x07
-#define DRD64_SRC_LIBEDITTEXT_CURSORAPI_SRCID 0x08
-#define DRD64_SRC_LIBEDITTEXT_CURSORCTRL_SRCID 0x09
-#define DRD64_SRC_LIBEDITTEXT_CURSORMOVE_SRCID 0x0a
+#define DRD64_SRC_LIBEDITTEXT_LINEINFO_SRCID 0x11
+#define DRD64_SRC_LIBEDITTEXT_LINECTRL_SRCID 0x12
+#define DRD64_SRC_LIBEDITTEXT_LINEEDIT_SRCID 0x13
+#define DRD64_SRC_LIBEDITTEXT_LINEAPI_SRCID 0x19
+#define DRD64_SRC_LIBEDITTEXT_SECTION_SRCID 0x20
+#define DRD64_SRC_LIBEDITTEXT_CURSORINFO_SRCID 0x31
+#define DRD64_SRC_LIBEDITTEXT_CURSORCTRL_SRCID 0x32
+#define DRD64_SRC_LIBEDITTEXT_CURSORMOVE_SRCID 0x33
+#define DRD64_SRC_LIBEDITTEXT_CURSORAPI_SRCID 0x39
#endif /* DRD64_HEADER_DRCC_INCLUDE */
}
}
+ // Cursor Horizon-Postion Adjust ---
+ p_line = LINFO(p_tinfo, p_cursor->dw_lineid);
+ assert( NULL != p_line );
+
+ p_cursor->dw_pos = ((p_cursor->dw_pos < p_line->dw_strlen)
+ ? p_cursor->dw_pos : p_line->dw_strlen );
+
return 0x00;
}
}
}
+ // Cursor Horizon-Postion Adjust ---
+ p_line = LINFO(p_tinfo, p_cursor->dw_lineid);
+ assert( NULL != p_line );
+
+ p_cursor->dw_pos = ((p_cursor->dw_pos < p_line->dw_strlen)
+ ? p_cursor->dw_pos : p_line->dw_strlen );
+
return 0x00;
}
--- /dev/null
+/*DrDeAmOn64DrDeAmOn64DrDeAmOn64DrDeAmOn64DrDeAmOn64DrDeAmOn64DrDeAmOn64
+
+ D r . D e a m o n 6 4
+ for INTEL64(R), AMD64(R)
+
+ Copyright(C) 2007-2009 Koine Yuusuke(koinec). All rights reserved.
+
+Redistribution and use in source and binary forms, with or without
+modification, are permitted provided that the following conditions are met:
+
+ 1. Redistributions of source code must retain the above copyright notice,
+ this list of conditions and the following disclaimer.
+ 2. Redistributions in binary form must reproduce the above copyright
+ notice, this list of conditions and the following disclaimer in the
+ documentation and/or other materials provided with the distribution.
+
+THIS SOFTWARE IS PROVIDED BY Koine Yuusuke(koinec) ``AS IS'' AND ANY
+EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
+WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
+DISCLAIMED. IN NO EVENT SHALL Koine Yuusuke(koinec) OR CONTRIBUTORS BE
+LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
+CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
+SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
+INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
+CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
+ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED
+OF THE POSSIBILITY OF SUCH DAMAGE.
+
+DrDeAmOn64DrDeAmOn64DrDeAmOn64DrDeAmOn64DrDeAmOn64DrDeAmOn64DrDeAmOn64*/
+
+/* File Info -----------------------------------------------------------
+File: drd64_.c
+Function:
+Comment:
+----------------------------------------------------------------------*/
+
+#define DRD64_SRC_LIBEDITTEXT_LINEAPI
+#include"drd64_libedittext.h"
+
+#define LOCATION(n) DRD64_ERR_LOCATION( \
+ DRD64_ERROR_MODULE_LIBEDITTEXT, DRD64_ERROR_ARCH_NODEPEND, \
+ DRD64_SRC_LIBEDITTEXT_LINEAPI_SRCID, (n))
+
+
+/*----------------------------------------------------------------------
+----------------------------------------------------------------------*/
+#define FUNCID_LibEditText_DeleteLine_toLine 0x01
+LIBEDITTEXT_API_LINEAPI
+int
+ LibEditText_DeleteLine_toLine(
+ int i_tinfoid,
+ DWord dw_line )
+{
+ int i_result = 0x00;
+ LibEditText_TextInfo *p_tinfo;
+ LibEditText_LineInfo *p_line;
+
+ if( 0 > i_tinfoid ) {
+ LibBrownie_Error_SetErrorInfo(
+ DRD64_ERROR( DRD64_ERROR_PTN_FAILED_ARG, 0x01, 0x01 ),
+ LOCATION( FUNCID_LibEditText_DeleteLine_toLine ),
+ errno, (QWord)i_tinfoid, (QWord)dw_line, __LINE__ );
+
+ return -0x01; }
+ p_tinfo = LibEditText_System_GetTextInfo( i_tinfoid );
+ if( NULL == p_tinfo ) {
+ LibBrownie_Error_SetErrorInfo(
+ DRD64_ERROR( DRD64_ERROR_PTN_NULLPTR, 0x01, 0x02 ),
+ LOCATION( FUNCID_LibEditText_DeleteLine_toLine ),
+ errno, (QWord)i_tinfoid, (QWord)dw_line, __LINE__ );
+
+ return -0x02;
+ }
+
+ p_line = LibEditText_Section_SearchLine( p_tinfo, dw_line );
+ assert( NULL != p_line );
+
+ i_result = LibEditText_LineCtrl_DeleteLine( p_tinfo, p_line, dw_line );
+
+ return i_result;
+}
+
+
+/*----------------------------------------------------------------------
+----------------------------------------------------------------------*/
+#define FUNCID_LibEditText_JoinLine_toLine 0x02
+LIBEDITTEXT_API_LINEAPI
+int
+ LibEditText_JoinLine_toLine(
+ int i_tinfoid,
+ DWord dw_line )
+{
+ int i_result;
+ LibEditText_TextInfo *p_tinfo;
+ LibEditText_LineInfo *p_line;
+
+ if( 0 > i_tinfoid ) {
+ LibBrownie_Error_SetErrorInfo(
+ DRD64_ERROR( DRD64_ERROR_PTN_FAILED_ARG, 0x01, 0x01 ),
+ LOCATION( FUNCID_LibEditText_JoinLine_toLine ),
+ errno, (QWord)i_tinfoid, (QWord)0x00, __LINE__ );
+
+ return -0x01;
+ }
+ p_tinfo = LibEditText_System_GetTextInfo( i_tinfoid );
+ if( NULL == p_tinfo ) {
+ LibBrownie_Error_SetErrorInfo(
+ DRD64_ERROR( DRD64_ERROR_PTN_NULLPTR, 0x01, 0x02 ),
+ LOCATION( FUNCID_LibEditText_JoinLine_toLine ),
+ errno, (QWord)i_tinfoid, (QWord)0x00, __LINE__ );
+
+ return -0x02;
+ }
+
+ p_line = LibEditText_Section_SearchLine( p_tinfo, dw_line );
+ assert( NULL != p_line );
+
+ i_result = LibEditText_LineCtrl_JoinLine( p_tinfo, p_line, dw_line );
+
+ return i_result;
+}
+
+
+/*----------------------------------------------------------------------
+----------------------------------------------------------------------*/
+#define FUNCID_LibEditText_InsertLine_toLine 0x03
+LIBEDITTEXT_API_LINEAPI
+int
+ LibEditText_InsertLine_toLine(
+ int i_tinfoid,
+ DWord dw_line,
+ char *pstr_text,
+ DWord dw_length )
+{
+ int i_result;
+ LibEditText_TextInfo *p_tinfo;
+
+ if( NULL == pstr_text ) {
+ LibBrownie_Error_SetErrorInfo(
+ DRD64_ERROR( DRD64_ERROR_PTN_FAILED_ARG, 0x01, 0x03 ),
+ LOCATION( FUNCID_LibEditText_InsertLine_toLine ),
+ errno, (QWord)0x00, (QWord)0x00, __LINE__ );
+
+ return -0x01;
+ }
+
+ if( 0 > i_tinfoid ) {
+ LibBrownie_Error_SetErrorInfo(
+ DRD64_ERROR( DRD64_ERROR_PTN_FAILED_ARG, 0x01, 0x02 ),
+ LOCATION( FUNCID_LibEditText_InsertLine_toLine ),
+ errno, (QWord)i_tinfoid, (QWord)0x00, __LINE__ );
+
+ return -0x02;
+ }
+ p_tinfo = LibEditText_System_GetTextInfo( i_tinfoid );
+ if( NULL == p_tinfo ) {
+ LibBrownie_Error_SetErrorInfo(
+ DRD64_ERROR( DRD64_ERROR_PTN_FAILED_ARG, 0x01, 0x03 ),
+ LOCATION( FUNCID_LibEditText_InsertLine_toLine ),
+ errno, (QWord)i_tinfoid, (QWord)0x00, __LINE__ );
+
+ return -0x03;
+ }
+
+ if( p_tinfo->dw_maxline < (dw_line + 1) ) {
+ i_result = LibEditText_LineCtrl_AppendLine(
+ p_tinfo, (Byte *)pstr_text, dw_length, 0x00 );
+ }
+ else {
+ i_result = LibEditText_LineCtrl_InsertLine(
+ p_tinfo, dw_line, (Byte *)pstr_text, dw_length );
+ }
+
+ return i_result;
+}
+
+
+/*----------------------------------------------------------------------
+----------------------------------------------------------------------*/
+#define FUNCID_LibEditText_AppendLine 0x04
+LIBEDITTEXT_API_LINEAPI
+int
+ LibEditText_AppendLine(
+ int i_tinfoid,
+ char *pstr_text,
+ DWord dw_length )
+{
+ int i_result;
+ LibEditText_TextInfo *p_tinfo;
+
+ if( NULL == pstr_text ) {
+ LibBrownie_Error_SetErrorInfo(
+ DRD64_ERROR( DRD64_ERROR_PTN_FAILED_ARG, 0x01, 0x01 ),
+ LOCATION( FUNCID_LibEditText_AppendLine ),
+ errno, (QWord)0x00, (QWord)0x00, __LINE__ );
+
+ return -0x01;
+ }
+
+ if( 0 > i_tinfoid ) {
+ LibBrownie_Error_SetErrorInfo(
+ DRD64_ERROR( DRD64_ERROR_PTN_FAILED_ARG, 0x01, 0x02 ),
+ LOCATION( FUNCID_LibEditText_AppendLine ),
+ errno, (QWord)i_tinfoid, (QWord)0x00, __LINE__ );
+
+ return -0x02;
+ }
+ p_tinfo = LibEditText_System_GetTextInfo( i_tinfoid );
+ if( NULL == p_tinfo ) {
+ LibBrownie_Error_SetErrorInfo(
+ DRD64_ERROR( DRD64_ERROR_PTN_NULLPTR, 0x01, 0x03 ),
+ LOCATION( FUNCID_LibEditText_AppendLine ),
+ errno, (QWord)i_tinfoid, (QWord)0x00, __LINE__ );
+
+ return -0x03;
+ }
+
+ i_result = LibEditText_LineCtrl_AppendLine( p_tinfo, (Byte *)pstr_text, dw_length, 0x00 );
+
+ return i_result;
+}
+
+
+/* EOF of drd64_.c ----------------------------------- */
/*----------------------------------------------------------------------
----------------------------------------------------------------------*/
-#define FUNCID_LibEditText_DeleteLine_toLine 0x02
-LIBEDITTEXT_API_LINECTRL
-int
- LibEditText_DeleteLine_toLine(
- int i_tinfoid,
- DWord dw_line )
-{
- int i_result = 0x00;
- LibEditText_TextInfo *p_tinfo;
- LibEditText_LineInfo *p_line;
-
- if( 0 > i_tinfoid ) {
- LibBrownie_Error_SetErrorInfo(
- DRD64_ERROR( DRD64_ERROR_PTN_FAILED_ARG, 0x01, 0x01 ),
- LOCATION( FUNCID_LibEditText_DeleteLine_toLine ),
- errno, (QWord)i_tinfoid, (QWord)dw_line, __LINE__ );
-
- return -0x01; }
- p_tinfo = LibEditText_System_GetTextInfo( i_tinfoid );
- if( NULL == p_tinfo ) {
- LibBrownie_Error_SetErrorInfo(
- DRD64_ERROR( DRD64_ERROR_PTN_NULLPTR, 0x01, 0x02 ),
- LOCATION( FUNCID_LibEditText_DeleteLine_toLine ),
- errno, (QWord)i_tinfoid, (QWord)dw_line, __LINE__ );
-
- return -0x02;
- }
-
- p_line = LibEditText_Section_SearchLine( p_tinfo, dw_line );
- assert( NULL != p_line );
-
- i_result = LibEditText_LineCtrl_DeleteLine( p_tinfo, p_line, dw_line );
-
- return i_result;
-}
-
-
-/*----------------------------------------------------------------------
-----------------------------------------------------------------------*/
#define FUNCID_LibEditText_LineCtrl_JoinLine 0x03
LIBEDITTEXT_LINECTRL_EXTERN
int
/*----------------------------------------------------------------------
----------------------------------------------------------------------*/
-#define FUNCID_LibEditText_JoinLine_toLine 0x04
-LIBEDITTEXT_API_LINECTRL
-int
- LibEditText_JoinLine_toLine(
- int i_tinfoid,
- DWord dw_line )
-{
- int i_result;
- LibEditText_TextInfo *p_tinfo;
- LibEditText_LineInfo *p_line;
-
- if( 0 > i_tinfoid ) {
- LibBrownie_Error_SetErrorInfo(
- DRD64_ERROR( DRD64_ERROR_PTN_FAILED_ARG, 0x01, 0x01 ),
- LOCATION( FUNCID_LibEditText_JoinLine_toLine ),
- errno, (QWord)i_tinfoid, (QWord)0x00, __LINE__ );
-
- return -0x01;
- }
- p_tinfo = LibEditText_System_GetTextInfo( i_tinfoid );
- if( NULL == p_tinfo ) {
- LibBrownie_Error_SetErrorInfo(
- DRD64_ERROR( DRD64_ERROR_PTN_NULLPTR, 0x01, 0x02 ),
- LOCATION( FUNCID_LibEditText_JoinLine_toLine ),
- errno, (QWord)i_tinfoid, (QWord)0x00, __LINE__ );
-
- return -0x02;
- }
-
- p_line = LibEditText_Section_SearchLine( p_tinfo, dw_line );
- assert( NULL != p_line );
-
- i_result = LibEditText_LineCtrl_JoinLine( p_tinfo, p_line, dw_line );
-
- return i_result;
-}
-
-
-/*----------------------------------------------------------------------
-----------------------------------------------------------------------*/
#define FUNCID_LibEditText_LineCtrl_InsertLine 0x05
LIBEDITTEXT_LINECTRL_EXTERN
int
/*----------------------------------------------------------------------
----------------------------------------------------------------------*/
-#define FUNCID_LibEditText_InsertLine_toLine 0x06
-LIBEDITTEXT_API_LINECTRL
-int
- LibEditText_InsertLine_toLine(
- int i_tinfoid,
- DWord dw_line,
- char *pstr_text,
- DWord dw_length )
-{
- int i_result;
- LibEditText_TextInfo *p_tinfo;
-
- if( NULL == pstr_text ) {
- LibBrownie_Error_SetErrorInfo(
- DRD64_ERROR( DRD64_ERROR_PTN_FAILED_ARG, 0x01, 0x03 ),
- LOCATION( FUNCID_LibEditText_InsertLine_toLine ),
- errno, (QWord)0x00, (QWord)0x00, __LINE__ );
-
- return -0x01;
- }
-
- if( 0 > i_tinfoid ) {
- LibBrownie_Error_SetErrorInfo(
- DRD64_ERROR( DRD64_ERROR_PTN_FAILED_ARG, 0x01, 0x02 ),
- LOCATION( FUNCID_LibEditText_InsertLine_toLine ),
- errno, (QWord)i_tinfoid, (QWord)0x00, __LINE__ );
-
- return -0x02;
- }
- p_tinfo = LibEditText_System_GetTextInfo( i_tinfoid );
- if( NULL == p_tinfo ) {
- LibBrownie_Error_SetErrorInfo(
- DRD64_ERROR( DRD64_ERROR_PTN_FAILED_ARG, 0x01, 0x03 ),
- LOCATION( FUNCID_LibEditText_InsertLine_toLine ),
- errno, (QWord)i_tinfoid, (QWord)0x00, __LINE__ );
-
- return -0x03;
- }
-
- if( p_tinfo->dw_maxline < (dw_line + 1) ) {
- i_result = LibEditText_LineCtrl_AppendLine(
- p_tinfo, (Byte *)pstr_text, dw_length, 0x00 );
- }
- else {
- i_result = LibEditText_LineCtrl_InsertLine(
- p_tinfo, dw_line, (Byte *)pstr_text, dw_length );
- }
-
- return i_result;
-}
-
-
-/*----------------------------------------------------------------------
-----------------------------------------------------------------------*/
#define FUNCID_LibEditText_LineCtrl_AppendLine 0x07
LIBEDITTEXT_LINECTRL_EXTERN
int
}
-/*----------------------------------------------------------------------
-----------------------------------------------------------------------*/
-#define FUNCID_LibEditText_AppendLine 0x08
-LIBEDITTEXT_API_LINECTRL
-int
- LibEditText_AppendLine(
- int i_tinfoid,
- char *pstr_text,
- DWord dw_length )
-{
- int i_result;
- LibEditText_TextInfo *p_tinfo;
-
- if( NULL == pstr_text ) {
- LibBrownie_Error_SetErrorInfo(
- DRD64_ERROR( DRD64_ERROR_PTN_FAILED_ARG, 0x01, 0x01 ),
- LOCATION( FUNCID_LibEditText_AppendLine ),
- errno, (QWord)0x00, (QWord)0x00, __LINE__ );
-
- return -0x01;
- }
-
- if( 0 > i_tinfoid ) {
- LibBrownie_Error_SetErrorInfo(
- DRD64_ERROR( DRD64_ERROR_PTN_FAILED_ARG, 0x01, 0x02 ),
- LOCATION( FUNCID_LibEditText_AppendLine ),
- errno, (QWord)i_tinfoid, (QWord)0x00, __LINE__ );
-
- return -0x02;
- }
- p_tinfo = LibEditText_System_GetTextInfo( i_tinfoid );
- if( NULL == p_tinfo ) {
- LibBrownie_Error_SetErrorInfo(
- DRD64_ERROR( DRD64_ERROR_PTN_NULLPTR, 0x01, 0x03 ),
- LOCATION( FUNCID_LibEditText_AppendLine ),
- errno, (QWord)i_tinfoid, (QWord)0x00, __LINE__ );
-
- return -0x03;
- }
-
- i_result = LibEditText_LineCtrl_AppendLine( p_tinfo, (Byte *)pstr_text, dw_length, 0x00 );
-
- return i_result;
-}
-
-
/* EOF of drd64_.c ----------------------------------- */