Merge branch 'maint'

This commit is contained in:
John Ralls 2023-02-27 16:24:44 -08:00
commit 3d5e27982f
11 changed files with 139 additions and 263 deletions

View File

@ -2146,6 +2146,8 @@ gnc_split_reg_set_sort_reversed(GNCSplitReg *gsr, gboolean rev, gboolean refresh
Query *query = gnc_ledger_display_get_query( gsr->ledger ); Query *query = gnc_ledger_display_get_query( gsr->ledger );
qof_query_set_sort_increasing (query, !rev, !rev, !rev); qof_query_set_sort_increasing (query, !rev, !rev, !rev);
gsr->sort_rev = rev; gsr->sort_rev = rev;
Account *acct = gnc_ledger_display_leader (gsr->ledger);
xaccAccountSetSortReversed(acct, rev);
if (refresh) if (refresh)
gnc_ledger_display_refresh( gsr->ledger ); gnc_ledger_display_refresh( gsr->ledger );
} }

View File

@ -25,7 +25,11 @@
#include <config.h> #include <config.h>
#include <glib/gi18n.h> #include <glib/gi18n.h>
#include <stdbool.h>
#include <stdio.h>
#include "Account.h"
#include "Transaction.h"
#include "account-quickfill.h" #include "account-quickfill.h"
#include "combocell.h" #include "combocell.h"
#include "gnc-component-manager.h" #include "gnc-component-manager.h"
@ -370,6 +374,7 @@ gnc_split_register_load (SplitRegister* reg, GList* slist,
gboolean need_divider_upper = FALSE; gboolean need_divider_upper = FALSE;
gboolean found_divider_upper = FALSE; gboolean found_divider_upper = FALSE;
gboolean found_divider = FALSE; gboolean found_divider = FALSE;
bool reverse_sort = xaccAccountGetSortReversed(default_account);
gboolean has_last_num = FALSE; gboolean has_last_num = FALSE;
gboolean multi_line; gboolean multi_line;
gboolean dynamic; gboolean dynamic;
@ -607,7 +612,8 @@ gnc_split_register_load (SplitRegister* reg, GList* slist,
use_autoreadonly && use_autoreadonly &&
!found_divider_upper) !found_divider_upper)
{ {
if (xaccTransGetDate (trans) >= autoreadonly_time) if (((reverse_sort && xaccTransGetDate(trans) < autoreadonly_time) ||
(!reverse_sort && xaccTransGetDate (trans) >= autoreadonly_time)))
{ {
table->model->dividing_row_upper = vcell_loc.virt_row; table->model->dividing_row_upper = vcell_loc.virt_row;
found_divider_upper = TRUE; found_divider_upper = TRUE;
@ -618,9 +624,9 @@ gnc_split_register_load (SplitRegister* reg, GList* slist,
} }
} }
if (info->show_present_divider && if (info->show_present_divider && !found_divider &&
!found_divider && ((reverse_sort && xaccTransGetDate(trans) < present) ||
(xaccTransGetDate (trans) > present)) (!reverse_sort && xaccTransGetDate (trans) > present)))
{ {
table->model->dividing_row = vcell_loc.virt_row; table->model->dividing_row = vcell_loc.virt_row;
found_divider = TRUE; found_divider = TRUE;
@ -651,7 +657,6 @@ gnc_split_register_load (SplitRegister* reg, GList* slist,
&vcell_loc); &vcell_loc);
table->model->dividing_row_lower = vcell_loc.virt_row; table->model->dividing_row_lower = vcell_loc.virt_row;
if (!multi_line) if (!multi_line)
start_primary_color = !start_primary_color; start_primary_color = !start_primary_color;
@ -737,7 +742,9 @@ gnc_split_register_load (SplitRegister* reg, GList* slist,
&vcell_loc); &vcell_loc);
if (future_after_blank) if (future_after_blank)
{
table->model->dividing_row_lower = vcell_loc.virt_row; table->model->dividing_row_lower = vcell_loc.virt_row;
}
} }
/* go to blank on first pass */ /* go to blank on first pass */

View File

@ -132,7 +132,10 @@ GncXmlBackend::session_begin(QofSession* session, const char* new_uri,
if (!check_path(m_fullpath.c_str(), if (!check_path(m_fullpath.c_str(),
mode == SESSION_NEW_STORE || mode == SESSION_NEW_OVERWRITE)) mode == SESSION_NEW_STORE || mode == SESSION_NEW_OVERWRITE))
return; return;
m_dirname = g_path_get_dirname (m_fullpath.c_str());
auto dirname = g_path_get_dirname (m_fullpath.c_str());
m_dirname = dirname;
g_free (dirname);

View File

@ -255,9 +255,6 @@ void gen_event_trans (Transaction *trans)
} }
} }
static const char*
is_unset = "unset";
/* GObject Initialization */ /* GObject Initialization */
G_DEFINE_TYPE(Transaction, gnc_transaction, QOF_TYPE_INSTANCE) G_DEFINE_TYPE(Transaction, gnc_transaction, QOF_TYPE_INSTANCE)
@ -274,11 +271,6 @@ gnc_transaction_init(Transaction* trans)
trans->date_posted = 0; trans->date_posted = 0;
trans->marker = 0; trans->marker = 0;
trans->orig = NULL; trans->orig = NULL;
trans->readonly_reason = (char*) is_unset;
trans->isClosingTxn_cached = -1;
trans->notes = (char*) is_unset;
trans->doclink = (char*) is_unset;
trans->void_reason = (char*) is_unset;
trans->txn_type = TXN_TYPE_UNCACHED; trans->txn_type = TXN_TYPE_UNCACHED;
LEAVE (" "); LEAVE (" ");
} }
@ -819,24 +811,12 @@ xaccFreeTransaction (Transaction *trans)
/* free up transaction strings */ /* free up transaction strings */
CACHE_REMOVE(trans->num); CACHE_REMOVE(trans->num);
CACHE_REMOVE(trans->description); CACHE_REMOVE(trans->description);
if (trans->readonly_reason != is_unset)
g_free (trans->readonly_reason);
if (trans->doclink != is_unset)
g_free (trans->doclink);
if (trans->void_reason != is_unset)
g_free (trans->void_reason);
if (trans->notes != is_unset)
g_free (trans->notes);
/* Just in case someone looks up freed memory ... */ /* Just in case someone looks up freed memory ... */
trans->num = (char *) 1; trans->num = (char *) 1;
trans->description = NULL; trans->description = NULL;
trans->date_entered = 0; trans->date_entered = 0;
trans->date_posted = 0; trans->date_posted = 0;
trans->readonly_reason = NULL;
trans->doclink = NULL;
trans->notes = NULL;
trans->void_reason = NULL;
if (trans->orig) if (trans->orig)
{ {
xaccFreeTransaction (trans->orig); xaccFreeTransaction (trans->orig);
@ -2044,7 +2024,7 @@ xaccTransSetDatePostedGDate (Transaction *trans, GDate date)
* the future a date which was set as *date* (without time) can * the future a date which was set as *date* (without time) can
* clearly be distinguished from the time64. */ * clearly be distinguished from the time64. */
g_value_init (&v, G_TYPE_DATE); g_value_init (&v, G_TYPE_DATE);
g_value_set_boxed (&v, &date); g_value_set_static_boxed (&v, &date);
qof_instance_set_kvp (QOF_INSTANCE(trans), &v, 1, TRANS_DATE_POSTED); qof_instance_set_kvp (QOF_INSTANCE(trans), &v, 1, TRANS_DATE_POSTED);
g_value_unset (&v); g_value_unset (&v);
/* mark dirty and commit handled by SetDateInternal */ /* mark dirty and commit handled by SetDateInternal */
@ -2083,7 +2063,7 @@ xaccTransSetDateDue (Transaction * trans, time64 time)
GValue v = G_VALUE_INIT; GValue v = G_VALUE_INIT;
if (!trans) return; if (!trans) return;
g_value_init (&v, GNC_TYPE_TIME64); g_value_init (&v, GNC_TYPE_TIME64);
g_value_set_boxed (&v, &time); g_value_set_static_boxed (&v, &time);
xaccTransBeginEdit(trans); xaccTransBeginEdit(trans);
qof_instance_set_kvp (QOF_INSTANCE (trans), &v, 1, TRANS_DATE_DUE_KVP); qof_instance_set_kvp (QOF_INSTANCE (trans), &v, 1, TRANS_DATE_DUE_KVP);
qof_instance_set_dirty(QOF_INSTANCE(trans)); qof_instance_set_dirty(QOF_INSTANCE(trans));
@ -2104,7 +2084,7 @@ xaccTransSetTxnType (Transaction *trans, char type)
g_value_unset (&v); g_value_unset (&v);
return; return;
} }
g_value_set_string (&v, s); g_value_set_static_string (&v, s);
xaccTransBeginEdit(trans); xaccTransBeginEdit(trans);
qof_instance_set_kvp (QOF_INSTANCE (trans), &v, 1, TRANS_TXN_TYPE_KVP); qof_instance_set_kvp (QOF_INSTANCE (trans), &v, 1, TRANS_TXN_TYPE_KVP);
qof_instance_set_dirty(QOF_INSTANCE(trans)); qof_instance_set_dirty(QOF_INSTANCE(trans));
@ -2120,10 +2100,6 @@ void xaccTransClearReadOnly (Transaction *trans)
qof_instance_set_kvp (QOF_INSTANCE (trans), NULL, 1, TRANS_READ_ONLY_REASON); qof_instance_set_kvp (QOF_INSTANCE (trans), NULL, 1, TRANS_READ_ONLY_REASON);
qof_instance_set_dirty(QOF_INSTANCE(trans)); qof_instance_set_dirty(QOF_INSTANCE(trans));
xaccTransCommitEdit(trans); xaccTransCommitEdit(trans);
if (trans->readonly_reason != is_unset)
g_free (trans->readonly_reason);
trans->readonly_reason = NULL;
} }
} }
@ -2134,16 +2110,12 @@ xaccTransSetReadOnly (Transaction *trans, const char *reason)
{ {
GValue v = G_VALUE_INIT; GValue v = G_VALUE_INIT;
g_value_init (&v, G_TYPE_STRING); g_value_init (&v, G_TYPE_STRING);
g_value_set_string (&v, reason); g_value_set_static_string (&v, reason);
xaccTransBeginEdit(trans); xaccTransBeginEdit(trans);
qof_instance_set_kvp (QOF_INSTANCE (trans), &v, 1, TRANS_READ_ONLY_REASON); qof_instance_set_kvp (QOF_INSTANCE (trans), &v, 1, TRANS_READ_ONLY_REASON);
qof_instance_set_dirty(QOF_INSTANCE(trans)); qof_instance_set_dirty(QOF_INSTANCE(trans));
g_value_unset (&v); g_value_unset (&v);
xaccTransCommitEdit(trans); xaccTransCommitEdit(trans);
if (trans->readonly_reason != is_unset)
g_free (trans->readonly_reason);
trans->readonly_reason = g_strdup (reason);
} }
} }
@ -2196,25 +2168,16 @@ xaccTransSetDocLink (Transaction *trans, const char *doclink)
{ {
if (!trans || !doclink) return; if (!trans || !doclink) return;
if (trans->doclink != is_unset)
{
if (!g_strcmp0 (doclink, trans->doclink))
return;
g_free (trans->doclink);
}
xaccTransBeginEdit(trans); xaccTransBeginEdit(trans);
if (doclink[0] == '\0') if (doclink[0] == '\0')
{ {
trans->doclink = NULL;
qof_instance_set_kvp (QOF_INSTANCE (trans), NULL, 1, doclink_uri_str); qof_instance_set_kvp (QOF_INSTANCE (trans), NULL, 1, doclink_uri_str);
} }
else else
{ {
GValue v = G_VALUE_INIT; GValue v = G_VALUE_INIT;
trans->doclink = g_strdup (doclink);
g_value_init (&v, G_TYPE_STRING); g_value_init (&v, G_TYPE_STRING);
g_value_set_string (&v, doclink); g_value_set_static_string (&v, doclink); //Gets copied at the other end
qof_instance_set_kvp (QOF_INSTANCE (trans), &v, 1, doclink_uri_str); qof_instance_set_kvp (QOF_INSTANCE (trans), &v, 1, doclink_uri_str);
g_value_unset (&v); g_value_unset (&v);
} }
@ -2235,18 +2198,9 @@ xaccTransSetNotes (Transaction *trans, const char *notes)
{ {
GValue v = G_VALUE_INIT; GValue v = G_VALUE_INIT;
if (!trans || !notes) return; if (!trans || !notes) return;
if (trans->notes != is_unset)
{
if (!g_strcmp0 (notes, trans->notes))
return;
g_free (trans->notes);
}
g_value_init (&v, G_TYPE_STRING); g_value_init (&v, G_TYPE_STRING);
g_value_set_string (&v, notes); g_value_set_static_string (&v, notes);
xaccTransBeginEdit(trans); xaccTransBeginEdit(trans);
trans->notes = g_strdup (notes);
qof_instance_set_kvp (QOF_INSTANCE (trans), &v, 1, trans_notes_str); qof_instance_set_kvp (QOF_INSTANCE (trans), &v, 1, trans_notes_str);
qof_instance_set_dirty(QOF_INSTANCE(trans)); qof_instance_set_dirty(QOF_INSTANCE(trans));
g_value_unset (&v); g_value_unset (&v);
@ -2266,12 +2220,10 @@ xaccTransSetIsClosingTxn (Transaction *trans, gboolean is_closing)
g_value_set_int64 (&v, 1); g_value_set_int64 (&v, 1);
qof_instance_set_kvp (QOF_INSTANCE (trans), &v, 1, trans_is_closing_str); qof_instance_set_kvp (QOF_INSTANCE (trans), &v, 1, trans_is_closing_str);
g_value_unset (&v); g_value_unset (&v);
trans->isClosingTxn_cached = 1;
} }
else else
{ {
qof_instance_set_kvp (QOF_INSTANCE (trans), NULL, 1, trans_is_closing_str); qof_instance_set_kvp (QOF_INSTANCE (trans), NULL, 1, trans_is_closing_str);
trans->isClosingTxn_cached = 0;
} }
qof_instance_set_dirty(QOF_INSTANCE(trans)); qof_instance_set_dirty(QOF_INSTANCE(trans));
xaccTransCommitEdit(trans); xaccTransCommitEdit(trans);
@ -2409,50 +2361,43 @@ const char *
xaccTransGetDocLink (const Transaction *trans) xaccTransGetDocLink (const Transaction *trans)
{ {
g_return_val_if_fail (trans, NULL); g_return_val_if_fail (trans, NULL);
if (trans->doclink == is_unset)
{ GValue v = G_VALUE_INIT;
GValue v = G_VALUE_INIT; qof_instance_get_kvp (QOF_INSTANCE (trans), &v, 1, doclink_uri_str);
Transaction *t = (Transaction*) trans; const char* doclink = G_VALUE_HOLDS_STRING (&v) ? g_value_get_string (&v) : NULL;
qof_instance_get_kvp (QOF_INSTANCE (trans), &v, 1, doclink_uri_str); g_value_unset (&v);
t->doclink = G_VALUE_HOLDS_STRING (&v) ? g_value_dup_string (&v) : NULL;
g_value_unset (&v); return doclink;
}
return trans->doclink;
} }
const char * const char *
xaccTransGetNotes (const Transaction *trans) xaccTransGetNotes (const Transaction *trans)
{ {
g_return_val_if_fail (trans, NULL); g_return_val_if_fail (trans, NULL);
if (trans->notes == is_unset)
{ GValue v = G_VALUE_INIT;
GValue v = G_VALUE_INIT; qof_instance_get_kvp (QOF_INSTANCE (trans), &v, 1, trans_notes_str);
Transaction *t = (Transaction*) trans; const char *notes = G_VALUE_HOLDS_STRING (&v) ? g_value_get_string (&v) : NULL;
qof_instance_get_kvp (QOF_INSTANCE (trans), &v, 1, trans_notes_str); g_value_unset (&v);
t->notes = G_VALUE_HOLDS_STRING (&v) ? g_value_dup_string (&v) : NULL;
g_value_unset (&v); return notes;
}
return trans->notes;
} }
gboolean gboolean
xaccTransGetIsClosingTxn (const Transaction *trans) xaccTransGetIsClosingTxn (const Transaction *trans)
{ {
if (!trans) return FALSE; if (!trans) return FALSE;
if (trans->isClosingTxn_cached == -1)
{ GValue v = G_VALUE_INIT;
Transaction* trans_nonconst = (Transaction*) trans; gboolean rv;
GValue v = G_VALUE_INIT; qof_instance_get_kvp (QOF_INSTANCE (trans), &v, 1, trans_is_closing_str);
qof_instance_get_kvp (QOF_INSTANCE (trans), &v, 1, trans_is_closing_str); if (G_VALUE_HOLDS_INT64 (&v))
if (G_VALUE_HOLDS_INT64 (&v)) rv = (g_value_get_int64 (&v) ? 1 : 0);
trans_nonconst->isClosingTxn_cached = (g_value_get_int64 (&v) ? 1 : 0); else
else rv = 0;
trans_nonconst->isClosingTxn_cached = 0; g_value_unset (&v);
g_value_unset (&v);
} return rv;
return (trans->isClosingTxn_cached == 1)
? TRUE
: FALSE;
} }
/********************************************************************\ /********************************************************************\
@ -2582,15 +2527,12 @@ xaccTransGetReadOnly (Transaction *trans)
if (!trans) if (!trans)
return NULL; return NULL;
if (trans->readonly_reason == is_unset) GValue v = G_VALUE_INIT;
{ qof_instance_get_kvp (QOF_INSTANCE(trans), &v, 1, TRANS_READ_ONLY_REASON);
GValue v = G_VALUE_INIT; const char *readonly_reason = G_VALUE_HOLDS_STRING (&v) ?
qof_instance_get_kvp (QOF_INSTANCE(trans), &v, 1, TRANS_READ_ONLY_REASON); g_value_get_string (&v) : NULL;
trans->readonly_reason = G_VALUE_HOLDS_STRING (&v) ? g_value_unset (&v);
g_value_dup_string (&v) : NULL; return readonly_reason;
g_value_unset (&v);
}
return trans->readonly_reason;
} }
static gboolean static gboolean
@ -2788,16 +2730,13 @@ xaccTransVoid(Transaction *trans, const char *reason)
else else
g_value_init (&v, G_TYPE_STRING); g_value_init (&v, G_TYPE_STRING);
g_value_set_string (&v, _("Voided transaction")); g_value_set_static_string (&v, _("Voided transaction"));
qof_instance_set_kvp (QOF_INSTANCE (trans), &v, 1, trans_notes_str); qof_instance_set_kvp (QOF_INSTANCE (trans), &v, 1, trans_notes_str);
g_value_set_string (&v, reason); g_value_set_static_string (&v, reason);
qof_instance_set_kvp (QOF_INSTANCE (trans), &v, 1, void_reason_str); qof_instance_set_kvp (QOF_INSTANCE (trans), &v, 1, void_reason_str);
if (trans->void_reason != is_unset)
g_free (trans->void_reason);
trans->void_reason = g_strdup (reason);
gnc_time64_to_iso8601_buff (gnc_time(NULL), iso8601_str); gnc_time64_to_iso8601_buff (gnc_time(NULL), iso8601_str);
g_value_set_string (&v, iso8601_str); g_value_set_static_string (&v, iso8601_str);
qof_instance_set_kvp (QOF_INSTANCE (trans), &v, 1, void_time_str); qof_instance_set_kvp (QOF_INSTANCE (trans), &v, 1, void_time_str);
g_value_unset (&v); g_value_unset (&v);
@ -2819,15 +2758,13 @@ const char *
xaccTransGetVoidReason(const Transaction *trans) xaccTransGetVoidReason(const Transaction *trans)
{ {
g_return_val_if_fail (trans, NULL); g_return_val_if_fail (trans, NULL);
if (trans->void_reason == is_unset)
{ GValue v = G_VALUE_INIT;
GValue v = G_VALUE_INIT; qof_instance_get_kvp (QOF_INSTANCE (trans), &v, 1, void_reason_str);
Transaction *t = (Transaction*) trans; const char *void_reason = G_VALUE_HOLDS_STRING (&v) ? g_value_get_string (&v) : NULL;
qof_instance_get_kvp (QOF_INSTANCE (trans), &v, 1, void_reason_str); g_value_unset (&v);
t->void_reason = G_VALUE_HOLDS_STRING (&v) ? g_value_dup_string (&v) : NULL;
g_value_unset (&v); return void_reason;
}
return trans->void_reason;
} }
time64 time64
@ -2867,8 +2804,6 @@ xaccTransUnvoid (Transaction *trans)
qof_instance_set_kvp (QOF_INSTANCE (trans), NULL, 1, void_reason_str); qof_instance_set_kvp (QOF_INSTANCE (trans), NULL, 1, void_reason_str);
qof_instance_set_kvp (QOF_INSTANCE (trans), NULL, 1, void_time_str); qof_instance_set_kvp (QOF_INSTANCE (trans), NULL, 1, void_time_str);
g_value_unset (&v); g_value_unset (&v);
g_free (trans->void_reason);
trans->void_reason = NULL;
FOR_EACH_SPLIT(trans, xaccSplitUnvoid(s)); FOR_EACH_SPLIT(trans, xaccSplitUnvoid(s));
@ -2905,7 +2840,7 @@ xaccTransReverse (Transaction *orig)
/* Now update the original with a pointer to the new one */ /* Now update the original with a pointer to the new one */
g_value_init (&v, GNC_TYPE_GUID); g_value_init (&v, GNC_TYPE_GUID);
g_value_set_boxed (&v, xaccTransGetGUID(trans)); g_value_set_static_boxed (&v, xaccTransGetGUID(trans));
qof_instance_set_kvp (QOF_INSTANCE (orig), &v, 1, TRANS_REVERSED_BY); qof_instance_set_kvp (QOF_INSTANCE (orig), &v, 1, TRANS_REVERSED_BY);
g_value_unset (&v); g_value_unset (&v);

View File

@ -115,23 +115,11 @@ struct transaction_s
*/ */
Transaction *orig; Transaction *orig;
/* The readonly_reason is a string that indicates why a transaction /* A flag to indicate when a transaction represents an invoice, a payment,
* is marked as read-only. If NULL, the transaction is read-write. * or a link between the two.
* This value is stored in kvp, but we cache a copy here for
* performance reasons.
*/ */
char * readonly_reason;
char * doclink;
char * void_reason;
char * notes;
char txn_type; char txn_type;
/* Cached bool value to indicate whether this is a closing txn. This is
* cached from the KVP value because it is queried a lot. Tri-state value: -1
* = uninitialized; 0 = FALSE, 1 = TRUE. */
gint isClosingTxn_cached;
}; };
struct _TransactionClass struct _TransactionClass

View File

@ -232,17 +232,6 @@ int compare(const KvpFrameImpl & one, const KvpFrameImpl & two) noexcept
return 0; return 0;
} }
static void
gvalue_list_from_kvp_value (KvpValue *kval, gpointer pList)
{
GList **gvlist = NULL;
GValue *gval = gvalue_from_kvp_value (kval);
gvlist = (GList**)pList;
if (G_VALUE_TYPE (gval))
*gvlist = g_list_prepend (*gvlist, gval);
}
static void static void
kvp_value_list_from_gvalue (GValue *gval, gpointer pList) kvp_value_list_from_gvalue (GValue *gval, gpointer pList)
{ {
@ -255,15 +244,13 @@ kvp_value_list_from_gvalue (GValue *gval, gpointer pList)
} }
GValue* GValue*
gvalue_from_kvp_value (const KvpValue *kval) gvalue_from_kvp_value (const KvpValue *kval, GValue* val)
{ {
GValue *val;
gnc_numeric num;
Time64 tm;
GDate gdate;
if (kval == NULL) return NULL; if (kval == NULL) return NULL;
val = g_slice_new0 (GValue); if (!val)
val = g_slice_new0 (GValue);
else
g_value_unset(val);
switch (kval->get_type()) switch (kval->get_type())
{ {
@ -277,36 +264,28 @@ gvalue_from_kvp_value (const KvpValue *kval)
break; break;
case KvpValue::Type::NUMERIC: case KvpValue::Type::NUMERIC:
g_value_init (val, GNC_TYPE_NUMERIC); g_value_init (val, GNC_TYPE_NUMERIC);
num = kval->get<gnc_numeric>(); g_value_set_static_boxed (val, kval->get_ptr<gnc_numeric>());
g_value_set_boxed (val, &num);
break; break;
case KvpValue::Type::STRING: case KvpValue::Type::STRING:
g_value_init (val, G_TYPE_STRING); g_value_init (val, G_TYPE_STRING);
g_value_set_string (val, kval->get<const char*>()); g_value_set_static_string (val, kval->get<const char*>());
break; break;
case KvpValue::Type::GUID: case KvpValue::Type::GUID:
g_value_init (val, GNC_TYPE_GUID); g_value_init (val, GNC_TYPE_GUID);
g_value_set_boxed (val, kval->get<GncGUID*>()); g_value_set_static_boxed (val, kval->get<GncGUID*>());
break; break;
case KvpValue::Type::TIME64: case KvpValue::Type::TIME64:
g_value_init (val, GNC_TYPE_TIME64); g_value_init (val, GNC_TYPE_TIME64);
tm = kval->get<Time64>(); g_value_set_boxed (val, kval->get_ptr<Time64>());
g_value_set_boxed (val, &tm);
break; break;
case KvpValue::Type::GDATE: case KvpValue::Type::GDATE:
g_value_init (val, G_TYPE_DATE); g_value_init (val, G_TYPE_DATE);
gdate = kval->get<GDate>(); g_value_set_static_boxed (val, kval->get_ptr<GDate>());
g_value_set_boxed (val, &gdate);
break; break;
case KvpValue::Type::GLIST: case KvpValue::Type::GLIST:
{ {
GList *gvalue_list = NULL;
GList *kvp_list = kval->get<GList*>();
g_list_foreach (kvp_list, (GFunc)gvalue_list_from_kvp_value,
&gvalue_list);
g_value_init (val, GNC_TYPE_VALUE_LIST); g_value_init (val, GNC_TYPE_VALUE_LIST);
gvalue_list = g_list_reverse (gvalue_list); g_value_set_static_boxed (val, kval->get<GList*>());
g_value_set_boxed (val, gvalue_list);
break; break;
} }
/* No transfer of KVP frames outside of QofInstance-derived classes! */ /* No transfer of KVP frames outside of QofInstance-derived classes! */

View File

@ -139,6 +139,8 @@ struct KvpValueImpl
template <typename T> template <typename T>
T get() const noexcept; T get() const noexcept;
template <typename T>
const T* get_ptr() const noexcept;
template <typename T> template <typename T>
void set(T) noexcept; void set(T) noexcept;
@ -175,6 +177,13 @@ KvpValueImpl::get() const noexcept
return boost::get<T>(datastore); return boost::get<T>(datastore);
} }
template <typename T> const T*
KvpValueImpl::get_ptr() const noexcept
{
if (this->datastore.type() != typeid(T)) return nullptr;
return boost::get<T>(&datastore);
}
template <typename T> void template <typename T> void
KvpValueImpl::set(T val) noexcept KvpValueImpl::set(T val) noexcept
{ {
@ -187,7 +196,7 @@ KvpValueImpl::set(T val) noexcept
* @param kval: A KvpValue. * @param kval: A KvpValue.
* @return GValue*. Must be freed with g_free(). * @return GValue*. Must be freed with g_free().
*/ */
GValue* gvalue_from_kvp_value (const KvpValue *kval); GValue* gvalue_from_kvp_value (const KvpValue *kval, GValue* val = nullptr);
/** Convert a gvalue into a kvpvalue. /** Convert a gvalue into a kvpvalue.
* @param gval: A GValue of a type KvpValue can digest. * @param gval: A GValue of a type KvpValue can digest.

View File

@ -32,8 +32,6 @@ public:
date_posted = 0; date_posted = 0;
marker = 0; marker = 0;
orig = nullptr; orig = nullptr;
readonly_reason = nullptr;
isClosingTxn_cached = -1;
} }
void* operator new(size_t size) void* operator new(size_t size)
{ {

View File

@ -1085,15 +1085,7 @@ qof_instance_get_kvp (QofInstance * inst, GValue * value, unsigned count, ...)
for (unsigned i{0}; i < count; ++i) for (unsigned i{0}; i < count; ++i)
path.push_back (va_arg (args, char const *)); path.push_back (va_arg (args, char const *));
va_end (args); va_end (args);
auto temp = gvalue_from_kvp_value (inst->kvp_data->get_slot (path)); gvalue_from_kvp_value (inst->kvp_data->get_slot (path), value);
if (G_IS_VALUE (temp))
{
if (G_IS_VALUE (value))
g_value_unset (value);
g_value_init (value, G_VALUE_TYPE (temp));
g_value_copy (temp, value);
gnc_gvalue_free (temp);
}
} }
void void

View File

@ -12,8 +12,8 @@ msgstr ""
"Report-Msgid-Bugs-To: https://bugs.gnucash.org/enter_bug." "Report-Msgid-Bugs-To: https://bugs.gnucash.org/enter_bug."
"cgi?product=GnuCash&component=Translations\n" "cgi?product=GnuCash&component=Translations\n"
"POT-Creation-Date: 2021-12-05 20:11+0100\n" "POT-Creation-Date: 2021-12-05 20:11+0100\n"
"PO-Revision-Date: 2023-02-23 12:38+0000\n" "PO-Revision-Date: 2023-02-26 17:38+0000\n"
"Last-Translator: mocsa <csaba@feltoltve.hu>\n" "Last-Translator: Szia Tomi <sziatomi01@gmail.com>\n"
"Language-Team: Hungarian <https://hosted.weblate.org/projects/gnucash/" "Language-Team: Hungarian <https://hosted.weblate.org/projects/gnucash/"
"glossary/hu/>\n" "glossary/hu/>\n"
"Language: hu\n" "Language: hu\n"
@ -110,7 +110,7 @@ msgstr "számlatípus: Részvény"
#. "This account type (new in gnucash-2.4.0) is used when exchanging or trading amounts from one currency into another" #. "This account type (new in gnucash-2.4.0) is used when exchanging or trading amounts from one currency into another"
msgid "account type: trading" msgid "account type: trading"
msgstr "számlatípus: devizakonverziós" msgstr "számlatípus: kereskedés(devizakonverziós)"
#. "-" #. "-"
msgid "account: parent account" msgid "account: parent account"

129
po/hu.po
View File

@ -14,8 +14,8 @@ msgstr ""
"Report-Msgid-Bugs-To: https://bugs.gnucash.org/enter_bug." "Report-Msgid-Bugs-To: https://bugs.gnucash.org/enter_bug."
"cgi?product=GnuCash&component=Translations\n" "cgi?product=GnuCash&component=Translations\n"
"POT-Creation-Date: 2022-12-04 19:47-0800\n" "POT-Creation-Date: 2022-12-04 19:47-0800\n"
"PO-Revision-Date: 2023-02-23 16:38+0000\n" "PO-Revision-Date: 2023-02-26 20:44+0000\n"
"Last-Translator: Szia Tomi <sziatomi01@gmail.com>\n" "Last-Translator: mocsa <csaba@feltoltve.hu>\n"
"Language-Team: Hungarian <https://hosted.weblate.org/projects/gnucash/" "Language-Team: Hungarian <https://hosted.weblate.org/projects/gnucash/"
"program-beta/hu/>\n" "program-beta/hu/>\n"
"Language: hu\n" "Language: hu\n"
@ -903,7 +903,7 @@ msgstr "A könyv lezárása sikeres volt."
#. that will be created. This is a ngettext(3) message (but #. that will be created. This is a ngettext(3) message (but
#. only for the %d part). #. only for the %d part).
#: gnucash/gnome/assistant-acct-period.c:315 #: gnucash/gnome/assistant-acct-period.c:315
#, fuzzy, c-format #, c-format
msgid "" msgid ""
"The earliest transaction date found in this book is %s. Based on the " "The earliest transaction date found in this book is %s. Based on the "
"selection made above, this book will be split into %d book." "selection made above, this book will be split into %d book."
@ -911,9 +911,8 @@ msgid_plural ""
"The earliest transaction date found in this book is %s. Based on the " "The earliest transaction date found in this book is %s. Based on the "
"selection made above, this book will be split into %d books." "selection made above, this book will be split into %d books."
msgstr[0] "" msgstr[0] ""
"A legkorábbi könyvelés dátuma a könyvben %s. A fenti kiválasztás alapján a " "Ebben a főkönyvben a legkorábbi tranzakció dátuma %s. A fenti választás "
"könyvelés-megosztás a %d könyvekben megy végbe. Kattintson a \"Következő\"-" "alapján a könyv %d felé lesz szétosztva."
"re, hogy elkezdje bezárni az első könyvet."
#. Translators: Run the assistant in your language to see GTK's translation of the button labels. #. Translators: Run the assistant in your language to see GTK's translation of the button labels.
#: gnucash/gnome/assistant-acct-period.c:371 #: gnucash/gnome/assistant-acct-period.c:371
@ -945,13 +944,13 @@ msgid ""
msgstr "" msgstr ""
#: gnucash/gnome/assistant-acct-period.c:525 #: gnucash/gnome/assistant-acct-period.c:525
#, fuzzy, c-format #, c-format
msgid "" msgid ""
"%s\n" "%s\n"
"Congratulations! You are done closing books!\n" "Congratulations! You are done closing books!\n"
msgstr "" msgstr ""
"%s\n" "%s\n"
"Gratulálunk! Ön végzett a könyvek lezárásával!\n" "Gratulálunk! Befejezte a könyvek lezárását!\n"
#: gnucash/gnome/assistant-acct-period.c:594 #: gnucash/gnome/assistant-acct-period.c:594
#: gnucash/gtkbuilder/dialog-fincalc.glade:650 #: gnucash/gtkbuilder/dialog-fincalc.glade:650
@ -1725,10 +1724,8 @@ msgstr "Töltelék számla lett kiválasztva. Próbálja újra."
#: gnucash/gnome/dialog-doclink.c:160 #: gnucash/gnome/dialog-doclink.c:160
#: gnucash/gnome/gnc-plugin-page-register.c:4765 #: gnucash/gnome/gnc-plugin-page-register.c:4765
#, fuzzy
#| msgid "Select Account"
msgid "Select document" msgid "Select document"
msgstr "Folyószámla kiválasztása" msgstr "Dokumentum kiválasztása"
#: gnucash/gnome/dialog-doclink.c:163 gnucash/gnome/gnc-plugin-budget.c:323 #: gnucash/gnome/dialog-doclink.c:163 gnucash/gnome/gnc-plugin-budget.c:323
#: gnucash/gnome-search/search-account.c:238 #: gnucash/gnome-search/search-account.c:238
@ -15789,9 +15786,8 @@ msgid "Linked Document"
msgstr "Megbízás párbeszédablak" msgstr "Megbízás párbeszédablak"
#: gnucash/gtkbuilder/dialog-doclink.glade:697 #: gnucash/gtkbuilder/dialog-doclink.glade:697
#, fuzzy
msgid "Available" msgid "Available"
msgstr "Számlázható?" msgstr ""
#: gnucash/gtkbuilder/dialog-doclink.glade:712 #: gnucash/gtkbuilder/dialog-doclink.glade:712
msgid "Relative" msgid "Relative"
@ -16475,8 +16471,8 @@ msgstr "_Igen"
msgid "" msgid ""
"<span weight=\"bold\" size=\"larger\">Display Welcome Dialog Again?</span>" "<span weight=\"bold\" size=\"larger\">Display Welcome Dialog Again?</span>"
msgstr "" msgstr ""
"<span weight=\"bold\" size=\"larger\">Újból megjeleníti az " "<span weight=\"bold\" size=\"larger\">Máskor is jelenjen meg az "
"üdvözlőablakot?</span>" "Üdvözlőablak?</span>"
#: gnucash/gtkbuilder/dialog-new-user.glade:101 #: gnucash/gtkbuilder/dialog-new-user.glade:101
msgid "" msgid ""
@ -16484,9 +16480,9 @@ msgid ""
"will be displayed again next time you start GnuCash. If you press the <i>No</" "will be displayed again next time you start GnuCash. If you press the <i>No</"
"i> button, it will not be displayed again." "i> button, it will not be displayed again."
msgstr "" msgstr ""
"Ha az <i>Igen</i> gombot nyomja meg, az <i>Üdvözli a GnuCash</i> ablak a " "Ha az <i>Igen</i> gombra kattint, az <i>Üdvözlőablak</i> a GnuCash következő "
"következő alkalommal is megjelenik, amikor elindítja GnuCash-t. Ha a <i>Nem</" "indításakor is megjelenik. Ha a <i>Nem</i> gombra kattint, akkor nem jelenik "
"i> gombot nyomja meg, akkor nem jelenik meg újra." "meg újra."
#: gnucash/gtkbuilder/dialog-new-user.glade:210 #: gnucash/gtkbuilder/dialog-new-user.glade:210
msgid "<span size=\"larger\" weight=\"bold\">Welcome to GnuCash!</span>" msgid "<span size=\"larger\" weight=\"bold\">Welcome to GnuCash!</span>"
@ -19257,9 +19253,8 @@ msgid "Only show _active owners"
msgstr "" msgstr ""
#: gnucash/gtkbuilder/gnc-tree-view-owner.glade:79 #: gnucash/gtkbuilder/gnc-tree-view-owner.glade:79
#, fuzzy
msgid "Show _zero balance owners" msgid "Show _zero balance owners"
msgstr "Nulla egyenlegű elemek feltüntetése?" msgstr ""
#: gnucash/gtkbuilder/window-autoclear.glade:71 #: gnucash/gtkbuilder/window-autoclear.glade:71
#, fuzzy #, fuzzy
@ -21896,9 +21891,8 @@ msgid "Enter a name for the account"
msgstr "Adjon meg egy folyószámlanevet" msgstr "Adjon meg egy folyószámlanevet"
#: gnucash/import-export/qif-imp/dialog-account-picker.c:443 #: gnucash/import-export/qif-imp/dialog-account-picker.c:443
#, fuzzy
msgid "Placeholder?" msgid "Placeholder?"
msgstr "Töltelék" msgstr "Töltelék?"
#: gnucash/import-export/qif-imp/gnc-plugin-qif-import.c:48 #: gnucash/import-export/qif-imp/gnc-plugin-qif-import.c:48
msgid "Import _QIF..." msgid "Import _QIF..."
@ -22312,10 +22306,9 @@ msgstr "sample:Költségek:Autó:Üzemanyag"
#. Translators: Abbreviation sample for Taxable? #. Translators: Abbreviation sample for Taxable?
#: gnucash/register/ledger-core/gncEntryLedgerLayout.c:132 #: gnucash/register/ledger-core/gncEntryLedgerLayout.c:132
#, fuzzy
msgctxt "sample for 'Taxable'" msgctxt "sample for 'Taxable'"
msgid "T?" msgid "T?"
msgstr "A" msgstr ""
#. Translators: Abbreviation sample for Tax Included #. Translators: Abbreviation sample for Tax Included
#: gnucash/register/ledger-core/gncEntryLedgerLayout.c:137 #: gnucash/register/ledger-core/gncEntryLedgerLayout.c:137
@ -23077,9 +23070,8 @@ msgstr "Pénznem kiválasztása, amelyben jelentés értékei megjelennek."
#: gnucash/report/options-utilities.scm:143 #: gnucash/report/options-utilities.scm:143
#: gnucash/report/reports/standard/advanced-portfolio.scm:81 #: gnucash/report/reports/standard/advanced-portfolio.scm:81
#: gnucash/report/reports/standard/price-scatter.scm:78 #: gnucash/report/reports/standard/price-scatter.scm:78
#, fuzzy
msgid "The source of price information." msgid "The source of price information."
msgstr "Az árinformáció forrása" msgstr "Árfolyamok forrása."
#: gnucash/report/options-utilities.scm:144 #: gnucash/report/options-utilities.scm:144
msgid "Average cost of purchases weighted by volume" msgid "Average cost of purchases weighted by volume"
@ -23486,27 +23478,23 @@ msgstr ""
#: gnucash/report/reports/aging.scm:410 #: gnucash/report/reports/aging.scm:410
#: gnucash/report/reports/standard/new-aging.scm:52 #: gnucash/report/reports/standard/new-aging.scm:52
#, fuzzy
msgid "Display Address 1." msgid "Display Address 1."
msgstr "Dátum megjelenítése?" msgstr ""
#: gnucash/report/reports/aging.scm:418 #: gnucash/report/reports/aging.scm:418
#: gnucash/report/reports/standard/new-aging.scm:53 #: gnucash/report/reports/standard/new-aging.scm:53
#, fuzzy
msgid "Display Address 2." msgid "Display Address 2."
msgstr "Dátum megjelenítése?" msgstr ""
#: gnucash/report/reports/aging.scm:426 #: gnucash/report/reports/aging.scm:426
#: gnucash/report/reports/standard/new-aging.scm:54 #: gnucash/report/reports/standard/new-aging.scm:54
#, fuzzy
msgid "Display Address 3." msgid "Display Address 3."
msgstr "Dátum megjelenítése?" msgstr ""
#: gnucash/report/reports/aging.scm:434 #: gnucash/report/reports/aging.scm:434
#: gnucash/report/reports/standard/new-aging.scm:55 #: gnucash/report/reports/standard/new-aging.scm:55
#, fuzzy
msgid "Display Address 4." msgid "Display Address 4."
msgstr "Dátum megjelenítése?" msgstr ""
#: gnucash/report/reports/aging.scm:442 #: gnucash/report/reports/aging.scm:442
#: gnucash/report/reports/standard/new-aging.scm:56 #: gnucash/report/reports/standard/new-aging.scm:56
@ -23528,9 +23516,8 @@ msgstr "Rövid jelölések megjelenítése"
#: gnucash/report/reports/aging.scm:466 #: gnucash/report/reports/aging.scm:466
#: gnucash/report/reports/standard/new-aging.scm:59 #: gnucash/report/reports/standard/new-aging.scm:59
#, fuzzy
msgid "Display Active status." msgid "Display Active status."
msgstr "Dátum megjelenítése?" msgstr ""
#: gnucash/report/reports/aging.scm:539 #: gnucash/report/reports/aging.scm:539
#: gnucash/report/reports/standard/new-aging.scm:181 #: gnucash/report/reports/standard/new-aging.scm:181
@ -25530,9 +25517,8 @@ msgstr "Nem pénzjavak megjelenítése"
#: gnucash/report/reports/standard/balsheet-pnl.scm:124 #: gnucash/report/reports/standard/balsheet-pnl.scm:124
#: gnucash/report/trep-engine.scm:551 #: gnucash/report/trep-engine.scm:551
#, fuzzy
msgid "Also show original currency amounts" msgid "Also show original currency amounts"
msgstr "A számla idegen pénznembeli összegeinek megjelenítése?" msgstr "Összegek megjelenítése eredeti pénznemben is"
#: gnucash/report/reports/standard/balsheet-pnl.scm:126 #: gnucash/report/reports/standard/balsheet-pnl.scm:126
msgid "If more than 1 period column, include overall period?" msgid "If more than 1 period column, include overall period?"
@ -26110,19 +26096,16 @@ msgid "Include transfers to and from Trading Accounts in the report."
msgstr "" msgstr ""
#: gnucash/report/reports/standard/cashflow-barchart.scm:107 #: gnucash/report/reports/standard/cashflow-barchart.scm:107
#, fuzzy
msgid "Show money in?" msgid "Show money in?"
msgstr "Rajz megjelenítése" msgstr ""
#: gnucash/report/reports/standard/cashflow-barchart.scm:113 #: gnucash/report/reports/standard/cashflow-barchart.scm:113
#, fuzzy
msgid "Show money out?" msgid "Show money out?"
msgstr "Rajz megjelenítése" msgstr ""
#: gnucash/report/reports/standard/cashflow-barchart.scm:119 #: gnucash/report/reports/standard/cashflow-barchart.scm:119
#, fuzzy
msgid "Show net money flow?" msgid "Show net money flow?"
msgstr "Rajz megjelenítése" msgstr "Nettó pénzáramlás megjelenítése?"
#: gnucash/report/reports/standard/cashflow-barchart.scm:303 #: gnucash/report/reports/standard/cashflow-barchart.scm:303
#: gnucash/report/reports/standard/cashflow-barchart.scm:339 #: gnucash/report/reports/standard/cashflow-barchart.scm:339
@ -26952,24 +26935,20 @@ msgid "Display the price per item?"
msgstr "Elemenkénti ár megjelenítése?" msgstr "Elemenkénti ár megjelenítése?"
#: gnucash/report/reports/standard/invoice.scm:225 #: gnucash/report/reports/standard/invoice.scm:225
#, fuzzy
msgid "Display the entry's discount?" msgid "Display the entry's discount?"
msgstr "Tétel-kedvezmény megjelenítése" msgstr ""
#: gnucash/report/reports/standard/invoice.scm:230 #: gnucash/report/reports/standard/invoice.scm:230
#, fuzzy
msgid "Display the entry's taxable status?" msgid "Display the entry's taxable status?"
msgstr "Adókötelesség megjelenítése" msgstr ""
#: gnucash/report/reports/standard/invoice.scm:235 #: gnucash/report/reports/standard/invoice.scm:235
#, fuzzy
msgid "Display each entry's total total tax?" msgid "Display each entry's total total tax?"
msgstr "Minden tételösszeg összesített adója" msgstr ""
#: gnucash/report/reports/standard/invoice.scm:240 #: gnucash/report/reports/standard/invoice.scm:240
#, fuzzy
msgid "Display the entry's value?" msgid "Display the entry's value?"
msgstr "Tétel értéke megjelenítése" msgstr ""
#: gnucash/report/reports/standard/invoice.scm:245 #: gnucash/report/reports/standard/invoice.scm:245
msgid "Display due date?" msgid "Display due date?"
@ -27530,22 +27509,19 @@ msgstr "Számla megjelenítése?"
#: gnucash/report/reports/standard/new-owner-report.scm:918 #: gnucash/report/reports/standard/new-owner-report.scm:918
#: gnucash/report/reports/standard/owner-report.scm:597 #: gnucash/report/reports/standard/owner-report.scm:597
#, fuzzy
msgid "Display the period debits column?" msgid "Display the period debits column?"
msgstr "Tétel-kedvezmény megjelenítése" msgstr ""
#: gnucash/report/reports/standard/new-owner-report.scm:923 #: gnucash/report/reports/standard/new-owner-report.scm:923
#: gnucash/report/reports/standard/owner-report.scm:592 #: gnucash/report/reports/standard/owner-report.scm:592
#, fuzzy
msgid "Display the period credits column?" msgid "Display the period credits column?"
msgstr "Tétel-kedvezmény megjelenítése" msgstr ""
#: gnucash/report/reports/standard/new-owner-report.scm:928 #: gnucash/report/reports/standard/new-owner-report.scm:928
#: gnucash/report/reports/standard/register.scm:413 #: gnucash/report/reports/standard/register.scm:413
#: gnucash/report/trep-engine.scm:962 #: gnucash/report/trep-engine.scm:962
#, fuzzy
msgid "Display a running balance?" msgid "Display a running balance?"
msgstr "Futó egyenleg megjelenítése" msgstr "Folyó egyenleg megjelenítése?"
#: gnucash/report/reports/standard/new-owner-report.scm:936 #: gnucash/report/reports/standard/new-owner-report.scm:936
#, fuzzy #, fuzzy
@ -27575,9 +27551,8 @@ msgid "Detailed"
msgstr "Sikertelen" msgstr "Sikertelen"
#: gnucash/report/reports/standard/new-owner-report.scm:949 #: gnucash/report/reports/standard/new-owner-report.scm:949
#, fuzzy
msgid "Display document link?" msgid "Display document link?"
msgstr "Számlanév megjelenítése hiperhivatkozásként" msgstr "Dokumentum hivatkozás megjelenítése?"
#: gnucash/report/reports/standard/new-owner-report.scm:1068 #: gnucash/report/reports/standard/new-owner-report.scm:1068
#, fuzzy #, fuzzy
@ -28169,9 +28144,8 @@ msgid "Display the Company Name?"
msgstr "Számlanév megjelenítése?" msgstr "Számlanév megjelenítése?"
#: gnucash/report/reports/standard/taxinvoice.scm:134 #: gnucash/report/reports/standard/taxinvoice.scm:134
#, fuzzy
msgid "Invoice Number next to title?" msgid "Invoice Number next to title?"
msgstr "Számlaszám" msgstr "Számlaszám a cím mellett?"
#: gnucash/report/reports/standard/taxinvoice.scm:135 #: gnucash/report/reports/standard/taxinvoice.scm:135
#, fuzzy #, fuzzy
@ -28179,14 +28153,12 @@ msgid "Display Job name?"
msgstr "Számlanév megjelenítése?" msgstr "Számlanév megjelenítése?"
#: gnucash/report/reports/standard/taxinvoice.scm:136 #: gnucash/report/reports/standard/taxinvoice.scm:136
#, fuzzy
msgid "Invoice Job number?" msgid "Invoice Job number?"
msgstr "Számlaszám" msgstr ""
#: gnucash/report/reports/standard/taxinvoice.scm:137 #: gnucash/report/reports/standard/taxinvoice.scm:137
#, fuzzy
msgid "Show net price?" msgid "Show net price?"
msgstr "Árak feltüntetése" msgstr "Nettó ár megjelenítése?"
#: gnucash/report/reports/standard/taxinvoice.scm:154 #: gnucash/report/reports/standard/taxinvoice.scm:154
msgid "Name of a file containing a logo to be used on the report." msgid "Name of a file containing a logo to be used on the report."
@ -29176,9 +29148,8 @@ msgid ""
msgstr "" msgstr ""
#: gnucash/report/trep-engine.scm:637 #: gnucash/report/trep-engine.scm:637
#, fuzzy
msgid "Filter by reconcile status." msgid "Filter by reconcile status."
msgstr "Tranzakciódátum megjelenítése?" msgstr ""
#: gnucash/report/trep-engine.scm:644 #: gnucash/report/trep-engine.scm:644
#, fuzzy #, fuzzy
@ -29224,18 +29195,16 @@ msgid "Show the account description for subheadings?"
msgstr "Számlakód megjelenítése alösszegekhez és alcímekhez?" msgstr "Számlakód megjelenítése alösszegekhez és alcímekhez?"
#: gnucash/report/trep-engine.scm:810 #: gnucash/report/trep-engine.scm:810
#, fuzzy
msgid "Show the informal headers for debit/credit accounts?" msgid "Show the informal headers for debit/credit accounts?"
msgstr "Bevételi- és költségszámlák megjelenítése" msgstr ""
#: gnucash/report/trep-engine.scm:817 #: gnucash/report/trep-engine.scm:817
msgid "Add indenting columns with grouping and subtotals?" msgid "Add indenting columns with grouping and subtotals?"
msgstr "" msgstr ""
#: gnucash/report/trep-engine.scm:824 #: gnucash/report/trep-engine.scm:824
#, fuzzy
msgid "Show subtotals only, hiding transactional detail?" msgid "Show subtotals only, hiding transactional detail?"
msgstr "Do not print transaction detail" msgstr ""
#: gnucash/report/trep-engine.scm:831 #: gnucash/report/trep-engine.scm:831
msgid "Subtotal according to the primary key?" msgid "Subtotal according to the primary key?"
@ -29280,30 +29249,24 @@ msgid "Display the notes if the memo is unavailable?"
msgstr "" msgstr ""
#: gnucash/report/trep-engine.scm:952 gnucash/report/trep-engine.scm:955 #: gnucash/report/trep-engine.scm:952 gnucash/report/trep-engine.scm:955
#, fuzzy
msgid "Display the full account name?" msgid "Display the full account name?"
msgstr "Teljes számlanév megjelenítése" msgstr "Teljes számlanév megjelenítése?"
#: gnucash/report/trep-engine.scm:953 #: gnucash/report/trep-engine.scm:953
#, fuzzy
msgid "Display the account code?" msgid "Display the account code?"
msgstr "Számlakód megjelenítése" msgstr "Számlakód megjelenítése?"
#: gnucash/report/trep-engine.scm:956 #: gnucash/report/trep-engine.scm:956
#, fuzzy
msgid "Display the other account code?" msgid "Display the other account code?"
msgstr "A másik számla kódjának megjelenítése" msgstr "A másik számla kódjának megjelenítése?"
#: gnucash/report/trep-engine.scm:958 #: gnucash/report/trep-engine.scm:958
#, fuzzy
#| msgid "Display the transaction amount?"
msgid "Display the transaction linked document" msgid "Display the transaction linked document"
msgstr "Tranzakció összegének megjelenítése?" msgstr ""
#: gnucash/report/trep-engine.scm:961 #: gnucash/report/trep-engine.scm:961
#, fuzzy
msgid "Display a subtotal summary table." msgid "Display a subtotal summary table."
msgstr "Feltüntessem a részletösszegeket?" msgstr "Részösszegek összefoglaló táblázatának megjelenítése."
#: gnucash/report/trep-engine.scm:969 #: gnucash/report/trep-engine.scm:969
#, fuzzy #, fuzzy