diff nnchat.c @ 65:e763ef5cfd53

Move more functions to libnnchat.
author Matti Hamalainen <ccr@tnsp.org>
date Tue, 11 Nov 2008 23:57:49 +0200
parents 6a3a917303e4
children 4086088e95dc
line wrap: on
line diff
--- a/nnchat.c	Tue Nov 11 22:33:35 2008 +0200
+++ b/nnchat.c	Tue Nov 11 23:57:49 2008 +0200
@@ -148,152 +148,6 @@
 }
 
 
-typedef struct {
-	char **data;
-	size_t n, size;
-} ringbuf_t;
-
-
-ringbuf_t * newRingBuf(const size_t size)
-{
-	ringbuf_t *res = th_calloc(1, sizeof(ringbuf_t));
-	
-	res->data = (char **) th_malloc(size * sizeof(char *));
-	res->size = size;
-	res->n = 0;
-	
-	return res;
-}
-
-
-void freeRingBuf(ringbuf_t *buf)
-{
-	size_t i;
-	
-	for (i = 0; i < buf->n; i++)
-		th_free(buf->data[i]);
-	
-	th_free(buf->data);
-	th_free(buf);
-}
-
-
-void addRingBuf(ringbuf_t *buf, const char *str)
-{
-	if (buf->n < buf->size) {
-		buf->data[buf->n] = strdup(str);
-		buf->n++;
-	} else {
-		th_free(buf->data[0]);
-		memmove(&(buf->data[0]), &(buf->data[1]), buf->size - 1);
-		buf->data[buf->size - 1] = strdup(str);
-	}
-}
-
-
-typedef struct {
-	ssize_t pos, len, size;
-	char *data;
-} editbuf_t;
-
-
-int writeBuf(editbuf_t *buf, ssize_t pos, int ch)
-{
-	/* Check arguments */
-	if (buf->len+1 >= buf->size) return -3;
-	
-	if (pos < 0)
-		return -1;
-	else if (pos >= buf->len) {
-		buf->data[buf->len++] = ch;
-	} else {
-		buf->data[pos] = ch;
-	}
-	return 0;
-}
-
-int insertBuf(editbuf_t *buf, ssize_t pos, int ch)
-{
-	/* Check arguments */
-	if (buf->len+1 >= buf->size) return -3;
-	
-	if (pos < 0)
-		return -1;
-	else if (pos >= buf->len) {
-		buf->data[buf->len] = ch;
-	} else {
-		memmove(&(buf->data[pos+1]), &(buf->data[pos]), buf->len - pos + 1);
-		buf->data[pos] = ch;
-	}
-	buf->len++;
-	return 0;
-}
-
-int deleteBuf(editbuf_t *buf, ssize_t pos)
-{
-	/* Check arguments */
-	if (pos < 0)
-		return -1;
-	else if (pos < buf->len) {
-		memmove(&(buf->data[pos]), &(buf->data[pos+1]), buf->len - pos);
-		buf->len--;
-		return 0;
-	} else
-		return -2;
-}
-
-void clearBuf(editbuf_t *buf)
-{
-	buf->len = 0;
-	buf->pos = 0;
-}
-
-editbuf_t * newBuf(ssize_t n)
-{
-	editbuf_t *res = th_calloc(1, sizeof(editbuf_t));
-	
-	res->data = (char *) th_malloc(n);
-	res->size = n;
-	
-	return res;
-}
-
-void freeBuf(editbuf_t *buf)
-{
-	if (buf) {
-		th_free(buf->data);
-		th_free(buf);
-	}
-}
-
-editbuf_t * copyBuf(editbuf_t *src)
-{
-	editbuf_t *res;
-	
-	assert(src != NULL);
-	
-	if (src == NULL) return NULL;
-	
-	if ((res = newBuf(src->size)) == NULL)
-		return NULL;
-	
-	memcpy(res->data, src->data, src->size);
-	res->pos = res->len = src->len;
-	
-	return res;
-}
-
-void setBufPos(editbuf_t *buf, ssize_t pos)
-{
-	/* Check arguments */
-	if (pos < 0)
-		buf->pos = 0;
-	else if (pos >= buf->len)
-		buf->pos = buf->len;
-	else
-		buf->pos = pos;
-}
-
 void updateStatus(BOOL insertMode)
 {
 	char tmpStr[128] = "";