added remove task button
authorJean-Philippe Orsini <jeanfi@gmail.com>
Sun, 1 Dec 2013 12:58:58 +0000 (12:58 +0000)
committerJean-Philippe Orsini <jeanfi@gmail.com>
Sun, 1 Dec 2013 12:58:58 +0000 (12:58 +0000)
NEWS
NEWS.html
po/fr.gmo
po/fr.po
po/ptask.pot
src/glade/ptask.glade
src/tw.c
src/tw.h
src/ui_taskpanel.c

diff --git a/NEWS b/NEWS
index 35fb7c8..ae94036 100644 (file)
--- a/NEWS
+++ b/NEWS
@@ -16,6 +16,8 @@ v0.0.4
  * fixed error message displayed when a note does not exist.
  * new task dialog allow to set description and priority.
  * added project table to filter the list of tasks.
+ * added application icon.
+ * added remove task button.
 
 v0.0.3
 ------
index 6b9a207..0ac061d 100644 (file)
--- a/NEWS.html
+++ b/NEWS.html
@@ -376,6 +376,16 @@ fixed error message displayed when a note does not exist.
 new task dialog allow to set description and priority.\r
 </p>\r
 </li>\r
+<li>\r
+<p>\r
+added project table to filter the list of tasks.\r
+</p>\r
+</li>\r
+<li>\r
+<p>\r
+added application icon.\r
+</p>\r
+</li>\r
 </ul></div>\r
 </div>\r
 </div>\r
@@ -444,7 +454,7 @@ Initial release.
 <div id="footnotes"><hr /></div>\r
 <div id="footer">\r
 <div id="footer-text">\r
-Last updated 2013-11-27 08:24:21 CET\r
+Last updated 2013-12-01 12:29:07 CET\r
 </div>\r
 </div>\r
 </body>\r
index f76b091..5c6444c 100644 (file)
Binary files a/po/fr.gmo and b/po/fr.gmo differ
index 14840b8..e73eb49 100644 (file)
--- a/po/fr.po
+++ b/po/fr.po
@@ -8,7 +8,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ptask\n"
 "Report-Msgid-Bugs-To: jeanfi@gmail.com\n"
-"POT-Creation-Date: 2013-11-27 08:25+0100\n"
+"POT-Creation-Date: 2013-12-01 12:23+0100\n"
 "PO-Revision-Date: 2012-05-13 18:15+0000\n"
 "Last-Translator: jeanfi <Unknown>\n"
 "Language-Team: French <>\n"
@@ -19,7 +19,7 @@ msgstr ""
 "X-Launchpad-Export-Date: 2012-07-02 08:28+0000\n"
 "X-Generator: Launchpad (build 15520)\n"
 
-#: src/main.c:66
+#: src/main.c:62
 #, c-format
 msgid ""
 "Copyright (C) %s jeanfi@gmail.com\n"
@@ -29,103 +29,107 @@ msgid ""
 "There is NO WARRANTY, to the extent permitted by law.\n"
 msgstr ""
 
-#: src/main.c:77
+#: src/main.c:73
 #, c-format
 msgid "Usage: %s [OPTION]...\n"
 msgstr ""
 
-#: src/main.c:79
+#: src/main.c:75
 msgid "ptask is a task management user interface based on taskwarrior."
 msgstr ""
 
-#: src/main.c:83
+#: src/main.c:79
 #, fuzzy
 msgid "Options:"
 msgstr "Description:"
 
-#: src/main.c:84
+#: src/main.c:80
 msgid ""
 "  -h, --help          display this help and exit\n"
 "  -v, --version       display version information and exit"
 msgstr ""
 
-#: src/main.c:89
+#: src/main.c:85
 msgid "  -d, --debug=LEVEL   set the debug level, integer between 0 and 3"
 msgstr ""
 
-#: src/main.c:94
+#: src/main.c:90
 #, c-format
 msgid "Report bugs to: %s\n"
 msgstr ""
 
-#: src/main.c:96
+#: src/main.c:92
 #, c-format
 msgid "%s home page: <%s>\n"
 msgstr ""
 
-#: src/main.c:211
+#: src/main.c:117
 msgid ""
 "Error loading tasks, verify that a supported version of taskwarrior is "
 "installed "
 msgstr ""
 
-#: src/main.c:439
+#: src/main.c:186
 msgid "Enables debug mode."
 msgstr ""
 
-#: src/main.c:448
+#: src/main.c:195
 #, c-format
 msgid "Try `%s --help' for more information.\n"
 msgstr ""
 
-#: src/glade/ptask.glade:7
+#: src/glade/ptask.glade:27
 msgid "New Task"
 msgstr "Nouvelle Tache"
 
-#: src/glade/ptask.glade:66 src/glade/ptask.glade:446
+#: src/glade/ptask.glade:86 src/glade/ptask.glade:501
 msgid "Description:"
 msgstr "Description:"
 
-#: src/glade/ptask.glade:101 src/glade/ptask.glade:524
+#: src/glade/ptask.glade:121 src/glade/ptask.glade:579
 msgid "Project:"
 msgstr "Projet:"
 
-#: src/glade/ptask.glade:136 src/glade/ptask.glade:558
+#: src/glade/ptask.glade:156 src/glade/ptask.glade:613
 msgid "Priority:"
 msgstr "Priorite:"
 
-#: src/glade/ptask.glade:233
+#: src/glade/ptask.glade:241
 msgid "ptask"
 msgstr "ptask"
 
-#: src/glade/ptask.glade:301
+#: src/glade/ptask.glade:309
 msgid "Status:"
 msgstr "Etat:"
 
-#: src/glade/ptask.glade:373
-msgid "Priority"
-msgstr "Priorite"
-
-#: src/glade/ptask.glade:386
+#: src/glade/ptask.glade:369 src/glade/ptask.glade:441
 msgid "Project"
 msgstr "Projet"
 
-#: src/glade/ptask.glade:403
+#: src/glade/ptask.glade:380
+msgid "Count"
+msgstr ""
+
+#: src/glade/ptask.glade:428
+msgid "Priority"
+msgstr "Priorite"
+
+#: src/glade/ptask.glade:458
 msgid "Description"
 msgstr "Description"
 
-#: src/glade/ptask.glade:464
+#: src/glade/ptask.glade:519
 msgid "Note:"
 msgstr "Note:"
 
-#: src/glade/ptask.glade:598
+#: src/glade/ptask.glade:653
 msgid "Mark Done"
 msgstr "Marquer fait"
 
-#: src/glade/ptask.glade:635
+#: src/glade/ptask.glade:690
 msgid "Save"
 msgstr "Sauvegarder"
 
-#: src/glade/ptask.glade:649
+#: src/glade/ptask.glade:704
 msgid "Cancel"
 msgstr "Annuler"
index d22bdc6..a77dfb4 100644 (file)
@@ -8,7 +8,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version: PACKAGE VERSION\n"
 "Report-Msgid-Bugs-To: jeanfi@gmail.com\n"
-"POT-Creation-Date: 2013-11-27 08:25+0100\n"
+"POT-Creation-Date: 2013-12-01 12:23+0100\n"
 "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
 "Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
 "Language-Team: LANGUAGE <LL@li.org>\n"
@@ -17,7 +17,7 @@ msgstr ""
 "Content-Type: text/plain; charset=CHARSET\n"
 "Content-Transfer-Encoding: 8bit\n"
 
-#: src/main.c:66
+#: src/main.c:62
 #, c-format
 msgid ""
 "Copyright (C) %s jeanfi@gmail.com\n"
@@ -27,102 +27,106 @@ msgid ""
 "There is NO WARRANTY, to the extent permitted by law.\n"
 msgstr ""
 
-#: src/main.c:77
+#: src/main.c:73
 #, c-format
 msgid "Usage: %s [OPTION]...\n"
 msgstr ""
 
-#: src/main.c:79
+#: src/main.c:75
 msgid "ptask is a task management user interface based on taskwarrior."
 msgstr ""
 
-#: src/main.c:83
+#: src/main.c:79
 msgid "Options:"
 msgstr ""
 
-#: src/main.c:84
+#: src/main.c:80
 msgid ""
 "  -h, --help          display this help and exit\n"
 "  -v, --version       display version information and exit"
 msgstr ""
 
-#: src/main.c:89
+#: src/main.c:85
 msgid "  -d, --debug=LEVEL   set the debug level, integer between 0 and 3"
 msgstr ""
 
-#: src/main.c:94
+#: src/main.c:90
 #, c-format
 msgid "Report bugs to: %s\n"
 msgstr ""
 
-#: src/main.c:96
+#: src/main.c:92
 #, c-format
 msgid "%s home page: <%s>\n"
 msgstr ""
 
-#: src/main.c:211
+#: src/main.c:117
 msgid ""
 "Error loading tasks, verify that a supported version of taskwarrior is "
 "installed "
 msgstr ""
 
-#: src/main.c:439
+#: src/main.c:186
 msgid "Enables debug mode."
 msgstr ""
 
-#: src/main.c:448
+#: src/main.c:195
 #, c-format
 msgid "Try `%s --help' for more information.\n"
 msgstr ""
 
-#: src/glade/ptask.glade:7
+#: src/glade/ptask.glade:27
 msgid "New Task"
 msgstr ""
 
-#: src/glade/ptask.glade:66 src/glade/ptask.glade:446
+#: src/glade/ptask.glade:86 src/glade/ptask.glade:501
 msgid "Description:"
 msgstr ""
 
-#: src/glade/ptask.glade:101 src/glade/ptask.glade:524
+#: src/glade/ptask.glade:121 src/glade/ptask.glade:579
 msgid "Project:"
 msgstr ""
 
-#: src/glade/ptask.glade:136 src/glade/ptask.glade:558
+#: src/glade/ptask.glade:156 src/glade/ptask.glade:613
 msgid "Priority:"
 msgstr ""
 
-#: src/glade/ptask.glade:233
+#: src/glade/ptask.glade:241
 msgid "ptask"
 msgstr ""
 
-#: src/glade/ptask.glade:301
+#: src/glade/ptask.glade:309
 msgid "Status:"
 msgstr ""
 
-#: src/glade/ptask.glade:373
-msgid "Priority"
+#: src/glade/ptask.glade:369 src/glade/ptask.glade:441
+msgid "Project"
 msgstr ""
 
-#: src/glade/ptask.glade:386
-msgid "Project"
+#: src/glade/ptask.glade:380
+msgid "Count"
+msgstr ""
+
+#: src/glade/ptask.glade:428
+msgid "Priority"
 msgstr ""
 
-#: src/glade/ptask.glade:403
+#: src/glade/ptask.glade:458
 msgid "Description"
 msgstr ""
 
-#: src/glade/ptask.glade:464
+#: src/glade/ptask.glade:519
 msgid "Note:"
 msgstr ""
 
-#: src/glade/ptask.glade:598
+#: src/glade/ptask.glade:653
 msgid "Mark Done"
 msgstr ""
 
-#: src/glade/ptask.glade:635
+#: src/glade/ptask.glade:690
 msgid "Save"
 msgstr ""
 
-#: src/glade/ptask.glade:649
+#: src/glade/ptask.glade:704
 msgid "Cancel"
 msgstr ""
index c072be4..5752833 100644 (file)
@@ -1,26 +1,6 @@
 <?xml version="1.0" encoding="UTF-8"?>
 <interface>
   <!-- interface-requires gtk+ 3.0 -->
-  <object class="GtkListStore" id="prioritystore">
-    <columns>
-      <!-- column-name priority -->
-      <column type="gchararray"/>
-    </columns>
-    <data>
-      <row>
-        <col id="0" translatable="yes">None</col>
-      </row>
-      <row>
-        <col id="0" translatable="yes">Low</col>
-      </row>
-      <row>
-        <col id="0" translatable="yes">Medium</col>
-      </row>
-      <row>
-        <col id="0" translatable="yes">High</col>
-      </row>
-    </data>
-  </object>
   <object class="GtkDialog" id="diag_tasknew">
     <property name="can_focus">False</property>
     <property name="border_width">5</property>
       <action-widget response="0">button2</action-widget>
     </action-widgets>
   </object>
+  <object class="GtkListStore" id="prioritystore">
+    <columns>
+      <!-- column-name priority -->
+      <column type="gchararray"/>
+    </columns>
+    <data>
+      <row>
+        <col id="0" translatable="yes">None</col>
+      </row>
+      <row>
+        <col id="0" translatable="yes">Low</col>
+      </row>
+      <row>
+        <col id="0" translatable="yes">Medium</col>
+      </row>
+      <row>
+        <col id="0" translatable="yes">High</col>
+      </row>
+    </data>
+  </object>
   <object class="GtkListStore" id="projectstore">
     <columns>
       <!-- column-name gchararray1 -->
                                 <property name="position">0</property>
                               </packing>
                             </child>
+                            <child>
+                              <object class="GtkButton" id="taskremove">
+                                <property name="label" translatable="yes">Remove</property>
+                                <property name="visible">True</property>
+                                <property name="can_focus">False</property>
+                                <property name="receives_default">True</property>
+                                <signal name="clicked" handler="taskremove_clicked_cbk" swapped="no"/>
+                              </object>
+                              <packing>
+                                <property name="expand">False</property>
+                                <property name="fill">True</property>
+                                <property name="position">1</property>
+                              </packing>
+                            </child>
                           </object>
                           <packing>
                             <property name="left_attach">0</property>
index 89b2761..43760d4 100644 (file)
--- a/src/tw.c
+++ b/src/tw.c
@@ -359,6 +359,21 @@ void tw_done(const char *uuid)
        free(opts);
 }
 
+void tw_task_remove(const char *uuid)
+{
+       char *opts;
+
+       opts = malloc(1
+                     + strlen(uuid)
+                     + strlen(" delete")
+                     + 1);
+       sprintf(opts, " %s delete", uuid);
+
+       tw_exec(opts);
+
+       free(opts);
+}
+
 static void task_free(struct task *task)
 {
        if (!task)
index 91faed7..70a197c 100644 (file)
--- a/src/tw.h
+++ b/src/tw.h
@@ -40,6 +40,7 @@ void tw_modify_description(const char *uuid, const char *newdesc);
 void tw_modify_project(const char *uuid, const char *newproj);
 void tw_modify_priority(const char *uuid, const char *priority);
 void tw_done(const char *uuid);
+void tw_task_remove(const char *);
 void tw_add(const char *newdesc, const char *prj, const char *prio);
 void tw_task_list_free(struct task **tasks);
 struct project **tw_get_projects(struct task **tasks);
index ec16282..3653cd0 100644 (file)
@@ -205,3 +205,17 @@ int taskdone_clicked_cbk(GtkButton *btn, gpointer data)
        return FALSE;
 }
 
+int taskremove_clicked_cbk(GtkButton *btn, gpointer data)
+{
+       log_fct_enter();
+
+       if (current_task) {
+               log_fct(__func__, "uuid=%d", current_task->uuid);
+               tw_task_remove(current_task->uuid);
+               refresh();
+       }
+
+       log_fct_exit();
+
+       return FALSE;
+}