From 1eb0890fedc99f1875655912b2df4dee8a368b0e Mon Sep 17 00:00:00 2001 From: James Booth Date: Fri, 11 May 2012 01:42:52 +0100 Subject: [PATCH] Added prof_tabcompletion --- Makefile | 3 ++- prof_tabcompletion.c | 43 +++++++++++++++++++++++++++++++++++++++++++ prof_tabcompletion.h | 28 ++++++++++++++++++++++++++++ 3 files changed, 73 insertions(+), 1 deletion(-) create mode 100644 prof_tabcompletion.c create mode 100644 prof_tabcompletion.h diff --git a/Makefile b/Makefile index d06bff56..a59ec917 100644 --- a/Makefile +++ b/Makefile @@ -7,7 +7,7 @@ CPPLIB = -lstdc++ CFLAGS = -I ~/include -O3 $(WARNS) $(LIBS) `pkg-config --cflags glib-2.0` OBJS = log.o windows.o title_bar.o status_bar.o input_win.o jabber.o \ profanity.o util.o command.o history.o contact_list.o prof_history.o \ - contact.o preferences.o main.o + contact.o preferences.o prof_tabcompletion.o main.o TESTOBJS = test_contact_list.o contact_list.o contact.o \ test_util.o test_prof_history.o prof_history.o util.o @@ -28,6 +28,7 @@ contact_list.o: contact_list.h contact.h prof_history.o: prof_history.h contact.o: contact.h preferences.o: preferences.h +prof_tabcompletion.o: prof_tabcompletion.h main.o: profanity.h test_contact_list.o: contact_list.h contact.h diff --git a/prof_tabcompletion.c b/prof_tabcompletion.c new file mode 100644 index 00000000..ed287286 --- /dev/null +++ b/prof_tabcompletion.c @@ -0,0 +1,43 @@ +/* + * prof_tabcompletion.c + * + * Copyright (C) 2012 James Booth + * + * This file is part of Profanity. + * + * Profanity is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + * + * Profanity is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with Profanity. If not, see . + * + */ + +#include + +#include + +#include "prof_tabcompletion.h" + +struct p_tabcompletion_t { + GList *list; + GList *last_found; + gchar *search_str; +}; + +PTabCompletion p_tabcompletion_new(void) +{ + PTabCompletion new = malloc(sizeof(struct p_tabcompletion_t)); + new->list = NULL; + new->last_found = NULL; + new->search_str = NULL; + + return new; +} diff --git a/prof_tabcompletion.h b/prof_tabcompletion.h new file mode 100644 index 00000000..3d8d714c --- /dev/null +++ b/prof_tabcompletion.h @@ -0,0 +1,28 @@ +/* + * prof_tabcompletion.h + * + * Copyright (C) 2012 James Booth + * + * This file is part of Profanity. + * + * Profanity is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + * + * Profanity is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with Profanity. If not, see . + * + */ + +#ifndef PROF_TABCOMPLETION_H +#define PROF_TABCOMPLETION_H + +typedef struct p_tabcompletion_t *PTabCompletion; + +#endif