summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorAriadna Vigo <arivigodr@gmail.com>2020-12-18 00:27:07 +0100
committerAriadna Vigo <arivigodr@gmail.com>2020-12-18 00:27:07 +0100
commit70000500ad92afcd29e21017c4cfb9ccfd034f77 (patch)
treea4751f2185980ecea00de1fc966f8fb6dc740dc5
parent9da5714bc65bf8cb322fd6e7623e86863023b154 (diff)
tasklst.c: now we can edit TaskLst entries
-rw-r--r--tasklst.c13
-rw-r--r--tasklst.h1
2 files changed, 14 insertions, 0 deletions
diff --git a/tasklst.c b/tasklst.c
index d0916f1..83ffabf 100644
--- a/tasklst.c
+++ b/tasklst.c
@@ -125,6 +125,19 @@ task_lst_add_task(TaskLst *list, int status, const char *str)
newtask->next = NULL;
return 0;
+}
+
+int
+task_lst_edit_task(TaskLst *list, int i, const char *newstr)
+{
+ Task *edit;
+
+ if ((edit = task_lst_get_task(*list, i)) == NULL)
+ return -1;
+
+ strncpy(edit->tdesc, newstr, TASK_LST_DESC_MAX_SIZE);
+
+ return 0;
}
int
diff --git a/tasklst.h b/tasklst.h
index 317454a..b57099b 100644
--- a/tasklst.h
+++ b/tasklst.h
@@ -28,6 +28,7 @@ int task_lst_count_todo(TaskLst list);
int task_lst_count_done(TaskLst list);
Task *task_lst_get_task(TaskLst list, int i);
int task_lst_add_task(TaskLst *list, int status, const char *str);
+int task_lst_edit_task(TaskLst *list, int i, const char *newstr);
int task_lst_del_task(TaskLst *list, int i);
int task_lst_read_from_file(TaskLst *list, FILE *fp);
void task_lst_write_to_file(FILE *fp, TaskLst list);