コード例 #1
0
ファイル: textedit_replace.c プロジェクト: IohannRabeson/42sh
void	textedit_replace_text(t_textedit *te, char const *str)
{
	t_ui	len;
	t_ui	new_size;

	if (str_buf_size(&te->buffer) == 0)
		return ;
	len = str_buf_size(&te->buffer) - te->prompt.size;
	str_buf_erase(&te->buffer, te->prompt.size, len);
	str_buf_insert_str(&te->buffer, te->prompt.size, str);
	new_size = str_buf_size(&te->buffer);
	te->cursor.buffer_pos = new_size;
	te->modified = true;
}
コード例 #2
0
ファイル: textedit_move.c プロジェクト: IohannRabeson/42sh
void	cursor_next_char(t_textedit *te)
{
	t_cursor	*cursor;

	cursor = &te->cursor;
	if (cursor->buffer_pos + 1 > str_buf_size(&te->buffer))
		return ;
	cursor->buffer_pos += 1;
	te->modified = true;
}
コード例 #3
0
ファイル: str_buf.c プロジェクト: bend/C-utils
bool 
str_buf_put_str(str_buf * buf, const char * str){
    int i;
    int j;
	if(str_buf_size(buf)< str_buf_len(buf)+strlen(str))		/* check if the buf size is big enough append str to buf1*/
	    return false;
	for (i=str_buf_len(buf),j=0; j<strlen(str); i++,j++){
	    buf->buffer[i] = str[j];					/* append str to buf */
	    buf->length++;
	}
	return true;
}
コード例 #4
0
ファイル: str_buf.c プロジェクト: bend/C-utils
bool 
str_buf_put_buf(str_buf * buf1, str_buf * buf2){
    int i;
    int j;
	if(str_buf_size(buf1)< str_buf_len(buf1)+str_buf_len(buf2))		/* check if the buf1 size is big enough append buf2 to buf1*/
	    return false;
	for (i=str_buf_len(buf1),j=0; j<str_buf_len(buf2); i++,j++){
	    buf1->buffer[i] = buf2->buffer[j];					/* append buf2 to buf1 */
	    buf1->length++;
	}
	return true;
}