From be02e474a36f661928958b58b3f766c1ffbd86d7 Mon Sep 17 00:00:00 2001 From: adamw Date: Thu, 28 Apr 2005 06:44:01 +0000 Subject: Re-add gnotime, and tell it to look for the correct gtkhtml3 lib version. git-svn-id: svn://creme-brulee.marcuscom.com/ports/trunk@3953 df743ca5-7f9a-e211-a948-0013205c9059 --- deskutils/gnotime/Makefile | 38 +++ deskutils/gnotime/distinfo | 2 + deskutils/gnotime/files/patch-lib::qof::qofgobj.c | 140 +++++++++ deskutils/gnotime/files/patch-lib::qof::qofid.c | 13 + .../files/patch-lib::qof::qofquery-deserial.c | 235 +++++++++++++++ .../files/patch-lib::qof::qofquery-serialize.c | 181 ++++++++++++ deskutils/gnotime/files/patch-lib::qof::qofquery.c | 17 ++ deskutils/gnotime/files/patch-lib::qof::qofsql.c | 323 +++++++++++++++++++++ deskutils/gnotime/files/patch-src::export.c | 36 +++ deskutils/gnotime/files/patch-src::ghtml.c | 63 ++++ deskutils/gnotime/files/patch-src::idle-dialog.c | 54 ++++ deskutils/gnotime/files/patch-src::journal.c | 224 ++++++++++++++ deskutils/gnotime/files/patch-src::log.c | 25 ++ deskutils/gnotime/files/patch-src::main.c | 67 +++++ deskutils/gnotime/files/patch-src::menucmd.c | 50 ++++ deskutils/gnotime/files/patch-src::plug-in.c | 22 ++ deskutils/gnotime/files/patch-src::prefs.c | 95 ++++++ deskutils/gnotime/files/patch-src::proj.c | 54 ++++ deskutils/gnotime/files/patch-src::query.c | 16 + deskutils/gnotime/pkg-descr | 5 + deskutils/gnotime/pkg-plist | 128 ++++++++ 21 files changed, 1788 insertions(+) create mode 100644 deskutils/gnotime/Makefile create mode 100644 deskutils/gnotime/distinfo create mode 100644 deskutils/gnotime/files/patch-lib::qof::qofgobj.c create mode 100644 deskutils/gnotime/files/patch-lib::qof::qofid.c create mode 100644 deskutils/gnotime/files/patch-lib::qof::qofquery-deserial.c create mode 100644 deskutils/gnotime/files/patch-lib::qof::qofquery-serialize.c create mode 100644 deskutils/gnotime/files/patch-lib::qof::qofquery.c create mode 100644 deskutils/gnotime/files/patch-lib::qof::qofsql.c create mode 100644 deskutils/gnotime/files/patch-src::export.c create mode 100644 deskutils/gnotime/files/patch-src::ghtml.c create mode 100644 deskutils/gnotime/files/patch-src::idle-dialog.c create mode 100644 deskutils/gnotime/files/patch-src::journal.c create mode 100644 deskutils/gnotime/files/patch-src::log.c create mode 100644 deskutils/gnotime/files/patch-src::main.c create mode 100644 deskutils/gnotime/files/patch-src::menucmd.c create mode 100644 deskutils/gnotime/files/patch-src::plug-in.c create mode 100644 deskutils/gnotime/files/patch-src::prefs.c create mode 100644 deskutils/gnotime/files/patch-src::proj.c create mode 100644 deskutils/gnotime/files/patch-src::query.c create mode 100644 deskutils/gnotime/pkg-descr create mode 100644 deskutils/gnotime/pkg-plist (limited to 'deskutils') diff --git a/deskutils/gnotime/Makefile b/deskutils/gnotime/Makefile new file mode 100644 index 000000000..df0725861 --- /dev/null +++ b/deskutils/gnotime/Makefile @@ -0,0 +1,38 @@ +# New ports collection makefile for: gnotime +# Date created: 1 March 2003 +# Whom: Martin Klaffenboeck +# +# $FreeBSD: ports/deskutils/gnotime/Makefile,v 1.12 2005/03/12 11:08:18 kwm Exp $ +# + +PORTNAME= gnotime +PORTVERSION= 2.2.1 +PORTREVISION= 1 +CATEGORIES= deskutils gnome +MASTER_SITES= ${MASTER_SITE_SOURCEFORGE} +MASTER_SITE_SUBDIR= gttr + +MAINTAINER= kwm@FreeBSD.org +COMMENT= GnoTime is a time tracker for gnome2 + +LIB_DEPENDS= guile.15:${PORTSDIR}/lang/guile + +USE_GNOME= gnomehack gnomeprefix gtkhtml3 libgnomeui +USE_X_PREFIX= yes +USE_GMAKE= yes +INSTALLS_OMF= yes +USE_REINPLACE= yes +INSTALLS_SHLIB= yes +USE_LIBTOOL_VER=15 +CONFIGURE_ENV= CPPFLAGS="-I${LOCALBASE}/include ${PTHREAD_CFLAGS}" \ + LDFLAGS="-L${LOCALBASE}/lib" + +MAN1= gnotime.1 +GCONF_SCHEMAS= gnotime.schemas + +# until a new version comes out... +post-patch: + @${REINPLACE_CMD} -e "s|gtkhtml-3.1|gtkhtml-3.8|g" \ + ${WRKSRC}/configure + +.include diff --git a/deskutils/gnotime/distinfo b/deskutils/gnotime/distinfo new file mode 100644 index 000000000..dee725a41 --- /dev/null +++ b/deskutils/gnotime/distinfo @@ -0,0 +1,2 @@ +MD5 (gnotime-2.2.1.tar.gz) = e2aad191b62b41da7f2176a028f1aaf9 +SIZE (gnotime-2.2.1.tar.gz) = 1218556 diff --git a/deskutils/gnotime/files/patch-lib::qof::qofgobj.c b/deskutils/gnotime/files/patch-lib::qof::qofgobj.c new file mode 100644 index 000000000..89b9f5c89 --- /dev/null +++ b/deskutils/gnotime/files/patch-lib::qof::qofgobj.c @@ -0,0 +1,140 @@ +--- lib/qof/qofgobj.c.orig Mon May 24 19:55:16 2004 ++++ lib/qof/qofgobj.c Mon May 24 20:01:38 2004 +@@ -57,10 +57,11 @@ + void + qof_gobject_shutdown (void) + { ++ GSList *n; ++ + if (!initialized) return; + initialized = FALSE; + +- GSList *n; + for (n=paramList; n; n=n->next) g_free(n->data); + g_slist_free (paramList); + +@@ -83,11 +84,14 @@ + void + qof_gobject_register_instance (QofBook *book, QofType type, GObject *gob) + { ++ QofCollection *coll; ++ GSList * instance_list; ++ + if (!book || !type) return; + +- QofCollection *coll = qof_book_get_collection (book, type); ++ coll = qof_book_get_collection (book, type); + +- GSList * instance_list = qof_collection_get_data (coll); ++ instance_list = qof_collection_get_data (coll); + instance_list = g_slist_prepend (instance_list, gob); + qof_collection_set_data (coll, instance_list); + } +@@ -101,6 +105,8 @@ + + GParamSpec *gps = getter->param_userdata; + ++ const char * str; ++ + /* Note that the return type must actually be of type + * getter->param_type but we just follow the hard-coded + * mapping below ... */ +@@ -110,37 +116,40 @@ + g_value_init (&gval, G_TYPE_STRING); + g_object_get_property (gob, getter->param_name, &gval); + +- const char * str = g_value_get_string (&gval); ++ str = g_value_get_string (&gval); + return (gpointer) str; + } + else + if (G_IS_PARAM_SPEC_INT(gps)) + { ++ int ival; + GValue gval = {G_TYPE_INVALID}; + g_value_init (&gval, G_TYPE_INT); + g_object_get_property (gob, getter->param_name, &gval); + +- int ival = g_value_get_int (&gval); ++ ival = g_value_get_int (&gval); + return (gpointer) ival; + } + else + if (G_IS_PARAM_SPEC_UINT(gps)) + { ++ int ival; + GValue gval = {G_TYPE_INVALID}; + g_value_init (&gval, G_TYPE_UINT); + g_object_get_property (gob, getter->param_name, &gval); + +- int ival = g_value_get_uint (&gval); ++ ival = g_value_get_uint (&gval); + return (gpointer) ival; + } + else + if (G_IS_PARAM_SPEC_BOOLEAN(gps)) + { ++ int ival; + GValue gval = {G_TYPE_INVALID}; + g_value_init (&gval, G_TYPE_BOOLEAN); + g_object_get_property (gob, getter->param_name, &gval); + +- int ival = g_value_get_boolean (&gval); ++ ival = g_value_get_boolean (&gval); + return (gpointer) ival; + } + +@@ -161,21 +170,23 @@ + * mapping below ... */ + if (G_IS_PARAM_SPEC_FLOAT(gps)) + { ++ double fval; + GValue gval = {G_TYPE_INVALID}; + g_value_init (&gval, G_TYPE_FLOAT); + g_object_get_property (gob, getter->param_name, &gval); + +- double fval = g_value_get_float (&gval); ++ fval = g_value_get_float (&gval); + return fval; + } + else + if (G_IS_PARAM_SPEC_DOUBLE(gps)) + { ++ double fval; + GValue gval = {G_TYPE_INVALID}; + g_value_init (&gval, G_TYPE_DOUBLE); + g_object_get_property (gob, getter->param_name, &gval); + +- double fval = g_value_get_double (&gval); ++ fval = g_value_get_double (&gval); + return fval; + } + +@@ -208,13 +219,16 @@ + /* Get the GObject properties, convert to QOF properties */ + GParamSpec **prop_list; + int n_props; ++ int i, j=0; ++ QofParam * qof_param_list; ++ QofObject *class_def; ++ + prop_list = g_object_class_list_properties (obclass, &n_props); + +- QofParam * qof_param_list = g_new0 (QofParam, n_props); ++ qof_param_list = g_new0 (QofParam, n_props); + paramList = g_slist_prepend (paramList, qof_param_list); + + PINFO ("object %s has %d props", e_type, n_props); +- int i, j=0; + for (i=0; iinterface_version = QOF_OBJECT_VERSION; diff --git a/deskutils/gnotime/files/patch-lib::qof::qofid.c b/deskutils/gnotime/files/patch-lib::qof::qofid.c new file mode 100644 index 000000000..4a10a5e07 --- /dev/null +++ b/deskutils/gnotime/files/patch-lib::qof::qofid.c @@ -0,0 +1,13 @@ +--- lib/qof/qofid.c.orig Sun May 23 22:57:30 2004 ++++ lib/qof/qofid.c Sun Jul 4 23:00:04 2004 +@@ -182,8 +182,9 @@ + static void + qof_collection_remove_entity (QofEntity *ent) + { ++ QofCollection *col; + if (!ent) return; +- QofCollection *col = ent->collection; ++ col = ent->collection; + if (!col) return; + g_hash_table_remove (col->hash_of_entities, &ent->guid); + ent->collection = NULL; diff --git a/deskutils/gnotime/files/patch-lib::qof::qofquery-deserial.c b/deskutils/gnotime/files/patch-lib::qof::qofquery-deserial.c new file mode 100644 index 000000000..35d06885a --- /dev/null +++ b/deskutils/gnotime/files/patch-lib::qof::qofquery-deserial.c @@ -0,0 +1,235 @@ +--- lib/qof/qofquery-deserial.c.orig Sun May 23 16:57:30 2004 ++++ lib/qof/qofquery-deserial.c Wed Jul 7 23:54:09 2004 +@@ -80,7 +80,7 @@ + if (0 == strcmp (TOK, node->name)) \ + { \ + const char *str = GET_TEXT (node); \ +- gint64 ival = atoll (str); \ ++ gint64 ival = strtoll (str, (char **)NULL, 10); \ + FN (SELF, ival); \ + } \ + else +@@ -182,10 +182,11 @@ + static QofQueryPredData * \ + SUBRNAME (xmlNodePtr root) \ + { \ ++ QofQueryCompare how = QOF_COMPARE_EQUAL; \ ++ QofQueryPredData *pred; \ + xmlNodePtr xp = root->xmlChildrenNode; \ + xmlNodePtr node; \ + \ +- QofQueryCompare how = QOF_COMPARE_EQUAL; \ + CTYPE val = 0; \ + \ + for (node=xp; node; node = node->next) \ +@@ -197,7 +198,6 @@ + {} \ + } \ + \ +- QofQueryPredData *pred; \ + pred = PRED (how, val); \ + return pred; \ + } +@@ -245,10 +245,11 @@ + static QofQueryPredData * + qof_query_pred_kvp_from_xml (xmlNodePtr root) + { ++ QofQueryCompare how = QOF_COMPARE_EQUAL; ++ QofQueryPredData *pred; + xmlNodePtr xp = root->xmlChildrenNode; + xmlNodePtr node; + +- QofQueryCompare how = QOF_COMPARE_EQUAL; + GSList *path = NULL; + KvpValue *value = NULL; + +@@ -271,7 +272,6 @@ + GET_DATE(&value, wrap_new_timespec, "qofquery:date"); + } + +- QofQueryPredData *pred; + pred = qof_query_kvp_predicate (how, path, value); + g_slist_free (path); + return pred; +@@ -282,9 +282,11 @@ + static QofQueryPredData * + qof_query_pred_guid_from_xml (xmlNodePtr root) + { ++ QofQueryPredData *pred; ++ GList *guid_list = NULL; ++ GList *n; + xmlNodePtr xp = root->xmlChildrenNode; + xmlNodePtr node; +- GList *guid_list = NULL; + + QofGuidMatch sm = QOF_GUID_MATCH_ANY; + +@@ -313,11 +315,9 @@ + } + } + +- QofQueryPredData *pred; + pred = qof_query_guid_predicate (sm, guid_list); + + /* The predicate made a copy of everything, so free our stuff */ +- GList *n; + for (n=guid_list; n; n=n->next) + { + guid_free (n->data); +@@ -331,11 +331,12 @@ + static QofQueryPredData * + qof_query_pred_char_from_xml (xmlNodePtr root) + { ++ QofQueryPredData *pred; ++ QofCharMatch sm = QOF_CHAR_MATCH_ANY; ++ const char * char_list = NULL; + xmlNodePtr xp = root->xmlChildrenNode; + xmlNodePtr node; + +- QofCharMatch sm = QOF_CHAR_MATCH_ANY; +- const char * char_list = NULL; + + for (node=xp; node; node = node->next) + { +@@ -348,7 +349,6 @@ + {} + } + +- QofQueryPredData *pred; + pred = qof_query_char_predicate (sm, char_list); + return pred; + } +@@ -358,11 +358,12 @@ + static QofQueryPredData * + qof_query_pred_numeric_from_xml (xmlNodePtr root) + { ++ QofQueryCompare how = QOF_COMPARE_EQUAL; ++ QofNumericMatch sm = QOF_NUMERIC_MATCH_ANY; ++ QofQueryPredData *pred; + xmlNodePtr xp = root->xmlChildrenNode; + xmlNodePtr node; + +- QofQueryCompare how = QOF_COMPARE_EQUAL; +- QofNumericMatch sm = QOF_NUMERIC_MATCH_ANY; + gnc_numeric num; + + for (node=xp; node; node = node->next) +@@ -376,7 +377,6 @@ + {} + } + +- QofQueryPredData *pred; + pred = qof_query_numeric_predicate (how, sm, num); + return pred; + } +@@ -386,12 +386,13 @@ + static QofQueryPredData * + qof_query_pred_date_from_xml (xmlNodePtr root) + { +- xmlNodePtr xp = root->xmlChildrenNode; +- xmlNodePtr node; +- + QofQueryCompare how = QOF_COMPARE_EQUAL; + QofDateMatch sm = QOF_DATE_MATCH_ROUNDED; + Timespec date = {0,0}; ++ QofQueryPredData *pred; ++ xmlNodePtr xp = root->xmlChildrenNode; ++ xmlNodePtr node; ++ + + for (node=xp; node; node = node->next) + { +@@ -404,7 +405,6 @@ + {} + } + +- QofQueryPredData *pred; + pred = qof_query_date_predicate (how, sm, date); + return pred; + } +@@ -414,13 +414,14 @@ + static QofQueryPredData * + qof_query_pred_string_from_xml (xmlNodePtr root) + { +- xmlNodePtr xp = root->xmlChildrenNode; +- xmlNodePtr node; +- + QofQueryCompare how = QOF_COMPARE_EQUAL; + QofStringMatch sm = QOF_STRING_MATCH_CASEINSENSITIVE; + gboolean is_regex = FALSE; + const char *pstr = NULL; ++ QofQueryPredData *pred; ++ xmlNodePtr xp = root->xmlChildrenNode; ++ xmlNodePtr node; ++ + + for (node=xp; node; node = node->next) + { +@@ -434,7 +435,6 @@ + {} + } + +- QofQueryPredData *pred; + pred = qof_query_string_predicate (how, pstr, sm , is_regex); + return pred; + } +@@ -444,8 +444,8 @@ + static GSList * + qof_query_param_path_from_xml (xmlNodePtr root) + { +- xmlNodePtr pterms = root->xmlChildrenNode; + GSList *plist = NULL; ++ xmlNodePtr pterms = root->xmlChildrenNode; + xmlNodePtr node; + for (node=pterms; node; node = node->next) + { +@@ -465,10 +465,10 @@ + static void + qof_query_term_from_xml (QofQuery *q, xmlNodePtr root) + { +- xmlNodePtr node; +- xmlNodePtr term = root->xmlChildrenNode; + QofQueryPredData *pred = NULL; + GSList *path = NULL; ++ xmlNodePtr node; ++ xmlNodePtr term = root->xmlChildrenNode; + + for (node=term; node; node = node->next) + { +@@ -476,8 +476,9 @@ + if (0 == strcmp (node->name, "qofquery:invert")) + { + QofQuery *qt = qof_query_create(); ++ QofQuery *qinv; + qof_query_term_from_xml (qt, node); +- QofQuery *qinv = qof_query_invert (qt); ++ qinv = qof_query_invert (qt); + qof_query_merge_in_place (q, qinv, QOF_QUERY_AND); + qof_query_destroy (qinv); + qof_query_destroy (qt); +@@ -594,10 +595,14 @@ + qof_query_from_xml (xmlNodePtr root) + { + QofQuery *q; ++ xmlChar *version; ++ xmlNodePtr qpart; ++ xmlNodePtr node; + + if (!root) return NULL; + +- xmlChar * version = xmlGetProp(root, "version"); ++ version = xmlGetProp(root, "version"); ++ + if (!root->name || strcmp ("qof:qofquery", root->name)) + { + // XXX something is wrong. warn ... +@@ -606,8 +611,7 @@ + + q = qof_query_create (); + +- xmlNodePtr qpart = root->xmlChildrenNode; +- xmlNodePtr node; ++ qpart = root->xmlChildrenNode; + for (node=qpart; node; node = node->next) + { + if (node->type != XML_ELEMENT_NODE) continue; diff --git a/deskutils/gnotime/files/patch-lib::qof::qofquery-serialize.c b/deskutils/gnotime/files/patch-lib::qof::qofquery-serialize.c new file mode 100644 index 000000000..f9bb8b99d --- /dev/null +++ b/deskutils/gnotime/files/patch-lib::qof::qofquery-serialize.c @@ -0,0 +1,181 @@ +--- lib/qof/qofquery-serialize.c.orig Wed Jul 7 23:54:57 2004 ++++ lib/qof/qofquery-serialize.c Thu Jul 8 00:02:12 2004 +@@ -228,9 +228,10 @@ + if (!safe_strcmp (pd->type_name, QOF_TYPE_STRING)) + { + xmlNodePtr topnode = xmlNewNode (NULL, "qofquery:pred-string"); ++ query_string_t pdata; + PUT_HOW ("qofquery:compare", pd->how, LT, LTE, EQUAL, GT, GTE, NEQ); + +- query_string_t pdata = (query_string_t) pd; ++ pdata = (query_string_t) pd; + PUT_MATCH2("qofquery:string-match", pdata->options, + STRING_MATCH, NORMAL, CASEINSENSITIVE); + PUT_BOOL ("qofquery:is-regex", pdata->is_regex); +@@ -240,9 +241,10 @@ + if (!safe_strcmp (pd->type_name, QOF_TYPE_NUMERIC)) + { + xmlNodePtr topnode = xmlNewNode (NULL, "qofquery:pred-numeric"); ++ query_numeric_t pdata; + PUT_HOW ("qofquery:compare", pd->how, LT, LTE, EQUAL, GT, GTE, NEQ); + +- query_numeric_t pdata = (query_numeric_t) pd; ++ pdata = (query_numeric_t) pd; + PUT_MATCH3("qofquery:numeric-match", pdata->options, + NUMERIC_MATCH, DEBIT, CREDIT, ANY); + +@@ -252,11 +254,12 @@ + if (!safe_strcmp (pd->type_name, QOF_TYPE_KVP)) + { + xmlNodePtr topnode = xmlNewNode (NULL, "qofquery:pred-kvp"); ++ query_kvp_t pdata; ++ GSList *n; + PUT_HOW ("qofquery:compare", pd->how, LT, LTE, EQUAL, GT, GTE, NEQ); + +- query_kvp_t pdata = (query_kvp_t) pd; ++ pdata = (query_kvp_t) pd; + +- GSList *n; + for (n=pdata->path; n; n=n->next) + { + PUT_STR ("qofquery:kvp-path", n->data); +@@ -267,9 +270,10 @@ + if (!safe_strcmp (pd->type_name, QOF_TYPE_DATE)) + { + xmlNodePtr topnode = xmlNewNode (NULL, "qofquery:pred-date"); ++ query_date_t pdata; + PUT_HOW ("qofquery:compare", pd->how, LT, LTE, EQUAL, GT, GTE, NEQ); + +- query_date_t pdata = (query_date_t) pd; ++ pdata = (query_date_t) pd; + + PUT_MATCH2("qofquery:date-match", pdata->options, + DATE_MATCH, NORMAL, ROUNDED); +@@ -280,18 +284,20 @@ + if (!safe_strcmp (pd->type_name, QOF_TYPE_INT64)) + { + xmlNodePtr topnode = xmlNewNode (NULL, "qofquery:pred-int64"); ++ query_int64_t pdata; + PUT_HOW ("qofquery:compare", pd->how, LT, LTE, EQUAL, GT, GTE, NEQ); + +- query_int64_t pdata = (query_int64_t) pd; ++ pdata = (query_int64_t) pd; + PUT_INT64 ("qofquery:int64", pdata->val); + return topnode; + } + if (!safe_strcmp (pd->type_name, QOF_TYPE_INT32)) + { + xmlNodePtr topnode = xmlNewNode (NULL, "qofquery:pred-int32"); ++ query_int32_t pdata; + PUT_HOW ("qofquery:compare", pd->how, LT, LTE, EQUAL, GT, GTE, NEQ); + +- query_int32_t pdata = (query_int32_t) pd; ++ pdata = (query_int32_t) pd; + + PUT_INT32 ("qofquery:int32", pdata->val); + return topnode; +@@ -299,9 +305,10 @@ + if (!safe_strcmp (pd->type_name, QOF_TYPE_DOUBLE)) + { + xmlNodePtr topnode = xmlNewNode (NULL, "qofquery:pred-double"); ++ query_double_t pdata; + PUT_HOW ("qofquery:compare", pd->how, LT, LTE, EQUAL, GT, GTE, NEQ); + +- query_double_t pdata = (query_double_t) pd; ++ pdata = (query_double_t) pd; + + PUT_DBL ("qofquery:double", pdata->val); + return topnode; +@@ -309,9 +316,10 @@ + if (!safe_strcmp (pd->type_name, QOF_TYPE_BOOLEAN)) + { + xmlNodePtr topnode = xmlNewNode (NULL, "qofquery:pred-boolean"); ++ query_boolean_t pdata; + PUT_HOW ("qofquery:compare", pd->how, LT, LTE, EQUAL, GT, GTE, NEQ); + +- query_boolean_t pdata = (query_boolean_t) pd; ++ pdata = (query_boolean_t) pd; + + PUT_BOOL ("qofquery:boolean", pdata->val); + return topnode; +@@ -386,9 +394,10 @@ + for ( ; n; n=n->next) + { + QofQueryTerm *qt = n->data; ++ xmlNodePtr t; + if (!qt) continue; + +- xmlNodePtr t = qof_query_one_term_to_xml (n->data); ++ t = qof_query_one_term_to_xml (n->data); + if (t) xmlAddChild (terms, t); + } + return terms; +@@ -419,31 +428,37 @@ + qof_query_sorts_to_xml (QofQuery *q) + { + QofQuerySort *s[3]; ++ xmlNodePtr sortlist; ++ int i; + qof_query_get_sorts (q, &s[0], &s[1], &s[2]); + + if (NULL == s[0]) return NULL; + +- xmlNodePtr sortlist = xmlNewNode (NULL, "qofquery:sort-list"); +- int i; ++ sortlist = xmlNewNode (NULL, "qofquery:sort-list"); + for (i=0; i<3; i++) + { ++ GSList *plist; ++ xmlNodePtr sort; ++ xmlNodePtr topnode; ++ gboolean increasing; ++ gint opt; ++ xmlNodePtr pl; + if (NULL == s[i]) continue; + +- GSList *plist = qof_query_sort_get_param_path (s[i]); ++ plist = qof_query_sort_get_param_path (s[i]); + if (!plist) continue; + +- xmlNodePtr sort = xmlNewNode (NULL, "qofquery:sort"); ++ sort = xmlNewNode (NULL, "qofquery:sort"); + xmlAddChild (sortlist, sort); + +- xmlNodePtr topnode = sort; +- +- gboolean increasing = qof_query_sort_get_increasing (s[i]); ++ topnode = sort; ++ increasing = qof_query_sort_get_increasing (s[i]); + PUT_STR ("qofquery:order", increasing ? "DESCENDING" : "ASCENDING"); + +- gint opt = qof_query_sort_get_sort_options (s[i]); ++ opt = qof_query_sort_get_sort_options (s[i]); + PUT_INT32 ("qofquery:options", opt); + +- xmlNodePtr pl = qof_query_param_path_to_xml (plist); ++ pl = qof_query_param_path_to_xml (plist); + if (pl) xmlAddChild (sort, pl); + } + +@@ -456,15 +471,18 @@ + do_qof_query_to_xml (QofQuery *q, xmlNodePtr topnode) + { + QofIdType search_for = qof_query_get_search_for (q); ++ xmlNodePtr terms; ++ xmlNodePtr sorts; ++ gint max_results; + PUT_STR ("qofquery:search-for", search_for); + +- xmlNodePtr terms = qof_query_terms_to_xml(q); ++ terms = qof_query_terms_to_xml(q); + if (terms) xmlAddChild (topnode, terms); + +- xmlNodePtr sorts = qof_query_sorts_to_xml (q); ++ sorts = qof_query_sorts_to_xml (q); + if (sorts) xmlAddChild (topnode, sorts); + +- gint max_results = qof_query_get_max_results (q); ++ max_results = qof_query_get_max_results (q); + PUT_INT32 ("qofquery:max-results", max_results); + } + diff --git a/deskutils/gnotime/files/patch-lib::qof::qofquery.c b/deskutils/gnotime/files/patch-lib::qof::qofquery.c new file mode 100644 index 000000000..21e2842d2 --- /dev/null +++ b/deskutils/gnotime/files/patch-lib::qof::qofquery.c @@ -0,0 +1,17 @@ +--- lib/qof/qofquery.c.orig Wed Jul 7 22:39:18 2004 ++++ lib/qof/qofquery.c Wed Jul 7 22:39:27 2004 +@@ -1216,13 +1216,13 @@ + + void qof_query_set_book (QofQuery *q, QofBook *book) + { ++ GSList *slist = NULL; + if (!q || !book) return; + + /* Make sure this book is only in the list once */ + if (g_list_index (q->books, book) == -1) + q->books = g_list_prepend (q->books, book); + +- GSList *slist = NULL; + g_slist_prepend (slist, QOF_PARAM_GUID); + g_slist_prepend (slist, QOF_PARAM_BOOK); + qof_query_add_guid_match (q, slist, diff --git a/deskutils/gnotime/files/patch-lib::qof::qofsql.c b/deskutils/gnotime/files/patch-lib::qof::qofsql.c new file mode 100644 index 000000000..32bc56664 --- /dev/null +++ b/deskutils/gnotime/files/patch-lib::qof::qofsql.c @@ -0,0 +1,323 @@ +--- lib/qof/qofsql.c.orig Sun May 23 16:58:28 2004 ++++ lib/qof/qofsql.c Thu Jul 8 00:11:24 2004 +@@ -133,8 +133,9 @@ + if (('\'' == str[0]) || + ('\"' == str[0])) + { ++ size_t len; + str ++; +- size_t len = strlen(str); ++ len = strlen(str); + str[len-1] = 0; + } + return str; +@@ -146,6 +147,15 @@ + char tmpbuff[128]; + GSList *param_list; + QofQueryPredData *pred_data = NULL; ++ sql_field_item * sparam; ++ char * qparam_name; ++ sql_field_item * svalue; ++ char * qvalue_name; ++ QofQueryCompare qop; ++ char *table_name; ++ char *param_name; ++ QofType param_type; ++ QofQuery *qq; + + if (NULL == cond) + { +@@ -161,14 +171,14 @@ + PWARN("missing left paramter"); + return NULL; + } +- sql_field_item * sparam = cond->d.pair.left->item; ++ sparam = cond->d.pair.left->item; + if (SQL_name != sparam->type) + { + PWARN("we support only paramter names at this time (parsed %d)", + sparam->type); + return NULL; + } +- char * qparam_name = sparam->d.name->data; ++ qparam_name = sparam->d.name->data; + if (NULL == qparam_name) + { + PWARN ("missing paramter name"); +@@ -183,13 +193,13 @@ + PWARN ("missing right paramter"); + return NULL; + } +- sql_field_item * svalue = cond->d.pair.right->item; ++ svalue = cond->d.pair.right->item; + if (SQL_name != svalue->type) + { + PWARN("we support only simple values (parsed as %d)", svalue->type); + return NULL; + } +- char * qvalue_name = svalue->d.name->data; ++ qvalue_name = svalue->d.name->data; + if (NULL == qvalue_name) + { + PWARN("missing value"); +@@ -202,16 +212,18 @@ + * If it is, look up the value. */ + if (0 == strncasecmp (qvalue_name, "kvp://", 6)) + { ++ KvpValue *kv; ++ KvpValueType kvt; + if (NULL == query->kvp_join) + { + PWARN ("missing kvp frame"); + return NULL; + } +- KvpValue *kv = kvp_frame_get_value (query->kvp_join, qvalue_name+5); ++ kv = kvp_frame_get_value (query->kvp_join, qvalue_name+5); + /* If there's no value, its not an error; + * we just don't do this predicate */ + if (!kv) return NULL; +- KvpValueType kvt = kvp_value_get_type (kv); ++ kvt = kvp_value_get_type (kv); + + tmpbuff[0] = 0x0; + qvalue_name = tmpbuff; +@@ -251,7 +263,6 @@ + param_list = qof_query_build_param_list (qparam_name, NULL); + + /* Get the where-term comparison operator */ +- QofQueryCompare qop; + switch (cond->op) + { + case SQL_eq: qop = QOF_COMPARE_EQUAL; break; +@@ -270,8 +281,6 @@ + /* OK, need to know the type of the thing being matched + * in order to build the correct predicate. Get the type + * from the object parameters. */ +- char *table_name; +- char *param_name; + get_table_and_param (qparam_name, &table_name, ¶m_name); + if (NULL == table_name) + { +@@ -290,7 +299,7 @@ + return NULL; + } + +- QofType param_type = qof_class_get_parameter_type (table_name, param_name); ++ param_type = qof_class_get_parameter_type (table_name, param_name); + if (!param_type) + { + PWARN ("The parameter \'%s\' on object \'%s\' is not known", +@@ -319,7 +328,7 @@ + } + else if (!strcmp (param_type, QOF_TYPE_INT64)) + { +- gint64 ival = atoll (qvalue_name); ++ gint64 ival = strtoll (qvalue_name, (char **)NULL, 10); + pred_data = qof_query_int64_predicate (qop, ival); + } + else if (!strcmp (param_type, QOF_TYPE_DOUBLE)) +@@ -337,16 +346,17 @@ + // XXX FIXME: this doesn't handle time strings, only date strings + // XXX should also see if we need to do a day-compare or time-compare. + /* work around highly bogus locale setting */ ++ time_t exact; ++ int rc; ++ Timespec ts; + qof_date_format_set(QOF_DATE_FORMAT_US); + +- time_t exact; +- int rc = qof_scan_date_secs (qvalue_name, &exact); ++ rc = qof_scan_date_secs (qvalue_name, &exact); + if (0 == rc) + { + PWARN ("unable to parse date: %s", qvalue_name); + return NULL; + } +- Timespec ts; + ts.tv_sec = exact; + ts.tv_nsec = 0; + pred_data = qof_query_date_predicate (qop, QOF_DATE_MATCH_DAY, ts); +@@ -367,7 +377,9 @@ + else if (!strcmp (param_type, QOF_TYPE_GUID)) + { + GUID guid; ++ QofGuidMatch gm; + gboolean rc = string_to_guid (qvalue_name, &guid); ++ GList *guid_list; + if (0 == rc) + { + PWARN ("unable to parse guid: %s", qvalue_name); +@@ -377,9 +389,9 @@ + // XXX less, than greater than don't make sense, + // should check for those bad conditions + +- QofGuidMatch gm = QOF_GUID_MATCH_ANY; ++ gm = QOF_GUID_MATCH_ANY; + if (QOF_COMPARE_NEQ == qop) gm = QOF_GUID_MATCH_NONE; +- GList *guid_list = g_list_append (NULL, &guid); ++ guid_list = g_list_append (NULL, &guid); + pred_data = qof_query_guid_predicate (gm, guid_list); + + g_list_free (guid_list); +@@ -390,11 +402,15 @@ + * /some/path/string:value + */ + char *sep = strchr (qvalue_name, ':'); ++ char * path; ++ char * str; ++ char * p; ++ KvpValue *kval = NULL; ++ int len; + if (!sep) return NULL; + *sep = 0; +- char * path = qvalue_name; +- char * str = sep +1; +- char * p; ++ path = qvalue_name; ++ str = sep +1; + /* If str has only digits, we know its a plain number. + * If its numbers and a decimal point, assume a float + * If its numbers and a slash, assume numeric +@@ -402,8 +418,7 @@ + * If it looks like an iso date ... + * else assume its a string. + */ +- KvpValue *kval = NULL; +- int len = strlen (str); ++ len = strlen (str); + if ((32 == len) && (32 == strspn (str, "0123456789abcdef"))) + { + GUID guid; +@@ -413,7 +428,7 @@ + else + if (len == strspn (str, "0123456789")) + { +- kval = kvp_value_new_gint64 (atoll(str)); ++ kval = kvp_value_new_gint64 (strtoll(str, (char **)NULL, 10)); + } + else + if ((p=strchr (str, '.')) && +@@ -455,7 +470,7 @@ + return NULL; + } + +- QofQuery *qq = qof_query_create(); ++ qq = qof_query_create(); + qof_query_add_term (qq, param_list, pred_data, QOF_QUERY_FIRST_TERM); + return qq; + } +@@ -471,9 +486,10 @@ + { + QofQuery *qleft = handle_where (query, swear->d.pair.left); + QofQuery *qright = handle_where (query, swear->d.pair.right); ++ QofQueryOp qop; ++ QofQuery * qq; + if (NULL == qleft) return qright; + if (NULL == qright) return qleft; +- QofQueryOp qop; + switch (swear->d.pair.op) + { + case SQL_and: qop = QOF_QUERY_AND; break; +@@ -484,7 +500,7 @@ + qof_query_destroy (qright); + return NULL; + } +- QofQuery * qq = qof_query_merge (qleft, qright, qop); ++ qq = qof_query_merge (qleft, qright, qop); + qof_query_destroy (qleft); + qof_query_destroy (qright); + return qq; +@@ -511,11 +527,11 @@ + static void + handle_sort_order (QofSqlQuery *query, GList *sorder_list) + { +- if (!sorder_list) return; +- + GSList *qsp[3]; + gboolean direction[3]; + int i; ++ if (!sorder_list) return; ++ + + for (i=0; i<3; i++) + { +@@ -524,14 +540,15 @@ + + if (sorder_list) + { ++ char * qparam_name = NULL; ++ GList *n; + sql_order_field *sorder = sorder_list->data; + + /* Set the sort direction */ + if (SQL_asc == sorder->order_type) direction[i] = TRUE; + + /* Find the paramter name */ +- char * qparam_name = NULL; +- GList *n = sorder->name; ++ n = sorder->name; + if (n) + { + qparam_name = n->data; +@@ -559,6 +576,9 @@ + void + qof_sql_query_parse (QofSqlQuery *query, const char *str) + { ++ GList *tables; ++ sql_select_statement *sss; ++ sql_where * swear; + if (!query) return; + + /* Delete old query, if any */ +@@ -590,14 +610,14 @@ + * user wrote "SELECT * FROM tableA, tableB WHERE ..." + * then we don't have a single unique table-name. + */ +- GList *tables = sql_statement_get_tables (query->parse_result); ++ tables = sql_statement_get_tables (query->parse_result); + if (1 == g_list_length (tables)) + { + query->single_global_tablename = tables->data; + } + +- sql_select_statement *sss = query->parse_result->statement; +- sql_where * swear = sss->where; ++ sss = query->parse_result->statement; ++ swear = sss->where; + if (swear) + { + /* Walk over the where terms, turn them into QOF predicates */ +@@ -626,6 +646,7 @@ + qof_sql_query_run (QofSqlQuery *query, const char *str) + { + GList *node; ++ GList *results; + + if (!query) return NULL; + +@@ -635,7 +656,7 @@ + qof_query_set_book (query->qof_query, query->book); + + // qof_query_print (query->qof_query); +- GList *results = qof_query_run (query->qof_query); ++ results = qof_query_run (query->qof_query); + + return results; + } +@@ -644,6 +665,7 @@ + qof_sql_query_rerun (QofSqlQuery *query) + { + GList *node; ++ GList *results; + + if (!query) return NULL; + +@@ -652,7 +674,7 @@ + qof_query_set_book (query->qof_query, query->book); + + // qof_query_print (query->qof_query); +- GList *results = qof_query_run (query->qof_query); ++ results = qof_query_run (query->qof_query); + + return results; + } diff --git a/deskutils/gnotime/files/patch-src::export.c b/deskutils/gnotime/files/patch-src::export.c new file mode 100644 index 000000000..c53fa40cf --- /dev/null +++ b/deskutils/gnotime/files/patch-src::export.c @@ -0,0 +1,36 @@ +--- src/export.c.orig Thu Jul 8 00:14:29 2004 ++++ src/export.c Thu Jul 8 00:15:18 2004 +@@ -124,12 +124,14 @@ + export_really (GtkWidget *widget, export_format_t *xp) + { + gboolean rc; ++ GnomeVFSURI *parsed_uri; ++ gboolean exists; ++ GnomeVFSResult result; + + xp->uri = gtk_file_selection_get_filename (xp->picker); + +- GnomeVFSURI *parsed_uri; + parsed_uri = gnome_vfs_uri_new (xp->uri); +- gboolean exists = gnome_vfs_uri_exists (parsed_uri); ++ exists = gnome_vfs_uri_exists (parsed_uri); + if (exists) + { + GtkWidget *w; +@@ -144,14 +146,14 @@ + if (0 == gnome_dialog_run (GNOME_DIALOG (w))) goto done; + } + +- GnomeVFSResult result; + result = gnome_vfs_create (&xp->handle, xp->uri, GNOME_VFS_OPEN_WRITE, + FALSE, 0644); + if (GNOME_VFS_OK != result) + { + char *s; ++ GtkWidget *w; + s = g_strdup_printf (_("File %s dould not be opened"), xp->uri); +- GtkWidget *w = gnome_error_dialog (s); ++ w = gnome_error_dialog (s); + gnome_dialog_set_parent (GNOME_DIALOG (w), GTK_WINDOW (xp->picker)); + g_free (s); + goto done; diff --git a/deskutils/gnotime/files/patch-src::ghtml.c b/deskutils/gnotime/files/patch-src::ghtml.c new file mode 100644 index 000000000..e80545fbe --- /dev/null +++ b/deskutils/gnotime/files/patch-src::ghtml.c @@ -0,0 +1,63 @@ +--- src/ghtml.c.orig Sat May 22 09:16:50 2004 ++++ src/ghtml.c Thu Jul 8 00:16:27 2004 +@@ -169,8 +169,9 @@ + type = SCM_CDR (node); + if (SCM_SYMBOLP(type) || SCM_STRINGP (type)) + { ++ char *buff; + cur_type = GTT_NONE; +- char *buff = SCM_STRING_CHARS (type); ++ buff = SCM_STRING_CHARS (type); + + if ((!strncmp (buff, "gtt-project-ptr",15)) || + (!strncmp (buff, "gtt-project-list",16))) +@@ -1271,6 +1272,9 @@ + static SCM + my_catch_handler (void *data, SCM tag, SCM throw_args) + { ++ SCM fmt; ++ SCM s_str; ++ + printf ("Error: GnoTime caught error during scheme parse\n"); + if (SCM_SYMBOLP(tag)) + { +@@ -1279,8 +1283,8 @@ + } + scm_backtrace(); + +- SCM fmt = scm_makfrom0str ("~S"); +- SCM s_str = scm_simple_format (SCM_BOOL_F, fmt, SCM_LIST1(throw_args)); ++ fmt = scm_makfrom0str ("~S"); ++ s_str = scm_simple_format (SCM_BOOL_F, fmt, SCM_LIST1(throw_args)); + printf ("\tthrow_args=%s\n", SCM_STRING_CHARS (s_str)); + + return SCM_EOL; +@@ -1297,8 +1301,9 @@ + /* no-op for now, just copy it into the window */ + if (ghtml->write_stream) + { ++ size_t nr; + (ghtml->write_stream) (ghtml, "user_data); +- size_t nr = strlen (str); ++ nr = strlen (str); + (ghtml->write_stream) (ghtml, str, nr, ghtml->user_data); + (ghtml->write_stream) (ghtml, ">", 1, ghtml->user_data); + } +@@ -1313,6 +1318,8 @@ + GString *template; + char *start, *end, *scmstart, *comstart, *linkstart; + size_t nr; ++ GnomeVFSResult result; ++ GnomeVFSHandle *handle; + + if (!ghtml) return; + if (prj) ghtml->prj = prj; +@@ -1327,8 +1334,6 @@ + } + + /* Try to get the ghtml file ... */ +- GnomeVFSResult result; +- GnomeVFSHandle *handle; + result = gnome_vfs_open (&handle, filepath, GNOME_VFS_OPEN_READ); + if ((GNOME_VFS_OK != result) && (0==ghtml->open_count)) + { diff --git a/deskutils/gnotime/files/patch-src::idle-dialog.c b/deskutils/gnotime/files/patch-src::idle-dialog.c new file mode 100644 index 000000000..0e271a9f6 --- /dev/null +++ b/deskutils/gnotime/files/patch-src::idle-dialog.c @@ -0,0 +1,54 @@ +--- src/idle-dialog.c.orig Thu Jul 8 00:17:13 2004 ++++ src/idle-dialog.c Thu Jul 8 00:18:46 2004 +@@ -111,12 +111,14 @@ + { + char * p; + char * ret; ++ int ampcnt = 0; ++ int len; ++ const char *start; + + p = strchr (str, '&'); + if (!p) return g_strdup (str); + + /* count number of ampersands */ +- int ampcnt = 0; + while (p) + { + ampcnt ++; +@@ -124,12 +126,12 @@ + } + + /* make room for the escapes */ +- int len = strlen(str); ++ len = strlen(str); + ret = g_new0 (char, len+4*ampcnt+1); + + /* replace & by & unless its already & */ + p = strchr (str, '&'); +- const char *start = str; ++ start = str; + while (p) + { + strncat (ret, start, p-start); +@@ -158,6 +160,8 @@ + char * msg; + time_t now = time(0); + time_t idle_time; ++ char *ptitle; ++ char *pdesc; + + /* Set a value for the thingy under the slider */ + if (3600 > credit) +@@ -201,9 +205,9 @@ + /* Update the total elapsed time part of the message */ + idle_time = now - dlg->last_activity; + +- char *ptitle = util_escape_html_markup ( ++ ptitle = util_escape_html_markup ( + gtt_project_get_title(dlg->prj)); +- char *pdesc = util_escape_html_markup ( ++ pdesc = util_escape_html_markup ( + gtt_project_get_desc(dlg->prj)); + if (3600 > idle_time) + { diff --git a/deskutils/gnotime/files/patch-src::journal.c b/deskutils/gnotime/files/patch-src::journal.c new file mode 100644 index 000000000..c8ad8d376 --- /dev/null +++ b/deskutils/gnotime/files/patch-src::journal.c @@ -0,0 +1,224 @@ +--- src/journal.c.orig Sat May 8 12:14:49 2004 ++++ src/journal.c Thu Jul 8 00:23:23 2004 +@@ -200,8 +200,10 @@ + + /* Don't clobber the file, ask user for permission */ + GnomeVFSURI *parsed_uri; ++ gboolean exists; ++ GnomeVFSResult result; + parsed_uri = gnome_vfs_uri_new (filename); +- gboolean exists = gnome_vfs_uri_exists (parsed_uri); ++ exists = gnome_vfs_uri_exists (parsed_uri); + gnome_vfs_uri_unref (parsed_uri); + if (exists) + { +@@ -217,7 +219,6 @@ + } + + /* Try to open the file for writing */ +- GnomeVFSResult result; + result = gnome_vfs_create (&wig->handle, filename, + GNOME_VFS_OPEN_WRITE, FALSE, 0644); + +@@ -392,12 +393,15 @@ + GttTask *tsk = gtt_interval_get_parent (wig->interval); + GttProject *prj = gtt_task_get_parent (tsk); + GList *tasks = gtt_project_get_tasks (prj); ++ GList *this_task; ++ GList *prev_task; ++ GttTask *newtask; + if (!tasks) return; +- GList *this_task = g_list_find (tasks, tsk); ++ this_task = g_list_find (tasks, tsk); + if (!this_task) return; +- GList *prev_task = this_task->prev; ++ prev_task = this_task->prev; + if (!prev_task) return; +- GttTask *newtask = prev_task->data; ++ newtask = prev_task->data; + gtt_task_append_interval (newtask, wig->interval); + } + +@@ -408,12 +412,15 @@ + GttTask *tsk = gtt_interval_get_parent (wig->interval); + GttProject *prj = gtt_task_get_parent (tsk); + GList *tasks = gtt_project_get_tasks (prj); ++ GList *this_task; ++ GList *next_task; ++ GttTask *newtask; + if (!tasks) return; +- GList *this_task = g_list_find (tasks, tsk); ++ this_task = g_list_find (tasks, tsk); + if (!this_task) return; +- GList *next_task = this_task->next; ++ next_task = this_task->next; + if (!next_task) return; +- GttTask *newtask = next_task->data; ++ newtask = next_task->data; + gtt_task_add_interval (newtask, wig->interval); + } + +@@ -461,6 +468,7 @@ + static void + interval_popup_cb (Wiggy *wig) + { ++ GttTask *tsk; + gtk_menu_popup(GTK_MENU(wig->interval_popup), + NULL, NULL, NULL, wig, 1, 0); + if (cutted_task_list) +@@ -494,7 +502,7 @@ + gtk_widget_set_sensitive (wig->interval_move_down, FALSE); + } + +- GttTask *tsk = gtt_interval_get_parent(wig->interval); ++ tsk = gtt_interval_get_parent(wig->interval); + if (gtt_task_is_first_task (tsk)) + { + gtk_widget_set_sensitive (wig->interval_move_up, FALSE); +@@ -558,6 +566,7 @@ + static void + task_delete_memo_clicked_cb(GtkWidget * w, gpointer data) + { ++ GList * ctl; + Wiggy *wig = (Wiggy *) data; + + /* It is physically impossible to cut just the memo, without +@@ -566,7 +575,7 @@ + + gtt_task_merge_up (wig->task); + +- GList * ctl = g_list_prepend(cutted_task_list, wig->task); ++ ctl = g_list_prepend(cutted_task_list, wig->task); + gtt_task_remove (wig->task); + cutted_task_list = ctl; + } +@@ -748,9 +757,10 @@ + on_close_clicked_cb (GtkWidget *w, gpointer data) + { + Wiggy *wig = (Wiggy *) data; ++ GtkWidget *topper; + + if (NULL == wig->top) return; /* avoid recursive double-free */ +- GtkWidget *topper = wig->top; /* avoid recursion */ ++ topper = wig->top; /* avoid recursion */ + wig->top = NULL; + gtk_widget_destroy (topper); + +@@ -838,17 +848,17 @@ + { + Wiggy *wig = data; + const char * path = gtt_ghtml_resolve_path (url, wig->filepath); +- if (!path) return; +- + GnomeVFSResult result; + GnomeVFSHandle *vfs; ++#define BSZ 16000 ++ char buff[BSZ]; ++ GnomeVFSFileSize bytes_read; ++ if (!path) return; ++ + result = gnome_vfs_open (&vfs, path, GNOME_VFS_OPEN_READ); + + if (GNOME_VFS_OK != result) return; + +-#define BSZ 16000 +- char buff[BSZ]; +- GnomeVFSFileSize bytes_read; + result = gnome_vfs_read (vfs, buff, BSZ, &bytes_read); + while (GNOME_VFS_OK == result) + { +@@ -873,6 +883,7 @@ + { + char * str; + gpointer addr = NULL; ++ char * msg = _("Left-click to bring up menu"); + + /* h4x0r al3rt bare-naked pointer parsing! */ + str = strstr (url, "0x"); +@@ -909,7 +920,6 @@ + return msg; + } + +- char * msg = _("Left-click to bring up menu"); + return g_strdup (msg); + } + +@@ -972,8 +982,14 @@ + /* Create and initialize the hover-help window */ + if (!wig->hover_help_window) + { ++ GtkWidget *label; ++ int px=0, py=0, rx=0, ry=0; ++ GtkWindow *wino; ++ GtkWidget *frame; ++ GtkWidget *align; ++ + wig->hover_help_window = gtk_window_new(GTK_WINDOW_POPUP); +- GtkWindow *wino = GTK_WINDOW (wig->hover_help_window); ++ wino = GTK_WINDOW (wig->hover_help_window); + gtk_window_set_decorated (wino, FALSE); + gtk_window_set_destroy_with_parent (wino, TRUE); + gtk_window_set_transient_for (wino, GTK_WINDOW(wig->top)); +@@ -981,19 +997,19 @@ + gtk_window_set_resizable (wino, FALSE); /* FALSE to enable auto-resize */ + + /* There must be a better way to draw a line around the box ?? */ +- GtkWidget *frame = gtk_frame_new (NULL); ++ frame = gtk_frame_new (NULL); + gtk_container_add(GTK_CONTAINER(wino), frame); + gtk_container_set_resize_mode (GTK_CONTAINER(frame), GTK_RESIZE_PARENT); + gtk_widget_show (frame); + + /* There must be a better way to pad the text all around ?? */ +- GtkWidget *align = gtk_alignment_new (0.5, 0.5, 1.0, 1.0); ++ align = gtk_alignment_new (0.5, 0.5, 1.0, 1.0); + // gtk_alignment_set_padding (GTK_ALIGNMENT(align), 6, 6, 6, 6); + gtk_container_add(GTK_CONTAINER(frame), align); + gtk_container_set_resize_mode (GTK_CONTAINER(align), GTK_RESIZE_PARENT); + gtk_widget_show (align); + +- GtkWidget *label = gtk_label_new ("xxx"); ++ label = gtk_label_new ("xxx"); + wig->hover_label = GTK_LABEL (label); + gtk_container_add(GTK_CONTAINER(align), label); + gtk_widget_show (label); +@@ -1002,7 +1018,6 @@ + gtk_window_set_focus (GTK_WINDOW(wig->top), GTK_WIDGET(wig->html)); + + /* Set up in initial default, so later move works. */ +- int px=0, py=0, rx=0, ry=0; + gtk_widget_get_pointer (GTK_WIDGET(wig->top), &px, &py); + gtk_window_get_position (GTK_WINDOW(wig->top), &rx, &ry); + gtk_window_move (wino, rx+px, ry+py); +@@ -1053,25 +1068,28 @@ + perform_form_query (KvpFrame *kvpf) + { + GList *results, *n; ++ char *user_debug; ++ char *query_string; ++ QofSqlQuery *q; + + if (!kvpf) return NULL; + + /* Allow the user to enable form debugging by adding the following html: + * + */ +- char *user_debug = kvp_frame_get_string (kvpf, "debug"); ++ user_debug = kvp_frame_get_string (kvpf, "debug"); + if (user_debug) + { + printf ("Debug: HTML Form Input=%s\n", kvp_frame_to_string (kvpf)); + } + +- QofSqlQuery *q = qof_sql_query_new(); ++ q = qof_sql_query_new(); + + if (!book) book = qof_book_new(); + qof_sql_query_set_book (q, book); + qof_sql_query_set_kvp (q, kvpf); + +- char *query_string = kvp_frame_get_string (kvpf, "query"); ++ query_string = kvp_frame_get_string (kvpf, "query"); + if (!query_string) return NULL; + if (0 == query_string[0]) return NULL; + diff --git a/deskutils/gnotime/files/patch-src::log.c b/deskutils/gnotime/files/patch-src::log.c new file mode 100644 index 000000000..faf829698 --- /dev/null +++ b/deskutils/gnotime/files/patch-src::log.c @@ -0,0 +1,25 @@ +--- src/log.c.orig Thu Jul 8 00:23:54 2004 ++++ src/log.c Thu Jul 8 00:24:18 2004 +@@ -37,6 +37,8 @@ + char *filename; + GnomeVFSHandle *handle; + GnomeVFSResult result; ++ GnomeVFSFileSize bytes_written; ++ int rc; + + g_return_val_if_fail (logstr != NULL, FALSE); + +@@ -67,12 +69,11 @@ + t = time(NULL); + + /* Translators: Format to use in the gnotime logfile */ +- int rc = strftime (date, sizeof (date), _("%b %d %H:%M:%S"), localtime(&t)); ++ rc = strftime (date, sizeof (date), _("%b %d %H:%M:%S"), localtime(&t)); + if (0 >= rc) strcpy (date, "???"); + + /* Append to end of file */ + gnome_vfs_seek (handle, GNOME_VFS_SEEK_END, 0); +- GnomeVFSFileSize bytes_written; + gnome_vfs_write (handle, date, strlen(date), &bytes_written); + gnome_vfs_write (handle, logstr, strlen(logstr), &bytes_written); + gnome_vfs_write (handle, "\n", 1, &bytes_written); diff --git a/deskutils/gnotime/files/patch-src::main.c b/deskutils/gnotime/files/patch-src::main.c new file mode 100644 index 000000000..212a4fbf1 --- /dev/null +++ b/deskutils/gnotime/files/patch-src::main.c @@ -0,0 +1,67 @@ +--- src/main.c.orig Sun May 23 16:08:47 2004 ++++ src/main.c Thu Jul 8 00:25:04 2004 +@@ -299,6 +299,7 @@ + char * xml_filepath; + gboolean read_is_ok; + char *errmsg, *qmsg; ++ GtkWidget *mb; + + xml_filepath = resolve_old_path (config_data_url); + +@@ -347,7 +348,6 @@ + _("Do you want to continue?"), + NULL); + +- GtkWidget *mb; + mb = gtk_message_dialog_new (NULL, + GTK_DIALOG_MODAL, + GTK_MESSAGE_ERROR, +@@ -398,13 +398,13 @@ + { + const char *fp; + char *errmsg, *qmsg; ++ GtkWidget *mb; + fp = gtt_get_config_filepath(); + errmsg = gtt_err_to_string (conf_errcode, fp); + qmsg = g_strconcat (errmsg, + _("Shall I setup a new configuration?"), + NULL); + +- GtkWidget *mb; + mb = gtk_message_dialog_new (NULL, + GTK_DIALOG_MODAL, + GTK_MESSAGE_ERROR, +@@ -719,11 +719,7 @@ + int + main(int argc, char *argv[]) + { +-#if defined (HAVE_DECL_WNOHANG) || defined (HAVE_DECL_SA_NOCLDWAIT) +- struct sigaction reapchildren; +- memset(&reapchildren, 0, sizeof reapchildren); +-#endif /* WNOHANG/SA_NOCLDWAIT */ +- ++ GnomeClient *client; + static char *geometry_string = NULL; + static const struct poptOption geo_options[] = + { +@@ -734,6 +730,11 @@ + {NULL, '\0', 0, NULL, 0} + }; + ++#if defined (HAVE_DECL_WNOHANG) || defined (HAVE_DECL_SA_NOCLDWAIT) ++ struct sigaction reapchildren; ++ memset(&reapchildren, 0, sizeof reapchildren); ++#endif /* WNOHANG/SA_NOCLDWAIT */ ++ + gnome_program_init(PACKAGE, VERSION, LIBGNOMEUI_MODULE, argc, argv, + GNOME_PARAM_POPT_TABLE, geo_options, + GNOME_PROGRAM_STANDARD_PROPERTIES, NULL); +@@ -745,7 +746,7 @@ + bind_textdomain_codeset(GETTEXT_PACKAGE, "UTF-8"); + textdomain(GETTEXT_PACKAGE); + +- GnomeClient *client = gnome_master_client(); ++ client = gnome_master_client(); + g_signal_connect(G_OBJECT(client), "save_yourself", + G_CALLBACK(save_state), (gpointer) argv[0]); + g_signal_connect(G_OBJECT(client), "die", diff --git a/deskutils/gnotime/files/patch-src::menucmd.c b/deskutils/gnotime/files/patch-src::menucmd.c new file mode 100644 index 000000000..f2c78d8d7 --- /dev/null +++ b/deskutils/gnotime/files/patch-src::menucmd.c @@ -0,0 +1,50 @@ +--- src/menucmd.c.orig Sun Apr 25 19:55:37 2004 ++++ src/menucmd.c Thu Jul 8 00:25:52 2004 +@@ -343,6 +343,7 @@ + cut_project(GtkWidget *w, gpointer data) + { + GttProject *cut_prj; ++ GttProject *prj; + + /* Do NOT cut unless the ctree window actually has focus. + * Otherwise, it will lead to cutting mayhem. +@@ -364,7 +365,7 @@ + + /* Update various subsystems */ + /* Set the notes are to whatever the new focus project is. */ +- GttProject *prj = ctree_get_focus_project (global_ptw); ++ prj = ctree_get_focus_project (global_ptw); + notes_area_set_project (global_na, prj); + + menu_set_states(); /* To enable paste menu item */ +@@ -424,6 +425,7 @@ + copy_project(GtkWidget *w, gpointer data) + { + GttProject *prj; ++ GList *n; + prj = ctree_get_focus_project (global_ptw); + + if (!prj) return; +@@ -434,7 +436,7 @@ + * the list of earlier cut projects. We do this in order + * to allow the most recently copied project to be pasted + * multiple times. */ +- GList *n = cutted_project_list; ++ n = cutted_project_list; + for (n=cutted_project_list; n; n=n->next) + { + GttProject *p = n->data; +@@ -519,12 +521,12 @@ + menu_howto_edit_times (GtkWidget *w,gpointer data) + { + char * msg; ++ GtkWidget *mb; + + msg = _("To edit the timer interval for this project,\n" + "open the Journal window and click on a link.\n" + "This will bring up a menu of time editing options.\n"); + +- GtkWidget *mb; + mb = gtk_message_dialog_new (NULL, + GTK_DIALOG_MODAL, + GTK_MESSAGE_INFO, diff --git a/deskutils/gnotime/files/patch-src::plug-in.c b/deskutils/gnotime/files/patch-src::plug-in.c new file mode 100644 index 000000000..6a7c17289 --- /dev/null +++ b/deskutils/gnotime/files/patch-src::plug-in.c @@ -0,0 +1,22 @@ +--- src/plug-in.c.orig Thu Jul 8 00:26:35 2004 ++++ src/plug-in.c Thu Jul 8 00:27:06 2004 +@@ -96,6 +96,8 @@ + { + const char *title, *path, *tip; + NewPluginDialog *dlg = data; ++ GnomeVFSURI *parsed_uri; ++ gboolean exists; + + /* Get the dialog contents */ + title = gtk_entry_get_text (dlg->plugin_name); +@@ -103,9 +105,8 @@ + tip = gtk_entry_get_text (dlg->plugin_tooltip); + + /* Do a basic sanity check */ +- GnomeVFSURI *parsed_uri; + parsed_uri = gnome_vfs_uri_new (path); +- gboolean exists = gnome_vfs_uri_exists (parsed_uri); ++ exists = gnome_vfs_uri_exists (parsed_uri); + gnome_vfs_uri_unref (parsed_uri); + if (!exists) + { diff --git a/deskutils/gnotime/files/patch-src::prefs.c b/deskutils/gnotime/files/patch-src::prefs.c new file mode 100644 index 000000000..40db4b8d8 --- /dev/null +++ b/deskutils/gnotime/files/patch-src::prefs.c @@ -0,0 +1,95 @@ +--- src/prefs.c.orig Mon May 24 20:25:52 2004 ++++ src/prefs.c Mon May 24 20:29:36 2004 +@@ -200,10 +200,12 @@ + scan_time_string (const char *str) + { + int hours=0, minutes=0, seconds = 0; ++ int totalsecs; + char buff[24]; ++ char *p; + strncpy (buff, str, 24); + buff[23]=0; +- char * p = strchr (buff, ':'); ++ p = strchr (buff, ':'); + if (p) *p = 0; + hours = atoi (buff); + if (p) +@@ -221,7 +223,7 @@ + minutes %= 60; + hours %= 24; + +- int totalsecs = hours*3600 + minutes*60 + seconds; ++ totalsecs = hours*3600 + minutes*60 + seconds; + if (12*3600 < totalsecs) totalsecs -= 24*3600; + return totalsecs; + } +@@ -373,14 +375,16 @@ + if (5 == page) + { + int change = 0; ++ int off, day; ++ const char *buff; + config_idle_timeout = atoi(gtk_entry_get_text(GTK_ENTRY(odlg->idle_secs))); + + /* Hunt for the hour-of night on which to start */ +- const char * buff = gtk_entry_get_text (odlg->daystart_secs); +- int off = scan_time_string (buff); ++ buff = gtk_entry_get_text (odlg->daystart_secs); ++ off = scan_time_string (buff); + SET_VAL (config_daystart_offset,off); + +- int day = get_optionmenu_item (odlg->weekstart_menu); ++ day = get_optionmenu_item (odlg->weekstart_menu); + SET_VAL (config_weekstart_offset, day); + + if (change) +@@ -421,6 +425,8 @@ + options_dialog_set(PrefsDialog *odlg) + { + char s[30]; ++ int hour, secs, day; ++ char buff[24]; + + SET_ACTIVE(secs); + SET_ACTIVE(statusbar); +@@ -495,7 +501,6 @@ + gtk_entry_set_text(GTK_ENTRY(odlg->idle_secs), s); + + /* Set the correct menu item based on current values */ +- int hour; + if (0daystart_menu, hour); + + /* Print the daystart offset as a string in 24 hour time */ +- int secs = config_daystart_offset; ++ secs = config_daystart_offset; + if (0 > secs) secs += 24*3600; +- char buff[24]; + qof_print_hours_elapsed_buff (buff, 24, secs, config_show_secs); + gtk_entry_set_text (odlg->daystart_secs, buff); + + /* Set the correct menu item based on current values */ +- int day = config_weekstart_offset; ++ day = config_weekstart_offset; + set_optionmenu_item (odlg->weekstart_menu, day); + + /* set to unmodified as it reflects the current state of the app */ +@@ -531,12 +535,13 @@ + { + PrefsDialog *dlg = data; + ++ int secs; ++ char buff[24]; + int hour = get_optionmenu_item (dlg->daystart_menu); + hour += -3; /* menu starts at 9PM */ + +- int secs = hour * 3600; ++ secs = hour * 3600; + if (0 > secs) secs += 24*3600; +- char buff[24]; + qof_print_hours_elapsed_buff (buff, 24, secs, config_show_secs); + gtk_entry_set_text (dlg->daystart_secs, buff); + } diff --git a/deskutils/gnotime/files/patch-src::proj.c b/deskutils/gnotime/files/patch-src::proj.c new file mode 100644 index 000000000..517ba3a2c --- /dev/null +++ b/deskutils/gnotime/files/patch-src::proj.c @@ -0,0 +1,54 @@ +--- src/proj.c.orig Thu Jul 8 00:27:36 2004 ++++ src/proj.c Thu Jul 8 00:28:32 2004 +@@ -1948,8 +1948,6 @@ + gboolean + gtt_project_obj_register (void) + { +- global_book = qof_book_new(); +- + /* Associate an ASCII name to each getter, as well as the return type */ + static QofParam params[] = { + { GTT_PROJECT_EARLIEST, QOF_TYPE_DATE, (QofAccessFunc)prj_obj_get_earliest, NULL}, +@@ -1957,6 +1955,8 @@ + { NULL }, + }; + ++ global_book = qof_book_new(); ++ + qof_class_register (GTT_PROJECT_ID, (QofSortFunc)prj_obj_order, params); + return qof_object_register (&prj_object_def); + } +@@ -2290,9 +2290,10 @@ + gboolean + gtt_task_is_last_task (GttTask *tsk) + { ++ GList *last; + if (!tsk || !tsk->parent || !tsk->parent->task_list) return TRUE; + +- GList *last = g_list_last (tsk->parent->task_list); ++ last = g_list_last (tsk->parent->task_list); + if ((GttTask *) last->data == tsk) return TRUE; + return FALSE; + } +@@ -2354,9 +2355,9 @@ + gtt_task_get_secs_earliest (GttTask *tsk) + { + GList *node; ++ time_t earliest = INT_MAX; + if (NULL == tsk->interval_list) return 0; + +- time_t earliest = INT_MAX; + + for (node=tsk->interval_list; node; node=node->next) + { +@@ -2370,9 +2371,9 @@ + gtt_task_get_secs_latest (GttTask *tsk) + { + GList *node; ++ time_t latest = INT_MIN; + if (NULL == tsk->interval_list) return 0; + +- time_t latest = INT_MIN; + + for (node=tsk->interval_list; node; node=node->next) + { diff --git a/deskutils/gnotime/files/patch-src::query.c b/deskutils/gnotime/files/patch-src::query.c new file mode 100644 index 000000000..28d04a6d0 --- /dev/null +++ b/deskutils/gnotime/files/patch-src::query.c @@ -0,0 +1,16 @@ +--- src/query.c.orig Mon May 24 20:30:42 2004 ++++ src/query.c Mon May 24 20:30:55 2004 +@@ -74,12 +74,12 @@ + + while (1) + { ++ GttBucket *bu; + /* Check error bounds, should never happen */ + if ((0 > arr_day) || (arr_day >= da->array_len)) + { + return 1; + } +- GttBucket *bu; + bu = &g_array_index (da->buckets, GttBucket, arr_day); + + stm.tm_mday ++; diff --git a/deskutils/gnotime/pkg-descr b/deskutils/gnotime/pkg-descr new file mode 100644 index 000000000..d13476231 --- /dev/null +++ b/deskutils/gnotime/pkg-descr @@ -0,0 +1,5 @@ +Time (formerly GTT, the Gnome Time Tracker) is a desktop utility for +tracking the amount of time spent on projects, and generating +configurable invoices based on that time. + +WWW: http://gttr.sourceforge.net/ diff --git a/deskutils/gnotime/pkg-plist b/deskutils/gnotime/pkg-plist new file mode 100644 index 000000000..424f5368e --- /dev/null +++ b/deskutils/gnotime/pkg-plist @@ -0,0 +1,128 @@ +bin/gnotime +include/gnotime/gnc-date.h +include/gnotime/gnc-engine-util.h +include/gnotime/gnc-event.h +include/gnotime/gnc-numeric.h +include/gnotime/gnc-trace.h +include/gnotime/guid.h +include/gnotime/kvp-util.h +include/gnotime/kvp_frame.h +include/gnotime/qof.h +include/gnotime/qofbackend.h +include/gnotime/qofbook.h +include/gnotime/qofclass.h +include/gnotime/qofgobj.h +include/gnotime/qofid.h +include/gnotime/qofinstance.h +include/gnotime/qofobject.h +include/gnotime/qofquery-deserial.h +include/gnotime/qofquery-serialize.h +include/gnotime/qofquery.h +include/gnotime/qofquerycore.h +include/gnotime/qofsession.h +include/gnotime/qofsql.h +include/gnotime/sql_parser.h +lib/libqof.a +lib/libqof.so +lib/libqof.so.0 +lib/libqofsql.a +lib/libqofsql.so +lib/libqofsql.so.0 +share/gnome/applications/gnotime.desktop +share/gnome/gnotime/ghtml/C/basic-daily.ghtml +share/gnome/gnotime/ghtml/C/basic-invoice.ghtml +share/gnome/gnotime/ghtml/C/basic-journal.ghtml +share/gnome/gnotime/ghtml/C/basic-todo.ghtml +share/gnome/gnotime/ghtml/C/daily.ghtml +share/gnome/gnotime/ghtml/C/gnotime-logo.png +share/gnome/gnotime/ghtml/C/gtt-style.css +share/gnome/gnotime/ghtml/C/gtt.scm +share/gnome/gnotime/ghtml/C/invoice.ghtml +share/gnome/gnotime/ghtml/C/journal-rss.ghtml +share/gnome/gnotime/ghtml/C/journal.ghtml +share/gnome/gnotime/ghtml/C/noproject.ghtml +share/gnome/gnotime/ghtml/C/primer.ghtml +share/gnome/gnotime/ghtml/C/query.ghtml +share/gnome/gnotime/ghtml/C/status.ghtml +share/gnome/gnotime/ghtml/C/tab-delim.ghtml +share/gnome/gnotime/ghtml/C/time-interval.ghtml +share/gnome/gnotime/ghtml/C/todo-export.ghtml +share/gnome/gnotime/ghtml/C/todo.ghtml +share/gnome/gnotime/glade/active.glade +share/gnome/gnotime/glade/idle.glade +share/gnome/gnotime/glade/interval_edit.glade +share/gnome/gnotime/glade/interval_popup.glade +share/gnome/gnotime/glade/journal.glade +share/gnome/gnotime/glade/not-implemented.glade +share/gnome/gnotime/glade/notes.glade +share/gnome/gnotime/glade/plugin.glade +share/gnome/gnotime/glade/plugin_editor.glade +share/gnome/gnotime/glade/prefs.glade +share/gnome/gnotime/glade/project_properties.glade +share/gnome/gnotime/glade/task_popup.glade +share/gnome/gnotime/glade/task_properties.glade +share/gnome/help/gnotime/C/figures/gtt_mainwin.png +share/gnome/help/gnotime/C/figures/gtt_prefswin.png +share/gnome/help/gnotime/C/gnotime.xml +share/gnome/help/gnotime/es/figures/gtt_mainwin.png +share/gnome/help/gnotime/es/figures/gtt_prefswin.png +share/gnome/help/gnotime/es/gnotime.xml +share/gnome/help/gnotime/eu/figures/gtt_mainwin.png +share/gnome/help/gnotime/eu/figures/gtt_prefswin.png +share/gnome/help/gnotime/eu/gnotime.xml +share/gnome/omf/gnotime/gnotime-C.omf +share/gnome/omf/gnotime/gnotime-es.omf +share/gnome/omf/gnotime/gnotime-eu.omf +share/locale/az/LC_MESSAGES/gnotime-2.0.mo +share/locale/bg/LC_MESSAGES/gnotime-2.0.mo +share/locale/ca/LC_MESSAGES/gnotime-2.0.mo +share/locale/cs/LC_MESSAGES/gnotime-2.0.mo +share/locale/da/LC_MESSAGES/gnotime-2.0.mo +share/locale/de/LC_MESSAGES/gnotime-2.0.mo +share/locale/el/LC_MESSAGES/gnotime-2.0.mo +share/locale/en_GB/LC_MESSAGES/gnotime-2.0.mo +share/locale/es/LC_MESSAGES/gnotime-2.0.mo +share/locale/et/LC_MESSAGES/gnotime-2.0.mo +share/locale/eu/LC_MESSAGES/gnotime-2.0.mo +share/locale/fi/LC_MESSAGES/gnotime-2.0.mo +share/locale/fr/LC_MESSAGES/gnotime-2.0.mo +share/locale/ga/LC_MESSAGES/gnotime-2.0.mo +share/locale/gl/LC_MESSAGES/gnotime-2.0.mo +share/locale/hu/LC_MESSAGES/gnotime-2.0.mo +share/locale/it/LC_MESSAGES/gnotime-2.0.mo +share/locale/ja/LC_MESSAGES/gnotime-2.0.mo +share/locale/ko/LC_MESSAGES/gnotime-2.0.mo +share/locale/lt/LC_MESSAGES/gnotime-2.0.mo +share/locale/lv/LC_MESSAGES/gnotime-2.0.mo +share/locale/ms/LC_MESSAGES/gnotime-2.0.mo +share/locale/nl/LC_MESSAGES/gnotime-2.0.mo +share/locale/nn/LC_MESSAGES/gnotime-2.0.mo +share/locale/no/LC_MESSAGES/gnotime-2.0.mo +share/locale/pl/LC_MESSAGES/gnotime-2.0.mo +share/locale/pt/LC_MESSAGES/gnotime-2.0.mo +share/locale/pt_BR/LC_MESSAGES/gnotime-2.0.mo +share/locale/ro/LC_MESSAGES/gnotime-2.0.mo +share/locale/ru/LC_MESSAGES/gnotime-2.0.mo +share/locale/sk/LC_MESSAGES/gnotime-2.0.mo +share/locale/sl/LC_MESSAGES/gnotime-2.0.mo +share/locale/sv/LC_MESSAGES/gnotime-2.0.mo +share/locale/ta/LC_MESSAGES/gnotime-2.0.mo +share/locale/tr/LC_MESSAGES/gnotime-2.0.mo +share/locale/uk/LC_MESSAGES/gnotime-2.0.mo +share/locale/vi/LC_MESSAGES/gnotime-2.0.mo +share/locale/wa/LC_MESSAGES/gnotime-2.0.mo +share/locale/zh_CN/LC_MESSAGES/gnotime-2.0.mo +share/locale/zh_TW/LC_MESSAGES/gnotime-2.0.mo +@dirrm share/gnome/omf/gnotime +@dirrm share/gnome/help/gnotime/eu/figures +@dirrm share/gnome/help/gnotime/eu +@dirrm share/gnome/help/gnotime/es/figures +@dirrm share/gnome/help/gnotime/es +@dirrm share/gnome/help/gnotime/C/figures +@dirrm share/gnome/help/gnotime/C +@dirrm share/gnome/help/gnotime +@dirrm share/gnome/gnotime/glade +@dirrm share/gnome/gnotime/ghtml/C +@dirrm share/gnome/gnotime/ghtml +@dirrm share/gnome/gnotime +@dirrm include/gnotime -- cgit v1.2.3