]> Dogcows Code - chaz/homebank/blobdiff - src/hb-archive.h
import homebank-5.2.6
[chaz/homebank] / src / hb-archive.h
index c46c1bde47c7d670c36080742ec5643d790fbd95..b4bbc1b4c088de1bde2c5af5b54c2161213b428f 100644 (file)
@@ -1,5 +1,5 @@
 /*  HomeBank -- Free, easy, personal accounting for everyone.
- *  Copyright (C) 1995-2014 Maxime DOYEN
+ *  Copyright (C) 1995-2019 Maxime DOYEN
  *
  *  This file is part of HomeBank.
  *
 #ifndef __HB_ARCHIVE_H__
 #define __HB_ARCHIVE_H__
 
+#include "hb-transaction.h"
+#include "hb-split.h"
+
 typedef struct _archive                Archive;
 
 struct _archive
 {
+       guint32         key;
        gdouble         amount;
        guint32         kacc;
-       guint32         kxferacc;
        gushort         paymode;
        gushort         flags;
        guint32         kpay;
        guint32         kcat;
-       gchar           *wording;
+       gchar           *memo;
+
+       //guint32               date;
+       //gushort               pos;
+       gushort     status, _pad1;
+       //gchar         *info;
+       guint32         *tags;
+       //guint32               kxfer;          //strong link xfer key
+       guint32         kxferacc;
+       
+       GPtrArray       *splits;
 
        guint32         nextdate;
+       gushort         daygap;
        gushort         every;
        gushort         unit;
        gushort         limit;
@@ -41,15 +55,47 @@ struct _archive
 };
 
 
+/* list define archive (defarchive) */
+enum
+{
+       LST_DEFARC_DATAS,
+       LST_DEFARC_OLDPOS,
+       LST_DEFARC_AUTO,
+       NUM_LST_DEFARC
+};
+
+/*
+** scheduled unit
+*/
+enum
+{
+       AUTO_UNIT_DAY,
+       AUTO_UNIT_WEEK,
+       AUTO_UNIT_MONTH,
+       //AUTO_UNIT_QUARTER,
+       AUTO_UNIT_YEAR
+};
+
+
+
+
 Archive *da_archive_malloc(void);
 Archive *da_archive_clone(Archive *src_item);
 guint archive_add_get_nbdays(void);
 void da_archive_free(Archive *item);
 void da_archive_destroy(GList *list);
 GList *da_archive_sort(GList *list);
+
 guint da_archive_length(void);
+gboolean da_archive_append(Archive *item);
+gboolean da_archive_append_new(Archive *item);
+guint32 da_archive_get_max_key(void);
+Archive *da_archive_get(guint32 key);
+
+
 void da_archive_consistency(Archive *item);
 
+Archive *da_archive_init_from_transaction(Archive *arc, Transaction *txn);
 
 gboolean scheduled_is_postable(Archive *arc);
 guint32 scheduled_get_postdate(Archive *arc, guint32 postdate);
This page took 0.019914 seconds and 4 git commands to generate.