diff --git a/src/callbacks.c b/src/callbacks.c index 36a7aa6..b433304 100644 --- a/src/callbacks.c +++ b/src/callbacks.c @@ -58,6 +58,15 @@ void on_file_new(gpointer data) } +/* on_file_save */ +void on_file_save(gpointer data) +{ + Todo * todo = data; + + todo_task_save_all(todo); +} + + /* edit menu */ /* on_edit_delete */ void on_edit_delete(gpointer data) diff --git a/src/callbacks.h b/src/callbacks.h index aa537b4..c88c2f0 100644 --- a/src/callbacks.h +++ b/src/callbacks.h @@ -28,6 +28,7 @@ gboolean on_closex(gpointer data); /* file menu */ void on_file_new(gpointer data); void on_file_edit(gpointer data); +void on_file_save(gpointer data); void on_file_close(gpointer data); /* edit menu */ diff --git a/src/todo.c b/src/todo.c index f22dbdc..f23bdcf 100644 --- a/src/todo.c +++ b/src/todo.c @@ -107,6 +107,9 @@ static DesktopMenu _file_menu[] = { N_("_Edit"), G_CALLBACK(on_file_edit), GTK_STOCK_EDIT, GDK_CONTROL_MASK, GDK_E }, { "", NULL, NULL, 0, 0 }, + { N_("_Save"), G_CALLBACK(on_file_save), GTK_STOCK_SAVE, + GDK_CONTROL_MASK, GDK_S }, + { "", NULL, NULL, 0, 0 }, { N_("_Close"), G_CALLBACK(on_file_close), GTK_STOCK_CLOSE, GDK_CONTROL_MASK, GDK_W }, { NULL, NULL, NULL, 0, 0 }