GnuCash 2.4.99
gnc-recurrence.h
00001 /* gnc-recurrence.h:
00002  *
00003  *  GncRecurrence is a minimal GUI for specifying a Recurrence.
00004  *
00005  *  You see, small is _nice_.  :)
00006  *
00007  */
00008 
00009 /* Copyright (C) 2005, Chris Shoemaker <c.shoemaker@cox.net>  *
00010  *
00011  * This program is free software; you can redistribute it and/or
00012  * modify it under the terms of the GNU General Public License as
00013  * published by the Free Software Foundation; either version 2 of
00014  * the License, or (at your option) any later version.
00015  *
00016  * This program is distributed in the hope that it will be useful,
00017  * but WITHOUT ANY WARRANTY; without even the implied warranty of
00018  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
00019  * GNU General Public License for more details.
00020  *
00021  * You should have received a copy of the GNU General Public License
00022  * along with this program; if not, contact:
00023  *
00024  * Free Software Foundation           Voice:  +1-617-542-5942
00025  * 51 Franklin Street, Fifth Floor    Fax:    +1-617-542-2652
00026  * Boston, MA  02111-1301,  USA       gnu@gnu.org
00027  */
00028 
00029 #ifndef GNC_RECURRENCE_H
00030 #define GNC_RECURRENCE_H
00031 
00032 #include <glib.h>
00033 #include "Recurrence.h"
00034 
00035 #define GNC_TYPE_RECURRENCE       (gnc_recurrence_get_type())
00036 #define GNC_RECURRENCE(obj)       G_TYPE_CHECK_INSTANCE_CAST  \
00037    (obj, GNC_TYPE_RECURRENCE, GncRecurrence)
00038 #define GNC_RECURRENCE_CLASS(klass) G_TYPE_CHECK_CLASS_CAST \
00039    (klass, GNC_TYPE_RECURRENCE, GncRecurrence)
00040 #define GNC_IS_RECURRENCE(obj)     G_TYPE_CHECK_INSTANCE_TYPE \
00041    (obj, GNC_TYPE_RECURRENCE)
00042 
00043 typedef struct _GncRecurrence GncRecurrence;
00044 typedef struct _GncRecurrenceComp GncRecurrenceComp;
00045 
00046 GType gnc_recurrence_get_type(void);
00047 GtkWidget * gnc_recurrence_new(void);
00048 
00049 void gnc_recurrence_set(GncRecurrence *gr, const Recurrence *r);
00050 
00051 /* The returned Recurrence is internally owned and is only valid as
00052    long as the GncRecurrence is around. */
00053 const Recurrence * gnc_recurrence_get(GncRecurrence *gr);
00054 
00055 /* "composite" recurrences */
00056 void gnc_recurrence_comp_set_list(GncRecurrenceComp *grc, const GList *r);
00057 
00058 /* The GList is newly-allocated, but the Recurrences are internally
00059    owned. */
00060 GList * gnc_recurrence_comp_get_list(GncRecurrenceComp *grc);
00061 
00062 /* This works, but is not used.  Kind of experimental... */
00063 GtkWidget * gnc_recurrence_comp_new(void);
00064 GType gnc_recurrence_comp_get_type(void);
00065 
00066 #endif
 All Data Structures Files Functions Variables Typedefs Enumerations Enumerator Defines