mirror of
https://github.com/Gnucash/gnucash.git
synced 2025-02-25 18:55:30 -06:00
Finish cleaning up register api.
git-svn-id: svn+ssh://svn.gnucash.org/repo/gnucash/trunk@5281 57a11ea4-9604-0410-9ed3-97b8803252fd
This commit is contained in:
parent
86a89c7328
commit
2681145dba
@ -524,7 +524,7 @@ change_func (gpointer key, gpointer value, gpointer field_code)
|
|||||||
break;
|
break;
|
||||||
|
|
||||||
/* Just refreshing won't work. */
|
/* Just refreshing won't work. */
|
||||||
xaccDestroyLedgerDisplay(account);
|
gnc_ledger_display_destroy_by_account (account);
|
||||||
|
|
||||||
xaccAccountSetType(account, type);
|
xaccAccountSetType(account, type);
|
||||||
}
|
}
|
||||||
@ -871,7 +871,7 @@ gnc_edit_account_ok(AccountWindow *aw)
|
|||||||
|
|
||||||
if (current_type != aw->type)
|
if (current_type != aw->type)
|
||||||
/* Just refreshing won't work. */
|
/* Just refreshing won't work. */
|
||||||
xaccDestroyLedgerDisplay (account);
|
gnc_ledger_display_destroy_by_account (account);
|
||||||
|
|
||||||
gnc_finish_ok (aw, change_type);
|
gnc_finish_ok (aw, change_type);
|
||||||
|
|
||||||
|
@ -170,7 +170,7 @@ close_handler (gpointer user_data)
|
|||||||
}
|
}
|
||||||
|
|
||||||
FindTransactionsDialog *
|
FindTransactionsDialog *
|
||||||
gnc_ui_find_transactions_dialog_create(xaccLedgerDisplay * orig_ledg) {
|
gnc_ui_find_transactions_dialog_create(GNCLedgerDisplay * orig_ledg) {
|
||||||
FindTransactionsDialog * ftd = g_new0(FindTransactionsDialog, 1);
|
FindTransactionsDialog * ftd = g_new0(FindTransactionsDialog, 1);
|
||||||
GtkWidget *box;
|
GtkWidget *box;
|
||||||
GtkWidget *edit;
|
GtkWidget *edit;
|
||||||
@ -209,8 +209,8 @@ gnc_ui_find_transactions_dialog_create(xaccLedgerDisplay * orig_ledg) {
|
|||||||
ftd->dialog = glade_xml_get_widget (xml, "Find Transactions");
|
ftd->dialog = glade_xml_get_widget (xml, "Find Transactions");
|
||||||
|
|
||||||
if(orig_ledg) {
|
if(orig_ledg) {
|
||||||
ftd->q = xaccQueryCopy (xaccLedgerDisplayGetQuery (orig_ledg));
|
ftd->q = xaccQueryCopy (gnc_ledger_display_get_query (orig_ledg));
|
||||||
ftd->ledger_q = xaccLedgerDisplayGetQuery (orig_ledg);
|
ftd->ledger_q = gnc_ledger_display_get_query (orig_ledg);
|
||||||
}
|
}
|
||||||
else {
|
else {
|
||||||
ftd->q = NULL;
|
ftd->q = NULL;
|
||||||
@ -481,7 +481,7 @@ gnc_ui_find_transactions_dialog_ok_cb(GtkButton * button,
|
|||||||
gpointer user_data) {
|
gpointer user_data) {
|
||||||
FindTransactionsDialog * ftd = user_data;
|
FindTransactionsDialog * ftd = user_data;
|
||||||
|
|
||||||
xaccLedgerDisplay *ledger;
|
GNCLedgerDisplay *ledger;
|
||||||
|
|
||||||
GList * selected_accounts;
|
GList * selected_accounts;
|
||||||
char * descript_match_text;
|
char * descript_match_text;
|
||||||
@ -685,18 +685,18 @@ gnc_ui_find_transactions_dialog_ok_cb(GtkButton * button,
|
|||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
|
||||||
ledger = xaccFindGeneralLedgerByQuery (ftd->ledger_q);
|
ledger = gnc_ledger_display_find_by_query (ftd->ledger_q);
|
||||||
if(!ledger) {
|
if(!ledger) {
|
||||||
new_ledger = TRUE;
|
new_ledger = TRUE;
|
||||||
ledger = xaccLedgerDisplayQuery (new_q, SEARCH_LEDGER,
|
ledger = gnc_ledger_display_query (new_q, SEARCH_LEDGER,
|
||||||
REG_STYLE_JOURNAL);
|
REG_STYLE_JOURNAL);
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
xaccLedgerDisplaySetQuery (ledger, new_q);
|
gnc_ledger_display_set_query (ledger, new_q);
|
||||||
|
|
||||||
xaccFreeQuery (new_q);
|
xaccFreeQuery (new_q);
|
||||||
|
|
||||||
xaccLedgerDisplayRefresh(ledger);
|
gnc_ledger_display_refresh (ledger);
|
||||||
|
|
||||||
if (new_ledger)
|
if (new_ledger)
|
||||||
regWindowLedger(ledger);
|
regWindowLedger(ledger);
|
||||||
|
@ -21,8 +21,8 @@
|
|||||||
* Boston, MA 02111-1307, USA gnu@gnu.org *
|
* Boston, MA 02111-1307, USA gnu@gnu.org *
|
||||||
\********************************************************************/
|
\********************************************************************/
|
||||||
|
|
||||||
#ifndef __DIALOG_FIND_TRANSACTIONS_H_
|
#ifndef DIALOG_FIND_TRANSACTIONS_H
|
||||||
#define __DIALOG_FIND_TRANSACTIONS_H_
|
#define DIALOG_FIND_TRANSACTIONS_H
|
||||||
|
|
||||||
#include <gnome.h>
|
#include <gnome.h>
|
||||||
|
|
||||||
@ -34,7 +34,7 @@ typedef struct _FindTransactionsDialog FindTransactionsDialog;
|
|||||||
|
|
||||||
|
|
||||||
FindTransactionsDialog *
|
FindTransactionsDialog *
|
||||||
gnc_ui_find_transactions_dialog_create(xaccLedgerDisplay * ledger);
|
gnc_ui_find_transactions_dialog_create(GNCLedgerDisplay * ledger);
|
||||||
|
|
||||||
void gnc_ui_find_transactions_dialog_destroy(FindTransactionsDialog * pcd);
|
void gnc_ui_find_transactions_dialog_destroy(FindTransactionsDialog * pcd);
|
||||||
|
|
||||||
|
@ -87,7 +87,7 @@ struct _SchedXactionEditorDialog
|
|||||||
SchedXaction *sx;
|
SchedXaction *sx;
|
||||||
int new;
|
int new;
|
||||||
|
|
||||||
xaccLedgerDisplay *ledger;
|
GNCLedgerDisplay *ledger;
|
||||||
GnucashRegister *reg;
|
GnucashRegister *reg;
|
||||||
|
|
||||||
GNCFrequency *gncfreq;
|
GNCFrequency *gncfreq;
|
||||||
@ -116,8 +116,7 @@ static void advance_toggle( GtkButton *b, SchedXactionEditorDialog *sxed );
|
|||||||
|
|
||||||
|
|
||||||
/* ledger standard-handlers */
|
/* ledger standard-handlers */
|
||||||
static void sxe_ledger_destroy( xaccLedgerDisplay *ld );
|
static gncUIWidget sxe_ledger_get_parent( GNCLedgerDisplay *ld );
|
||||||
static gncUIWidget sxe_ledger_get_parent( xaccLedgerDisplay *ld );
|
|
||||||
|
|
||||||
/* ledger callbacks */
|
/* ledger callbacks */
|
||||||
static void sxe_register_record_cb( GnucashRegister *reg, gpointer d );
|
static void sxe_register_record_cb( GnucashRegister *reg, gpointer d );
|
||||||
@ -139,7 +138,7 @@ void
|
|||||||
sxd_close_handler ( gpointer user_data )
|
sxd_close_handler ( gpointer user_data )
|
||||||
{
|
{
|
||||||
SchedXactionDialog *sxd = user_data;
|
SchedXactionDialog *sxd = user_data;
|
||||||
/* FIXME: is this all we have to do? */
|
|
||||||
gnome_dialog_close( GNOME_DIALOG( sxd->dialog ) );
|
gnome_dialog_close( GNOME_DIALOG( sxd->dialog ) );
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -149,9 +148,12 @@ sxed_close_handler ( gpointer user_data )
|
|||||||
{
|
{
|
||||||
SchedXactionEditorDialog *sxed = user_data;
|
SchedXactionEditorDialog *sxed = user_data;
|
||||||
|
|
||||||
/* FIXME: destroy, too... the ledger, especially. */
|
gnc_ledger_display_close( sxed->ledger );
|
||||||
xaccLedgerDisplayClose( sxed->ledger );
|
sxed->ledger = NULL;
|
||||||
free(sxed->sxGUIDstr);
|
|
||||||
|
g_free (sxed->sxGUIDstr);
|
||||||
|
sxed->sxGUIDstr = NULL;
|
||||||
|
|
||||||
gnome_dialog_close( GNOME_DIALOG( sxed->dialog ) );
|
gnome_dialog_close( GNOME_DIALOG( sxed->dialog ) );
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -166,8 +168,8 @@ static
|
|||||||
void
|
void
|
||||||
editor_close_button_clicked( GtkButton *b, SchedXactionEditorDialog *sxed )
|
editor_close_button_clicked( GtkButton *b, SchedXactionEditorDialog *sxed )
|
||||||
{
|
{
|
||||||
/* FIXME: destroy ledger. */
|
gnc_close_gui_component_by_data( DIALOG_SCHEDXACTION_EDITOR_CM_CLASS,
|
||||||
gnc_close_gui_component_by_data( DIALOG_SCHEDXACTION_EDITOR_CM_CLASS, sxed );
|
sxed );
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
@ -192,7 +194,6 @@ editor_ok_button_clicked( GtkButton *b, SchedXactionEditorDialog *sxed )
|
|||||||
time_t tmpDate;
|
time_t tmpDate;
|
||||||
GDate *gdate;
|
GDate *gdate;
|
||||||
|
|
||||||
|
|
||||||
gdate = g_date_new();
|
gdate = g_date_new();
|
||||||
|
|
||||||
/* read out data back into SchedXaction object. */
|
/* read out data back into SchedXaction object. */
|
||||||
@ -281,8 +282,8 @@ editor_ok_button_clicked( GtkButton *b, SchedXactionEditorDialog *sxed )
|
|||||||
}
|
}
|
||||||
|
|
||||||
/* cleanup */
|
/* cleanup */
|
||||||
gnc_unregister_gui_component_by_data( DIALOG_SCHEDXACTION_CM_CLASS, sxed );
|
gnc_close_gui_component_by_data (DIALOG_SCHEDXACTION_EDITOR_CM_CLASS,
|
||||||
sxed_close_handler( (gpointer)sxed );
|
sxed);
|
||||||
}
|
}
|
||||||
|
|
||||||
static void
|
static void
|
||||||
@ -316,13 +317,11 @@ static void
|
|||||||
scheduledxaction_dialog_destroy(GtkObject *object, gpointer data)
|
scheduledxaction_dialog_destroy(GtkObject *object, gpointer data)
|
||||||
{
|
{
|
||||||
SchedXactionDialog *sxd = data;
|
SchedXactionDialog *sxd = data;
|
||||||
// FIXME: apporpriate destruction, here?
|
|
||||||
if (sxd == NULL) {
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
gnc_unregister_gui_component_by_data (DIALOG_SCHEDXACTION_CM_CLASS, sxd);
|
|
||||||
|
|
||||||
gtk_widget_destroy( sxd->dialog );
|
if (!sxd) return;
|
||||||
|
|
||||||
|
gnc_unregister_gui_component_by_data
|
||||||
|
(DIALOG_SCHEDXACTION_CM_CLASS, sxd);
|
||||||
|
|
||||||
g_free(sxd);
|
g_free(sxd);
|
||||||
}
|
}
|
||||||
@ -336,17 +335,9 @@ scheduledxaction_editor_dialog_destroy(GtkObject *object, gpointer data)
|
|||||||
if (sxed == NULL)
|
if (sxed == NULL)
|
||||||
return;
|
return;
|
||||||
|
|
||||||
gnc_unregister_gui_component_by_data (DIALOG_SCHEDXACTION_EDITOR_CM_CLASS, sxed);
|
gnc_unregister_gui_component_by_data
|
||||||
/* FIXME: free the GNCFrequency widget */
|
(DIALOG_SCHEDXACTION_EDITOR_CM_CLASS, sxed);
|
||||||
|
|
||||||
/* FIXME: free the ledger */
|
|
||||||
/*
|
|
||||||
gtk_widget_destroy( xaccLedgerDisplayGetUserData( sxed->ledger )->window );
|
|
||||||
xaccLedgerDisplaySetUserData( ledger, NULL );
|
|
||||||
*/
|
|
||||||
/* FIXME: free the necessary widgets */
|
|
||||||
|
|
||||||
gtk_widget_destroy( sxed->dialog );
|
|
||||||
sxed->sx = NULL;
|
sxed->sx = NULL;
|
||||||
|
|
||||||
g_free (sxed);
|
g_free (sxed);
|
||||||
@ -363,8 +354,10 @@ gnc_ui_scheduled_xaction_dialog_create(void)
|
|||||||
sxd = g_new0( SchedXactionDialog, 1 );
|
sxd = g_new0( SchedXactionDialog, 1 );
|
||||||
|
|
||||||
/* sxd->dialog = create_Scheduled_Transaction_List(); */
|
/* sxd->dialog = create_Scheduled_Transaction_List(); */
|
||||||
sxd->gxml = gnc_glade_xml_new( "sched-xact.glade", "Scheduled Transaction List" );
|
sxd->gxml = gnc_glade_xml_new( "sched-xact.glade",
|
||||||
sxd->dialog = glade_xml_get_widget( sxd->gxml, "Scheduled Transaction List" );
|
"Scheduled Transaction List" );
|
||||||
|
sxd->dialog = glade_xml_get_widget( sxd->gxml,
|
||||||
|
"Scheduled Transaction List" );
|
||||||
|
|
||||||
sxdo = GTK_OBJECT(sxd->dialog);
|
sxdo = GTK_OBJECT(sxd->dialog);
|
||||||
|
|
||||||
@ -400,19 +393,20 @@ gnc_ui_scheduled_xaction_dialog_create(void)
|
|||||||
void
|
void
|
||||||
gnc_ui_scheduled_xaction_dialog_destroy(SchedXactionDialog *sxd)
|
gnc_ui_scheduled_xaction_dialog_destroy(SchedXactionDialog *sxd)
|
||||||
{
|
{
|
||||||
// FIXME: appropriate destruction?
|
|
||||||
if (sxd == NULL)
|
if (sxd == NULL)
|
||||||
return;
|
return;
|
||||||
|
|
||||||
gnc_close_gui_component_by_data (DIALOG_SCHEDXACTION_CM_CLASS, sxd);
|
gnc_close_gui_component_by_data (DIALOG_SCHEDXACTION_CM_CLASS, sxd);
|
||||||
}
|
}
|
||||||
|
|
||||||
void
|
void
|
||||||
gnc_ui_scheduled_xaction_editor_dialog_destroy(SchedXactionEditorDialog *sxed)
|
gnc_ui_scheduled_xaction_editor_dialog_destroy(SchedXactionEditorDialog *sxed)
|
||||||
{
|
{
|
||||||
// FIXME: appropriate destruction?
|
|
||||||
if (sxed == NULL)
|
if (sxed == NULL)
|
||||||
return;
|
return;
|
||||||
gnc_close_gui_component_by_data (DIALOG_SCHEDXACTION_EDITOR_CM_CLASS, sxed);
|
|
||||||
|
gnc_close_gui_component_by_data
|
||||||
|
(DIALOG_SCHEDXACTION_EDITOR_CM_CLASS, sxed);
|
||||||
}
|
}
|
||||||
|
|
||||||
void
|
void
|
||||||
@ -675,14 +669,13 @@ schedXact_editor_create_ledger( SchedXactionEditorDialog *sxed )
|
|||||||
GTK_FRAME( glade_xml_get_widget( sxed->gxml,
|
GTK_FRAME( glade_xml_get_widget( sxed->gxml,
|
||||||
"tempxaction_frame" ) );
|
"tempxaction_frame" ) );
|
||||||
sxed->sxGUIDstr = guid_to_string( xaccSchedXactionGetGUID(sxed->sx) );
|
sxed->sxGUIDstr = guid_to_string( xaccSchedXactionGetGUID(sxed->sx) );
|
||||||
sxed->ledger = xaccLedgerDisplayTemplateGL( sxed->sxGUIDstr );
|
sxed->ledger = gnc_ledger_display_template_gl( sxed->sxGUIDstr );
|
||||||
|
|
||||||
xaccLedgerDisplaySetHandlers( sxed->ledger,
|
gnc_ledger_display_set_handlers( sxed->ledger,
|
||||||
sxe_ledger_destroy,
|
NULL, sxe_ledger_get_parent );
|
||||||
sxe_ledger_get_parent );
|
gnc_ledger_display_set_user_data( sxed->ledger, (gpointer)sxed );
|
||||||
xaccLedgerDisplaySetUserData( sxed->ledger, (gpointer)sxed );
|
|
||||||
|
|
||||||
splitreg = xaccLedgerDisplayGetSR( sxed->ledger );
|
splitreg = gnc_ledger_display_get_split_register( sxed->ledger );
|
||||||
/* FIXME: make configurable */
|
/* FIXME: make configurable */
|
||||||
gnucash_register_set_initial_rows( 6 );
|
gnucash_register_set_initial_rows( 6 );
|
||||||
|
|
||||||
@ -716,7 +709,7 @@ schedXact_editor_create_ledger( SchedXactionEditorDialog *sxed )
|
|||||||
gnc_split_register_show_present_divider( splitreg, FALSE );
|
gnc_split_register_show_present_divider( splitreg, FALSE );
|
||||||
|
|
||||||
/* force a refresh */
|
/* force a refresh */
|
||||||
xaccLedgerDisplayRefresh( sxed->ledger );
|
gnc_ledger_display_refresh( sxed->ledger );
|
||||||
}
|
}
|
||||||
|
|
||||||
static
|
static
|
||||||
@ -810,7 +803,8 @@ schedXact_editor_populate( SchedXactionEditorDialog *sxed )
|
|||||||
|
|
||||||
splitList = xaccSchedXactionGetSplits( sxed->sx );
|
splitList = xaccSchedXactionGetSplits( sxed->sx );
|
||||||
if ( splitList != NULL ) {
|
if ( splitList != NULL ) {
|
||||||
splitReg = xaccLedgerDisplayGetSR( sxed->ledger );
|
splitReg = gnc_ledger_display_get_split_register
|
||||||
|
( sxed->ledger );
|
||||||
gnc_split_register_load(splitReg, splitList, NULL );
|
gnc_split_register_load(splitReg, splitList, NULL );
|
||||||
} /* otherwise, use the existing stuff. */
|
} /* otherwise, use the existing stuff. */
|
||||||
}
|
}
|
||||||
@ -1032,23 +1026,13 @@ putSchedXactionInClist( gpointer data, gpointer user_data )
|
|||||||
gtk_clist_thaw( clist );
|
gtk_clist_thaw( clist );
|
||||||
}
|
}
|
||||||
|
|
||||||
static
|
|
||||||
void
|
|
||||||
sxe_ledger_destroy( xaccLedgerDisplay *ld )
|
|
||||||
{
|
|
||||||
/* FIXME?: see window-register.c:regDestroy
|
|
||||||
get and save size?
|
|
||||||
get and save table state? */
|
|
||||||
DEBUG( "FIXME: sxe_ledger_destroy called\n" );
|
|
||||||
}
|
|
||||||
|
|
||||||
static
|
static
|
||||||
gncUIWidget
|
gncUIWidget
|
||||||
sxe_ledger_get_parent( xaccLedgerDisplay *ld )
|
sxe_ledger_get_parent( GNCLedgerDisplay *ld )
|
||||||
{
|
{
|
||||||
SchedXactionEditorDialog *sxed;
|
SchedXactionEditorDialog *sxed;
|
||||||
|
|
||||||
sxed = (SchedXactionEditorDialog*)xaccLedgerDisplayGetUserData( ld );
|
sxed = gnc_ledger_display_get_user_data( ld );
|
||||||
/* FIXME: is this the direct parent?
|
/* FIXME: is this the direct parent?
|
||||||
doesn't look like it from window-register.c:gnc_register_get_parent
|
doesn't look like it from window-register.c:gnc_register_get_parent
|
||||||
*/
|
*/
|
||||||
@ -1077,7 +1061,7 @@ sxed_reg_recordCB( GtkWidget *w, gpointer d )
|
|||||||
SplitRegister *reg;
|
SplitRegister *reg;
|
||||||
Transaction *trans;
|
Transaction *trans;
|
||||||
|
|
||||||
reg = xaccLedgerDisplayGetSR( sxed->ledger );
|
reg = gnc_ledger_display_get_split_register( sxed->ledger );
|
||||||
trans = gnc_split_register_get_current_trans( reg );
|
trans = gnc_split_register_get_current_trans( reg );
|
||||||
if ( !gnc_split_register_save( reg, TRUE ) )
|
if ( !gnc_split_register_save( reg, TRUE ) )
|
||||||
return;
|
return;
|
||||||
@ -1095,7 +1079,8 @@ void
|
|||||||
sxed_reg_cancelCB( GtkWidget *w, gpointer d )
|
sxed_reg_cancelCB( GtkWidget *w, gpointer d )
|
||||||
{
|
{
|
||||||
gnc_split_register_cancel_cursor_trans_changes(
|
gnc_split_register_cancel_cursor_trans_changes(
|
||||||
xaccLedgerDisplayGetSR( ((SchedXactionEditorDialog *)d)->ledger ) );
|
gnc_ledger_display_get_split_register
|
||||||
|
( ((SchedXactionEditorDialog *)d)->ledger ) );
|
||||||
}
|
}
|
||||||
|
|
||||||
/* FIXME */
|
/* FIXME */
|
||||||
@ -1217,7 +1202,7 @@ sxed_reg_deleteCB( GtkWidget *w, gpointer d )
|
|||||||
Split *split;
|
Split *split;
|
||||||
gint result;
|
gint result;
|
||||||
|
|
||||||
reg = xaccLedgerDisplayGetSR (sxed->ledger);
|
reg = gnc_ledger_display_get_split_register (sxed->ledger);
|
||||||
|
|
||||||
/* get the current split based on cursor position */
|
/* get the current split based on cursor position */
|
||||||
split = gnc_split_register_get_current_split (reg);
|
split = gnc_split_register_get_current_split (reg);
|
||||||
@ -1315,7 +1300,7 @@ void
|
|||||||
sxed_reg_duplicateCB( GtkWidget *w, gpointer d )
|
sxed_reg_duplicateCB( GtkWidget *w, gpointer d )
|
||||||
{
|
{
|
||||||
gnc_split_register_duplicate_current (
|
gnc_split_register_duplicate_current (
|
||||||
xaccLedgerDisplayGetSR (
|
gnc_ledger_display_get_split_register (
|
||||||
((SchedXactionEditorDialog*)d)->ledger));
|
((SchedXactionEditorDialog*)d)->ledger));
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -1327,16 +1312,16 @@ sxed_reg_expand_trans_checkCB( GtkWidget *w, gpointer d )
|
|||||||
SplitRegister *reg;
|
SplitRegister *reg;
|
||||||
|
|
||||||
gnc_split_register_expand_current_trans
|
gnc_split_register_expand_current_trans
|
||||||
(xaccLedgerDisplayGetSR (sxed->ledger),
|
(gnc_ledger_display_get_split_register (sxed->ledger),
|
||||||
GTK_CHECK_MENU_ITEM (w)->active );
|
GTK_CHECK_MENU_ITEM (w)->active );
|
||||||
}
|
}
|
||||||
|
|
||||||
static
|
static
|
||||||
void
|
void
|
||||||
refactor_jump_to_blank( xaccLedgerDisplay *ledger,
|
refactor_jump_to_blank( GNCLedgerDisplay *ledger,
|
||||||
GnucashRegister *gncReg )
|
GnucashRegister *gncReg )
|
||||||
{
|
{
|
||||||
SplitRegister *reg = xaccLedgerDisplayGetSR (ledger);
|
SplitRegister *reg = gnc_ledger_display_get_split_register (ledger);
|
||||||
VirtualCellLocation vcell_loc;
|
VirtualCellLocation vcell_loc;
|
||||||
Split *blank;
|
Split *blank;
|
||||||
|
|
||||||
@ -1355,7 +1340,7 @@ sxed_reg_new_transCB( GtkWidget *w, gpointer d )
|
|||||||
SchedXactionEditorDialog *sxed = d;
|
SchedXactionEditorDialog *sxed = d;
|
||||||
SplitRegister *reg;
|
SplitRegister *reg;
|
||||||
|
|
||||||
reg = xaccLedgerDisplayGetSR (sxed->ledger);
|
reg = gnc_ledger_display_get_split_register (sxed->ledger);
|
||||||
|
|
||||||
if (gnc_split_register_save (reg, TRUE))
|
if (gnc_split_register_save (reg, TRUE))
|
||||||
gnc_split_register_redraw (reg);
|
gnc_split_register_redraw (reg);
|
||||||
|
@ -896,11 +896,12 @@ gnc_ui_mainWindow_nextrun_cb( GtkWidget *widget, gpointer d )
|
|||||||
}
|
}
|
||||||
|
|
||||||
static void
|
static void
|
||||||
gnc_main_window_gl_cb(GtkWidget *widget, gpointer data) {
|
gnc_main_window_gl_cb(GtkWidget *widget, gpointer data)
|
||||||
xaccLedgerDisplay *ld;
|
{
|
||||||
|
GNCLedgerDisplay *ld;
|
||||||
RegWindow *regData;
|
RegWindow *regData;
|
||||||
|
|
||||||
ld = xaccLedgerDisplayGL ();
|
ld = gnc_ledger_display_gl ();
|
||||||
|
|
||||||
regData = regWindowLedger (ld);
|
regData = regWindowLedger (ld);
|
||||||
|
|
||||||
|
@ -79,7 +79,7 @@ struct _RegDateWindow
|
|||||||
* register. Any state info for the regWindow goes here. */
|
* register. Any state info for the regWindow goes here. */
|
||||||
struct _RegWindow
|
struct _RegWindow
|
||||||
{
|
{
|
||||||
xaccLedgerDisplay * ledger;
|
GNCLedgerDisplay * ledger;
|
||||||
|
|
||||||
/* Top level window */
|
/* Top level window */
|
||||||
GtkWidget * window;
|
GtkWidget * window;
|
||||||
@ -124,7 +124,7 @@ static void gnc_register_redraw_all_cb (GnucashRegister *g_reg, gpointer data);
|
|||||||
static void gnc_register_redraw_help_cb (GnucashRegister *g_reg,
|
static void gnc_register_redraw_help_cb (GnucashRegister *g_reg,
|
||||||
gpointer data);
|
gpointer data);
|
||||||
static void gnc_reg_refresh_toolbar(RegWindow *regData);
|
static void gnc_reg_refresh_toolbar(RegWindow *regData);
|
||||||
static void regDestroy(xaccLedgerDisplay *ledger);
|
static void regDestroy(GNCLedgerDisplay *ledger);
|
||||||
static void gnc_register_check_close(RegWindow *regData);
|
static void gnc_register_check_close(RegWindow *regData);
|
||||||
static void cutCB(GtkWidget *w, gpointer data);
|
static void cutCB(GtkWidget *w, gpointer data);
|
||||||
static void copyCB(GtkWidget *w, gpointer data);
|
static void copyCB(GtkWidget *w, gpointer data);
|
||||||
@ -169,7 +169,7 @@ RegWindow *
|
|||||||
regWindowSimple (Account *account)
|
regWindowSimple (Account *account)
|
||||||
{
|
{
|
||||||
RegWindow *result = NULL;
|
RegWindow *result = NULL;
|
||||||
xaccLedgerDisplay * ledger = xaccLedgerDisplaySimple (account);
|
GNCLedgerDisplay * ledger = gnc_ledger_display_simple (account);
|
||||||
|
|
||||||
if (ledger != NULL)
|
if (ledger != NULL)
|
||||||
result = regWindowLedger (ledger);
|
result = regWindowLedger (ledger);
|
||||||
@ -189,7 +189,7 @@ RegWindow *
|
|||||||
regWindowAccGroup (Account *account)
|
regWindowAccGroup (Account *account)
|
||||||
{
|
{
|
||||||
RegWindow *result = NULL;
|
RegWindow *result = NULL;
|
||||||
xaccLedgerDisplay * ledger = xaccLedgerDisplayAccGroup (account);
|
GNCLedgerDisplay * ledger = gnc_ledger_display_subaccounts (account);
|
||||||
|
|
||||||
if (ledger != NULL)
|
if (ledger != NULL)
|
||||||
result = regWindowLedger (ledger);
|
result = regWindowLedger (ledger);
|
||||||
@ -244,10 +244,10 @@ gnc_register_jump_to_split(RegWindow *regData, Split *split)
|
|||||||
if (trans != NULL)
|
if (trans != NULL)
|
||||||
if (gnc_register_include_date(regData, xaccTransGetDate(trans)))
|
if (gnc_register_include_date(regData, xaccTransGetDate(trans)))
|
||||||
{
|
{
|
||||||
xaccLedgerDisplayRefresh(regData->ledger);
|
gnc_ledger_display_refresh (regData->ledger);
|
||||||
}
|
}
|
||||||
|
|
||||||
reg = xaccLedgerDisplayGetSR (regData->ledger);
|
reg = gnc_ledger_display_get_split_register (regData->ledger);
|
||||||
|
|
||||||
if (gnc_split_register_get_split_virt_loc(reg, split, &vcell_loc))
|
if (gnc_split_register_get_split_virt_loc(reg, split, &vcell_loc))
|
||||||
gnucash_register_goto_virt_cell(regData->reg, vcell_loc);
|
gnucash_register_goto_virt_cell(regData->reg, vcell_loc);
|
||||||
@ -275,10 +275,10 @@ gnc_register_jump_to_split_amount(RegWindow *regData, Split *split)
|
|||||||
if (trans != NULL)
|
if (trans != NULL)
|
||||||
if (gnc_register_include_date(regData, xaccTransGetDate(trans)))
|
if (gnc_register_include_date(regData, xaccTransGetDate(trans)))
|
||||||
{
|
{
|
||||||
xaccLedgerDisplayRefresh (regData->ledger);
|
gnc_ledger_display_refresh (regData->ledger);
|
||||||
}
|
}
|
||||||
|
|
||||||
reg = xaccLedgerDisplayGetSR (regData->ledger);
|
reg = gnc_ledger_display_get_split_register (regData->ledger);
|
||||||
|
|
||||||
if (gnc_split_register_get_split_amount_virt_loc (reg, split, &virt_loc))
|
if (gnc_split_register_get_split_amount_virt_loc (reg, split, &virt_loc))
|
||||||
gnucash_register_goto_virt_loc (regData->reg, virt_loc);
|
gnucash_register_goto_virt_loc (regData->reg, virt_loc);
|
||||||
@ -288,14 +288,14 @@ gnc_register_jump_to_split_amount(RegWindow *regData, Split *split)
|
|||||||
static void
|
static void
|
||||||
gnc_register_change_style (RegWindow *regData, SplitRegisterStyle style)
|
gnc_register_change_style (RegWindow *regData, SplitRegisterStyle style)
|
||||||
{
|
{
|
||||||
SplitRegister *reg = xaccLedgerDisplayGetSR (regData->ledger);
|
SplitRegister *reg = gnc_ledger_display_get_split_register (regData->ledger);
|
||||||
|
|
||||||
if (style == reg->style)
|
if (style == reg->style)
|
||||||
return;
|
return;
|
||||||
|
|
||||||
gnc_split_register_config (reg, reg->type, style, reg->use_double_line);
|
gnc_split_register_config (reg, reg->type, style, reg->use_double_line);
|
||||||
|
|
||||||
xaccLedgerDisplayRefresh (regData->ledger);
|
gnc_ledger_display_refresh (regData->ledger);
|
||||||
}
|
}
|
||||||
|
|
||||||
static void
|
static void
|
||||||
@ -335,7 +335,7 @@ static void
|
|||||||
gnc_register_double_line_cb (GtkWidget *w, gpointer data)
|
gnc_register_double_line_cb (GtkWidget *w, gpointer data)
|
||||||
{
|
{
|
||||||
RegWindow *regData = data;
|
RegWindow *regData = data;
|
||||||
SplitRegister *reg = xaccLedgerDisplayGetSR (regData->ledger);
|
SplitRegister *reg = gnc_ledger_display_get_split_register (regData->ledger);
|
||||||
gboolean use_double_line;
|
gboolean use_double_line;
|
||||||
|
|
||||||
use_double_line = GTK_CHECK_MENU_ITEM(w)->active;
|
use_double_line = GTK_CHECK_MENU_ITEM(w)->active;
|
||||||
@ -345,13 +345,13 @@ gnc_register_double_line_cb (GtkWidget *w, gpointer data)
|
|||||||
|
|
||||||
gnc_split_register_config (reg, reg->type, reg->style, use_double_line);
|
gnc_split_register_config (reg, reg->type, reg->style, use_double_line);
|
||||||
|
|
||||||
xaccLedgerDisplayRefresh (regData->ledger);
|
gnc_ledger_display_refresh (regData->ledger);
|
||||||
}
|
}
|
||||||
|
|
||||||
static void
|
static void
|
||||||
gnc_register_sort (RegWindow *regData, sort_type_t sort_code)
|
gnc_register_sort (RegWindow *regData, sort_type_t sort_code)
|
||||||
{
|
{
|
||||||
Query *query = xaccLedgerDisplayGetQuery (regData->ledger);
|
Query *query = gnc_ledger_display_get_query (regData->ledger);
|
||||||
gboolean show_present_divider = FALSE;
|
gboolean show_present_divider = FALSE;
|
||||||
SplitRegister *reg;
|
SplitRegister *reg;
|
||||||
|
|
||||||
@ -391,13 +391,13 @@ gnc_register_sort (RegWindow *regData, sort_type_t sort_code)
|
|||||||
assert(0); /* we should never be here */
|
assert(0); /* we should never be here */
|
||||||
}
|
}
|
||||||
|
|
||||||
reg = xaccLedgerDisplayGetSR (regData->ledger);
|
reg = gnc_ledger_display_get_split_register (regData->ledger);
|
||||||
|
|
||||||
gnc_split_register_show_present_divider (reg, show_present_divider);
|
gnc_split_register_show_present_divider (reg, show_present_divider);
|
||||||
|
|
||||||
regData->sort_type = sort_code;
|
regData->sort_type = sort_code;
|
||||||
|
|
||||||
xaccLedgerDisplayRefresh(regData->ledger);
|
gnc_ledger_display_refresh(regData->ledger);
|
||||||
}
|
}
|
||||||
|
|
||||||
static void
|
static void
|
||||||
@ -509,7 +509,7 @@ gnc_date_range_set_sensitivities(RegWindow *regData)
|
|||||||
if (!regData->ledger)
|
if (!regData->ledger)
|
||||||
return;
|
return;
|
||||||
|
|
||||||
query = xaccLedgerDisplayGetQuery (regData->ledger);
|
query = gnc_ledger_display_get_query (regData->ledger);
|
||||||
if (!query)
|
if (!query)
|
||||||
return;
|
return;
|
||||||
|
|
||||||
@ -549,7 +549,7 @@ gnc_register_set_date_range(RegWindow *regData)
|
|||||||
if (!regData->ledger)
|
if (!regData->ledger)
|
||||||
return;
|
return;
|
||||||
|
|
||||||
query = xaccLedgerDisplayGetQuery (regData->ledger);
|
query = gnc_ledger_display_get_query (regData->ledger);
|
||||||
if (!query)
|
if (!query)
|
||||||
return;
|
return;
|
||||||
|
|
||||||
@ -600,7 +600,7 @@ gnc_register_date_cb(GtkWidget *widget, gpointer data)
|
|||||||
|
|
||||||
gnc_register_set_date_range(regData);
|
gnc_register_set_date_range(regData);
|
||||||
|
|
||||||
xaccLedgerDisplayRefresh (regData->ledger);
|
gnc_ledger_display_refresh (regData->ledger);
|
||||||
}
|
}
|
||||||
|
|
||||||
static void
|
static void
|
||||||
@ -749,7 +749,7 @@ gnc_register_date_window (RegWindow *regData, gboolean show_all)
|
|||||||
regDateData->start_date = date;
|
regDateData->start_date = date;
|
||||||
|
|
||||||
time_val = xaccQueryGetEarliestDateFound
|
time_val = xaccQueryGetEarliestDateFound
|
||||||
(xaccLedgerDisplayGetQuery (regData->ledger));
|
(gnc_ledger_display_get_query (regData->ledger));
|
||||||
if (time_val < time(NULL))
|
if (time_val < time(NULL))
|
||||||
gnc_date_edit_set_time(GNC_DATE_EDIT(date), time_val);
|
gnc_date_edit_set_time(GNC_DATE_EDIT(date), time_val);
|
||||||
|
|
||||||
@ -971,7 +971,7 @@ gnc_ui_find_transactions_cb (GtkWidget *widget, gpointer data)
|
|||||||
RegWindow * regData = data;
|
RegWindow * regData = data;
|
||||||
SplitRegister *reg;
|
SplitRegister *reg;
|
||||||
|
|
||||||
reg = xaccLedgerDisplayGetSR (regData->ledger);
|
reg = gnc_ledger_display_get_split_register (regData->ledger);
|
||||||
|
|
||||||
if (reg->type == SEARCH_LEDGER)
|
if (reg->type == SEARCH_LEDGER)
|
||||||
gnc_ui_find_transactions_dialog_create (regData->ledger);
|
gnc_ui_find_transactions_dialog_create (regData->ledger);
|
||||||
@ -1014,14 +1014,14 @@ gnc_register_create_summary_bar (RegWindow *regData)
|
|||||||
regData->shares_label = NULL;
|
regData->shares_label = NULL;
|
||||||
regData->value_label = NULL;
|
regData->value_label = NULL;
|
||||||
|
|
||||||
if (xaccLedgerDisplayType (regData->ledger) >= LD_SUBACCOUNT)
|
if (gnc_ledger_display_type (regData->ledger) >= LD_SUBACCOUNT)
|
||||||
return NULL;
|
return NULL;
|
||||||
|
|
||||||
{
|
{
|
||||||
Account *account;
|
Account *account;
|
||||||
GNCAccountType atype;
|
GNCAccountType atype;
|
||||||
|
|
||||||
account = xaccLedgerDisplayLeader (regData->ledger);
|
account = gnc_ledger_display_leader (regData->ledger);
|
||||||
atype = xaccAccountGetType (account);
|
atype = xaccAccountGetType (account);
|
||||||
|
|
||||||
switch (atype)
|
switch (atype)
|
||||||
@ -1075,7 +1075,7 @@ gnc_register_create_status_bar (RegWindow *regData)
|
|||||||
void
|
void
|
||||||
gnc_register_jump_to_blank (RegWindow *regData)
|
gnc_register_jump_to_blank (RegWindow *regData)
|
||||||
{
|
{
|
||||||
SplitRegister *reg = xaccLedgerDisplayGetSR (regData->ledger);
|
SplitRegister *reg = gnc_ledger_display_get_split_register (regData->ledger);
|
||||||
VirtualCellLocation vcell_loc;
|
VirtualCellLocation vcell_loc;
|
||||||
Split *blank;
|
Split *blank;
|
||||||
|
|
||||||
@ -1098,7 +1098,7 @@ expand_trans_check_cb (GtkWidget *widget, gpointer data)
|
|||||||
if (!regData)
|
if (!regData)
|
||||||
return;
|
return;
|
||||||
|
|
||||||
reg = xaccLedgerDisplayGetSR (regData->ledger);
|
reg = gnc_ledger_display_get_split_register (regData->ledger);
|
||||||
|
|
||||||
expand = GTK_CHECK_MENU_ITEM (widget)->active;
|
expand = GTK_CHECK_MENU_ITEM (widget)->active;
|
||||||
|
|
||||||
@ -1112,7 +1112,7 @@ expand_trans_cb (GtkWidget *widget, gpointer data)
|
|||||||
gboolean expand;
|
gboolean expand;
|
||||||
SplitRegister *reg;
|
SplitRegister *reg;
|
||||||
|
|
||||||
reg = xaccLedgerDisplayGetSR (regData->ledger);
|
reg = gnc_ledger_display_get_split_register (regData->ledger);
|
||||||
|
|
||||||
expand = GTK_TOGGLE_BUTTON (widget)->active;
|
expand = GTK_TOGGLE_BUTTON (widget)->active;
|
||||||
|
|
||||||
@ -1125,7 +1125,7 @@ new_trans_cb (GtkWidget *widget, gpointer data)
|
|||||||
RegWindow *regData = data;
|
RegWindow *regData = data;
|
||||||
SplitRegister *reg;
|
SplitRegister *reg;
|
||||||
|
|
||||||
reg = xaccLedgerDisplayGetSR (regData->ledger);
|
reg = gnc_ledger_display_get_split_register (regData->ledger);
|
||||||
|
|
||||||
if (gnc_split_register_save (reg, TRUE))
|
if (gnc_split_register_save (reg, TRUE))
|
||||||
gnc_split_register_redraw (reg);
|
gnc_split_register_redraw (reg);
|
||||||
@ -1142,7 +1142,7 @@ jump_cb(GtkWidget *widget, gpointer data)
|
|||||||
Account *leader;
|
Account *leader;
|
||||||
Split *split;
|
Split *split;
|
||||||
|
|
||||||
reg = xaccLedgerDisplayGetSR (regData->ledger);
|
reg = gnc_ledger_display_get_split_register (regData->ledger);
|
||||||
|
|
||||||
split = gnc_split_register_get_current_split (reg);
|
split = gnc_split_register_get_current_split (reg);
|
||||||
if (split == NULL)
|
if (split == NULL)
|
||||||
@ -1152,7 +1152,7 @@ jump_cb(GtkWidget *widget, gpointer data)
|
|||||||
if (account == NULL)
|
if (account == NULL)
|
||||||
return;
|
return;
|
||||||
|
|
||||||
leader = xaccLedgerDisplayLeader (regData->ledger);
|
leader = gnc_ledger_display_leader (regData->ledger);
|
||||||
|
|
||||||
if (account == leader)
|
if (account == leader)
|
||||||
{
|
{
|
||||||
@ -1179,7 +1179,8 @@ static void
|
|||||||
print_check_cb(GtkWidget * widget, gpointer data)
|
print_check_cb(GtkWidget * widget, gpointer data)
|
||||||
{
|
{
|
||||||
RegWindow * reg_data = data;
|
RegWindow * reg_data = data;
|
||||||
SplitRegister * reg = xaccLedgerDisplayGetSR (reg_data->ledger);
|
SplitRegister * reg =
|
||||||
|
gnc_ledger_display_get_split_register (reg_data->ledger);
|
||||||
Split * split = gnc_split_register_get_current_split(reg);
|
Split * split = gnc_split_register_get_current_split(reg);
|
||||||
Transaction * trans = xaccSplitGetParent(split);
|
Transaction * trans = xaccSplitGetParent(split);
|
||||||
|
|
||||||
@ -1212,7 +1213,7 @@ static void
|
|||||||
gnc_register_scrub_all_cb (GtkWidget *widget, gpointer data)
|
gnc_register_scrub_all_cb (GtkWidget *widget, gpointer data)
|
||||||
{
|
{
|
||||||
RegWindow *regData = data;
|
RegWindow *regData = data;
|
||||||
Query *query = xaccLedgerDisplayGetQuery (regData->ledger);
|
Query *query = gnc_ledger_display_get_query (regData->ledger);
|
||||||
AccountGroup *root;
|
AccountGroup *root;
|
||||||
GList *node;
|
GList *node;
|
||||||
|
|
||||||
@ -1243,7 +1244,7 @@ gnc_register_scrub_current_cb (GtkWidget *widget, gpointer data)
|
|||||||
Transaction *trans;
|
Transaction *trans;
|
||||||
AccountGroup *root;
|
AccountGroup *root;
|
||||||
|
|
||||||
reg = xaccLedgerDisplayGetSR (regData->ledger);
|
reg = gnc_ledger_display_get_split_register (regData->ledger);
|
||||||
trans = gnc_split_register_get_current_trans (reg);
|
trans = gnc_split_register_get_current_trans (reg);
|
||||||
|
|
||||||
if (!trans)
|
if (!trans)
|
||||||
@ -1627,7 +1628,7 @@ gnc_register_create_menu_bar(RegWindow *regData, GtkWidget *statusbar)
|
|||||||
GtkWidget *widget;
|
GtkWidget *widget;
|
||||||
int index;
|
int index;
|
||||||
|
|
||||||
reg = xaccLedgerDisplayGetSR (regData->ledger);
|
reg = gnc_ledger_display_get_split_register (regData->ledger);
|
||||||
|
|
||||||
switch (reg->style)
|
switch (reg->style)
|
||||||
{
|
{
|
||||||
@ -1759,7 +1760,7 @@ gnc_register_record (RegWindow *regData)
|
|||||||
SplitRegister *reg;
|
SplitRegister *reg;
|
||||||
Transaction *trans;
|
Transaction *trans;
|
||||||
|
|
||||||
reg = xaccLedgerDisplayGetSR (regData->ledger);
|
reg = gnc_ledger_display_get_split_register (regData->ledger);
|
||||||
|
|
||||||
trans = gnc_split_register_get_current_trans (reg);
|
trans = gnc_split_register_get_current_trans (reg);
|
||||||
|
|
||||||
@ -1780,7 +1781,7 @@ gnc_register_match_trans_row (VirtualLocation virt_loc,
|
|||||||
CursorClass cursor_class;
|
CursorClass cursor_class;
|
||||||
SplitRegister *sr;
|
SplitRegister *sr;
|
||||||
|
|
||||||
sr = xaccLedgerDisplayGetSR (regData->ledger);
|
sr = gnc_ledger_display_get_split_register (regData->ledger);
|
||||||
cursor_class = gnc_split_register_get_cursor_class (sr, virt_loc.vcell_loc);
|
cursor_class = gnc_split_register_get_cursor_class (sr, virt_loc.vcell_loc);
|
||||||
|
|
||||||
return (cursor_class == CURSOR_CLASS_TRANS);
|
return (cursor_class == CURSOR_CLASS_TRANS);
|
||||||
@ -1797,7 +1798,7 @@ gnc_register_goto_next_trans_row (RegWindow *regData)
|
|||||||
static void
|
static void
|
||||||
gnc_register_enter (RegWindow *regData, gboolean next_transaction)
|
gnc_register_enter (RegWindow *regData, gboolean next_transaction)
|
||||||
{
|
{
|
||||||
SplitRegister *sr = xaccLedgerDisplayGetSR (regData->ledger);
|
SplitRegister *sr = gnc_ledger_display_get_split_register (regData->ledger);
|
||||||
gboolean goto_blank;
|
gboolean goto_blank;
|
||||||
|
|
||||||
goto_blank = gnc_lookup_boolean_option("Register",
|
goto_blank = gnc_lookup_boolean_option("Register",
|
||||||
@ -1859,7 +1860,7 @@ gnc_register_delete_cb(GtkWidget *widget, GdkEvent *event, gpointer data)
|
|||||||
|
|
||||||
gnc_register_check_close (regData);
|
gnc_register_check_close (regData);
|
||||||
|
|
||||||
xaccLedgerDisplayClose (regData->ledger);
|
gnc_ledger_display_close (regData->ledger);
|
||||||
|
|
||||||
return TRUE; /* don't close */
|
return TRUE; /* don't close */
|
||||||
}
|
}
|
||||||
@ -1888,9 +1889,9 @@ gnc_register_destroy_cb(GtkWidget *widget, gpointer data)
|
|||||||
}
|
}
|
||||||
|
|
||||||
static gncUIWidget
|
static gncUIWidget
|
||||||
gnc_register_get_parent(xaccLedgerDisplay *ledger)
|
gnc_register_get_parent(GNCLedgerDisplay *ledger)
|
||||||
{
|
{
|
||||||
RegWindow *regData = xaccLedgerDisplayGetUserData (ledger);
|
RegWindow *regData = gnc_ledger_display_get_user_data (ledger);
|
||||||
|
|
||||||
if (regData == NULL)
|
if (regData == NULL)
|
||||||
return NULL;
|
return NULL;
|
||||||
@ -1911,7 +1912,7 @@ gnc_reg_get_name (RegWindow *regData, gboolean for_window)
|
|||||||
if (regData == NULL)
|
if (regData == NULL)
|
||||||
return NULL;
|
return NULL;
|
||||||
|
|
||||||
reg = xaccLedgerDisplayGetSR (regData->ledger);
|
reg = gnc_ledger_display_get_split_register (regData->ledger);
|
||||||
|
|
||||||
switch (reg->type)
|
switch (reg->type)
|
||||||
{
|
{
|
||||||
@ -1946,7 +1947,7 @@ gnc_reg_get_name (RegWindow *regData, gboolean for_window)
|
|||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
|
||||||
leader = xaccLedgerDisplayLeader (regData->ledger);
|
leader = gnc_ledger_display_leader (regData->ledger);
|
||||||
|
|
||||||
if ((leader != NULL) && single_account)
|
if ((leader != NULL) && single_account)
|
||||||
{
|
{
|
||||||
@ -2014,7 +2015,7 @@ size_allocate (GtkWidget *widget,
|
|||||||
* Return: regData - the register window instance *
|
* Return: regData - the register window instance *
|
||||||
\********************************************************************/
|
\********************************************************************/
|
||||||
RegWindow *
|
RegWindow *
|
||||||
regWindowLedger (xaccLedgerDisplay *ledger)
|
regWindowLedger (GNCLedgerDisplay *ledger)
|
||||||
{
|
{
|
||||||
SplitRegister *reg;
|
SplitRegister *reg;
|
||||||
RegWindow *regData;
|
RegWindow *regData;
|
||||||
@ -2026,17 +2027,17 @@ regWindowLedger (xaccLedgerDisplay *ledger)
|
|||||||
gboolean show_all;
|
gboolean show_all;
|
||||||
gboolean has_date;
|
gboolean has_date;
|
||||||
|
|
||||||
reg = xaccLedgerDisplayGetSR (ledger);
|
reg = gnc_ledger_display_get_split_register (ledger);
|
||||||
|
|
||||||
regData = xaccLedgerDisplayGetUserData (ledger);
|
regData = gnc_ledger_display_get_user_data (ledger);
|
||||||
if (regData != NULL)
|
if (regData != NULL)
|
||||||
return regData;
|
return regData;
|
||||||
|
|
||||||
regData = g_new (RegWindow, 1);
|
regData = g_new (RegWindow, 1);
|
||||||
|
|
||||||
xaccLedgerDisplaySetUserData (ledger, regData);
|
gnc_ledger_display_set_user_data (ledger, regData);
|
||||||
|
|
||||||
xaccLedgerDisplaySetHandlers (ledger,
|
gnc_ledger_display_set_handlers (ledger,
|
||||||
regDestroy,
|
regDestroy,
|
||||||
gnc_register_get_parent);
|
gnc_register_get_parent);
|
||||||
|
|
||||||
@ -2070,7 +2071,7 @@ regWindowLedger (xaccLedgerDisplay *ledger)
|
|||||||
TRUE);
|
TRUE);
|
||||||
|
|
||||||
{
|
{
|
||||||
Query *q = xaccLedgerDisplayGetQuery (regData->ledger);
|
Query *q = gnc_ledger_display_get_query (regData->ledger);
|
||||||
|
|
||||||
has_date = xaccQueryHasTermType (q, PD_DATE);
|
has_date = xaccQueryHasTermType (q, PD_DATE);
|
||||||
}
|
}
|
||||||
@ -2085,7 +2086,7 @@ regWindowLedger (xaccLedgerDisplay *ledger)
|
|||||||
|
|
||||||
/* Now that we have a date range, remove any existing
|
/* Now that we have a date range, remove any existing
|
||||||
* maximum on the number of splits returned. */
|
* maximum on the number of splits returned. */
|
||||||
xaccQuerySetMaxSplits (xaccLedgerDisplayGetQuery (regData->ledger), -1);
|
xaccQuerySetMaxSplits (gnc_ledger_display_get_query (regData->ledger), -1);
|
||||||
|
|
||||||
statusbar = gnc_register_create_status_bar(regData);
|
statusbar = gnc_register_create_status_bar(regData);
|
||||||
gtk_box_pack_start(GTK_BOX(vbox), statusbar, FALSE, FALSE, 0);
|
gtk_box_pack_start(GTK_BOX(vbox), statusbar, FALSE, FALSE, 0);
|
||||||
@ -2249,7 +2250,7 @@ regWindowLedger (xaccLedgerDisplay *ledger)
|
|||||||
|
|
||||||
gnc_split_register_show_present_divider (reg, TRUE);
|
gnc_split_register_show_present_divider (reg, TRUE);
|
||||||
|
|
||||||
xaccLedgerDisplayRefresh (ledger);
|
gnc_ledger_display_refresh (ledger);
|
||||||
gnc_reg_refresh_toolbar (regData);
|
gnc_reg_refresh_toolbar (regData);
|
||||||
|
|
||||||
gnc_window_adjust_for_screen (GTK_WINDOW(register_window));
|
gnc_window_adjust_for_screen (GTK_WINDOW(register_window));
|
||||||
@ -2339,7 +2340,7 @@ gnc_register_redraw_all_cb (GnucashRegister *g_reg, gpointer data)
|
|||||||
if (regData->window == NULL)
|
if (regData->window == NULL)
|
||||||
return;
|
return;
|
||||||
|
|
||||||
leader = xaccLedgerDisplayLeader (regData->ledger);
|
leader = gnc_ledger_display_leader (regData->ledger);
|
||||||
|
|
||||||
euro = gnc_lookup_boolean_option ("International",
|
euro = gnc_lookup_boolean_option ("International",
|
||||||
"Enable EURO support",
|
"Enable EURO support",
|
||||||
@ -2488,7 +2489,7 @@ gnc_register_redraw_all_cb (GnucashRegister *g_reg, gpointer data)
|
|||||||
gboolean sensitive;
|
gboolean sensitive;
|
||||||
SplitRegister *reg;
|
SplitRegister *reg;
|
||||||
|
|
||||||
reg = xaccLedgerDisplayGetSR (regData->ledger);
|
reg = gnc_ledger_display_get_split_register (regData->ledger);
|
||||||
|
|
||||||
expand = gnc_split_register_current_trans_expanded (reg);
|
expand = gnc_split_register_current_trans_expanded (reg);
|
||||||
|
|
||||||
@ -2528,7 +2529,7 @@ gnc_register_redraw_help_cb (GnucashRegister *g_reg, gpointer data)
|
|||||||
if (!regData)
|
if (!regData)
|
||||||
return;
|
return;
|
||||||
|
|
||||||
reg = xaccLedgerDisplayGetSR (regData->ledger);
|
reg = gnc_ledger_display_get_split_register (regData->ledger);
|
||||||
|
|
||||||
help = gnc_table_get_help (reg->table);
|
help = gnc_table_get_help (reg->table);
|
||||||
|
|
||||||
@ -2546,7 +2547,7 @@ gnc_reg_save_size (RegWindow *regData)
|
|||||||
int *width;
|
int *width;
|
||||||
char *prefix;
|
char *prefix;
|
||||||
|
|
||||||
reg = xaccLedgerDisplayGetSR (regData->ledger);
|
reg = gnc_ledger_display_get_split_register (regData->ledger);
|
||||||
|
|
||||||
switch (reg->type)
|
switch (reg->type)
|
||||||
{
|
{
|
||||||
@ -2574,9 +2575,9 @@ gnc_reg_save_size (RegWindow *regData)
|
|||||||
\********************************************************************/
|
\********************************************************************/
|
||||||
|
|
||||||
static void
|
static void
|
||||||
regDestroy (xaccLedgerDisplay *ledger)
|
regDestroy (GNCLedgerDisplay *ledger)
|
||||||
{
|
{
|
||||||
RegWindow *regData = xaccLedgerDisplayGetUserData (ledger);
|
RegWindow *regData = gnc_ledger_display_get_user_data (ledger);
|
||||||
|
|
||||||
if (regData)
|
if (regData)
|
||||||
{
|
{
|
||||||
@ -2584,7 +2585,7 @@ regDestroy (xaccLedgerDisplay *ledger)
|
|||||||
|
|
||||||
gnc_reg_save_size (regData);
|
gnc_reg_save_size (regData);
|
||||||
|
|
||||||
reg = xaccLedgerDisplayGetSR (ledger);
|
reg = gnc_ledger_display_get_split_register (ledger);
|
||||||
|
|
||||||
if (reg && reg->table)
|
if (reg && reg->table)
|
||||||
gnc_table_save_state (reg->table);
|
gnc_table_save_state (reg->table);
|
||||||
@ -2592,7 +2593,7 @@ regDestroy (xaccLedgerDisplay *ledger)
|
|||||||
gtk_widget_destroy (regData->window);
|
gtk_widget_destroy (regData->window);
|
||||||
}
|
}
|
||||||
|
|
||||||
xaccLedgerDisplaySetUserData (ledger, NULL);
|
gnc_ledger_display_set_user_data (ledger, NULL);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
@ -2663,7 +2664,8 @@ cutTransCB (GtkWidget *w, gpointer data)
|
|||||||
{
|
{
|
||||||
RegWindow *regData = data;
|
RegWindow *regData = data;
|
||||||
|
|
||||||
gnc_split_register_cut_current (xaccLedgerDisplayGetSR (regData->ledger));
|
gnc_split_register_cut_current
|
||||||
|
(gnc_ledger_display_get_split_register (regData->ledger));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
@ -2679,7 +2681,8 @@ copyTransCB(GtkWidget *w, gpointer data)
|
|||||||
{
|
{
|
||||||
RegWindow *regData = data;
|
RegWindow *regData = data;
|
||||||
|
|
||||||
gnc_split_register_copy_current (xaccLedgerDisplayGetSR (regData->ledger));
|
gnc_split_register_copy_current
|
||||||
|
(gnc_ledger_display_get_split_register (regData->ledger));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
@ -2695,7 +2698,8 @@ pasteTransCB (GtkWidget *w, gpointer data)
|
|||||||
{
|
{
|
||||||
RegWindow *regData = data;
|
RegWindow *regData = data;
|
||||||
|
|
||||||
gnc_split_register_paste_current (xaccLedgerDisplayGetSR (regData->ledger));
|
gnc_split_register_paste_current
|
||||||
|
(gnc_ledger_display_get_split_register (regData->ledger));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
@ -2712,7 +2716,7 @@ xferCB (GtkWidget * w, gpointer data)
|
|||||||
RegWindow *regData = data;
|
RegWindow *regData = data;
|
||||||
|
|
||||||
gnc_xfer_dialog (regData->window,
|
gnc_xfer_dialog (regData->window,
|
||||||
xaccLedgerDisplayLeader (regData->ledger));
|
gnc_ledger_display_leader (regData->ledger));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
@ -2728,7 +2732,7 @@ stockSplitCB (GtkWidget * w, gpointer data)
|
|||||||
{
|
{
|
||||||
RegWindow *regData = data;
|
RegWindow *regData = data;
|
||||||
|
|
||||||
gnc_stock_split_dialog (xaccLedgerDisplayLeader (regData->ledger));
|
gnc_stock_split_dialog (gnc_ledger_display_leader (regData->ledger));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
@ -2743,7 +2747,7 @@ static void
|
|||||||
editCB(GtkWidget * w, gpointer data)
|
editCB(GtkWidget * w, gpointer data)
|
||||||
{
|
{
|
||||||
RegWindow *regData = data;
|
RegWindow *regData = data;
|
||||||
Account *account = xaccLedgerDisplayLeader (regData->ledger);
|
Account *account = gnc_ledger_display_leader (regData->ledger);
|
||||||
|
|
||||||
if (account == NULL)
|
if (account == NULL)
|
||||||
return;
|
return;
|
||||||
@ -2764,7 +2768,7 @@ static void
|
|||||||
startRecnCB(GtkWidget * w, gpointer data)
|
startRecnCB(GtkWidget * w, gpointer data)
|
||||||
{
|
{
|
||||||
RegWindow *regData = data;
|
RegWindow *regData = data;
|
||||||
Account *account = xaccLedgerDisplayLeader (regData->ledger);
|
Account *account = gnc_ledger_display_leader (regData->ledger);
|
||||||
|
|
||||||
if (account == NULL)
|
if (account == NULL)
|
||||||
return;
|
return;
|
||||||
@ -3001,7 +3005,7 @@ deleteCB(GtkWidget *widget, gpointer data)
|
|||||||
Split *split;
|
Split *split;
|
||||||
gint result;
|
gint result;
|
||||||
|
|
||||||
reg = xaccLedgerDisplayGetSR (regData->ledger);
|
reg = gnc_ledger_display_get_split_register (regData->ledger);
|
||||||
|
|
||||||
/* get the current split based on cursor position */
|
/* get the current split based on cursor position */
|
||||||
split = gnc_split_register_get_current_split(reg);
|
split = gnc_split_register_get_current_split(reg);
|
||||||
@ -3137,7 +3141,7 @@ static void duplicateCB(GtkWidget *w, gpointer data)
|
|||||||
RegWindow *regData = data;
|
RegWindow *regData = data;
|
||||||
|
|
||||||
gnc_split_register_duplicate_current
|
gnc_split_register_duplicate_current
|
||||||
(xaccLedgerDisplayGetSR (regData->ledger));
|
(gnc_ledger_display_get_split_register (regData->ledger));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
@ -3152,7 +3156,7 @@ static void duplicateCB(GtkWidget *w, gpointer data)
|
|||||||
static void recurCB(GtkWidget *w, gpointer data)
|
static void recurCB(GtkWidget *w, gpointer data)
|
||||||
{
|
{
|
||||||
RegWindow *regData = data;
|
RegWindow *regData = data;
|
||||||
SplitRegister *reg = xaccLedgerDisplayGetSR (regData->ledger);
|
SplitRegister *reg = gnc_ledger_display_get_split_register (regData->ledger);
|
||||||
Transaction *pending_trans = gnc_split_register_get_current_trans (reg);
|
Transaction *pending_trans = gnc_split_register_get_current_trans (reg);
|
||||||
|
|
||||||
gnc_sx_create_from_trans(pending_trans);
|
gnc_sx_create_from_trans(pending_trans);
|
||||||
@ -3172,7 +3176,7 @@ cancelCB(GtkWidget *w, gpointer data)
|
|||||||
RegWindow *regData = data;
|
RegWindow *regData = data;
|
||||||
|
|
||||||
gnc_split_register_cancel_cursor_trans_changes
|
gnc_split_register_cancel_cursor_trans_changes
|
||||||
(xaccLedgerDisplayGetSR (regData->ledger));
|
(gnc_ledger_display_get_split_register (regData->ledger));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
@ -3188,7 +3192,7 @@ gnc_register_check_close(RegWindow *regData)
|
|||||||
gboolean pending_changes;
|
gboolean pending_changes;
|
||||||
SplitRegister *reg;
|
SplitRegister *reg;
|
||||||
|
|
||||||
reg = xaccLedgerDisplayGetSR (regData->ledger);
|
reg = gnc_ledger_display_get_split_register (regData->ledger);
|
||||||
|
|
||||||
pending_changes = gnc_split_register_changed (reg);
|
pending_changes = gnc_split_register_changed (reg);
|
||||||
if (pending_changes)
|
if (pending_changes)
|
||||||
@ -3216,13 +3220,13 @@ closeCB (GtkWidget *widget, gpointer data)
|
|||||||
|
|
||||||
gnc_register_check_close (regData);
|
gnc_register_check_close (regData);
|
||||||
|
|
||||||
xaccLedgerDisplayClose (regData->ledger);
|
gnc_ledger_display_close (regData->ledger);
|
||||||
}
|
}
|
||||||
|
|
||||||
static void
|
static void
|
||||||
report_helper (RegWindow *regData, SCM func, Query *query)
|
report_helper (RegWindow *regData, SCM func, Query *query)
|
||||||
{
|
{
|
||||||
SplitRegister *reg = xaccLedgerDisplayGetSR (regData->ledger);
|
SplitRegister *reg = gnc_ledger_display_get_split_register (regData->ledger);
|
||||||
char *str;
|
char *str;
|
||||||
SCM qtype;
|
SCM qtype;
|
||||||
SCM args;
|
SCM args;
|
||||||
@ -3254,7 +3258,7 @@ report_helper (RegWindow *regData, SCM func, Query *query)
|
|||||||
|
|
||||||
if (!query)
|
if (!query)
|
||||||
{
|
{
|
||||||
query = xaccLedgerDisplayGetQuery (regData->ledger);
|
query = gnc_ledger_display_get_query (regData->ledger);
|
||||||
g_return_if_fail (query != NULL);
|
g_return_if_fail (query != NULL);
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -3320,7 +3324,7 @@ invoiceTransCB (GtkWidget *widget, gpointer data)
|
|||||||
Query *query;
|
Query *query;
|
||||||
SCM func;
|
SCM func;
|
||||||
|
|
||||||
reg = xaccLedgerDisplayGetSR (regData->ledger);
|
reg = gnc_ledger_display_get_split_register (regData->ledger);
|
||||||
|
|
||||||
split = gnc_split_register_get_current_split (reg);
|
split = gnc_split_register_get_current_split (reg);
|
||||||
if (!split)
|
if (!split)
|
||||||
|
@ -27,7 +27,7 @@
|
|||||||
#include "RegWindow.h"
|
#include "RegWindow.h"
|
||||||
#include "gnc-ledger-display.h"
|
#include "gnc-ledger-display.h"
|
||||||
|
|
||||||
RegWindow * regWindowLedger(xaccLedgerDisplay *ledger);
|
RegWindow * regWindowLedger(GNCLedgerDisplay *ledger);
|
||||||
|
|
||||||
void gnc_register_raise(RegWindow *regData);
|
void gnc_register_raise(RegWindow *regData);
|
||||||
void gnc_register_jump_to_blank(RegWindow *regData);
|
void gnc_register_jump_to_blank(RegWindow *regData);
|
||||||
|
@ -45,20 +45,20 @@
|
|||||||
#define REGISTER_TEMPLATE_CM_CLASS "register-template"
|
#define REGISTER_TEMPLATE_CM_CLASS "register-template"
|
||||||
|
|
||||||
|
|
||||||
struct _xaccLedgerDisplay
|
struct gnc_ledger_display
|
||||||
{
|
{
|
||||||
GUID leader;
|
GUID leader;
|
||||||
|
|
||||||
Query *query;
|
Query *query;
|
||||||
|
|
||||||
LedgerDisplayType ld_type;
|
GNCLedgerDisplayType ld_type;
|
||||||
|
|
||||||
SplitRegister *reg;
|
SplitRegister *reg;
|
||||||
|
|
||||||
gboolean loading;
|
gboolean loading;
|
||||||
|
|
||||||
LedgerDisplayDestroy destroy;
|
GNCLedgerDisplayDestroy destroy;
|
||||||
LedgerDisplayGetParent get_parent;
|
GNCLedgerDisplayGetParent get_parent;
|
||||||
|
|
||||||
gpointer user_data;
|
gpointer user_data;
|
||||||
|
|
||||||
@ -71,20 +71,20 @@ static short module = MOD_LEDGER;
|
|||||||
|
|
||||||
|
|
||||||
/** Declarations ****************************************************/
|
/** Declarations ****************************************************/
|
||||||
static xaccLedgerDisplay *
|
static GNCLedgerDisplay *
|
||||||
xaccLedgerDisplayInternal (Account *lead_account, Query *q,
|
gnc_ledger_display_internal (Account *lead_account, Query *q,
|
||||||
LedgerDisplayType ld_type,
|
GNCLedgerDisplayType ld_type,
|
||||||
SplitRegisterType reg_type,
|
SplitRegisterType reg_type,
|
||||||
SplitRegisterStyle style,
|
SplitRegisterStyle style,
|
||||||
gboolean is_template);
|
gboolean is_template);
|
||||||
static void xaccLedgerDisplayRefreshInternal (xaccLedgerDisplay *ld,
|
static void gnc_ledger_display_refresh_internal (GNCLedgerDisplay *ld,
|
||||||
GList *splits);
|
GList *splits);
|
||||||
|
|
||||||
|
|
||||||
/** Implementations *************************************************/
|
/** Implementations *************************************************/
|
||||||
|
|
||||||
Account *
|
Account *
|
||||||
xaccLedgerDisplayLeader (xaccLedgerDisplay *ld)
|
gnc_ledger_display_leader (GNCLedgerDisplay *ld)
|
||||||
{
|
{
|
||||||
if (!ld)
|
if (!ld)
|
||||||
return NULL;
|
return NULL;
|
||||||
@ -92,8 +92,8 @@ xaccLedgerDisplayLeader (xaccLedgerDisplay *ld)
|
|||||||
return xaccAccountLookup (&ld->leader);
|
return xaccAccountLookup (&ld->leader);
|
||||||
}
|
}
|
||||||
|
|
||||||
LedgerDisplayType
|
GNCLedgerDisplayType
|
||||||
xaccLedgerDisplayType (xaccLedgerDisplay *ld)
|
gnc_ledger_display_type (GNCLedgerDisplay *ld)
|
||||||
{
|
{
|
||||||
if (!ld)
|
if (!ld)
|
||||||
return -1;
|
return -1;
|
||||||
@ -102,7 +102,7 @@ xaccLedgerDisplayType (xaccLedgerDisplay *ld)
|
|||||||
}
|
}
|
||||||
|
|
||||||
void
|
void
|
||||||
xaccLedgerDisplaySetUserData (xaccLedgerDisplay *ld, gpointer user_data)
|
gnc_ledger_display_set_user_data (GNCLedgerDisplay *ld, gpointer user_data)
|
||||||
{
|
{
|
||||||
if (!ld)
|
if (!ld)
|
||||||
return;
|
return;
|
||||||
@ -111,7 +111,7 @@ xaccLedgerDisplaySetUserData (xaccLedgerDisplay *ld, gpointer user_data)
|
|||||||
}
|
}
|
||||||
|
|
||||||
gpointer
|
gpointer
|
||||||
xaccLedgerDisplayGetUserData (xaccLedgerDisplay *ld)
|
gnc_ledger_display_get_user_data (GNCLedgerDisplay *ld)
|
||||||
{
|
{
|
||||||
if (!ld)
|
if (!ld)
|
||||||
return NULL;
|
return NULL;
|
||||||
@ -120,9 +120,9 @@ xaccLedgerDisplayGetUserData (xaccLedgerDisplay *ld)
|
|||||||
}
|
}
|
||||||
|
|
||||||
void
|
void
|
||||||
xaccLedgerDisplaySetHandlers (xaccLedgerDisplay *ld,
|
gnc_ledger_display_set_handlers (GNCLedgerDisplay *ld,
|
||||||
LedgerDisplayDestroy destroy,
|
GNCLedgerDisplayDestroy destroy,
|
||||||
LedgerDisplayGetParent get_parent)
|
GNCLedgerDisplayGetParent get_parent)
|
||||||
{
|
{
|
||||||
if (!ld)
|
if (!ld)
|
||||||
return;
|
return;
|
||||||
@ -132,7 +132,7 @@ xaccLedgerDisplaySetHandlers (xaccLedgerDisplay *ld,
|
|||||||
}
|
}
|
||||||
|
|
||||||
SplitRegister *
|
SplitRegister *
|
||||||
xaccLedgerDisplayGetSR (xaccLedgerDisplay *ld)
|
gnc_ledger_display_get_split_register (GNCLedgerDisplay *ld)
|
||||||
{
|
{
|
||||||
if (!ld)
|
if (!ld)
|
||||||
return NULL;
|
return NULL;
|
||||||
@ -141,7 +141,7 @@ xaccLedgerDisplayGetSR (xaccLedgerDisplay *ld)
|
|||||||
}
|
}
|
||||||
|
|
||||||
Query *
|
Query *
|
||||||
xaccLedgerDisplayGetQuery (xaccLedgerDisplay *ld)
|
gnc_ledger_display_get_query (GNCLedgerDisplay *ld)
|
||||||
{
|
{
|
||||||
if (!ld)
|
if (!ld)
|
||||||
return NULL;
|
return NULL;
|
||||||
@ -153,24 +153,24 @@ static gboolean
|
|||||||
find_by_leader (gpointer find_data, gpointer user_data)
|
find_by_leader (gpointer find_data, gpointer user_data)
|
||||||
{
|
{
|
||||||
Account *account = find_data;
|
Account *account = find_data;
|
||||||
xaccLedgerDisplay *ld = user_data;
|
GNCLedgerDisplay *ld = user_data;
|
||||||
|
|
||||||
if (!account || !ld)
|
if (!account || !ld)
|
||||||
return FALSE;
|
return FALSE;
|
||||||
|
|
||||||
return (account == xaccLedgerDisplayLeader (ld));
|
return (account == gnc_ledger_display_leader (ld));
|
||||||
}
|
}
|
||||||
|
|
||||||
static gboolean
|
static gboolean
|
||||||
find_by_account (gpointer find_data, gpointer user_data)
|
find_by_account (gpointer find_data, gpointer user_data)
|
||||||
{
|
{
|
||||||
Account *account = find_data;
|
Account *account = find_data;
|
||||||
xaccLedgerDisplay *ld = user_data;
|
GNCLedgerDisplay *ld = user_data;
|
||||||
|
|
||||||
if (!account || !ld)
|
if (!account || !ld)
|
||||||
return FALSE;
|
return FALSE;
|
||||||
|
|
||||||
if (account == xaccLedgerDisplayLeader (ld))
|
if (account == gnc_ledger_display_leader (ld))
|
||||||
return TRUE;
|
return TRUE;
|
||||||
|
|
||||||
if (ld->ld_type == LD_SINGLE)
|
if (ld->ld_type == LD_SINGLE)
|
||||||
@ -184,7 +184,7 @@ static gboolean
|
|||||||
find_by_query (gpointer find_data, gpointer user_data)
|
find_by_query (gpointer find_data, gpointer user_data)
|
||||||
{
|
{
|
||||||
Query *q = find_data;
|
Query *q = find_data;
|
||||||
xaccLedgerDisplay *ld = user_data;
|
GNCLedgerDisplay *ld = user_data;
|
||||||
|
|
||||||
if (!q || !ld)
|
if (!q || !ld)
|
||||||
return FALSE;
|
return FALSE;
|
||||||
@ -196,7 +196,7 @@ static gboolean
|
|||||||
find_by_reg (gpointer find_data, gpointer user_data)
|
find_by_reg (gpointer find_data, gpointer user_data)
|
||||||
{
|
{
|
||||||
SplitRegister *reg = find_data;
|
SplitRegister *reg = find_data;
|
||||||
xaccLedgerDisplay *ld = user_data;
|
GNCLedgerDisplay *ld = user_data;
|
||||||
|
|
||||||
if (!reg || !ld)
|
if (!reg || !ld)
|
||||||
return FALSE;
|
return FALSE;
|
||||||
@ -228,7 +228,7 @@ gnc_get_default_register_style (void)
|
|||||||
}
|
}
|
||||||
|
|
||||||
static SplitRegisterType
|
static SplitRegisterType
|
||||||
get_reg_type (Account *leader, LedgerDisplayType ld_type)
|
gnc_get_reg_type (Account *leader, GNCLedgerDisplayType ld_type)
|
||||||
{
|
{
|
||||||
GNCAccountType account_type;
|
GNCAccountType account_type;
|
||||||
SplitRegisterType reg_type;
|
SplitRegisterType reg_type;
|
||||||
@ -342,57 +342,36 @@ get_reg_type (Account *leader, LedgerDisplayType ld_type)
|
|||||||
return reg_type;
|
return reg_type;
|
||||||
}
|
}
|
||||||
|
|
||||||
/********************************************************************\
|
/* Opens up a register window to display a single account */
|
||||||
* regWindowSimple *
|
GNCLedgerDisplay *
|
||||||
* opens up a register window to display a single account *
|
gnc_ledger_display_simple (Account *account)
|
||||||
* *
|
|
||||||
* Args: acc - the account associated with this register *
|
|
||||||
* Return: regData - the register window instance *
|
|
||||||
\********************************************************************/
|
|
||||||
|
|
||||||
xaccLedgerDisplay *
|
|
||||||
xaccLedgerDisplaySimple (Account *account)
|
|
||||||
{
|
{
|
||||||
SplitRegisterType reg_type;
|
SplitRegisterType reg_type;
|
||||||
|
|
||||||
reg_type = get_reg_type (account, LD_SINGLE);
|
reg_type = gnc_get_reg_type (account, LD_SINGLE);
|
||||||
|
|
||||||
return xaccLedgerDisplayInternal (account, NULL, LD_SINGLE, reg_type,
|
return gnc_ledger_display_internal (account, NULL, LD_SINGLE, reg_type,
|
||||||
gnc_get_default_register_style (), FALSE );
|
gnc_get_default_register_style (),
|
||||||
|
FALSE);
|
||||||
}
|
}
|
||||||
|
|
||||||
/********************************************************************\
|
/* Opens up a register window to display an account, and all of its
|
||||||
* xaccLedgerDisplayAccGroup *
|
* children, in the same window */
|
||||||
* opens up a register window to display an account, and all *
|
GNCLedgerDisplay *
|
||||||
* of its children, in the same window *
|
gnc_ledger_display_subaccounts (Account *account)
|
||||||
* *
|
|
||||||
* Args: account - the account associated with this register *
|
|
||||||
* Return: the register window instance *
|
|
||||||
\********************************************************************/
|
|
||||||
|
|
||||||
xaccLedgerDisplay *
|
|
||||||
xaccLedgerDisplayAccGroup (Account *account)
|
|
||||||
{
|
{
|
||||||
SplitRegisterType reg_type;
|
SplitRegisterType reg_type;
|
||||||
|
|
||||||
reg_type = get_reg_type (account, LD_SUBACCOUNT);
|
reg_type = gnc_get_reg_type (account, LD_SUBACCOUNT);
|
||||||
|
|
||||||
return xaccLedgerDisplayInternal (account, NULL, LD_SUBACCOUNT,
|
return gnc_ledger_display_internal (account, NULL, LD_SUBACCOUNT,
|
||||||
reg_type, REG_STYLE_JOURNAL, FALSE);
|
reg_type, REG_STYLE_JOURNAL, FALSE);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
/* Opens up a general ledger window. */
|
||||||
/********************************************************************\
|
GNCLedgerDisplay *
|
||||||
* xaccLedgerDisplayGL *
|
gnc_ledger_display_gl (void)
|
||||||
* opens up a general ledger window *
|
|
||||||
* *
|
|
||||||
* Args: none *
|
|
||||||
* Return: the register window instance *
|
|
||||||
\********************************************************************/
|
|
||||||
|
|
||||||
xaccLedgerDisplay *
|
|
||||||
xaccLedgerDisplayGL (void)
|
|
||||||
{
|
{
|
||||||
Query *query;
|
Query *query;
|
||||||
time_t start;
|
time_t start;
|
||||||
@ -423,7 +402,7 @@ xaccLedgerDisplayGL (void)
|
|||||||
FALSE, 0,
|
FALSE, 0,
|
||||||
QUERY_AND);
|
QUERY_AND);
|
||||||
|
|
||||||
return xaccLedgerDisplayInternal (NULL, query, LD_GL,
|
return gnc_ledger_display_internal (NULL, query, LD_GL,
|
||||||
GENERAL_LEDGER,
|
GENERAL_LEDGER,
|
||||||
REG_STYLE_JOURNAL, FALSE);
|
REG_STYLE_JOURNAL, FALSE);
|
||||||
}
|
}
|
||||||
@ -435,14 +414,14 @@ xaccLedgerDisplayGL (void)
|
|||||||
* . set in a specific key value for new transactions which belong to
|
* . set in a specific key value for new transactions which belong to
|
||||||
* this template ledger.
|
* this template ledger.
|
||||||
**/
|
**/
|
||||||
xaccLedgerDisplay *
|
GNCLedgerDisplay *
|
||||||
xaccLedgerDisplayTemplateGL (char *id)
|
gnc_ledger_display_template_gl (char *id)
|
||||||
{
|
{
|
||||||
GNCBook *book;
|
GNCBook *book;
|
||||||
Query *q;
|
Query *q;
|
||||||
time_t start;
|
time_t start;
|
||||||
struct tm *tm;
|
struct tm *tm;
|
||||||
xaccLedgerDisplay *ld;
|
GNCLedgerDisplay *ld;
|
||||||
SplitRegister *sr;
|
SplitRegister *sr;
|
||||||
AccountGroup *ag;
|
AccountGroup *ag;
|
||||||
Account *acct;
|
Account *acct;
|
||||||
@ -461,12 +440,12 @@ xaccLedgerDisplayTemplateGL (char *id)
|
|||||||
book = gncGetCurrentBook ();
|
book = gncGetCurrentBook ();
|
||||||
xaccQuerySetGroup (q, gnc_book_get_template_group(book));
|
xaccQuerySetGroup (q, gnc_book_get_template_group(book));
|
||||||
|
|
||||||
ld = xaccLedgerDisplayInternal (NULL, q, LD_GL,
|
ld = gnc_ledger_display_internal (NULL, q, LD_GL,
|
||||||
GENERAL_LEDGER,
|
GENERAL_LEDGER,
|
||||||
REG_STYLE_JOURNAL,
|
REG_STYLE_JOURNAL,
|
||||||
TRUE); /* template mode? TRUE. */
|
TRUE); /* template mode? TRUE. */
|
||||||
|
|
||||||
sr = xaccLedgerDisplayGetSR (ld);
|
sr = gnc_ledger_display_get_split_register (ld);
|
||||||
|
|
||||||
gnc_split_register_set_template_account (sr, acct);
|
gnc_split_register_set_template_account (sr, acct);
|
||||||
|
|
||||||
@ -474,9 +453,9 @@ xaccLedgerDisplayTemplateGL (char *id)
|
|||||||
}
|
}
|
||||||
|
|
||||||
static gncUIWidget
|
static gncUIWidget
|
||||||
xaccLedgerDisplayParent (void *user_data)
|
gnc_ledger_display_parent (void *user_data)
|
||||||
{
|
{
|
||||||
xaccLedgerDisplay *regData = user_data;
|
GNCLedgerDisplay *regData = user_data;
|
||||||
|
|
||||||
if (regData == NULL)
|
if (regData == NULL)
|
||||||
return NULL;
|
return NULL;
|
||||||
@ -488,7 +467,7 @@ xaccLedgerDisplayParent (void *user_data)
|
|||||||
}
|
}
|
||||||
|
|
||||||
static void
|
static void
|
||||||
ledger_set_watches (xaccLedgerDisplay *ld, GList *splits)
|
gnc_ledger_display_set_watches (GNCLedgerDisplay *ld, GList *splits)
|
||||||
{
|
{
|
||||||
GList *node;
|
GList *node;
|
||||||
|
|
||||||
@ -512,7 +491,7 @@ ledger_set_watches (xaccLedgerDisplay *ld, GList *splits)
|
|||||||
static void
|
static void
|
||||||
refresh_handler (GHashTable *changes, gpointer user_data)
|
refresh_handler (GHashTable *changes, gpointer user_data)
|
||||||
{
|
{
|
||||||
xaccLedgerDisplay *ld = user_data;
|
GNCLedgerDisplay *ld = user_data;
|
||||||
const EventInfo *info;
|
const EventInfo *info;
|
||||||
gboolean has_leader;
|
gboolean has_leader;
|
||||||
GList *splits;
|
GList *splits;
|
||||||
@ -524,7 +503,7 @@ refresh_handler (GHashTable *changes, gpointer user_data)
|
|||||||
|
|
||||||
if (has_leader)
|
if (has_leader)
|
||||||
{
|
{
|
||||||
Account *leader = xaccLedgerDisplayLeader (ld);
|
Account *leader = gnc_ledger_display_leader (ld);
|
||||||
if (!leader)
|
if (!leader)
|
||||||
{
|
{
|
||||||
gnc_close_gui_component (ld->component_id);
|
gnc_close_gui_component (ld->component_id);
|
||||||
@ -544,15 +523,15 @@ refresh_handler (GHashTable *changes, gpointer user_data)
|
|||||||
|
|
||||||
splits = xaccQueryGetSplits (ld->query);
|
splits = xaccQueryGetSplits (ld->query);
|
||||||
|
|
||||||
ledger_set_watches (ld, splits);
|
gnc_ledger_display_set_watches (ld, splits);
|
||||||
|
|
||||||
xaccLedgerDisplayRefreshInternal (ld, splits);
|
gnc_ledger_display_refresh_internal (ld, splits);
|
||||||
}
|
}
|
||||||
|
|
||||||
static void
|
static void
|
||||||
close_handler (gpointer user_data)
|
close_handler (gpointer user_data)
|
||||||
{
|
{
|
||||||
xaccLedgerDisplay *ld = user_data;
|
GNCLedgerDisplay *ld = user_data;
|
||||||
|
|
||||||
if (!ld)
|
if (!ld)
|
||||||
return;
|
return;
|
||||||
@ -572,7 +551,7 @@ close_handler (gpointer user_data)
|
|||||||
}
|
}
|
||||||
|
|
||||||
static void
|
static void
|
||||||
make_ledger_query (xaccLedgerDisplay *ld,
|
gnc_ledger_display_make_query (GNCLedgerDisplay *ld,
|
||||||
gboolean show_all,
|
gboolean show_all,
|
||||||
SplitRegisterType type)
|
SplitRegisterType type)
|
||||||
{
|
{
|
||||||
@ -609,7 +588,7 @@ make_ledger_query (xaccLedgerDisplay *ld,
|
|||||||
|
|
||||||
xaccQuerySetGroup (ld->query, gncGetCurrentGroup());
|
xaccQuerySetGroup (ld->query, gncGetCurrentGroup());
|
||||||
|
|
||||||
leader = xaccLedgerDisplayLeader (ld);
|
leader = gnc_ledger_display_leader (ld);
|
||||||
|
|
||||||
if (ld->ld_type == LD_SUBACCOUNT)
|
if (ld->ld_type == LD_SUBACCOUNT)
|
||||||
accounts = xaccGroupGetSubAccounts (xaccAccountGetChildren (leader));
|
accounts = xaccGroupGetSubAccounts (xaccAccountGetChildren (leader));
|
||||||
@ -624,30 +603,22 @@ make_ledger_query (xaccLedgerDisplay *ld,
|
|||||||
g_list_free (accounts);
|
g_list_free (accounts);
|
||||||
}
|
}
|
||||||
|
|
||||||
/********************************************************************\
|
/* Opens up a ledger window for an arbitrary query. */
|
||||||
* xaccLedgerDisplayQuery *
|
GNCLedgerDisplay *
|
||||||
* opens up a ledger window for an arbitrary query *
|
gnc_ledger_display_query (Query *query, SplitRegisterType type,
|
||||||
* *
|
|
||||||
* Args: query - the query to use for the register *
|
|
||||||
* type - the type of split register to open *
|
|
||||||
* style - the style of register to use *
|
|
||||||
* Return: the register window instance *
|
|
||||||
\********************************************************************/
|
|
||||||
xaccLedgerDisplay *
|
|
||||||
xaccLedgerDisplayQuery (Query *query, SplitRegisterType type,
|
|
||||||
SplitRegisterStyle style)
|
SplitRegisterStyle style)
|
||||||
{
|
{
|
||||||
return xaccLedgerDisplayInternal (NULL, query, LD_GL, type, style, FALSE);
|
return gnc_ledger_display_internal (NULL, query, LD_GL, type, style, FALSE);
|
||||||
}
|
}
|
||||||
|
|
||||||
static xaccLedgerDisplay *
|
static GNCLedgerDisplay *
|
||||||
xaccLedgerDisplayInternal (Account *lead_account, Query *q,
|
gnc_ledger_display_internal (Account *lead_account, Query *q,
|
||||||
LedgerDisplayType ld_type,
|
GNCLedgerDisplayType ld_type,
|
||||||
SplitRegisterType reg_type,
|
SplitRegisterType reg_type,
|
||||||
SplitRegisterStyle style,
|
SplitRegisterStyle style,
|
||||||
gboolean is_template )
|
gboolean is_template )
|
||||||
{
|
{
|
||||||
xaccLedgerDisplay *ld;
|
GNCLedgerDisplay *ld;
|
||||||
gboolean show_all;
|
gboolean show_all;
|
||||||
const char *class;
|
const char *class;
|
||||||
GList *splits;
|
GList *splits;
|
||||||
@ -724,7 +695,7 @@ xaccLedgerDisplayInternal (Account *lead_account, Query *q,
|
|||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
ld = g_new (xaccLedgerDisplay, 1);
|
ld = g_new (GNCLedgerDisplay, 1);
|
||||||
|
|
||||||
ld->leader = *xaccAccountGetGUID (lead_account);
|
ld->leader = *xaccAccountGetGUID (lead_account);
|
||||||
ld->query = NULL;
|
ld->query = NULL;
|
||||||
@ -742,7 +713,7 @@ xaccLedgerDisplayInternal (Account *lead_account, Query *q,
|
|||||||
if (q)
|
if (q)
|
||||||
ld->query = xaccQueryCopy (q);
|
ld->query = xaccQueryCopy (q);
|
||||||
else
|
else
|
||||||
make_ledger_query (ld, show_all, reg_type);
|
gnc_ledger_display_make_query (ld, show_all, reg_type);
|
||||||
|
|
||||||
ld->component_id = gnc_register_gui_component (class,
|
ld->component_id = gnc_register_gui_component (class,
|
||||||
refresh_handler,
|
refresh_handler,
|
||||||
@ -754,19 +725,19 @@ xaccLedgerDisplayInternal (Account *lead_account, Query *q,
|
|||||||
|
|
||||||
ld->reg = gnc_split_register_new (reg_type, style, FALSE, is_template);
|
ld->reg = gnc_split_register_new (reg_type, style, FALSE, is_template);
|
||||||
|
|
||||||
gnc_split_register_set_data (ld->reg, ld, xaccLedgerDisplayParent);
|
gnc_split_register_set_data (ld->reg, ld, gnc_ledger_display_parent);
|
||||||
|
|
||||||
splits = xaccQueryGetSplits (ld->query);
|
splits = xaccQueryGetSplits (ld->query);
|
||||||
|
|
||||||
ledger_set_watches (ld, splits);
|
gnc_ledger_display_set_watches (ld, splits);
|
||||||
|
|
||||||
xaccLedgerDisplayRefreshInternal (ld, splits);
|
gnc_ledger_display_refresh_internal (ld, splits);
|
||||||
|
|
||||||
return ld;
|
return ld;
|
||||||
}
|
}
|
||||||
|
|
||||||
void
|
void
|
||||||
xaccLedgerDisplaySetQuery (xaccLedgerDisplay *ledger_display, Query *q)
|
gnc_ledger_display_set_query (GNCLedgerDisplay *ledger_display, Query *q)
|
||||||
{
|
{
|
||||||
if (!ledger_display || !q)
|
if (!ledger_display || !q)
|
||||||
return;
|
return;
|
||||||
@ -777,8 +748,8 @@ xaccLedgerDisplaySetQuery (xaccLedgerDisplay *ledger_display, Query *q)
|
|||||||
ledger_display->query = xaccQueryCopy (q);
|
ledger_display->query = xaccQueryCopy (q);
|
||||||
}
|
}
|
||||||
|
|
||||||
xaccLedgerDisplay *
|
GNCLedgerDisplay *
|
||||||
xaccFindGeneralLedgerByQuery (Query *q)
|
gnc_ledger_display_find_by_query (Query *q)
|
||||||
{
|
{
|
||||||
if (!q)
|
if (!q)
|
||||||
return NULL;
|
return NULL;
|
||||||
@ -791,37 +762,39 @@ xaccFindGeneralLedgerByQuery (Query *q)
|
|||||||
\********************************************************************/
|
\********************************************************************/
|
||||||
|
|
||||||
static void
|
static void
|
||||||
xaccLedgerDisplayRefreshInternal (xaccLedgerDisplay *ld, GList *splits)
|
gnc_ledger_display_refresh_internal (GNCLedgerDisplay *ld, GList *splits)
|
||||||
{
|
{
|
||||||
if (!ld || ld->loading)
|
if (!ld || ld->loading)
|
||||||
return;
|
return;
|
||||||
|
|
||||||
if (!gnc_split_register_full_refresh_ok (ld->reg))
|
if (!gnc_split_register_full_refresh_ok (ld->reg))
|
||||||
{
|
{
|
||||||
gnc_split_register_load_xfer_cells (ld->reg, xaccLedgerDisplayLeader (ld));
|
gnc_split_register_load_xfer_cells (ld->reg,
|
||||||
|
gnc_ledger_display_leader (ld));
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
ld->loading = TRUE;
|
ld->loading = TRUE;
|
||||||
|
|
||||||
gnc_split_register_load (ld->reg, splits, xaccLedgerDisplayLeader (ld));
|
gnc_split_register_load (ld->reg, splits,
|
||||||
|
gnc_ledger_display_leader (ld));
|
||||||
|
|
||||||
ld->loading = FALSE;
|
ld->loading = FALSE;
|
||||||
}
|
}
|
||||||
|
|
||||||
void
|
void
|
||||||
xaccLedgerDisplayRefresh (xaccLedgerDisplay *ld)
|
gnc_ledger_display_refresh (GNCLedgerDisplay *ld)
|
||||||
{
|
{
|
||||||
if (!ld || ld->loading)
|
if (!ld || ld->loading)
|
||||||
return;
|
return;
|
||||||
|
|
||||||
xaccLedgerDisplayRefreshInternal (ld, xaccQueryGetSplits (ld->query));
|
gnc_ledger_display_refresh_internal (ld, xaccQueryGetSplits (ld->query));
|
||||||
}
|
}
|
||||||
|
|
||||||
void
|
void
|
||||||
xaccLedgerDisplayRefreshByReg (SplitRegister *reg)
|
gnc_ledger_display_refresh_by_split_register (SplitRegister *reg)
|
||||||
{
|
{
|
||||||
xaccLedgerDisplay *ld;
|
GNCLedgerDisplay *ld;
|
||||||
|
|
||||||
if (!reg)
|
if (!reg)
|
||||||
return;
|
return;
|
||||||
@ -830,7 +803,7 @@ xaccLedgerDisplayRefreshByReg (SplitRegister *reg)
|
|||||||
find_by_reg, reg);
|
find_by_reg, reg);
|
||||||
if (ld)
|
if (ld)
|
||||||
{
|
{
|
||||||
xaccLedgerDisplayRefresh (ld);
|
gnc_ledger_display_refresh (ld);
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -838,7 +811,7 @@ xaccLedgerDisplayRefreshByReg (SplitRegister *reg)
|
|||||||
find_by_reg, reg);
|
find_by_reg, reg);
|
||||||
if (ld)
|
if (ld)
|
||||||
{
|
{
|
||||||
xaccLedgerDisplayRefresh (ld);
|
gnc_ledger_display_refresh (ld);
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -846,7 +819,7 @@ xaccLedgerDisplayRefreshByReg (SplitRegister *reg)
|
|||||||
find_by_reg, reg);
|
find_by_reg, reg);
|
||||||
if (ld)
|
if (ld)
|
||||||
{
|
{
|
||||||
xaccLedgerDisplayRefresh (ld);
|
gnc_ledger_display_refresh (ld);
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -854,7 +827,7 @@ xaccLedgerDisplayRefreshByReg (SplitRegister *reg)
|
|||||||
find_by_reg, reg );
|
find_by_reg, reg );
|
||||||
if (ld)
|
if (ld)
|
||||||
{
|
{
|
||||||
xaccLedgerDisplayRefresh (ld);
|
gnc_ledger_display_refresh (ld);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -863,7 +836,8 @@ xaccLedgerDisplayRefreshByReg (SplitRegister *reg)
|
|||||||
\********************************************************************/
|
\********************************************************************/
|
||||||
|
|
||||||
static void
|
static void
|
||||||
xaccDestroyLedgerDisplayClass (Account *account, const char *component_class)
|
gnc_destroy_ledger_display_class (Account *account,
|
||||||
|
const char *component_class)
|
||||||
{
|
{
|
||||||
GList *list;
|
GList *list;
|
||||||
GList *node;
|
GList *node;
|
||||||
@ -872,7 +846,7 @@ xaccDestroyLedgerDisplayClass (Account *account, const char *component_class)
|
|||||||
|
|
||||||
for (node = list; node; node = node->next)
|
for (node = list; node; node = node->next)
|
||||||
{
|
{
|
||||||
xaccLedgerDisplay *ld = node->data;
|
GNCLedgerDisplay *ld = node->data;
|
||||||
|
|
||||||
gnc_close_gui_component (ld->component_id);
|
gnc_close_gui_component (ld->component_id);
|
||||||
}
|
}
|
||||||
@ -881,20 +855,19 @@ xaccDestroyLedgerDisplayClass (Account *account, const char *component_class)
|
|||||||
}
|
}
|
||||||
|
|
||||||
void
|
void
|
||||||
xaccDestroyLedgerDisplay (Account *account)
|
gnc_ledger_display_destroy_by_account (Account *account)
|
||||||
{
|
{
|
||||||
if (!account)
|
if (!account)
|
||||||
return;
|
return;
|
||||||
|
|
||||||
xaccDestroyLedgerDisplayClass (account, REGISTER_SINGLE_CM_CLASS);
|
gnc_destroy_ledger_display_class (account, REGISTER_SINGLE_CM_CLASS);
|
||||||
xaccDestroyLedgerDisplayClass (account, REGISTER_SUBACCOUNT_CM_CLASS);
|
gnc_destroy_ledger_display_class (account, REGISTER_SUBACCOUNT_CM_CLASS);
|
||||||
xaccDestroyLedgerDisplayClass (account, REGISTER_GL_CM_CLASS);
|
gnc_destroy_ledger_display_class (account, REGISTER_GL_CM_CLASS);
|
||||||
/* no TEMPLATE_CM_CLASS, because it doesn't correspond to any account
|
/* no TEMPLATE_CM_CLASS, because it doesn't correspond to any account */
|
||||||
* FIXME: but there probably should be an analagous method */
|
|
||||||
}
|
}
|
||||||
|
|
||||||
void
|
void
|
||||||
xaccLedgerDisplayClose (xaccLedgerDisplay *ld)
|
gnc_ledger_display_close (GNCLedgerDisplay *ld)
|
||||||
{
|
{
|
||||||
if (!ld)
|
if (!ld)
|
||||||
return;
|
return;
|
||||||
|
@ -40,11 +40,11 @@
|
|||||||
|
|
||||||
/* The xaccLedgerDisplay struct describes a single register/ledger
|
/* The xaccLedgerDisplay struct describes a single register/ledger
|
||||||
* instance. */
|
* instance. */
|
||||||
typedef struct _xaccLedgerDisplay xaccLedgerDisplay;
|
typedef struct gnc_ledger_display GNCLedgerDisplay;
|
||||||
|
|
||||||
typedef void (*LedgerDisplayDestroy) (xaccLedgerDisplay *ld);
|
typedef void (*GNCLedgerDisplayDestroy) (GNCLedgerDisplay *ld);
|
||||||
typedef gncUIWidget (*LedgerDisplayGetParent) (xaccLedgerDisplay *ld);
|
typedef gncUIWidget (*GNCLedgerDisplayGetParent) (GNCLedgerDisplay *ld);
|
||||||
typedef void (*LedgerDisplaySetHelp) (xaccLedgerDisplay *ld,
|
typedef void (*GNCLedgerDisplaySetHelp) (GNCLedgerDisplay *ld,
|
||||||
const char *help_str);
|
const char *help_str);
|
||||||
|
|
||||||
typedef enum
|
typedef enum
|
||||||
@ -53,37 +53,38 @@ typedef enum
|
|||||||
LD_SUBACCOUNT,
|
LD_SUBACCOUNT,
|
||||||
LD_GL,
|
LD_GL,
|
||||||
LD_TEMPLATE,
|
LD_TEMPLATE,
|
||||||
} LedgerDisplayType;
|
} GNCLedgerDisplayType;
|
||||||
|
|
||||||
|
|
||||||
/** Prototypes ******************************************************/
|
/** Prototypes ******************************************************/
|
||||||
|
|
||||||
/* returns the 'lead' account of a ledger display, or NULL if none. */
|
/* returns the 'lead' account of a ledger display, or NULL if none. */
|
||||||
Account * xaccLedgerDisplayLeader (xaccLedgerDisplay *ld);
|
Account * gnc_ledger_display_leader (GNCLedgerDisplay *ld);
|
||||||
|
|
||||||
LedgerDisplayType xaccLedgerDisplayType (xaccLedgerDisplay *ld);
|
GNCLedgerDisplayType gnc_ledger_display_type (GNCLedgerDisplay *ld);
|
||||||
|
|
||||||
/* get and set the user data associated with the ledger */
|
/* get and set the user data associated with the ledger */
|
||||||
void xaccLedgerDisplaySetUserData (xaccLedgerDisplay *ld, gpointer user_data);
|
void gnc_ledger_display_set_user_data (GNCLedgerDisplay *ld,
|
||||||
gpointer xaccLedgerDisplayGetUserData (xaccLedgerDisplay *ld);
|
gpointer user_data);
|
||||||
|
gpointer gnc_ledger_display_get_user_data (GNCLedgerDisplay *ld);
|
||||||
|
|
||||||
/* set the handlers used by the ledger display */
|
/* set the handlers used by the ledger display */
|
||||||
void xaccLedgerDisplaySetHandlers (xaccLedgerDisplay *ld,
|
void gnc_ledger_display_set_handlers (GNCLedgerDisplay *ld,
|
||||||
LedgerDisplayDestroy destroy,
|
GNCLedgerDisplayDestroy destroy,
|
||||||
LedgerDisplayGetParent get_parent);
|
GNCLedgerDisplayGetParent get_parent);
|
||||||
|
|
||||||
/* return the split register associated with a ledger display */
|
/* return the split register associated with a ledger display */
|
||||||
SplitRegister * xaccLedgerDisplayGetSR (xaccLedgerDisplay *ld);
|
SplitRegister * gnc_ledger_display_get_split_register (GNCLedgerDisplay *ld);
|
||||||
|
|
||||||
/* opens up a register window to display a single account */
|
/* opens up a register window to display a single account */
|
||||||
xaccLedgerDisplay * xaccLedgerDisplaySimple (Account *account);
|
GNCLedgerDisplay * gnc_ledger_display_simple (Account *account);
|
||||||
|
|
||||||
/* opens up a register window to display the parent account and all of
|
/* opens up a register window to display the parent account and all of
|
||||||
* its children. */
|
* its children. */
|
||||||
xaccLedgerDisplay * xaccLedgerDisplayAccGroup (Account *account);
|
GNCLedgerDisplay * gnc_ledger_display_subaccounts (Account *account);
|
||||||
|
|
||||||
xaccLedgerDisplay * xaccLedgerDisplayGL (void);
|
/* opens up a general ledger window */
|
||||||
xaccLedgerDisplay * xaccLedgerDisplayGLTemplate (char *id);
|
GNCLedgerDisplay * gnc_ledger_display_gl (void);
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Displays a template ledger.
|
* Displays a template ledger.
|
||||||
@ -92,32 +93,33 @@ xaccLedgerDisplay * xaccLedgerDisplayGLTemplate (char *id);
|
|||||||
* Really, requires a GList of scheduled transactions and kvp-frame
|
* Really, requires a GList of scheduled transactions and kvp-frame
|
||||||
* data.
|
* data.
|
||||||
**/
|
**/
|
||||||
xaccLedgerDisplay * xaccLedgerDisplayTemplateGL (char *id);
|
GNCLedgerDisplay * gnc_ledger_display_template_gl (char *id);
|
||||||
|
|
||||||
/* display a general ledger for an arbitrary query */
|
/* display a general ledger for an arbitrary query */
|
||||||
xaccLedgerDisplay * xaccLedgerDisplayQuery (Query *query,
|
GNCLedgerDisplay * gnc_ledger_display_query (Query *query,
|
||||||
SplitRegisterType type,
|
SplitRegisterType type,
|
||||||
SplitRegisterStyle style);
|
SplitRegisterStyle style);
|
||||||
|
|
||||||
/* Set the query used for a register. */
|
/* Set the query used for a register. */
|
||||||
void xaccLedgerDisplaySetQuery (xaccLedgerDisplay *ledger_display, Query *q);
|
void gnc_ledger_display_set_query (GNCLedgerDisplay *ledger_display,
|
||||||
|
Query *q);
|
||||||
|
|
||||||
/* return the query associated with a ledger */
|
/* return the query associated with a ledger */
|
||||||
Query * xaccLedgerDisplayGetQuery (xaccLedgerDisplay *ld);
|
Query * gnc_ledger_display_get_query (GNCLedgerDisplay *ld);
|
||||||
|
|
||||||
/* If the given ledger display still exists, return it. Otherwise,
|
/* If the given ledger display still exists, return it. Otherwise,
|
||||||
* return NULL */
|
* return NULL */
|
||||||
xaccLedgerDisplay * xaccFindGeneralLedgerByQuery (Query *q);
|
GNCLedgerDisplay * gnc_ledger_display_find_by_query (Query *q);
|
||||||
|
|
||||||
/* redisplay/redraw only the indicated window. Both routines do same
|
/* redisplay/redraw only the indicated window. Both routines do same
|
||||||
* thing, they differ only by the argument they take. */
|
* thing, they differ only by the argument they take. */
|
||||||
void xaccLedgerDisplayRefresh (xaccLedgerDisplay * ledger_display);
|
void gnc_ledger_display_refresh (GNCLedgerDisplay * ledger_display);
|
||||||
void xaccLedgerDisplayRefreshByReg (SplitRegister *reg);
|
void gnc_ledger_display_refresh_by_split_register (SplitRegister *reg);
|
||||||
|
|
||||||
/* close the window */
|
/* close the window */
|
||||||
void xaccLedgerDisplayClose (xaccLedgerDisplay * ledger_display);
|
void gnc_ledger_display_close (GNCLedgerDisplay * ledger_display);
|
||||||
|
|
||||||
/* close all ledger windows containing this account. */
|
/* close all ledger windows containing this account. */
|
||||||
void xaccDestroyLedgerDisplay (Account *account);
|
void gnc_ledger_display_destroy_by_account (Account *account);
|
||||||
|
|
||||||
#endif
|
#endif
|
||||||
|
@ -45,7 +45,7 @@ static short module = MOD_LEDGER;
|
|||||||
|
|
||||||
|
|
||||||
static gboolean
|
static gboolean
|
||||||
sr_balance_trans (SplitRegister *reg, Transaction *trans)
|
gnc_split_register_balance_trans (SplitRegister *reg, Transaction *trans)
|
||||||
{
|
{
|
||||||
gnc_numeric imbalance;
|
gnc_numeric imbalance;
|
||||||
|
|
||||||
@ -149,7 +149,7 @@ sr_balance_trans (SplitRegister *reg, Transaction *trans)
|
|||||||
}
|
}
|
||||||
|
|
||||||
static gboolean
|
static gboolean
|
||||||
trans_has_reconciled_splits (Transaction *trans)
|
gnc_trans_has_reconciled_splits (Transaction *trans)
|
||||||
{
|
{
|
||||||
GList *node;
|
GList *node;
|
||||||
|
|
||||||
@ -256,7 +256,7 @@ gnc_split_register_move_cursor (VirtualLocation *p_new_virt_loc,
|
|||||||
(pending_trans == old_trans) &&
|
(pending_trans == old_trans) &&
|
||||||
(old_trans != new_trans))
|
(old_trans != new_trans))
|
||||||
{
|
{
|
||||||
if (sr_balance_trans (reg, old_trans))
|
if (gnc_split_register_balance_trans (reg, old_trans))
|
||||||
{
|
{
|
||||||
new_trans = old_trans;
|
new_trans = old_trans;
|
||||||
new_split = old_split;
|
new_split = old_split;
|
||||||
@ -274,9 +274,9 @@ gnc_split_register_move_cursor (VirtualLocation *p_new_virt_loc,
|
|||||||
}
|
}
|
||||||
else if (old_trans &&
|
else if (old_trans &&
|
||||||
(old_trans != new_trans) &&
|
(old_trans != new_trans) &&
|
||||||
!trans_has_reconciled_splits (old_trans) &&
|
!gnc_trans_has_reconciled_splits (old_trans) &&
|
||||||
!info->first_pass &&
|
!info->first_pass &&
|
||||||
sr_balance_trans (reg, old_trans))
|
gnc_split_register_balance_trans (reg, old_trans))
|
||||||
{
|
{
|
||||||
/* no matter what, stay there so the user can see what happened */
|
/* no matter what, stay there so the user can see what happened */
|
||||||
new_trans = old_trans;
|
new_trans = old_trans;
|
||||||
|
@ -41,7 +41,7 @@ static short module = MOD_LEDGER;
|
|||||||
|
|
||||||
|
|
||||||
static void
|
static void
|
||||||
sr_add_transaction (SplitRegister *reg,
|
gnc_split_register_add_transaction (SplitRegister *reg,
|
||||||
Transaction *trans,
|
Transaction *trans,
|
||||||
Split *split,
|
Split *split,
|
||||||
CellBlock *lead_cursor,
|
CellBlock *lead_cursor,
|
||||||
@ -365,8 +365,10 @@ gnc_split_register_load (SplitRegister *reg, GList * slist,
|
|||||||
if (split == find_trans_split)
|
if (split == find_trans_split)
|
||||||
new_trans_split_row = vcell_loc.virt_row;
|
new_trans_split_row = vcell_loc.virt_row;
|
||||||
|
|
||||||
sr_add_transaction (reg, trans, split, lead_cursor, split_cursor,
|
gnc_split_register_add_transaction (reg, trans, split,
|
||||||
multi_line, start_primary_color, TRUE, TRUE,
|
lead_cursor, split_cursor,
|
||||||
|
multi_line, start_primary_color,
|
||||||
|
TRUE, TRUE,
|
||||||
find_trans, find_split, find_class,
|
find_trans, find_split, find_class,
|
||||||
&new_split_row, &vcell_loc);
|
&new_split_row, &vcell_loc);
|
||||||
|
|
||||||
@ -401,7 +403,8 @@ gnc_split_register_load (SplitRegister *reg, GList * slist,
|
|||||||
save_loc.phys_col_offset = 0;
|
save_loc.phys_col_offset = 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
sr_add_transaction (reg, trans, split, lead_cursor, split_cursor,
|
gnc_split_register_add_transaction (reg, trans, split,
|
||||||
|
lead_cursor, split_cursor,
|
||||||
multi_line, start_primary_color, FALSE,
|
multi_line, start_primary_color, FALSE,
|
||||||
info->blank_split_edited, find_trans,
|
info->blank_split_edited, find_trans,
|
||||||
find_split, find_class, &new_split_row,
|
find_split, find_class, &new_split_row,
|
||||||
|
@ -61,7 +61,8 @@ static gboolean use_red_for_negative = TRUE;
|
|||||||
|
|
||||||
|
|
||||||
static gboolean
|
static gboolean
|
||||||
use_security_cells (SplitRegister *reg, VirtualLocation virt_loc)
|
gnc_split_register_use_security_cells (SplitRegister *reg,
|
||||||
|
VirtualLocation virt_loc)
|
||||||
{
|
{
|
||||||
GNCAccountType account_type;
|
GNCAccountType account_type;
|
||||||
CursorClass cursor_class;
|
CursorClass cursor_class;
|
||||||
@ -194,7 +195,7 @@ gnc_split_register_get_price_label (VirtualLocation virt_loc,
|
|||||||
{
|
{
|
||||||
SplitRegister *reg = user_data;
|
SplitRegister *reg = user_data;
|
||||||
|
|
||||||
if (!use_security_cells (reg, virt_loc))
|
if (!gnc_split_register_use_security_cells (reg, virt_loc))
|
||||||
return NULL;
|
return NULL;
|
||||||
|
|
||||||
return _("Price");
|
return _("Price");
|
||||||
@ -206,7 +207,7 @@ gnc_split_register_get_shares_label (VirtualLocation virt_loc,
|
|||||||
{
|
{
|
||||||
SplitRegister *reg = user_data;
|
SplitRegister *reg = user_data;
|
||||||
|
|
||||||
if (!use_security_cells (reg, virt_loc))
|
if (!gnc_split_register_use_security_cells (reg, virt_loc))
|
||||||
return NULL;
|
return NULL;
|
||||||
|
|
||||||
return _("Shares");
|
return _("Shares");
|
||||||
@ -772,7 +773,7 @@ gnc_split_register_get_price_entry (VirtualLocation virt_loc,
|
|||||||
gnc_numeric price;
|
gnc_numeric price;
|
||||||
Split *split;
|
Split *split;
|
||||||
|
|
||||||
if (!use_security_cells (reg, virt_loc))
|
if (!gnc_split_register_use_security_cells (reg, virt_loc))
|
||||||
return NULL;
|
return NULL;
|
||||||
|
|
||||||
split = gnc_split_register_get_split (reg, virt_loc.vcell_loc);
|
split = gnc_split_register_get_split (reg, virt_loc.vcell_loc);
|
||||||
@ -794,7 +795,7 @@ gnc_split_register_get_shares_entry (VirtualLocation virt_loc,
|
|||||||
gnc_numeric shares;
|
gnc_numeric shares;
|
||||||
Split *split;
|
Split *split;
|
||||||
|
|
||||||
if (!use_security_cells (reg, virt_loc))
|
if (!gnc_split_register_use_security_cells (reg, virt_loc))
|
||||||
return NULL;
|
return NULL;
|
||||||
|
|
||||||
split = gnc_split_register_get_split (reg, virt_loc.vcell_loc);
|
split = gnc_split_register_get_split (reg, virt_loc.vcell_loc);
|
||||||
@ -1024,7 +1025,7 @@ gnc_split_register_get_security_io_flags (VirtualLocation virt_loc,
|
|||||||
{
|
{
|
||||||
SplitRegister *reg = user_data;
|
SplitRegister *reg = user_data;
|
||||||
|
|
||||||
if (use_security_cells (reg, virt_loc))
|
if (gnc_split_register_use_security_cells (reg, virt_loc))
|
||||||
return XACC_CELL_ALLOW_ALL;
|
return XACC_CELL_ALLOW_ALL;
|
||||||
|
|
||||||
return XACC_CELL_ALLOW_SHADOW;
|
return XACC_CELL_ALLOW_SHADOW;
|
||||||
|
@ -24,7 +24,6 @@
|
|||||||
#define SPLIT_REGISTER_P_H
|
#define SPLIT_REGISTER_P_H
|
||||||
|
|
||||||
#include "Group.h"
|
#include "Group.h"
|
||||||
#include "gnc-ledger-display.h"
|
|
||||||
#include "split-register.h"
|
#include "split-register.h"
|
||||||
|
|
||||||
|
|
||||||
|
@ -143,12 +143,11 @@ static GUID copied_leader_guid;
|
|||||||
|
|
||||||
/** static prototypes *****************************************************/
|
/** static prototypes *****************************************************/
|
||||||
|
|
||||||
static gboolean xaccSRSaveRegEntryToSCM (SplitRegister *reg,
|
static gboolean gnc_split_register_save_to_scm (SplitRegister *reg,
|
||||||
SCM trans_scm, SCM split_scm,
|
SCM trans_scm, SCM split_scm,
|
||||||
gboolean use_cut_semantics);
|
gboolean use_cut_semantics);
|
||||||
static void xaccSRActuallySaveChangedCells (SplitRegister *reg,
|
static gboolean gnc_split_register_auto_calc (SplitRegister *reg,
|
||||||
Transaction *trans, Split *split);
|
Split *split);
|
||||||
static gboolean sr_split_auto_calc (SplitRegister *reg, Split *split);
|
|
||||||
|
|
||||||
|
|
||||||
/** implementations *******************************************************/
|
/** implementations *******************************************************/
|
||||||
@ -657,7 +656,7 @@ gnc_split_register_copy_current_internal (SplitRegister *reg,
|
|||||||
if (new_item != SCM_UNDEFINED)
|
if (new_item != SCM_UNDEFINED)
|
||||||
{
|
{
|
||||||
if (changed)
|
if (changed)
|
||||||
xaccSRSaveRegEntryToSCM(reg, SCM_UNDEFINED, new_item,
|
gnc_split_register_save_to_scm (reg, SCM_UNDEFINED, new_item,
|
||||||
use_cut_semantics);
|
use_cut_semantics);
|
||||||
|
|
||||||
copied_leader_guid = *xaccGUIDNULL();
|
copied_leader_guid = *xaccGUIDNULL();
|
||||||
@ -681,7 +680,8 @@ gnc_split_register_copy_current_internal (SplitRegister *reg,
|
|||||||
else
|
else
|
||||||
split_scm = SCM_UNDEFINED;
|
split_scm = SCM_UNDEFINED;
|
||||||
|
|
||||||
xaccSRSaveRegEntryToSCM(reg, new_item, split_scm, use_cut_semantics);
|
gnc_split_register_save_to_scm (reg, new_item, split_scm,
|
||||||
|
use_cut_semantics);
|
||||||
}
|
}
|
||||||
|
|
||||||
copied_leader_guid = info->default_account;
|
copied_leader_guid = info->default_account;
|
||||||
@ -1110,14 +1110,14 @@ gnc_split_register_cancel_cursor_trans_changes (SplitRegister *reg)
|
|||||||
void
|
void
|
||||||
gnc_split_register_redraw (SplitRegister *reg)
|
gnc_split_register_redraw (SplitRegister *reg)
|
||||||
{
|
{
|
||||||
xaccLedgerDisplayRefreshByReg (reg);
|
gnc_ledger_display_refresh_by_split_register (reg);
|
||||||
}
|
}
|
||||||
|
|
||||||
/* Copy from the register object to scheme. This needs to be
|
/* Copy from the register object to scheme. This needs to be
|
||||||
* in sync with gnc_split_register_save and xaccSRSaveChangedCells. */
|
* in sync with gnc_split_register_save and xaccSRSaveChangedCells. */
|
||||||
/* jsled: This will need to be modified, as well. */
|
|
||||||
static gboolean
|
static gboolean
|
||||||
xaccSRSaveRegEntryToSCM (SplitRegister *reg, SCM trans_scm, SCM split_scm,
|
gnc_split_register_save_to_scm (SplitRegister *reg,
|
||||||
|
SCM trans_scm, SCM split_scm,
|
||||||
gboolean use_cut_semantics)
|
gboolean use_cut_semantics)
|
||||||
{
|
{
|
||||||
SCM other_split_scm = SCM_UNDEFINED;
|
SCM other_split_scm = SCM_UNDEFINED;
|
||||||
@ -1356,7 +1356,7 @@ gnc_split_register_save (SplitRegister *reg, gboolean do_commit)
|
|||||||
|
|
||||||
ENTER ("save split is %p \n", split);
|
ENTER ("save split is %p \n", split);
|
||||||
|
|
||||||
if (!sr_split_auto_calc (reg, split))
|
if (!gnc_split_register_auto_calc (reg, split))
|
||||||
return FALSE;
|
return FALSE;
|
||||||
|
|
||||||
gnc_suspend_gui_refresh ();
|
gnc_suspend_gui_refresh ();
|
||||||
@ -1473,7 +1473,7 @@ gnc_split_register_get_account (SplitRegister *reg, const char * cell_name)
|
|||||||
}
|
}
|
||||||
|
|
||||||
static gboolean
|
static gboolean
|
||||||
sr_split_auto_calc (SplitRegister *reg, Split *split)
|
gnc_split_register_auto_calc (SplitRegister *reg, Split *split)
|
||||||
{
|
{
|
||||||
PriceCell *cell;
|
PriceCell *cell;
|
||||||
gboolean recalc_shares = FALSE;
|
gboolean recalc_shares = FALSE;
|
||||||
@ -1759,7 +1759,7 @@ sr_split_auto_calc (SplitRegister *reg, Split *split)
|
|||||||
}
|
}
|
||||||
|
|
||||||
static GNCAccountType
|
static GNCAccountType
|
||||||
sr_type_to_account_type(SplitRegisterType sr_type)
|
gnc_split_register_type_to_account_type (SplitRegisterType sr_type)
|
||||||
{
|
{
|
||||||
switch (sr_type)
|
switch (sr_type)
|
||||||
{
|
{
|
||||||
@ -1805,7 +1805,9 @@ gnc_split_register_get_debit_string (SplitRegister *reg)
|
|||||||
if (info->debit_str)
|
if (info->debit_str)
|
||||||
return info->debit_str;
|
return info->debit_str;
|
||||||
|
|
||||||
info->debit_str = gnc_get_debit_string (sr_type_to_account_type (reg->type));
|
info->debit_str =
|
||||||
|
gnc_get_debit_string
|
||||||
|
(gnc_split_register_type_to_account_type (reg->type));
|
||||||
|
|
||||||
if (info->debit_str)
|
if (info->debit_str)
|
||||||
return info->debit_str;
|
return info->debit_str;
|
||||||
@ -1827,7 +1829,8 @@ gnc_split_register_get_credit_string (SplitRegister *reg)
|
|||||||
return info->credit_str;
|
return info->credit_str;
|
||||||
|
|
||||||
info->credit_str =
|
info->credit_str =
|
||||||
gnc_get_credit_string (sr_type_to_account_type (reg->type));
|
gnc_get_credit_string
|
||||||
|
(gnc_split_register_type_to_account_type (reg->type));
|
||||||
|
|
||||||
if (info->credit_str)
|
if (info->credit_str)
|
||||||
return info->credit_str;
|
return info->credit_str;
|
||||||
|
Loading…
Reference in New Issue
Block a user