Files | |
| file | gnc-budget.h |
| GnuCash Budgets. | |
| file | gnc-plugin-page-budget.h |
| file | gnc-tree-model-budget.h |
| provides some utilities for working with the list of budgets in a book. | |
Data Structures | |
| struct | GncPluginPageBudget |
| struct | GncPluginPageBudgetClass |
Defines | |
| #define | GNC_TYPE_BUDGET (gnc_budget_get_type ()) |
| #define | GNC_BUDGET(o) (G_TYPE_CHECK_INSTANCE_CAST ((o), GNC_TYPE_BUDGET, GncBudget)) |
| #define | GNC_BUDGET_CLASS(k) (G_TYPE_CHECK_CLASS_CAST((k), GNC_TYPE_BUDGET, GncBudgetClass)) |
| #define | GNC_IS_BUDGET(o) (G_TYPE_CHECK_INSTANCE_TYPE ((o), GNC_TYPE_BUDGET)) |
| #define | GNC_IS_BUDGET_CLASS(k) (G_TYPE_CHECK_CLASS_TYPE ((k), GNC_TYPE_BUDGET)) |
| #define | GNC_BUDGET_GET_CLASS(o) (G_TYPE_INSTANCE_GET_CLASS ((o), GNC_TYPE_BUDGET, GncBudgetClass)) |
| #define | GNC_BUDGET_MAX_NUM_PERIODS_DIGITS 3 |
| #define | gnc_budget_return_guid(X) (X ? *(qof_entity_get_guid(QOF_INSTANCE(X))) : *(guid_null())) |
| #define | gnc_budget_lookup_direct(g, b) gnc_budget_lookup(&(g),(b)) |
| #define | GNC_TYPE_PLUGIN_PAGE_BUDGET (gnc_plugin_page_budget_get_type ()) |
| #define | GNC_PLUGIN_PAGE_BUDGET(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), GNC_TYPE_PLUGIN_PAGE_BUDGET, GncPluginPageBudget)) |
| #define | GNC_PLUGIN_PAGE_BUDGET_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), GNC_TYPE_PLUGIN_PAGE_BUDGET, GncPluginPageBudgetClass)) |
| #define | GNC_IS_PLUGIN_PAGE_BUDGET(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), GNC_TYPE_PLUGIN_PAGE_BUDGET)) |
| #define | GNC_IS_PLUGIN_PAGE_BUDGET_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), GNC_TYPE_PLUGIN_PAGE_BUDGET)) |
| #define | GNC_PLUGIN_PAGE_BUDGET_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), GNC_TYPE_PLUGIN_PAGE_BUDGET, GncPluginPageBudgetClass)) |
| #define | GNC_PLUGIN_PAGE_BUDGET_NAME "GncPluginPageBudget" |
Typedefs | |
| typedef gnc_budget_private | GncBudget |
| typedef _GncBudgetClass | GncBudgetClass |
Enumerations | |
| enum | { BUDGET_GUID_COLUMN, BUDGET_NAME_COLUMN, BUDGET_DESCRIPTION_COLUMN, BUDGET_LIST_NUM_COLS } |
Functions | |
| GType | gnc_budget_get_type (void) |
| gboolean | gnc_budget_register (void) |
| GncBudget * | gnc_budget_new (QofBook *book) |
| void | gnc_budget_destroy (GncBudget *budget) |
| void | gnc_budget_begin_edit (GncBudget *bgt) |
| void | gnc_budget_commit_edit (GncBudget *bgt) |
| const GUID * | gnc_budget_get_guid (GncBudget *budget) |
| void | gnc_budget_set_name (GncBudget *budget, const gchar *name) |
| const gchar * | gnc_budget_get_name (GncBudget *budget) |
| void | gnc_budget_set_description (GncBudget *budget, const gchar *description) |
| const gchar * | gnc_budget_get_description (GncBudget *budget) |
| void | gnc_budget_set_num_periods (GncBudget *budget, guint num_periods) |
| guint | gnc_budget_get_num_periods (GncBudget *budget) |
| void | gnc_budget_set_recurrence (GncBudget *budget, const Recurrence *r) |
| const Recurrence * | gnc_budget_get_recurrence (GncBudget *budget) |
| Timespec | gnc_budget_get_period_start_date (GncBudget *budget, guint period_num) |
| void | gnc_budget_set_account_period_value (GncBudget *budget, Account *account, guint period_num, gnc_numeric val) |
| void | gnc_budget_unset_account_period_value (GncBudget *budget, Account *account, guint period_num) |
| gboolean | gnc_budget_is_account_period_value_set (GncBudget *budget, Account *account, guint period_num) |
| gnc_numeric | gnc_budget_get_account_period_value (GncBudget *budget, Account *account, guint period_num) |
| gnc_numeric | gnc_budget_get_account_period_actual_value (GncBudget *budget, Account *account, guint period_num) |
| QofBook * | gnc_budget_get_book (GncBudget *budget) |
| GncBudget * | gnc_budget_get_default (QofBook *book) |
| GncBudget * | gnc_budget_lookup (const GUID *guid, QofBook *book) |
| GType | gnc_plugin_page_budget_get_type (void) |
| GncPluginPage * | gnc_plugin_page_budget_new (GncBudget *budget) |
| void | gnc_budget_gui_delete_budget (GncBudget *budget) |
| GtkTreeModel * | gnc_tree_model_budget_new (QofBook *book) |
| void | gnc_tree_view_budget_set_model (GtkTreeView *tv, GtkTreeModel *tm) |
| GncBudget * | gnc_tree_model_budget_get_budget (GtkTreeModel *tm, GtkTreeIter *iter) |
| gboolean | gnc_tree_model_budget_get_iter_for_budget (GtkTreeModel *tm, GtkTreeIter *iter, GncBudget *bgt) |
| typedef struct gnc_budget_private GncBudget |
The budget data.
Definition at line 70 of file gnc-budget.h.
| anonymous enum |
Definition at line 38 of file gnc-tree-model-budget.h.
00038 { 00039 BUDGET_GUID_COLUMN, 00040 BUDGET_NAME_COLUMN, 00041 BUDGET_DESCRIPTION_COLUMN, 00042 BUDGET_LIST_NUM_COLS 00043 };
| void gnc_budget_destroy | ( | GncBudget * | budget | ) |
Deletes the given budget object.
Definition at line 144 of file gnc-budget.c.
00145 { 00146 g_return_if_fail(GNC_IS_BUDGET(budget)); 00147 gnc_budget_begin_edit(budget); 00148 qof_instance_set_dirty(&budget->inst); 00149 qof_instance_set_destroying(budget, TRUE); 00150 gnc_budget_commit_edit(budget); 00151 }
Get the book that this budget is associated with.
Definition at line 388 of file gnc-budget.c.
00389 { 00390 g_return_val_if_fail(GNC_IS_BUDGET(budget), NULL); 00391 return qof_instance_get_book(&budget->inst); 00392 }
Set/Get the starting date of the Budget
Definition at line 369 of file gnc-budget.c.
00370 { 00371 Timespec ts; 00372 timespecFromTime_t( 00373 &ts, recurrenceGetPeriodTime(&budget->recurrence, period_num, FALSE)); 00374 return ts; 00375 }
Creates and initializes a Budget.
Definition at line 117 of file gnc-budget.c.
00118 { 00119 GncBudget* budget; 00120 GDate date; 00121 g_return_val_if_fail(book, NULL); 00122 00123 ENTER(" "); 00124 budget = g_object_new(GNC_TYPE_BUDGET, NULL); 00125 qof_instance_init_data (&budget->inst, GNC_ID_BUDGET, book); 00126 00127 g_date_set_time_t(&date, time(NULL)); 00128 g_date_subtract_days(&date, g_date_get_day(&date)-1); 00129 recurrenceSet(&budget->recurrence, 1, PERIOD_MONTH, &date); 00130 00131 gnc_budget_begin_edit(budget); 00132 gnc_budget_set_name(budget, _("Unnamed Budget")); 00133 gnc_budget_set_description(budget, ""); 00134 gnc_budget_set_num_periods(budget, 12); 00135 gnc_budget_commit_edit(budget); 00136 00137 qof_event_gen( &budget->inst, QOF_EVENT_CREATE , NULL); 00138 00139 LEAVE(" "); 00140 return budget; 00141 }
| void gnc_budget_set_description | ( | GncBudget * | budget, | |
| const gchar * | description | |||
| ) |
Set/Get the description of the Budget
Definition at line 174 of file gnc-budget.c.
00175 { 00176 g_return_if_fail(GNC_IS_BUDGET(budget)); 00177 g_return_if_fail(description); 00178 00179 gnc_budget_begin_edit(budget); 00180 CACHE_REPLACE(budget->description, description); 00181 qof_instance_set_dirty(&budget->inst); 00182 gnc_budget_commit_edit(budget); 00183 00184 qof_event_gen( &budget->inst, QOF_EVENT_MODIFY, NULL); 00185 }
| void gnc_budget_set_name | ( | GncBudget * | budget, | |
| const gchar * | name | |||
| ) |
Set/Get the name of the Budget
Definition at line 154 of file gnc-budget.c.
00155 { 00156 g_return_if_fail(GNC_IS_BUDGET(budget) && name); 00157 00158 gnc_budget_begin_edit(budget); 00159 CACHE_REPLACE(budget->name, name); 00160 qof_instance_set_dirty(&budget->inst); 00161 gnc_budget_commit_edit(budget); 00162 00163 qof_event_gen( &budget->inst, QOF_EVENT_MODIFY, NULL); 00164 }
| void gnc_budget_set_num_periods | ( | GncBudget * | budget, | |
| guint | num_periods | |||
| ) |
Set/Get the number of periods in the Budget
Definition at line 222 of file gnc-budget.c.
00223 { 00224 g_return_if_fail(GNC_IS_BUDGET(budget)); 00225 00226 gnc_budget_begin_edit(budget); 00227 budget->num_periods = num_periods; 00228 qof_instance_set_dirty(&budget->inst); 00229 gnc_budget_commit_edit(budget); 00230 00231 qof_event_gen( &budget->inst, QOF_EVENT_MODIFY, NULL); 00232 }
| GncPluginPage* gnc_plugin_page_budget_new | ( | GncBudget * | budget | ) |
Create a new "budget" plugin page.
Definition at line 226 of file gnc-plugin-page-budget.c.
00227 { 00228 GncPluginPageBudget *plugin_page; 00229 GncPluginPageBudgetPrivate *priv; 00230 00231 g_return_val_if_fail(GNC_IS_BUDGET(budget), NULL); 00232 ENTER(" "); 00233 plugin_page = g_object_new(GNC_TYPE_PLUGIN_PAGE_BUDGET, NULL); 00234 00235 priv = GNC_PLUGIN_PAGE_BUDGET_GET_PRIVATE(plugin_page); 00236 priv->budget = budget; 00237 priv->key = *gnc_budget_get_guid(budget); 00238 LEAVE("new budget page %p", plugin_page); 00239 return GNC_PLUGIN_PAGE(plugin_page); 00240 }
1.5.2