OSDN Git Service

* Implement: LibEditText_FindNextString() API (Non-Tested)
authorKoine Yuusuke(koinec) <koinec@users.sourceforge.jp>
Sun, 9 Aug 2015 21:19:45 +0000 (06:19 +0900)
committerKoine Yuusuke(koinec) <koinec@users.sourceforge.jp>
Sun, 9 Aug 2015 21:19:45 +0000 (06:19 +0900)
include/libedittext.h
libedittext/drd64_libedittext_cursorapi_find.c
libedittext/drd64_libedittext_cursorfind.h

index c105654..31caf16 100644 (file)
@@ -185,6 +185,8 @@ LIBEDITTEXT_API_CURSORAPI_MOVE
 LIBEDITTEXT_API_CURSORAPI_FIND
        int LibEditText_FindString(
                        int i_tinfoid, int i_curid, char *pstr_regex, DWord dw_regexlen, DWord *pdw_len );
+LIBEDITTEXT_API_CURSORAPI_FIND
+       int LibEditText_FindNextString( int i_tinfoid, int i_curid, DWord *pdw_len );
 
 
 #ifdef DRD64_SRC_LIBEDITTEXT_UNDOEDIT
index bb3f5e5..8c9ad4f 100644 (file)
@@ -83,4 +83,39 @@ int
 }
 
 
+/***********************************************************************
+***********************************************************************/
+LIBEDITTEXT_API_CURSORAPI_FIND
+int
+       LibEditText_FindNextString(
+                       int             i_tinfoid,
+                       int             i_curid,
+                       DWord   *pdw_len )
+{
+       int             i_result;
+       LibEditText_TextInfo    *p_tinfo;
+       LibEditText_Cursor              *p_cursor;
+
+       p_tinfo = LibEditText_System_GetTextInfo( i_tinfoid );
+       if( NULL == p_tinfo )   {
+               return -0x01;
+       }
+
+       p_cursor        = LibEditText_CursorInfo_GetCursor( p_tinfo, i_curid );
+       if( NULL == p_cursor )  {
+               return -0x02;
+       }
+
+       i_result        = LibEditText_CursorFind_FindNextString( p_tinfo, p_cursor );
+       if( 0x00 > i_result )   {
+               return i_result;
+       }
+
+       if(( LIBEDITTEXT_RET_FINDNOMATCH != i_result ) && ( NULL != pdw_len ))
+               { *pdw_len      = p_cursor->dw_find_prevpos_len; }
+
+       return  i_result;
+}
+
+
 /* EOF of drd64_.c ----------------------------------- */
index 38e9a1c..837b5c4 100644 (file)
@@ -53,10 +53,12 @@ LIBEDITTEXT_CURSORFIND_EXTERN
                                LibEditText_TextInfo *p_tinfo, LibEditText_Cursor *p_cursor,
                                char *pstr_regex, DWord dw_regexlen, Byte b_flagfind );
 LIBEDITTEXT_CURSORFIND_EXTERN
+       int LibEditText_CursorFind_FindNextString(
+                               LibEditText_TextInfo *p_tinfo, LibEditText_Cursor *p_cursor );
+LIBEDITTEXT_CURSORFIND_EXTERN
        int LibEditText_CursorFind_FreeFindData( LibEditText_Cursor *p_cursor );
 
 
-
 #ifdef LIBEDITTEXT_CURSORFIND_INTERNALFUNC
 #endif