From a9d85e8f8ea8ffb75bdf0927fa263fd01d9308be Mon Sep 17 00:00:00 2001 From: Christian Gruber Date: Tue, 2 Jun 2020 08:16:50 +0200 Subject: [PATCH 001/167] Use std::vector of const char* instead of std::string where meaningful This avoids additional string allocation --- gnucash/import-export/test/gtest-import-backend.cpp | 2 +- libgnucash/engine/mocks/gmock-Account.cpp | 4 ++-- libgnucash/engine/mocks/gmock-Account.h | 4 ++-- 3 files changed, 5 insertions(+), 5 deletions(-) diff --git a/gnucash/import-export/test/gtest-import-backend.cpp b/gnucash/import-export/test/gtest-import-backend.cpp index eedcfba924..0f67ee9095 100644 --- a/gnucash/import-export/test/gtest-import-backend.cpp +++ b/gnucash/import-export/test/gtest-import-backend.cpp @@ -248,7 +248,7 @@ TEST_F(ImportBackendBayesTest, CreateTransInfo) // check tokens created from transaction EXPECT_CALL(imap, findAccountBayes(AllOf( - Each(Not(IsEmpty())), // tokens must not be empty strings + Each(Not(StrEq(""))), // tokens must not be empty strings Each(Not(HasSubstr(" "))), // tokens must not contain separator Not(HasDuplicates()), // tokens must be unique Contains(StrEq(local_day_of_week)), // tokens must contain local day of week diff --git a/libgnucash/engine/mocks/gmock-Account.cpp b/libgnucash/engine/mocks/gmock-Account.cpp index 5152d88662..2e5f370606 100644 --- a/libgnucash/engine/mocks/gmock-Account.cpp +++ b/libgnucash/engine/mocks/gmock-Account.cpp @@ -85,7 +85,7 @@ gnc_account_imap_find_account_bayes ( GList *tokens) { // \todo use std::list instead of std::vector, since GList is a double-linked list like std::list - std::vector tokenVec; + std::vector tokenVec; for (auto token = tokens; token; token = token->next) { @@ -102,7 +102,7 @@ gnc_account_imap_add_account_bayes ( Account *acc) { // \todo use std::list instead of std::vector, since GList is a double-linked list like std::list - std::vector tokenVec; + std::vector tokenVec; for (auto token = tokens; token; token = token->next) { diff --git a/libgnucash/engine/mocks/gmock-Account.h b/libgnucash/engine/mocks/gmock-Account.h index 2a39efe6fa..ee00366043 100644 --- a/libgnucash/engine/mocks/gmock-Account.h +++ b/libgnucash/engine/mocks/gmock-Account.h @@ -62,8 +62,8 @@ public: MOCK_METHOD2(findAccount, Account *(const char*, const char*)); MOCK_METHOD3(addAccount, void(const char*, const char*, Account*)); - MOCK_METHOD1(findAccountBayes, Account *(std::vector)); - MOCK_METHOD2(addAccountBayes, void(std::vector, Account*)); + MOCK_METHOD1(findAccountBayes, Account *(std::vector)); + MOCK_METHOD2(addAccountBayes, void(std::vector, Account*)); }; #endif From 67f63053fbae56029a71d8010fed83dc3623f4ff Mon Sep 17 00:00:00 2001 From: Christian Gruber Date: Wed, 3 Jun 2020 23:26:49 +0200 Subject: [PATCH 002/167] Remove todo comments on replacement of std::vector by std::list Replacing std::vector by std::list wouldn't have any advantage --- libgnucash/engine/mocks/gmock-Account.cpp | 2 -- 1 file changed, 2 deletions(-) diff --git a/libgnucash/engine/mocks/gmock-Account.cpp b/libgnucash/engine/mocks/gmock-Account.cpp index 2e5f370606..5763284c41 100644 --- a/libgnucash/engine/mocks/gmock-Account.cpp +++ b/libgnucash/engine/mocks/gmock-Account.cpp @@ -84,7 +84,6 @@ gnc_account_imap_find_account_bayes ( GncImportMatchMap *imap, GList *tokens) { - // \todo use std::list instead of std::vector, since GList is a double-linked list like std::list std::vector tokenVec; for (auto token = tokens; token; token = token->next) @@ -101,7 +100,6 @@ gnc_account_imap_add_account_bayes ( GList *tokens, Account *acc) { - // \todo use std::list instead of std::vector, since GList is a double-linked list like std::list std::vector tokenVec; for (auto token = tokens; token; token = token->next) From d0842798917b78db777c20bf6181d2bf056a1b3a Mon Sep 17 00:00:00 2001 From: Christian Gruber Date: Wed, 3 Jun 2020 23:36:48 +0200 Subject: [PATCH 003/167] State comment on unused GObject instance init function more precisely --- libgnucash/engine/mocks/gmock-Account.cpp | 2 +- libgnucash/engine/mocks/gmock-Split.cpp | 2 +- libgnucash/engine/mocks/gmock-Transaction.cpp | 2 +- libgnucash/engine/mocks/gmock-qofbook.cpp | 2 +- 4 files changed, 4 insertions(+), 4 deletions(-) diff --git a/libgnucash/engine/mocks/gmock-Account.cpp b/libgnucash/engine/mocks/gmock-Account.cpp index 5763284c41..301d1b37fb 100644 --- a/libgnucash/engine/mocks/gmock-Account.cpp +++ b/libgnucash/engine/mocks/gmock-Account.cpp @@ -14,7 +14,7 @@ G_DEFINE_TYPE(MockAccount, gnc_mock_account, QOF_TYPE_INSTANCE); static void gnc_mock_account_init (MockAccount *inst) { - // function is unused, initialization is done in the MockAccount's constructor + // function is unused, initialization is done in the MockAccount's C++ constructor } static void diff --git a/libgnucash/engine/mocks/gmock-Split.cpp b/libgnucash/engine/mocks/gmock-Split.cpp index c6ec5ecb79..680749bf7b 100644 --- a/libgnucash/engine/mocks/gmock-Split.cpp +++ b/libgnucash/engine/mocks/gmock-Split.cpp @@ -17,7 +17,7 @@ G_DEFINE_TYPE(MockSplit, gnc_mock_split, QOF_TYPE_INSTANCE); static void gnc_mock_split_init (MockSplit *inst) { - // function is unused since it's overwritten by MockSplit's constructor anyway + // function is unused, initialization is done in the MockSplit's C++ constructor } static void diff --git a/libgnucash/engine/mocks/gmock-Transaction.cpp b/libgnucash/engine/mocks/gmock-Transaction.cpp index dd02f6ea80..b54dc6c036 100644 --- a/libgnucash/engine/mocks/gmock-Transaction.cpp +++ b/libgnucash/engine/mocks/gmock-Transaction.cpp @@ -15,7 +15,7 @@ G_DEFINE_TYPE(MockTransaction, gnc_mock_transaction, QOF_TYPE_INSTANCE); static void gnc_mock_transaction_init (MockTransaction *inst) { - // function is unused, initialization is done in the MockTransaction's constructor + // function is unused, initialization is done in the MockTransaction's C++ constructor } static void diff --git a/libgnucash/engine/mocks/gmock-qofbook.cpp b/libgnucash/engine/mocks/gmock-qofbook.cpp index 7c3c6d7c7b..ee83a518f0 100644 --- a/libgnucash/engine/mocks/gmock-qofbook.cpp +++ b/libgnucash/engine/mocks/gmock-qofbook.cpp @@ -11,7 +11,7 @@ G_DEFINE_TYPE(QofMockBook, qof_mock_book, QOF_TYPE_INSTANCE); static void qof_mock_book_init (QofMockBook *inst) { - // function is unused, initialization is done in the QofMockBook's constructor + // function is unused, initialization is done in the QofMockBook's C++ constructor } static void From 967cf0b4304ad1412fbc3970a4dbac68a15356c5 Mon Sep 17 00:00:00 2001 From: Christian Gruber Date: Wed, 3 Jun 2020 23:41:04 +0200 Subject: [PATCH 004/167] Pass std::vector arguments by reference instead of by value --- libgnucash/engine/mocks/gmock-Account.h | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/libgnucash/engine/mocks/gmock-Account.h b/libgnucash/engine/mocks/gmock-Account.h index ee00366043..271dac16ce 100644 --- a/libgnucash/engine/mocks/gmock-Account.h +++ b/libgnucash/engine/mocks/gmock-Account.h @@ -62,8 +62,8 @@ public: MOCK_METHOD2(findAccount, Account *(const char*, const char*)); MOCK_METHOD3(addAccount, void(const char*, const char*, Account*)); - MOCK_METHOD1(findAccountBayes, Account *(std::vector)); - MOCK_METHOD2(addAccountBayes, void(std::vector, Account*)); + MOCK_METHOD1(findAccountBayes, Account *(std::vector&)); + MOCK_METHOD2(addAccountBayes, void(std::vector&, Account*)); }; #endif From bb0088c43c79fbf3c5a8763f66d0b44a491f774f Mon Sep 17 00:00:00 2001 From: Christian Gruber Date: Sun, 7 Jun 2020 22:50:56 +0200 Subject: [PATCH 005/167] Replace g_return_if_fail() and g_return_val_if_fail() by ASSERT_TRUE and EXPECT_TRUE --- libgnucash/engine/mocks/gmock-Account.cpp | 25 ++++-- libgnucash/engine/mocks/gmock-Split.cpp | 86 +++++++++++++------ libgnucash/engine/mocks/gmock-Transaction.cpp | 70 ++++++++++----- libgnucash/engine/mocks/gmock-qofinstance.cpp | 6 +- libgnucash/engine/mocks/gmock-qofquery.cpp | 2 +- 5 files changed, 127 insertions(+), 62 deletions(-) diff --git a/libgnucash/engine/mocks/gmock-Account.cpp b/libgnucash/engine/mocks/gmock-Account.cpp index 301d1b37fb..02afcd37c8 100644 --- a/libgnucash/engine/mocks/gmock-Account.cpp +++ b/libgnucash/engine/mocks/gmock-Account.cpp @@ -26,37 +26,46 @@ gnc_mock_account_class_init(MockAccountClass *klass) void xaccAccountBeginEdit (Account *account) { - g_return_if_fail(GNC_IS_MOCK_ACCOUNT(account)); + ASSERT_TRUE(GNC_IS_MOCK_ACCOUNT(account)); ((MockAccount*)account)->beginEdit(); } void xaccAccountCommitEdit (Account *account) { - g_return_if_fail(GNC_IS_MOCK_ACCOUNT(account)); + ASSERT_TRUE(GNC_IS_MOCK_ACCOUNT(account)); ((MockAccount*)account)->commitEdit(); } QofBook * gnc_account_get_book(const Account *account) { - g_return_val_if_fail(GNC_IS_MOCK_ACCOUNT(account), NULL); - return ((MockAccount*)account)->getBook(); + EXPECT_TRUE(GNC_IS_MOCK_ACCOUNT(account)); + if (GNC_IS_MOCK_ACCOUNT(account)) + return ((MockAccount*)account)->getBook(); + else + return nullptr; } gint xaccAccountForEachTransaction(const Account *acc, TransactionCallback proc, void *data) { - g_return_val_if_fail(GNC_IS_MOCK_ACCOUNT(acc), 0); - return ((MockAccount*)acc)->forEachTransaction(proc, data); + EXPECT_TRUE(GNC_IS_MOCK_ACCOUNT(acc)); + if (GNC_IS_MOCK_ACCOUNT(acc)) + return ((MockAccount*)acc)->forEachTransaction(proc, data); + else + return 0; } GncImportMatchMap * gnc_account_imap_create_imap (Account *acc) { - g_return_val_if_fail(GNC_IS_MOCK_ACCOUNT(acc), NULL); - return ((MockAccount*)acc)->imapCreateImap(); + EXPECT_TRUE(GNC_IS_MOCK_ACCOUNT(acc)); + if (GNC_IS_MOCK_ACCOUNT(acc)) + return ((MockAccount*)acc)->imapCreateImap(); + else + return nullptr; } Account* diff --git a/libgnucash/engine/mocks/gmock-Split.cpp b/libgnucash/engine/mocks/gmock-Split.cpp index 680749bf7b..7f1f14903a 100644 --- a/libgnucash/engine/mocks/gmock-Split.cpp +++ b/libgnucash/engine/mocks/gmock-Split.cpp @@ -30,113 +30,143 @@ gnc_mock_split_class_init (MockSplitClass *klass) Split * xaccMallocSplit (QofBook *book) { - g_return_val_if_fail(QOF_IS_MOCK_BOOK(book), NULL); - return ((QofMockBook*)book)->mallocSplit(); + EXPECT_TRUE(QOF_IS_MOCK_BOOK(book)); + if (QOF_IS_MOCK_BOOK(book)) + return ((QofMockBook*)book)->mallocSplit(); + else + return nullptr; } QofBook * xaccSplitGetBook (const Split *split) { - g_return_val_if_fail(GNC_IS_MOCK_SPLIT(split), NULL); - return ((MockSplit*)split)->getBook(); + EXPECT_TRUE(GNC_IS_MOCK_SPLIT(split)); + if (GNC_IS_MOCK_SPLIT(split)) + return ((MockSplit*)split)->getBook(); + else + return nullptr; } Account * xaccSplitGetAccount (const Split *split) { - g_return_val_if_fail(GNC_IS_MOCK_SPLIT(split), NULL); - return ((MockSplit*)split)->getAccount(); + EXPECT_TRUE(GNC_IS_MOCK_SPLIT(split)); + if (GNC_IS_MOCK_SPLIT(split)) + return ((MockSplit*)split)->getAccount(); + else + return nullptr; } void xaccSplitSetAccount (Split *split, Account *acc) { - g_return_if_fail(GNC_IS_MOCK_SPLIT(split)); - g_return_if_fail(GNC_IS_MOCK_ACCOUNT(acc)); + ASSERT_TRUE(GNC_IS_MOCK_SPLIT(split)); + ASSERT_TRUE(GNC_IS_MOCK_ACCOUNT(acc)); ((MockSplit*)split)->setAccount(acc); } gnc_numeric xaccSplitGetAmount (const Split *split) { - g_return_val_if_fail(GNC_IS_MOCK_SPLIT(split), gnc_numeric_zero()); - return ((MockSplit*)split)->getAmount(); + EXPECT_TRUE(GNC_IS_MOCK_SPLIT(split)); + if (GNC_IS_MOCK_SPLIT(split)) + return ((MockSplit*)split)->getAmount(); + else + return gnc_numeric_zero(); } void xaccSplitSetAmount (Split *split, gnc_numeric amt) { - g_return_if_fail(GNC_IS_MOCK_SPLIT(split)); + ASSERT_TRUE(GNC_IS_MOCK_SPLIT(split)); ((MockSplit*)split)->setAmount(amt); } gnc_numeric xaccSplitGetValue (const Split *split) { - g_return_val_if_fail(GNC_IS_MOCK_SPLIT(split), gnc_numeric_zero()); - return ((MockSplit*)split)->getValue(); + EXPECT_TRUE(GNC_IS_MOCK_SPLIT(split)); + if (GNC_IS_MOCK_SPLIT(split)) + return ((MockSplit*)split)->getValue(); + else + return gnc_numeric_zero(); } void xaccSplitSetValue (Split *split, gnc_numeric val) { - g_return_if_fail(GNC_IS_MOCK_SPLIT(split)); + ASSERT_TRUE(GNC_IS_MOCK_SPLIT(split)); ((MockSplit*)split)->setValue(val); } const char * xaccSplitGetMemo (const Split *split) { - g_return_val_if_fail(GNC_IS_MOCK_SPLIT(split), NULL); - return ((MockSplit*)split)->getMemo(); + EXPECT_TRUE(GNC_IS_MOCK_SPLIT(split)); + if (GNC_IS_MOCK_SPLIT(split)) + return ((MockSplit*)split)->getMemo(); + else + return nullptr; } char xaccSplitGetReconcile (const Split *split) { - g_return_val_if_fail(GNC_IS_MOCK_SPLIT(split), VREC); - return ((MockSplit*)split)->getReconcile(); + EXPECT_TRUE(GNC_IS_MOCK_SPLIT(split)); + if (GNC_IS_MOCK_SPLIT(split)) + return ((MockSplit*)split)->getReconcile(); + else + return VREC; } void xaccSplitSetReconcile (Split *split, char recn) { - g_return_if_fail(GNC_IS_MOCK_SPLIT(split)); + ASSERT_TRUE(GNC_IS_MOCK_SPLIT(split)); ((MockSplit*)split)->setReconcile(recn); } void xaccSplitSetDateReconciledSecs (Split *split, time64 secs) { - g_return_if_fail(GNC_IS_MOCK_SPLIT(split)); + ASSERT_TRUE(GNC_IS_MOCK_SPLIT(split)); ((MockSplit*)split)->setDateReconciledSecs(secs); } const char * xaccSplitGetAction (const Split *split) { - g_return_val_if_fail(GNC_IS_MOCK_SPLIT(split), NULL); - return ((MockSplit*)split)->getAction(); + EXPECT_TRUE(GNC_IS_MOCK_SPLIT(split)); + if (GNC_IS_MOCK_SPLIT(split)) + return ((MockSplit*)split)->getAction(); + else + return nullptr; } Split * xaccSplitGetOtherSplit (const Split *split) { - g_return_val_if_fail(GNC_IS_MOCK_SPLIT(split), NULL); - return ((MockSplit*)split)->getOtherSplit(); + EXPECT_TRUE(GNC_IS_MOCK_SPLIT(split)); + if (GNC_IS_MOCK_SPLIT(split)) + return ((MockSplit*)split)->getOtherSplit(); + else + return nullptr; } Transaction * xaccSplitGetParent (const Split *split) { - g_return_val_if_fail(GNC_IS_MOCK_SPLIT(split), NULL); - return ((MockSplit*)split)->getParent(); + EXPECT_TRUE(GNC_IS_MOCK_SPLIT(split)); + if (GNC_IS_MOCK_SPLIT(split)) + return ((MockSplit*)split)->getParent(); + else + return nullptr; } void xaccSplitSetParent(Split *split, Transaction *trans) { - g_return_if_fail(GNC_IS_MOCK_SPLIT(split)); - g_return_if_fail(GNC_IS_MOCK_TRANSACTION(trans)); + ASSERT_TRUE(GNC_IS_MOCK_SPLIT(split)); + ASSERT_TRUE(GNC_IS_MOCK_TRANSACTION(trans)); ((MockSplit*)split)->setParent(trans); } diff --git a/libgnucash/engine/mocks/gmock-Transaction.cpp b/libgnucash/engine/mocks/gmock-Transaction.cpp index b54dc6c036..723ebb6146 100644 --- a/libgnucash/engine/mocks/gmock-Transaction.cpp +++ b/libgnucash/engine/mocks/gmock-Transaction.cpp @@ -28,98 +28,122 @@ gnc_mock_transaction_class_init(MockTransactionClass *klass) void xaccTransBeginEdit (Transaction *trans) { - g_return_if_fail(GNC_IS_MOCK_TRANSACTION(trans)); + ASSERT_TRUE(GNC_IS_MOCK_TRANSACTION(trans)); ((MockTransaction*)trans)->beginEdit(); } void xaccTransCommitEdit (Transaction *trans) { - g_return_if_fail(GNC_IS_MOCK_TRANSACTION(trans)); + ASSERT_TRUE(GNC_IS_MOCK_TRANSACTION(trans)); ((MockTransaction*)trans)->commitEdit(); } Split * xaccTransGetSplit (const Transaction *trans, int i) { - g_return_val_if_fail(GNC_IS_MOCK_TRANSACTION(trans), NULL); - return ((MockTransaction*)trans)->getSplit(i); + EXPECT_TRUE(GNC_IS_MOCK_TRANSACTION(trans)); + if (GNC_IS_MOCK_TRANSACTION(trans)) + return ((MockTransaction*)trans)->getSplit(i); + else + return nullptr; } Split * xaccTransFindSplitByAccount(const Transaction *trans, const Account *acc) { - g_return_val_if_fail(GNC_IS_MOCK_TRANSACTION(trans), NULL); - g_return_val_if_fail(GNC_IS_MOCK_ACCOUNT(acc), NULL); - return ((MockTransaction*)trans)->findSplitByAccount(acc); + EXPECT_TRUE(GNC_IS_MOCK_TRANSACTION(trans)); + EXPECT_TRUE(GNC_IS_MOCK_ACCOUNT(acc)); + if (GNC_IS_MOCK_TRANSACTION(trans)) + return ((MockTransaction*)trans)->findSplitByAccount(acc); + else + return nullptr; } time64 xaccTransGetDate (const Transaction *trans) { - g_return_val_if_fail(GNC_IS_MOCK_TRANSACTION(trans), 0); - return ((MockTransaction*)trans)->getDate(); + EXPECT_TRUE(GNC_IS_MOCK_TRANSACTION(trans)); + if (GNC_IS_MOCK_TRANSACTION(trans)) + return ((MockTransaction*)trans)->getDate(); + else + return 0; } void xaccTransSetDatePostedSecsNormalized (Transaction *trans, time64 time) { - g_return_if_fail(GNC_IS_MOCK_TRANSACTION(trans)); + ASSERT_TRUE(GNC_IS_MOCK_TRANSACTION(trans)); ((MockTransaction*)trans)->setDatePostedSecsNormalized(time); } const char * xaccTransGetDescription (const Transaction *trans) { - g_return_val_if_fail(GNC_IS_MOCK_TRANSACTION(trans), NULL); - return ((MockTransaction*)trans)->getDescription(); + EXPECT_TRUE(GNC_IS_MOCK_TRANSACTION(trans)); + if (GNC_IS_MOCK_TRANSACTION(trans)) + return ((MockTransaction*)trans)->getDescription(); + else + return nullptr; } void xaccTransSetDescription (Transaction *trans, const char *desc) { - g_return_if_fail(GNC_IS_MOCK_TRANSACTION(trans)); + ASSERT_TRUE(GNC_IS_MOCK_TRANSACTION(trans)); ((MockTransaction*)trans)->setDescription(desc); } const char * xaccTransGetNotes (const Transaction *trans) { - g_return_val_if_fail(GNC_IS_MOCK_TRANSACTION(trans), NULL); - return ((MockTransaction*)trans)->getNotes(); + EXPECT_TRUE(GNC_IS_MOCK_TRANSACTION(trans)); + if (GNC_IS_MOCK_TRANSACTION(trans)) + return ((MockTransaction*)trans)->getNotes(); + else + return nullptr; } void xaccTransSetNotes (Transaction *trans, const char *notes) { - g_return_if_fail(GNC_IS_MOCK_TRANSACTION(trans)); + ASSERT_TRUE(GNC_IS_MOCK_TRANSACTION(trans)); ((MockTransaction*)trans)->setDescription(notes); } gnc_numeric xaccTransGetImbalanceValue (const Transaction * trans) { - g_return_val_if_fail(GNC_IS_MOCK_TRANSACTION(trans), gnc_numeric_zero()); - return ((MockTransaction*)trans)->getImbalanceValue(); + EXPECT_TRUE(GNC_IS_MOCK_TRANSACTION(trans)); + if (GNC_IS_MOCK_TRANSACTION(trans)) + return ((MockTransaction*)trans)->getImbalanceValue(); + else + return gnc_numeric_zero(); } const char * xaccTransGetNum (const Transaction *trans) { - g_return_val_if_fail(GNC_IS_MOCK_TRANSACTION(trans), NULL); - return ((MockTransaction*)trans)->getNum(); + EXPECT_TRUE(GNC_IS_MOCK_TRANSACTION(trans)); + if (GNC_IS_MOCK_TRANSACTION(trans)) + return ((MockTransaction*)trans)->getNum(); + else + return nullptr; } gboolean xaccTransIsOpen (const Transaction *trans) { - g_return_val_if_fail(GNC_IS_MOCK_TRANSACTION(trans), FALSE); - return ((MockTransaction*)trans)->isOpen(); + EXPECT_TRUE(GNC_IS_MOCK_TRANSACTION(trans)); + if (GNC_IS_MOCK_TRANSACTION(trans)) + return ((MockTransaction*)trans)->isOpen(); + else + return FALSE; } void xaccTransDestroy (Transaction *trans) { - g_return_if_fail(GNC_IS_MOCK_TRANSACTION(trans)); + ASSERT_TRUE(GNC_IS_MOCK_TRANSACTION(trans)); ((MockTransaction*)trans)->destroy(); } diff --git a/libgnucash/engine/mocks/gmock-qofinstance.cpp b/libgnucash/engine/mocks/gmock-qofinstance.cpp index 9669ef4af9..272f6a32ad 100644 --- a/libgnucash/engine/mocks/gmock-qofinstance.cpp +++ b/libgnucash/engine/mocks/gmock-qofinstance.cpp @@ -1,5 +1,7 @@ #include +#include + extern "C" { #include @@ -26,7 +28,7 @@ void qof_instance_get (const QofInstance *inst, const gchar *first_prop, ...) { va_list ap; - g_return_if_fail (QOF_IS_INSTANCE (inst)); + ASSERT_TRUE (QOF_IS_INSTANCE (inst)); va_start (ap, first_prop); g_object_get_valist (G_OBJECT (inst), first_prop, ap); @@ -39,7 +41,7 @@ void qof_instance_set (QofInstance *inst, const gchar *first_prop, ...) { va_list ap; - g_return_if_fail (QOF_IS_INSTANCE (inst)); + ASSERT_TRUE (QOF_IS_INSTANCE (inst)); va_start (ap, first_prop); g_object_set_valist (G_OBJECT (inst), first_prop, ap); diff --git a/libgnucash/engine/mocks/gmock-qofquery.cpp b/libgnucash/engine/mocks/gmock-qofquery.cpp index 65a545f14b..f2991807e7 100644 --- a/libgnucash/engine/mocks/gmock-qofquery.cpp +++ b/libgnucash/engine/mocks/gmock-qofquery.cpp @@ -23,7 +23,7 @@ qof_query_create_for (QofIdTypeConst obj_type) void qof_query_set_book (QofQuery *query, QofBook *book) { - g_return_if_fail(QOF_IS_MOCK_BOOK(book)); + ASSERT_TRUE(QOF_IS_MOCK_BOOK(book)); ((QofMockQuery*)query)->setBook(book); } From 53c294f9e83295ccd2d9294aaba9b46e22010967 Mon Sep 17 00:00:00 2001 From: Christian Gruber Date: Sun, 7 Jun 2020 22:52:19 +0200 Subject: [PATCH 006/167] Remove unnecessary type check --- libgnucash/engine/mocks/gmock-Account.h | 2 -- 1 file changed, 2 deletions(-) diff --git a/libgnucash/engine/mocks/gmock-Account.h b/libgnucash/engine/mocks/gmock-Account.h index 271dac16ce..0783bb46aa 100644 --- a/libgnucash/engine/mocks/gmock-Account.h +++ b/libgnucash/engine/mocks/gmock-Account.h @@ -54,8 +54,6 @@ class GncMockImportMatchMap : public GncImportMatchMap public: GncMockImportMatchMap(MockAccount* account) { - g_return_if_fail(GNC_IS_MOCK_ACCOUNT(account)); - acc = account; book = account->getBook(); }; From 610bbda23f19e4ae3a20796c30f907a4275e84e8 Mon Sep 17 00:00:00 2001 From: Christian Gruber Date: Sun, 7 Jun 2020 22:52:24 +0200 Subject: [PATCH 007/167] Add glib-object.h to includes --- libgnucash/engine/mocks/gmock-gobject.h | 1 + 1 file changed, 1 insertion(+) diff --git a/libgnucash/engine/mocks/gmock-gobject.h b/libgnucash/engine/mocks/gmock-gobject.h index fa09c8dcf0..e09898f7d5 100644 --- a/libgnucash/engine/mocks/gmock-gobject.h +++ b/libgnucash/engine/mocks/gmock-gobject.h @@ -2,6 +2,7 @@ #define GMOCK_GOBJECT_H #include +#include static gpointer mock_g_object_new (GType object_type, const gchar *first_property_name, size_t size) From 8ac640d5fab740d4f99866c87bc6a7f08dd71c41 Mon Sep 17 00:00:00 2001 From: Christian Gruber Date: Sun, 7 Jun 2020 22:53:18 +0200 Subject: [PATCH 008/167] Fix typo --- libgnucash/engine/mocks/gmock-qofinstance.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/libgnucash/engine/mocks/gmock-qofinstance.cpp b/libgnucash/engine/mocks/gmock-qofinstance.cpp index 272f6a32ad..eb6f8aeb56 100644 --- a/libgnucash/engine/mocks/gmock-qofinstance.cpp +++ b/libgnucash/engine/mocks/gmock-qofinstance.cpp @@ -36,7 +36,7 @@ qof_instance_get (const QofInstance *inst, const gchar *first_prop, ...) } // This is a reimplementation of the function from qofinstance.cpp -// with calling qof_instance_set_dirty() +// without calling qof_instance_set_dirty() void qof_instance_set (QofInstance *inst, const gchar *first_prop, ...) { From 766f88c02d6b8837fdf09d0b8660da6251cf68a3 Mon Sep 17 00:00:00 2001 From: Christian Gruber Date: Wed, 10 Jun 2020 21:47:50 +0200 Subject: [PATCH 009/167] Replace singleton class MockPrefsBackend by an ordinary class --- .../test/gtest-import-backend.cpp | 7 ++-- .../app-utils/mocks/gmock-gnc-prefs.cpp | 22 ++++++++----- libgnucash/app-utils/mocks/gmock-gnc-prefs.h | 32 +++++-------------- 3 files changed, 25 insertions(+), 36 deletions(-) diff --git a/gnucash/import-export/test/gtest-import-backend.cpp b/gnucash/import-export/test/gtest-import-backend.cpp index 0f67ee9095..850102b02e 100644 --- a/gnucash/import-export/test/gtest-import-backend.cpp +++ b/gnucash/import-export/test/gtest-import-backend.cpp @@ -114,8 +114,7 @@ class ImportBackendTest : public testing::Test protected: void SetUp() { - m_prefs = MockPrefsBackend::getInstance(); - ASSERT_NE(m_prefs, nullptr); + gmock_gnc_prefs_set_backend(&m_prefs); m_import_acc = new MockAccount(); m_dest_acc = new MockAccount(); m_trans = new MockTransaction(); @@ -136,7 +135,7 @@ protected: m_split->free(); } - MockPrefsBackend* m_prefs; + MockPrefsBackend m_prefs; MockAccount* m_import_acc; MockAccount* m_dest_acc; MockTransaction* m_trans; @@ -196,7 +195,7 @@ protected: using namespace testing; // set bayesian import matching in preferences - ON_CALL(*m_prefs, getBool(StrEq(GNC_PREFS_GROUP_IMPORT), StrEq(GNC_PREF_USE_BAYES))) + ON_CALL(m_prefs, getBool(StrEq(GNC_PREFS_GROUP_IMPORT), StrEq(GNC_PREF_USE_BAYES))) .WillByDefault(Return(true)); } diff --git a/libgnucash/app-utils/mocks/gmock-gnc-prefs.cpp b/libgnucash/app-utils/mocks/gmock-gnc-prefs.cpp index d08dc6925f..e45b48519f 100644 --- a/libgnucash/app-utils/mocks/gmock-gnc-prefs.cpp +++ b/libgnucash/app-utils/mocks/gmock-gnc-prefs.cpp @@ -2,46 +2,52 @@ #include "gmock-gnc-prefs.h" -PrefsBackend* prefsbackend = NULL; +static MockPrefsBackend* prefsbackend = nullptr; + +void +gmock_gnc_prefs_set_backend(MockPrefsBackend *backend) +{ + prefsbackend = backend; +} gboolean gnc_prefs_get_bool (const gchar *group, const gchar *pref_name) { - return ((MockPrefsBackend*)prefsbackend)->getBool(group, pref_name); + return prefsbackend->getBool(group, pref_name); } gint gnc_prefs_get_int (const gchar *group, const gchar *pref_name) { - return ((MockPrefsBackend*)prefsbackend)->getInt(group, pref_name); + return prefsbackend->getInt(group, pref_name); } gint64 gnc_prefs_get_int64 (const gchar *group, const gchar *pref_name) { - return ((MockPrefsBackend*)prefsbackend)->getInt64(group, pref_name); + return prefsbackend->getInt64(group, pref_name); } gdouble gnc_prefs_get_float (const gchar *group, const gchar *pref_name) { - return ((MockPrefsBackend*)prefsbackend)->getFloat(group, pref_name); + return prefsbackend->getFloat(group, pref_name); } gchar * gnc_prefs_get_string (const gchar *group, const gchar *pref_name) { - return ((MockPrefsBackend*)prefsbackend)->getString(group, pref_name); + return prefsbackend->getString(group, pref_name); } gint gnc_prefs_get_enum (const gchar *group, const gchar *pref_name) { - return ((MockPrefsBackend*)prefsbackend)->getEnum(group, pref_name); + return prefsbackend->getEnum(group, pref_name); } void gnc_prefs_get_coords (const gchar *group, const gchar *pref_name, gdouble *x, gdouble *y) { - ((MockPrefsBackend*)prefsbackend)->getCoords(group, pref_name, x, y); + prefsbackend->getCoords(group, pref_name, x, y); } diff --git a/libgnucash/app-utils/mocks/gmock-gnc-prefs.h b/libgnucash/app-utils/mocks/gmock-gnc-prefs.h index 6382224cdd..7540f36714 100644 --- a/libgnucash/app-utils/mocks/gmock-gnc-prefs.h +++ b/libgnucash/app-utils/mocks/gmock-gnc-prefs.h @@ -6,31 +6,13 @@ extern "C" { #include -#include } -// mock up for PrefsBackend (singleton class) -class MockPrefsBackend : PrefsBackend +// mock up class implementing preferences backend (see struct PrefBackend in gnc-prefs-p.h) +class MockPrefsBackend { public: - MockPrefsBackend(MockPrefsBackend const&) = delete; - MockPrefsBackend& operator=(MockPrefsBackend const&) = delete; - - static MockPrefsBackend* getInstance() - { - static MockPrefsBackend prefs; // preferences object - - // register preferences object - if (prefsbackend == NULL) - prefsbackend = (PrefsBackend*)&prefs; - - // check that preferences object is correctly registered - EXPECT_EQ((MockPrefsBackend*)prefsbackend, &prefs); - - return &prefs; - } - MOCK_METHOD2(getBool, gboolean(const gchar *, const gchar *)); MOCK_METHOD2(getInt, gint(const gchar *, const gchar *)); MOCK_METHOD2(getInt64, gint64(const gchar *, const gchar *)); @@ -38,10 +20,12 @@ public: MOCK_METHOD2(getString, gchar*(const gchar *, const gchar *)); MOCK_METHOD2(getEnum, gint(const gchar *, const gchar *)); MOCK_METHOD4(getCoords, void(const gchar *, const gchar *, gdouble *, gdouble *)); - -private: - MockPrefsBackend() {} - ~MockPrefsBackend() {} }; +/** Define a preferences backend. + * + * \attention Each call to this function overwrites a previously set backend. + */ +void gmock_gnc_prefs_set_backend(MockPrefsBackend *backend); + #endif From 8425af784e1ef9c5ab62cff82f76f999b9012bb4 Mon Sep 17 00:00:00 2001 From: Christian Gruber Date: Wed, 10 Jun 2020 22:04:30 +0200 Subject: [PATCH 010/167] Check pointer to preferences backend before using it --- .../app-utils/mocks/gmock-gnc-prefs.cpp | 26 ++++++++++++++----- 1 file changed, 19 insertions(+), 7 deletions(-) diff --git a/libgnucash/app-utils/mocks/gmock-gnc-prefs.cpp b/libgnucash/app-utils/mocks/gmock-gnc-prefs.cpp index e45b48519f..0bb403874f 100644 --- a/libgnucash/app-utils/mocks/gmock-gnc-prefs.cpp +++ b/libgnucash/app-utils/mocks/gmock-gnc-prefs.cpp @@ -13,41 +13,53 @@ gmock_gnc_prefs_set_backend(MockPrefsBackend *backend) gboolean gnc_prefs_get_bool (const gchar *group, const gchar *pref_name) { - return prefsbackend->getBool(group, pref_name); + EXPECT_NE(prefsbackend, nullptr); + return prefsbackend ? prefsbackend->getBool(group, pref_name) : FALSE; } gint gnc_prefs_get_int (const gchar *group, const gchar *pref_name) { - return prefsbackend->getInt(group, pref_name); + EXPECT_NE(prefsbackend, nullptr); + return prefsbackend ? prefsbackend->getInt(group, pref_name) : 0; } gint64 gnc_prefs_get_int64 (const gchar *group, const gchar *pref_name) { - return prefsbackend->getInt64(group, pref_name); + EXPECT_NE(prefsbackend, nullptr); + return prefsbackend ? prefsbackend->getInt64(group, pref_name) : 0; } gdouble gnc_prefs_get_float (const gchar *group, const gchar *pref_name) { - return prefsbackend->getFloat(group, pref_name); + EXPECT_NE(prefsbackend, nullptr); + return prefsbackend ? prefsbackend->getFloat(group, pref_name) : 0.0; } gchar * gnc_prefs_get_string (const gchar *group, const gchar *pref_name) { - return prefsbackend->getString(group, pref_name); + EXPECT_NE(prefsbackend, nullptr); + return prefsbackend ? prefsbackend->getString(group, pref_name) : NULL; } gint gnc_prefs_get_enum (const gchar *group, const gchar *pref_name) { - return prefsbackend->getEnum(group, pref_name); + EXPECT_NE(prefsbackend, nullptr); + return prefsbackend ? prefsbackend->getEnum(group, pref_name) : 0; } void gnc_prefs_get_coords (const gchar *group, const gchar *pref_name, gdouble *x, gdouble *y) { - prefsbackend->getCoords(group, pref_name, x, y); + EXPECT_NE(prefsbackend, nullptr); + + *x = 0.0; + *y = 0.0; + + if (prefsbackend != nullptr) + prefsbackend->getCoords(group, pref_name, x, y); } From bbfc30d70b669a3e7279377c355ada8205f7fb7b Mon Sep 17 00:00:00 2001 From: Christian Gruber Date: Wed, 10 Jun 2020 22:59:02 +0200 Subject: [PATCH 011/167] Rename gmock-qofquery to fake-qofquery --- gnucash/import-export/test/CMakeLists.txt | 2 +- .../engine/mocks/{gmock-qofquery.cpp => fake-qofquery.cpp} | 2 +- libgnucash/engine/mocks/{gmock-qofquery.h => fake-qofquery.h} | 4 ++-- 3 files changed, 4 insertions(+), 4 deletions(-) rename libgnucash/engine/mocks/{gmock-qofquery.cpp => fake-qofquery.cpp} (98%) rename libgnucash/engine/mocks/{gmock-qofquery.h => fake-qofquery.h} (94%) diff --git a/gnucash/import-export/test/CMakeLists.txt b/gnucash/import-export/test/CMakeLists.txt index 93447f8ba1..7ac4fc9696 100644 --- a/gnucash/import-export/test/CMakeLists.txt +++ b/gnucash/import-export/test/CMakeLists.txt @@ -68,7 +68,7 @@ set(gtest_import_backend_SOURCES ${CMAKE_SOURCE_DIR}/libgnucash/engine/mocks/gmock-Account.cpp ${CMAKE_SOURCE_DIR}/libgnucash/engine/mocks/gmock-Transaction.cpp ${CMAKE_SOURCE_DIR}/libgnucash/engine/mocks/gmock-Split.cpp - ${CMAKE_SOURCE_DIR}/libgnucash/engine/mocks/gmock-qofquery.cpp + ${CMAKE_SOURCE_DIR}/libgnucash/engine/mocks/fake-qofquery.cpp ${CMAKE_SOURCE_DIR}/libgnucash/engine/gnc-numeric.cpp ${CMAKE_SOURCE_DIR}/libgnucash/engine/gnc-rational.cpp ${CMAKE_SOURCE_DIR}/libgnucash/engine/gnc-int128.cpp diff --git a/libgnucash/engine/mocks/gmock-qofquery.cpp b/libgnucash/engine/mocks/fake-qofquery.cpp similarity index 98% rename from libgnucash/engine/mocks/gmock-qofquery.cpp rename to libgnucash/engine/mocks/fake-qofquery.cpp index f2991807e7..178844ba8e 100644 --- a/libgnucash/engine/mocks/gmock-qofquery.cpp +++ b/libgnucash/engine/mocks/fake-qofquery.cpp @@ -1,6 +1,6 @@ #include -#include "gmock-qofquery.h" +#include "fake-qofquery.h" #include "gmock-qofbook.h" QofQuery * diff --git a/libgnucash/engine/mocks/gmock-qofquery.h b/libgnucash/engine/mocks/fake-qofquery.h similarity index 94% rename from libgnucash/engine/mocks/gmock-qofquery.h rename to libgnucash/engine/mocks/fake-qofquery.h index e019ef339a..0ab724e3c5 100644 --- a/libgnucash/engine/mocks/gmock-qofquery.h +++ b/libgnucash/engine/mocks/fake-qofquery.h @@ -1,5 +1,5 @@ -#ifndef GMOCK_QOFQUERY_H -#define GMOCK_QOFQUERY_H +#ifndef FAKE_QOFQUERY_H +#define FAKE_QOFQUERY_H #include From 841111e37e9c72099e881afe6157c99cc3e39a85 Mon Sep 17 00:00:00 2001 From: Christian Gruber Date: Wed, 10 Jun 2020 22:55:29 +0200 Subject: [PATCH 012/167] Rename class QofMockQuery to QofFakeQuery --- libgnucash/engine/mocks/fake-qofquery.cpp | 10 +++++----- libgnucash/engine/mocks/fake-qofquery.h | 10 +++++----- 2 files changed, 10 insertions(+), 10 deletions(-) diff --git a/libgnucash/engine/mocks/fake-qofquery.cpp b/libgnucash/engine/mocks/fake-qofquery.cpp index 178844ba8e..b2542a7861 100644 --- a/libgnucash/engine/mocks/fake-qofquery.cpp +++ b/libgnucash/engine/mocks/fake-qofquery.cpp @@ -24,7 +24,7 @@ void qof_query_set_book (QofQuery *query, QofBook *book) { ASSERT_TRUE(QOF_IS_MOCK_BOOK(book)); - ((QofMockQuery*)query)->setBook(book); + ((QofFakeQuery*)query)->setBook(book); } GList * @@ -33,7 +33,7 @@ qof_query_run (QofQuery *query) GList *matching_objects = NULL; // \todo use typed mock objects - auto matchingObjects = ((QofMockQuery*)query)->run(); + auto matchingObjects = ((QofFakeQuery*)query)->run(); for (auto object : matchingObjects) { @@ -52,17 +52,17 @@ xaccQueryAddDateMatchTT ( time64 ett, QofQueryOp op) { - ((QofMockQuery*)query)->addDateMatchTT(use_start, stt, use_end, ett, op); + ((QofFakeQuery*)query)->addDateMatchTT(use_start, stt, use_end, ett, op); } void xaccQueryAddSingleAccountMatch(QofQuery *query, Account *acc, QofQueryOp op) { - ((QofMockQuery*)query)->addSingleAccountMatch(acc, op); + ((QofFakeQuery*)query)->addSingleAccountMatch(acc, op); } void qof_query_destroy (QofQuery *query) { - ((QofMockQuery*)query)->destroy(); + ((QofFakeQuery*)query)->destroy(); } diff --git a/libgnucash/engine/mocks/fake-qofquery.h b/libgnucash/engine/mocks/fake-qofquery.h index 0ab724e3c5..ba851ee8c4 100644 --- a/libgnucash/engine/mocks/fake-qofquery.h +++ b/libgnucash/engine/mocks/fake-qofquery.h @@ -11,12 +11,12 @@ extern "C" #include } -// mock up for QofQuery -// hint: class QofMockQuery can not be derived from QofQuery, since struct _QofQuery is not public -class QofMockQuery +// Fake object providing functionality similar to QofQuery +// Note: QofQuery is a typedef for struct _QofQuery, which is is not public +class QofFakeQuery { public: - QofMockQuery() {}; + QofFakeQuery() {}; MOCK_METHOD1(setBook, void(QofBook*)); MOCK_METHOD0(destroy, void()); @@ -40,7 +40,7 @@ class QofQueryFactory { public: // MOCK_METHOD0(createForSplit, MockQofQueryWithType*()); - MOCK_METHOD0(create, QofMockQuery*()); + MOCK_METHOD0(create, QofFakeQuery*()); } qof_query_factory; #endif From 2639cdefdfac9dadce946b14ea7ebbfa0048fce4 Mon Sep 17 00:00:00 2001 From: Christian Gruber Date: Sun, 14 Jun 2020 21:38:22 +0200 Subject: [PATCH 013/167] Remove unnecessary inclusion of qofquery-p.h --- libgnucash/engine/mocks/fake-qofquery.h | 1 - 1 file changed, 1 deletion(-) diff --git a/libgnucash/engine/mocks/fake-qofquery.h b/libgnucash/engine/mocks/fake-qofquery.h index ba851ee8c4..6454fc33d2 100644 --- a/libgnucash/engine/mocks/fake-qofquery.h +++ b/libgnucash/engine/mocks/fake-qofquery.h @@ -4,7 +4,6 @@ #include #include -#include extern "C" { From fa82a8bcce5328c6aeb20c8fc3b57949b0548c08 Mon Sep 17 00:00:00 2001 From: Christian Gruber Date: Mon, 15 Jun 2020 22:06:08 +0200 Subject: [PATCH 014/167] Replace query factory by a query pool Query factory was implemented using a public global variable qof_query_factory. Furthermore a query pool is easier to handle than a factory, since the whole management can be hidden from the user. --- libgnucash/engine/mocks/fake-qofquery.cpp | 139 +++++++++++++++++----- libgnucash/engine/mocks/fake-qofquery.h | 21 +--- 2 files changed, 111 insertions(+), 49 deletions(-) diff --git a/libgnucash/engine/mocks/fake-qofquery.cpp b/libgnucash/engine/mocks/fake-qofquery.cpp index b2542a7861..d76685460c 100644 --- a/libgnucash/engine/mocks/fake-qofquery.cpp +++ b/libgnucash/engine/mocks/fake-qofquery.cpp @@ -1,48 +1,111 @@ #include +#include + #include "fake-qofquery.h" #include "gmock-qofbook.h" + + +/* class QofFakeQueryPool */ + +static class QofFakeQueryPool +{ +public: + void addQuery(QofFakeQuery *query) + { + m_queriesNew.push_back(query); + } + + QofFakeQuery* requestQuery() + { + QofFakeQuery* query = nullptr; + + if (!m_queriesNew.empty()) + { + query = m_queriesNew.front(); + m_queriesNew.pop_front(); + m_queriesUsed.push_back(query); + } + + EXPECT_NE(query, nullptr); + return query; + } + + bool queryUsed(QofQuery *query) + { + auto it = std::find(m_queriesUsed.begin(), m_queriesUsed.end(), (QofFakeQuery*)query); + + return (it != m_queriesUsed.end()); + } + + void releaseQuery(QofFakeQuery *query) + { + ASSERT_TRUE(query_used((QofQuery*)query)); + auto it = std::find(m_queriesUsed.begin(), m_queriesUsed.end(), query); + m_queriesUsed.erase(it); + m_queriesConsumed.push_back(*it); + } + + void removeQuery(QofFakeQuery *query) + { + ASSERT_FALSE(queryUsed((QofQuery*)query)); + auto it = std::find(m_queriesConsumed.begin(), m_queriesConsumed.end(), (QofFakeQuery*)query); + if (it != m_queriesConsumed.end()) + m_queriesConsumed.erase(it); + else + { + it = std::find(m_queriesNew.begin(), m_queriesNew.end(), (QofFakeQuery*)query); + bool query_found = (it != m_queriesNew.end()); + ASSERT_TRUE(query_found); + m_queriesNew.erase(it); + } + } + +private: + std::list m_queriesNew {}; + std::list m_queriesUsed {}; + std::list m_queriesConsumed {}; +} queryPool; + + + +/* class QofFakeQuery */ + +QofFakeQuery::QofFakeQuery() +{ + queryPool.addQuery(this); +} + +QofFakeQuery::~QofFakeQuery() +{ + queryPool.removeQuery(this); +} + + + +/* mock functions */ + QofQuery * qof_query_create_for (QofIdTypeConst obj_type) { - return (QofQuery*)qof_query_factory.create(); -/* - // \todo create typed query objects - QofQuery *ret = NULL; + return (QofQuery*)queryPool.requestQuery(); +} - if (g_strcmp0(obj_type, GNC_ID_SPLIT) == 0) - ret = (QofQuery*)qof_query_factory.createForSplit(); -// else -// FAIL(); - - return ret; -*/ +void +qof_query_destroy (QofQuery *query) +{ + queryPool.releaseQuery((QofFakeQuery*)query); } void qof_query_set_book (QofQuery *query, QofBook *book) { + ASSERT_TRUE(queryPool.queryUsed(query)); ASSERT_TRUE(QOF_IS_MOCK_BOOK(book)); ((QofFakeQuery*)query)->setBook(book); } -GList * -qof_query_run (QofQuery *query) -{ - GList *matching_objects = NULL; - - // \todo use typed mock objects - auto matchingObjects = ((QofFakeQuery*)query)->run(); - - for (auto object : matchingObjects) - { - matching_objects = g_list_append(matching_objects, static_cast(object)); - } - - return matching_objects; -} - void xaccQueryAddDateMatchTT ( QofQuery *query, @@ -52,17 +115,33 @@ xaccQueryAddDateMatchTT ( time64 ett, QofQueryOp op) { + ASSERT_TRUE(queryPool.queryUsed(query)); ((QofFakeQuery*)query)->addDateMatchTT(use_start, stt, use_end, ett, op); } void xaccQueryAddSingleAccountMatch(QofQuery *query, Account *acc, QofQueryOp op) { + ASSERT_TRUE(queryPool.queryUsed(query)); ((QofFakeQuery*)query)->addSingleAccountMatch(acc, op); } -void -qof_query_destroy (QofQuery *query) +GList * +qof_query_run (QofQuery *query) { - ((QofFakeQuery*)query)->destroy(); + GList *matching_objects = NULL; + bool query_used = queryPool.queryUsed(query); + + EXPECT_TRUE(query_used); + if (query_used) + { + auto matchingObjects = ((QofFakeQuery*)query)->run(); + + for (auto object : matchingObjects) + { + matching_objects = g_list_append(matching_objects, static_cast(object)); + } + } + + return matching_objects; } diff --git a/libgnucash/engine/mocks/fake-qofquery.h b/libgnucash/engine/mocks/fake-qofquery.h index 6454fc33d2..a695bb3e17 100644 --- a/libgnucash/engine/mocks/fake-qofquery.h +++ b/libgnucash/engine/mocks/fake-qofquery.h @@ -15,31 +15,14 @@ extern "C" class QofFakeQuery { public: - QofFakeQuery() {}; + QofFakeQuery(); + ~QofFakeQuery(); MOCK_METHOD1(setBook, void(QofBook*)); - MOCK_METHOD0(destroy, void()); MOCK_METHOD5(addDateMatchTT, void(gboolean, time64, gboolean, time64, QofQueryOp)); MOCK_METHOD2(addSingleAccountMatch, void(Account*, QofQueryOp)); MOCK_METHOD0(run, std::vector()); }; -/* -// typed mock up for QofQuery -template -class MockQofQueryWithType : MockQofQuery -{ -public: - // \todo: write constructor - MOCK_METHOD0_T(run, std::list()); -}; -*/ - -class QofQueryFactory -{ -public: -// MOCK_METHOD0(createForSplit, MockQofQueryWithType*()); - MOCK_METHOD0(create, QofFakeQuery*()); -} qof_query_factory; #endif From 1e2236afdcd216c42be4ab316470628598e830ec Mon Sep 17 00:00:00 2001 From: Christian Gruber Date: Mon, 15 Jun 2020 22:36:13 +0200 Subject: [PATCH 015/167] Use typed queries --- libgnucash/engine/mocks/fake-qofquery.cpp | 17 +++++++++++------ libgnucash/engine/mocks/fake-qofquery.h | 5 +++-- 2 files changed, 14 insertions(+), 8 deletions(-) diff --git a/libgnucash/engine/mocks/fake-qofquery.cpp b/libgnucash/engine/mocks/fake-qofquery.cpp index d76685460c..f3d2be34f3 100644 --- a/libgnucash/engine/mocks/fake-qofquery.cpp +++ b/libgnucash/engine/mocks/fake-qofquery.cpp @@ -17,14 +17,18 @@ public: m_queriesNew.push_back(query); } - QofFakeQuery* requestQuery() + QofFakeQuery* requestQuery(QofIdTypeConst obj_type) { QofFakeQuery* query = nullptr; - if (!m_queriesNew.empty()) + auto it = std::find_if(m_queriesNew.begin(), m_queriesNew.end(), + [obj_type](QofFakeQuery const* query) { + return (g_strcmp0(query->m_obj_type, obj_type) == 0); + }); + if (it != m_queriesNew.end()) { - query = m_queriesNew.front(); - m_queriesNew.pop_front(); + query = *it; + m_queriesNew.erase(it); m_queriesUsed.push_back(query); } @@ -72,7 +76,8 @@ private: /* class QofFakeQuery */ -QofFakeQuery::QofFakeQuery() +QofFakeQuery::QofFakeQuery(QofIdTypeConst obj_type) : + m_obj_type(obj_type) { queryPool.addQuery(this); } @@ -89,7 +94,7 @@ QofFakeQuery::~QofFakeQuery() QofQuery * qof_query_create_for (QofIdTypeConst obj_type) { - return (QofQuery*)queryPool.requestQuery(); + return (QofQuery*)queryPool.requestQuery(obj_type); } void diff --git a/libgnucash/engine/mocks/fake-qofquery.h b/libgnucash/engine/mocks/fake-qofquery.h index a695bb3e17..fbf914a090 100644 --- a/libgnucash/engine/mocks/fake-qofquery.h +++ b/libgnucash/engine/mocks/fake-qofquery.h @@ -15,14 +15,15 @@ extern "C" class QofFakeQuery { public: - QofFakeQuery(); + QofFakeQuery(QofIdTypeConst obj_type); ~QofFakeQuery(); MOCK_METHOD1(setBook, void(QofBook*)); MOCK_METHOD5(addDateMatchTT, void(gboolean, time64, gboolean, time64, QofQueryOp)); MOCK_METHOD2(addSingleAccountMatch, void(Account*, QofQueryOp)); MOCK_METHOD0(run, std::vector()); + + QofIdTypeConst m_obj_type; }; - #endif From af3353a1da2659fcf705bc7b430e84899c0a16f4 Mon Sep 17 00:00:00 2001 From: Christian Gruber Date: Mon, 15 Jun 2020 22:52:54 +0200 Subject: [PATCH 016/167] Correct comments on fake functions of the test application --- gnucash/import-export/test/gtest-import-backend.cpp | 11 +++++++++-- 1 file changed, 9 insertions(+), 2 deletions(-) diff --git a/gnucash/import-export/test/gtest-import-backend.cpp b/gnucash/import-export/test/gtest-import-backend.cpp index 850102b02e..c175cea994 100644 --- a/gnucash/import-export/test/gtest-import-backend.cpp +++ b/gnucash/import-export/test/gtest-import-backend.cpp @@ -43,8 +43,9 @@ testing::Environment* const env = testing::AddGlobalTestEnvironment(new TestEnvi -/* mock functions, which can not be mocked by mock classes */ +/* required fake functions from engine sources, which should not be linked to the test application */ +// fake function from qofutil.cpp gint safe_strcasecmp (const gchar * da, const gchar * db) { @@ -52,6 +53,7 @@ safe_strcasecmp (const gchar * da, const gchar * db) return g_strcmp0(da, db); } +// fake function from qoflog.cpp const char * qof_log_prettify (const char *name) { @@ -59,7 +61,8 @@ qof_log_prettify (const char *name) return name; } -// this is a slightly modified version of the function from engine-helpers.c +// fake function from engine-helpers.c +// this is a slightly modified version of the original function const char * gnc_get_num_action (const Transaction *trans, const Split *split) { @@ -79,6 +82,10 @@ gnc_get_num_action (const Transaction *trans, const Split *split) else return NULL; } + +/* required fake functions from app-utils sources, which should not be linked to the test application */ + +// fake function from gnc-ui-util.c QofBook * gnc_get_current_book (void) { From 1fa90a54298682944abfb7504a9f74bd2bfc7b64 Mon Sep 17 00:00:00 2001 From: Christian Gruber Date: Mon, 15 Jun 2020 22:53:08 +0200 Subject: [PATCH 017/167] Cleanup some comments --- libgnucash/engine/mocks/gmock-Account.cpp | 1 - 1 file changed, 1 deletion(-) diff --git a/libgnucash/engine/mocks/gmock-Account.cpp b/libgnucash/engine/mocks/gmock-Account.cpp index 02afcd37c8..d06877bb50 100644 --- a/libgnucash/engine/mocks/gmock-Account.cpp +++ b/libgnucash/engine/mocks/gmock-Account.cpp @@ -84,7 +84,6 @@ gnc_account_imap_add_account ( const char *key, Account *acc) { - // not used at the moment ((GncMockImportMatchMap*)imap)->addAccount(category, key, acc); } From 3d92d539176e80cc5630729e02a81b57fe0e39a6 Mon Sep 17 00:00:00 2001 From: Christian Gruber Date: Thu, 9 Jul 2020 21:36:01 +0200 Subject: [PATCH 018/167] Rename all class methods using snake_case instead of camelCase --- .../test/gtest-import-backend.cpp | 26 +++++++------- .../app-utils/mocks/gmock-gnc-prefs.cpp | 14 ++++---- libgnucash/app-utils/mocks/gmock-gnc-prefs.h | 14 ++++---- libgnucash/engine/mocks/fake-qofquery.cpp | 34 +++++++++---------- libgnucash/engine/mocks/fake-qofquery.h | 6 ++-- libgnucash/engine/mocks/gmock-Account.cpp | 18 +++++----- libgnucash/engine/mocks/gmock-Account.h | 20 +++++------ libgnucash/engine/mocks/gmock-Split.cpp | 32 ++++++++--------- libgnucash/engine/mocks/gmock-Split.h | 30 ++++++++-------- libgnucash/engine/mocks/gmock-Transaction.cpp | 26 +++++++------- libgnucash/engine/mocks/gmock-Transaction.h | 26 +++++++------- libgnucash/engine/mocks/gmock-qofbook.cpp | 2 +- libgnucash/engine/mocks/gmock-qofbook.h | 4 +-- 13 files changed, 126 insertions(+), 126 deletions(-) diff --git a/gnucash/import-export/test/gtest-import-backend.cpp b/gnucash/import-export/test/gtest-import-backend.cpp index c175cea994..5adb2adf9a 100644 --- a/gnucash/import-export/test/gtest-import-backend.cpp +++ b/gnucash/import-export/test/gtest-import-backend.cpp @@ -130,7 +130,7 @@ protected: using namespace testing; // define behaviour of m_import_acc - ON_CALL(*m_import_acc, getBook()) + ON_CALL(*m_import_acc, get_book()) .WillByDefault(Return(((TestEnvironment*)env)->m_book)); } @@ -164,14 +164,14 @@ TEST_F(ImportBackendTest, CreateTransInfo) //qof_instance_get (QOF_INSTANCE (split), "online-id", &online_id, NULL); // Define first split - ON_CALL(*m_trans, getSplit(0)) + ON_CALL(*m_trans, get_split(0)) .WillByDefault(Return(m_split)); // define description of the transaction - ON_CALL(*m_trans, getDescription()) + ON_CALL(*m_trans, get_description()) .WillByDefault(Return("This is the description")); // function gnc_import_TransInfo_new() should try to find account using the description from the transaction - EXPECT_CALL(imap, findAccount(_, StrEq("This is the description"))) + EXPECT_CALL(imap, find_account(_, StrEq("This is the description"))) .WillOnce(Return(m_dest_acc)); // call function to be tested @@ -182,7 +182,7 @@ TEST_F(ImportBackendTest, CreateTransInfo) EXPECT_EQ(gnc_import_TransInfo_get_destacc(trans_info), m_dest_acc); // transaction is not open anymore - ON_CALL(*m_trans, isOpen()) + ON_CALL(*m_trans, is_open()) .WillByDefault(Return(false)); // delete transaction info @@ -202,7 +202,7 @@ protected: using namespace testing; // set bayesian import matching in preferences - ON_CALL(m_prefs, getBool(StrEq(GNC_PREFS_GROUP_IMPORT), StrEq(GNC_PREF_USE_BAYES))) + ON_CALL(m_prefs, get_bool(StrEq(GNC_PREFS_GROUP_IMPORT), StrEq(GNC_PREF_USE_BAYES))) .WillByDefault(Return(true)); } @@ -232,10 +232,10 @@ TEST_F(ImportBackendBayesTest, CreateTransInfo) gnc_tm_free(tm_struct); // Define first split - ON_CALL(*m_trans, getSplit(0)) + ON_CALL(*m_trans, get_split(0)) .WillByDefault(Return(m_split)); // Transaction has no further splits - ON_CALL(*m_trans, getSplit(Gt(0))) + ON_CALL(*m_trans, get_split(Gt(0))) .WillByDefault(Return(nullptr)); // Define description and memo of first split // This transaction is used for testing tokenization of its content. @@ -244,16 +244,16 @@ TEST_F(ImportBackendBayesTest, CreateTransInfo) // * separators at the beginning and end of string // * duplicated tokens within and between description text end memo // The token separator is space. - ON_CALL(*m_trans, getDescription()) + ON_CALL(*m_trans, get_description()) .WillByDefault(Return(" test tokens within description tokens ")); - ON_CALL(*m_split, getMemo()) + ON_CALL(*m_split, get_memo()) .WillByDefault(Return(" test the memo test ")); // Define transaction date - ON_CALL(*m_trans, getDate()) + ON_CALL(*m_trans, get_date()) .WillByDefault(Return(date)); // check tokens created from transaction - EXPECT_CALL(imap, findAccountBayes(AllOf( + EXPECT_CALL(imap, find_account_bayes(AllOf( Each(Not(StrEq(""))), // tokens must not be empty strings Each(Not(HasSubstr(" "))), // tokens must not contain separator Not(HasDuplicates()), // tokens must be unique @@ -271,7 +271,7 @@ TEST_F(ImportBackendBayesTest, CreateTransInfo) EXPECT_EQ(gnc_import_TransInfo_get_destacc(trans_info), m_dest_acc); // transaction is not open anymore - ON_CALL(*m_trans, isOpen()) + ON_CALL(*m_trans, is_open()) .WillByDefault(Return(false)); // delete transaction info diff --git a/libgnucash/app-utils/mocks/gmock-gnc-prefs.cpp b/libgnucash/app-utils/mocks/gmock-gnc-prefs.cpp index 0bb403874f..d9e090068a 100644 --- a/libgnucash/app-utils/mocks/gmock-gnc-prefs.cpp +++ b/libgnucash/app-utils/mocks/gmock-gnc-prefs.cpp @@ -14,42 +14,42 @@ gboolean gnc_prefs_get_bool (const gchar *group, const gchar *pref_name) { EXPECT_NE(prefsbackend, nullptr); - return prefsbackend ? prefsbackend->getBool(group, pref_name) : FALSE; + return prefsbackend ? prefsbackend->get_bool(group, pref_name) : FALSE; } gint gnc_prefs_get_int (const gchar *group, const gchar *pref_name) { EXPECT_NE(prefsbackend, nullptr); - return prefsbackend ? prefsbackend->getInt(group, pref_name) : 0; + return prefsbackend ? prefsbackend->get_int(group, pref_name) : 0; } gint64 gnc_prefs_get_int64 (const gchar *group, const gchar *pref_name) { EXPECT_NE(prefsbackend, nullptr); - return prefsbackend ? prefsbackend->getInt64(group, pref_name) : 0; + return prefsbackend ? prefsbackend->get_int64(group, pref_name) : 0; } gdouble gnc_prefs_get_float (const gchar *group, const gchar *pref_name) { EXPECT_NE(prefsbackend, nullptr); - return prefsbackend ? prefsbackend->getFloat(group, pref_name) : 0.0; + return prefsbackend ? prefsbackend->get_float(group, pref_name) : 0.0; } gchar * gnc_prefs_get_string (const gchar *group, const gchar *pref_name) { EXPECT_NE(prefsbackend, nullptr); - return prefsbackend ? prefsbackend->getString(group, pref_name) : NULL; + return prefsbackend ? prefsbackend->get_string(group, pref_name) : NULL; } gint gnc_prefs_get_enum (const gchar *group, const gchar *pref_name) { EXPECT_NE(prefsbackend, nullptr); - return prefsbackend ? prefsbackend->getEnum(group, pref_name) : 0; + return prefsbackend ? prefsbackend->get_enum(group, pref_name) : 0; } void @@ -61,5 +61,5 @@ gnc_prefs_get_coords (const gchar *group, const gchar *pref_name, gdouble *x, gd *y = 0.0; if (prefsbackend != nullptr) - prefsbackend->getCoords(group, pref_name, x, y); + prefsbackend->get_coords(group, pref_name, x, y); } diff --git a/libgnucash/app-utils/mocks/gmock-gnc-prefs.h b/libgnucash/app-utils/mocks/gmock-gnc-prefs.h index 7540f36714..56da9e6c44 100644 --- a/libgnucash/app-utils/mocks/gmock-gnc-prefs.h +++ b/libgnucash/app-utils/mocks/gmock-gnc-prefs.h @@ -13,13 +13,13 @@ extern "C" class MockPrefsBackend { public: - MOCK_METHOD2(getBool, gboolean(const gchar *, const gchar *)); - MOCK_METHOD2(getInt, gint(const gchar *, const gchar *)); - MOCK_METHOD2(getInt64, gint64(const gchar *, const gchar *)); - MOCK_METHOD2(getFloat, gdouble(const gchar *, const gchar *)); - MOCK_METHOD2(getString, gchar*(const gchar *, const gchar *)); - MOCK_METHOD2(getEnum, gint(const gchar *, const gchar *)); - MOCK_METHOD4(getCoords, void(const gchar *, const gchar *, gdouble *, gdouble *)); + MOCK_METHOD2(get_bool, gboolean(const gchar *, const gchar *)); + MOCK_METHOD2(get_int, gint(const gchar *, const gchar *)); + MOCK_METHOD2(get_int64, gint64(const gchar *, const gchar *)); + MOCK_METHOD2(get_float, gdouble(const gchar *, const gchar *)); + MOCK_METHOD2(get_string, gchar*(const gchar *, const gchar *)); + MOCK_METHOD2(get_enum, gint(const gchar *, const gchar *)); + MOCK_METHOD4(get_coords, void(const gchar *, const gchar *, gdouble *, gdouble *)); }; /** Define a preferences backend. diff --git a/libgnucash/engine/mocks/fake-qofquery.cpp b/libgnucash/engine/mocks/fake-qofquery.cpp index f3d2be34f3..a6479040c8 100644 --- a/libgnucash/engine/mocks/fake-qofquery.cpp +++ b/libgnucash/engine/mocks/fake-qofquery.cpp @@ -12,12 +12,12 @@ static class QofFakeQueryPool { public: - void addQuery(QofFakeQuery *query) + void add_query(QofFakeQuery *query) { m_queriesNew.push_back(query); } - QofFakeQuery* requestQuery(QofIdTypeConst obj_type) + QofFakeQuery* request_query(QofIdTypeConst obj_type) { QofFakeQuery* query = nullptr; @@ -36,14 +36,14 @@ public: return query; } - bool queryUsed(QofQuery *query) + bool query_used(QofQuery *query) { auto it = std::find(m_queriesUsed.begin(), m_queriesUsed.end(), (QofFakeQuery*)query); return (it != m_queriesUsed.end()); } - void releaseQuery(QofFakeQuery *query) + void release_query(QofFakeQuery *query) { ASSERT_TRUE(query_used((QofQuery*)query)); auto it = std::find(m_queriesUsed.begin(), m_queriesUsed.end(), query); @@ -51,9 +51,9 @@ public: m_queriesConsumed.push_back(*it); } - void removeQuery(QofFakeQuery *query) + void remove_query(QofFakeQuery *query) { - ASSERT_FALSE(queryUsed((QofQuery*)query)); + ASSERT_FALSE(query_used((QofQuery*)query)); auto it = std::find(m_queriesConsumed.begin(), m_queriesConsumed.end(), (QofFakeQuery*)query); if (it != m_queriesConsumed.end()) m_queriesConsumed.erase(it); @@ -79,12 +79,12 @@ private: QofFakeQuery::QofFakeQuery(QofIdTypeConst obj_type) : m_obj_type(obj_type) { - queryPool.addQuery(this); + queryPool.add_query(this); } QofFakeQuery::~QofFakeQuery() { - queryPool.removeQuery(this); + queryPool.remove_query(this); } @@ -94,21 +94,21 @@ QofFakeQuery::~QofFakeQuery() QofQuery * qof_query_create_for (QofIdTypeConst obj_type) { - return (QofQuery*)queryPool.requestQuery(obj_type); + return (QofQuery*)queryPool.request_query(obj_type); } void qof_query_destroy (QofQuery *query) { - queryPool.releaseQuery((QofFakeQuery*)query); + queryPool.release_query((QofFakeQuery*)query); } void qof_query_set_book (QofQuery *query, QofBook *book) { - ASSERT_TRUE(queryPool.queryUsed(query)); + ASSERT_TRUE(queryPool.query_used(query)); ASSERT_TRUE(QOF_IS_MOCK_BOOK(book)); - ((QofFakeQuery*)query)->setBook(book); + ((QofFakeQuery*)query)->set_book(book); } void @@ -120,22 +120,22 @@ xaccQueryAddDateMatchTT ( time64 ett, QofQueryOp op) { - ASSERT_TRUE(queryPool.queryUsed(query)); - ((QofFakeQuery*)query)->addDateMatchTT(use_start, stt, use_end, ett, op); + ASSERT_TRUE(queryPool.query_used(query)); + ((QofFakeQuery*)query)->add_date_match_tt(use_start, stt, use_end, ett, op); } void xaccQueryAddSingleAccountMatch(QofQuery *query, Account *acc, QofQueryOp op) { - ASSERT_TRUE(queryPool.queryUsed(query)); - ((QofFakeQuery*)query)->addSingleAccountMatch(acc, op); + ASSERT_TRUE(queryPool.query_used(query)); + ((QofFakeQuery*)query)->add_single_account_match(acc, op); } GList * qof_query_run (QofQuery *query) { GList *matching_objects = NULL; - bool query_used = queryPool.queryUsed(query); + bool query_used = queryPool.query_used(query); EXPECT_TRUE(query_used); if (query_used) diff --git a/libgnucash/engine/mocks/fake-qofquery.h b/libgnucash/engine/mocks/fake-qofquery.h index fbf914a090..13a5df2bd6 100644 --- a/libgnucash/engine/mocks/fake-qofquery.h +++ b/libgnucash/engine/mocks/fake-qofquery.h @@ -18,9 +18,9 @@ public: QofFakeQuery(QofIdTypeConst obj_type); ~QofFakeQuery(); - MOCK_METHOD1(setBook, void(QofBook*)); - MOCK_METHOD5(addDateMatchTT, void(gboolean, time64, gboolean, time64, QofQueryOp)); - MOCK_METHOD2(addSingleAccountMatch, void(Account*, QofQueryOp)); + MOCK_METHOD1(set_book, void(QofBook*)); + MOCK_METHOD5(add_date_match_tt, void(gboolean, time64, gboolean, time64, QofQueryOp)); + MOCK_METHOD2(add_single_account_match, void(Account*, QofQueryOp)); MOCK_METHOD0(run, std::vector()); QofIdTypeConst m_obj_type; diff --git a/libgnucash/engine/mocks/gmock-Account.cpp b/libgnucash/engine/mocks/gmock-Account.cpp index d06877bb50..74a7a5b745 100644 --- a/libgnucash/engine/mocks/gmock-Account.cpp +++ b/libgnucash/engine/mocks/gmock-Account.cpp @@ -27,14 +27,14 @@ void xaccAccountBeginEdit (Account *account) { ASSERT_TRUE(GNC_IS_MOCK_ACCOUNT(account)); - ((MockAccount*)account)->beginEdit(); + ((MockAccount*)account)->begin_edit(); } void xaccAccountCommitEdit (Account *account) { ASSERT_TRUE(GNC_IS_MOCK_ACCOUNT(account)); - ((MockAccount*)account)->commitEdit(); + ((MockAccount*)account)->commit_edit(); } QofBook * @@ -42,7 +42,7 @@ gnc_account_get_book(const Account *account) { EXPECT_TRUE(GNC_IS_MOCK_ACCOUNT(account)); if (GNC_IS_MOCK_ACCOUNT(account)) - return ((MockAccount*)account)->getBook(); + return ((MockAccount*)account)->get_book(); else return nullptr; } @@ -53,7 +53,7 @@ xaccAccountForEachTransaction(const Account *acc, TransactionCallback proc, { EXPECT_TRUE(GNC_IS_MOCK_ACCOUNT(acc)); if (GNC_IS_MOCK_ACCOUNT(acc)) - return ((MockAccount*)acc)->forEachTransaction(proc, data); + return ((MockAccount*)acc)->for_each_transaction(proc, data); else return 0; } @@ -63,7 +63,7 @@ gnc_account_imap_create_imap (Account *acc) { EXPECT_TRUE(GNC_IS_MOCK_ACCOUNT(acc)); if (GNC_IS_MOCK_ACCOUNT(acc)) - return ((MockAccount*)acc)->imapCreateImap(); + return ((MockAccount*)acc)->create_imap(); else return nullptr; } @@ -74,7 +74,7 @@ gnc_account_imap_find_account ( const char* category, const char *key) { - return ((GncMockImportMatchMap*)imap)->findAccount(category, key); + return ((GncMockImportMatchMap*)imap)->find_account(category, key); } void @@ -84,7 +84,7 @@ gnc_account_imap_add_account ( const char *key, Account *acc) { - ((GncMockImportMatchMap*)imap)->addAccount(category, key, acc); + ((GncMockImportMatchMap*)imap)->add_account(category, key, acc); } Account* @@ -99,7 +99,7 @@ gnc_account_imap_find_account_bayes ( tokenVec.push_back(static_cast (token->data)); } - return ((GncMockImportMatchMap*)imap)->findAccountBayes(tokenVec); + return ((GncMockImportMatchMap*)imap)->find_account_bayes(tokenVec); } void @@ -115,6 +115,6 @@ gnc_account_imap_add_account_bayes ( tokenVec.push_back(static_cast (token->data)); } - ((GncMockImportMatchMap*)imap)->addAccountBayes(tokenVec, acc); + ((GncMockImportMatchMap*)imap)->add_account_bayes(tokenVec, acc); } diff --git a/libgnucash/engine/mocks/gmock-Account.h b/libgnucash/engine/mocks/gmock-Account.h index 0783bb46aa..9908b1e324 100644 --- a/libgnucash/engine/mocks/gmock-Account.h +++ b/libgnucash/engine/mocks/gmock-Account.h @@ -36,11 +36,11 @@ public: mock_g_object_unref(acc, size); } - MOCK_METHOD0(beginEdit, void()); - MOCK_METHOD0(commitEdit, void()); - MOCK_METHOD0(getBook, QofMockBook*()); - MOCK_METHOD2(forEachTransaction, gint(TransactionCallback, void*)); - MOCK_METHOD0(imapCreateImap, GncImportMatchMap*()); + MOCK_METHOD0(begin_edit, void()); + MOCK_METHOD0(commit_edit, void()); + MOCK_METHOD0(get_book, QofMockBook*()); + MOCK_METHOD2(for_each_transaction, gint(TransactionCallback, void*)); + MOCK_METHOD0(create_imap, GncImportMatchMap*()); protected: // Protect destructor to avoid MockAccount objects to be created on stack. MockAccount @@ -55,13 +55,13 @@ public: GncMockImportMatchMap(MockAccount* account) { acc = account; - book = account->getBook(); + book = account->get_book(); }; - MOCK_METHOD2(findAccount, Account *(const char*, const char*)); - MOCK_METHOD3(addAccount, void(const char*, const char*, Account*)); - MOCK_METHOD1(findAccountBayes, Account *(std::vector&)); - MOCK_METHOD2(addAccountBayes, void(std::vector&, Account*)); + MOCK_METHOD2(find_account, Account *(const char*, const char*)); + MOCK_METHOD3(add_account, void(const char*, const char*, Account*)); + MOCK_METHOD1(find_account_bayes, Account *(std::vector&)); + MOCK_METHOD2(add_account_bayes, void(std::vector&, Account*)); }; #endif diff --git a/libgnucash/engine/mocks/gmock-Split.cpp b/libgnucash/engine/mocks/gmock-Split.cpp index 7f1f14903a..7156ff4fe2 100644 --- a/libgnucash/engine/mocks/gmock-Split.cpp +++ b/libgnucash/engine/mocks/gmock-Split.cpp @@ -32,7 +32,7 @@ xaccMallocSplit (QofBook *book) { EXPECT_TRUE(QOF_IS_MOCK_BOOK(book)); if (QOF_IS_MOCK_BOOK(book)) - return ((QofMockBook*)book)->mallocSplit(); + return ((QofMockBook*)book)->malloc_split(); else return nullptr; } @@ -42,7 +42,7 @@ xaccSplitGetBook (const Split *split) { EXPECT_TRUE(GNC_IS_MOCK_SPLIT(split)); if (GNC_IS_MOCK_SPLIT(split)) - return ((MockSplit*)split)->getBook(); + return ((MockSplit*)split)->get_book(); else return nullptr; } @@ -52,7 +52,7 @@ xaccSplitGetAccount (const Split *split) { EXPECT_TRUE(GNC_IS_MOCK_SPLIT(split)); if (GNC_IS_MOCK_SPLIT(split)) - return ((MockSplit*)split)->getAccount(); + return ((MockSplit*)split)->get_account(); else return nullptr; } @@ -62,7 +62,7 @@ xaccSplitSetAccount (Split *split, Account *acc) { ASSERT_TRUE(GNC_IS_MOCK_SPLIT(split)); ASSERT_TRUE(GNC_IS_MOCK_ACCOUNT(acc)); - ((MockSplit*)split)->setAccount(acc); + ((MockSplit*)split)->set_account(acc); } gnc_numeric @@ -70,7 +70,7 @@ xaccSplitGetAmount (const Split *split) { EXPECT_TRUE(GNC_IS_MOCK_SPLIT(split)); if (GNC_IS_MOCK_SPLIT(split)) - return ((MockSplit*)split)->getAmount(); + return ((MockSplit*)split)->get_amount(); else return gnc_numeric_zero(); } @@ -79,7 +79,7 @@ void xaccSplitSetAmount (Split *split, gnc_numeric amt) { ASSERT_TRUE(GNC_IS_MOCK_SPLIT(split)); - ((MockSplit*)split)->setAmount(amt); + ((MockSplit*)split)->set_amount(amt); } gnc_numeric @@ -87,7 +87,7 @@ xaccSplitGetValue (const Split *split) { EXPECT_TRUE(GNC_IS_MOCK_SPLIT(split)); if (GNC_IS_MOCK_SPLIT(split)) - return ((MockSplit*)split)->getValue(); + return ((MockSplit*)split)->get_value(); else return gnc_numeric_zero(); } @@ -96,7 +96,7 @@ void xaccSplitSetValue (Split *split, gnc_numeric val) { ASSERT_TRUE(GNC_IS_MOCK_SPLIT(split)); - ((MockSplit*)split)->setValue(val); + ((MockSplit*)split)->set_value(val); } const char * @@ -104,7 +104,7 @@ xaccSplitGetMemo (const Split *split) { EXPECT_TRUE(GNC_IS_MOCK_SPLIT(split)); if (GNC_IS_MOCK_SPLIT(split)) - return ((MockSplit*)split)->getMemo(); + return ((MockSplit*)split)->get_memo(); else return nullptr; } @@ -114,7 +114,7 @@ xaccSplitGetReconcile (const Split *split) { EXPECT_TRUE(GNC_IS_MOCK_SPLIT(split)); if (GNC_IS_MOCK_SPLIT(split)) - return ((MockSplit*)split)->getReconcile(); + return ((MockSplit*)split)->get_reconcile(); else return VREC; } @@ -123,14 +123,14 @@ void xaccSplitSetReconcile (Split *split, char recn) { ASSERT_TRUE(GNC_IS_MOCK_SPLIT(split)); - ((MockSplit*)split)->setReconcile(recn); + ((MockSplit*)split)->set_reconcile(recn); } void xaccSplitSetDateReconciledSecs (Split *split, time64 secs) { ASSERT_TRUE(GNC_IS_MOCK_SPLIT(split)); - ((MockSplit*)split)->setDateReconciledSecs(secs); + ((MockSplit*)split)->set_date_reconciled_secs(secs); } const char * @@ -138,7 +138,7 @@ xaccSplitGetAction (const Split *split) { EXPECT_TRUE(GNC_IS_MOCK_SPLIT(split)); if (GNC_IS_MOCK_SPLIT(split)) - return ((MockSplit*)split)->getAction(); + return ((MockSplit*)split)->get_action(); else return nullptr; } @@ -148,7 +148,7 @@ xaccSplitGetOtherSplit (const Split *split) { EXPECT_TRUE(GNC_IS_MOCK_SPLIT(split)); if (GNC_IS_MOCK_SPLIT(split)) - return ((MockSplit*)split)->getOtherSplit(); + return ((MockSplit*)split)->get_other_split(); else return nullptr; } @@ -158,7 +158,7 @@ xaccSplitGetParent (const Split *split) { EXPECT_TRUE(GNC_IS_MOCK_SPLIT(split)); if (GNC_IS_MOCK_SPLIT(split)) - return ((MockSplit*)split)->getParent(); + return ((MockSplit*)split)->get_parent(); else return nullptr; } @@ -168,5 +168,5 @@ xaccSplitSetParent(Split *split, Transaction *trans) { ASSERT_TRUE(GNC_IS_MOCK_SPLIT(split)); ASSERT_TRUE(GNC_IS_MOCK_TRANSACTION(trans)); - ((MockSplit*)split)->setParent(trans); + ((MockSplit*)split)->set_parent(trans); } diff --git a/libgnucash/engine/mocks/gmock-Split.h b/libgnucash/engine/mocks/gmock-Split.h index 569d2fce10..9ff7dfd630 100644 --- a/libgnucash/engine/mocks/gmock-Split.h +++ b/libgnucash/engine/mocks/gmock-Split.h @@ -60,21 +60,21 @@ public: } MOCK_METHOD0(init, void()); - MOCK_METHOD0(getBook, QofBook *()); - MOCK_METHOD0(getAccount, Account *()); - MOCK_METHOD1(setAccount, void(Account*)); - MOCK_METHOD0(getAmount, gnc_numeric()); - MOCK_METHOD1(setAmount, void(gnc_numeric)); - MOCK_METHOD0(getValue, gnc_numeric()); - MOCK_METHOD1(setValue, void(gnc_numeric)); - MOCK_METHOD0(getMemo, const char *()); - MOCK_METHOD0(getReconcile, char()); - MOCK_METHOD1(setReconcile, void(char)); - MOCK_METHOD1(setDateReconciledSecs, void(time64)); - MOCK_METHOD0(getAction, const char *()); - MOCK_METHOD0(getOtherSplit, Split *()); - MOCK_METHOD0(getParent, Transaction *()); - MOCK_METHOD1(setParent, void(Transaction*)); + MOCK_METHOD0(get_book, QofBook *()); + MOCK_METHOD0(get_account, Account *()); + MOCK_METHOD1(set_account, void(Account*)); + MOCK_METHOD0(get_amount, gnc_numeric()); + MOCK_METHOD1(set_amount, void(gnc_numeric)); + MOCK_METHOD0(get_value, gnc_numeric()); + MOCK_METHOD1(set_value, void(gnc_numeric)); + MOCK_METHOD0(get_memo, const char *()); + MOCK_METHOD0(get_reconcile, char()); + MOCK_METHOD1(set_reconcile, void(char)); + MOCK_METHOD1(set_date_reconciled_secs, void(time64)); + MOCK_METHOD0(get_action, const char *()); + MOCK_METHOD0(get_other_split, Split *()); + MOCK_METHOD0(get_parent, Transaction *()); + MOCK_METHOD1(set_parent, void(Transaction*)); protected: // Protect destructor to avoid MockSplit objects to be created on stack. MockSplit diff --git a/libgnucash/engine/mocks/gmock-Transaction.cpp b/libgnucash/engine/mocks/gmock-Transaction.cpp index 723ebb6146..4bb1763751 100644 --- a/libgnucash/engine/mocks/gmock-Transaction.cpp +++ b/libgnucash/engine/mocks/gmock-Transaction.cpp @@ -29,14 +29,14 @@ void xaccTransBeginEdit (Transaction *trans) { ASSERT_TRUE(GNC_IS_MOCK_TRANSACTION(trans)); - ((MockTransaction*)trans)->beginEdit(); + ((MockTransaction*)trans)->begin_edit(); } void xaccTransCommitEdit (Transaction *trans) { ASSERT_TRUE(GNC_IS_MOCK_TRANSACTION(trans)); - ((MockTransaction*)trans)->commitEdit(); + ((MockTransaction*)trans)->commit_edit(); } Split * @@ -44,7 +44,7 @@ xaccTransGetSplit (const Transaction *trans, int i) { EXPECT_TRUE(GNC_IS_MOCK_TRANSACTION(trans)); if (GNC_IS_MOCK_TRANSACTION(trans)) - return ((MockTransaction*)trans)->getSplit(i); + return ((MockTransaction*)trans)->get_split(i); else return nullptr; } @@ -55,7 +55,7 @@ xaccTransFindSplitByAccount(const Transaction *trans, const Account *acc) EXPECT_TRUE(GNC_IS_MOCK_TRANSACTION(trans)); EXPECT_TRUE(GNC_IS_MOCK_ACCOUNT(acc)); if (GNC_IS_MOCK_TRANSACTION(trans)) - return ((MockTransaction*)trans)->findSplitByAccount(acc); + return ((MockTransaction*)trans)->find_split_by_account(acc); else return nullptr; } @@ -65,7 +65,7 @@ xaccTransGetDate (const Transaction *trans) { EXPECT_TRUE(GNC_IS_MOCK_TRANSACTION(trans)); if (GNC_IS_MOCK_TRANSACTION(trans)) - return ((MockTransaction*)trans)->getDate(); + return ((MockTransaction*)trans)->get_date(); else return 0; } @@ -74,7 +74,7 @@ void xaccTransSetDatePostedSecsNormalized (Transaction *trans, time64 time) { ASSERT_TRUE(GNC_IS_MOCK_TRANSACTION(trans)); - ((MockTransaction*)trans)->setDatePostedSecsNormalized(time); + ((MockTransaction*)trans)->set_date_posted_secs_normalized(time); } const char * @@ -82,7 +82,7 @@ xaccTransGetDescription (const Transaction *trans) { EXPECT_TRUE(GNC_IS_MOCK_TRANSACTION(trans)); if (GNC_IS_MOCK_TRANSACTION(trans)) - return ((MockTransaction*)trans)->getDescription(); + return ((MockTransaction*)trans)->get_description(); else return nullptr; } @@ -91,7 +91,7 @@ void xaccTransSetDescription (Transaction *trans, const char *desc) { ASSERT_TRUE(GNC_IS_MOCK_TRANSACTION(trans)); - ((MockTransaction*)trans)->setDescription(desc); + ((MockTransaction*)trans)->set_description(desc); } const char * @@ -99,7 +99,7 @@ xaccTransGetNotes (const Transaction *trans) { EXPECT_TRUE(GNC_IS_MOCK_TRANSACTION(trans)); if (GNC_IS_MOCK_TRANSACTION(trans)) - return ((MockTransaction*)trans)->getNotes(); + return ((MockTransaction*)trans)->get_notes(); else return nullptr; } @@ -108,7 +108,7 @@ void xaccTransSetNotes (Transaction *trans, const char *notes) { ASSERT_TRUE(GNC_IS_MOCK_TRANSACTION(trans)); - ((MockTransaction*)trans)->setDescription(notes); + ((MockTransaction*)trans)->set_description(notes); } gnc_numeric @@ -116,7 +116,7 @@ xaccTransGetImbalanceValue (const Transaction * trans) { EXPECT_TRUE(GNC_IS_MOCK_TRANSACTION(trans)); if (GNC_IS_MOCK_TRANSACTION(trans)) - return ((MockTransaction*)trans)->getImbalanceValue(); + return ((MockTransaction*)trans)->get_imbalance_value(); else return gnc_numeric_zero(); } @@ -126,7 +126,7 @@ xaccTransGetNum (const Transaction *trans) { EXPECT_TRUE(GNC_IS_MOCK_TRANSACTION(trans)); if (GNC_IS_MOCK_TRANSACTION(trans)) - return ((MockTransaction*)trans)->getNum(); + return ((MockTransaction*)trans)->get_num(); else return nullptr; } @@ -136,7 +136,7 @@ xaccTransIsOpen (const Transaction *trans) { EXPECT_TRUE(GNC_IS_MOCK_TRANSACTION(trans)); if (GNC_IS_MOCK_TRANSACTION(trans)) - return ((MockTransaction*)trans)->isOpen(); + return ((MockTransaction*)trans)->is_open(); else return FALSE; } diff --git a/libgnucash/engine/mocks/gmock-Transaction.h b/libgnucash/engine/mocks/gmock-Transaction.h index 0790a7c03f..d40850ee63 100644 --- a/libgnucash/engine/mocks/gmock-Transaction.h +++ b/libgnucash/engine/mocks/gmock-Transaction.h @@ -49,19 +49,19 @@ public: mock_g_object_unref(trans, size); } - MOCK_METHOD0(beginEdit, void()); - MOCK_METHOD0(commitEdit, void()); - MOCK_METHOD1(getSplit, Split *(int)); - MOCK_METHOD1(findSplitByAccount, Split *(const Account*)); - MOCK_METHOD0(getDate, time64()); - MOCK_METHOD1(setDatePostedSecsNormalized, void(time64)); - MOCK_METHOD0(getDescription, const char *()); - MOCK_METHOD1(setDescription, void(const char*)); - MOCK_METHOD0(getNotes, const char *()); - MOCK_METHOD1(setNotes, void(const char*)); - MOCK_METHOD0(getImbalanceValue, gnc_numeric()); - MOCK_METHOD0(getNum, const char *()); - MOCK_METHOD0(isOpen, gboolean()); + MOCK_METHOD0(begin_edit, void()); + MOCK_METHOD0(commit_edit, void()); + MOCK_METHOD1(get_split, Split *(int)); + MOCK_METHOD1(find_split_by_account, Split *(const Account*)); + MOCK_METHOD0(get_date, time64()); + MOCK_METHOD1(set_date_posted_secs_normalized, void(time64)); + MOCK_METHOD0(get_description, const char *()); + MOCK_METHOD1(set_description, void(const char*)); + MOCK_METHOD0(get_notes, const char *()); + MOCK_METHOD1(set_notes, void(const char*)); + MOCK_METHOD0(get_imbalance_value, gnc_numeric()); + MOCK_METHOD0(get_num, const char *()); + MOCK_METHOD0(is_open, gboolean()); MOCK_METHOD0(destroy, void()); protected: diff --git a/libgnucash/engine/mocks/gmock-qofbook.cpp b/libgnucash/engine/mocks/gmock-qofbook.cpp index ee83a518f0..ad186f8638 100644 --- a/libgnucash/engine/mocks/gmock-qofbook.cpp +++ b/libgnucash/engine/mocks/gmock-qofbook.cpp @@ -24,6 +24,6 @@ gboolean qof_book_use_split_action_for_num_field (const QofBook *book) { g_return_val_if_fail(QOF_IS_MOCK_BOOK(book), FALSE); - return ((QofMockBook*)book)->useSplitActionForNumField(); + return ((QofMockBook*)book)->use_split_action_for_num_field(); } diff --git a/libgnucash/engine/mocks/gmock-qofbook.h b/libgnucash/engine/mocks/gmock-qofbook.h index e4d4536b3c..9b4b5cd67c 100644 --- a/libgnucash/engine/mocks/gmock-qofbook.h +++ b/libgnucash/engine/mocks/gmock-qofbook.h @@ -50,8 +50,8 @@ public: mock_g_object_unref(book, size); } - MOCK_METHOD0(mallocSplit, Split *()); - MOCK_METHOD0(useSplitActionForNumField, gboolean()); + MOCK_METHOD0(malloc_split, Split *()); + MOCK_METHOD0(use_split_action_for_num_field, gboolean()); protected: // Protect destructor to avoid MockQofBook objects to be created on stack. MockQofBook From 861a2482fe72786c3a6023b4d496fb781fb34836 Mon Sep 17 00:00:00 2001 From: Christian Gruber Date: Fri, 10 Jul 2020 23:03:01 +0200 Subject: [PATCH 019/167] Add a comment on using empty ctor for mock classes derived from GObjects --- libgnucash/engine/mocks/gmock-Account.h | 3 +++ 1 file changed, 3 insertions(+) diff --git a/libgnucash/engine/mocks/gmock-Account.h b/libgnucash/engine/mocks/gmock-Account.h index 9908b1e324..e5c6d8a940 100644 --- a/libgnucash/engine/mocks/gmock-Account.h +++ b/libgnucash/engine/mocks/gmock-Account.h @@ -20,6 +20,9 @@ GType gnc_mock_account_get_type(void); class MockAccount : public Account { public: + // note: don't use default constructor instead of empty constructor, since + // it does zero initialization, which would overwrite GObject + // initialization, which is already done in the new operator. MockAccount() {} void* operator new(size_t size) { From df6621f2b54aa488468ac64f6147572cb1f50eb4 Mon Sep 17 00:00:00 2001 From: Christian Gruber Date: Fri, 10 Jul 2020 23:50:10 +0200 Subject: [PATCH 020/167] Add doxygen documentation to QofFakeQuery and QofFakeQueryPool --- libgnucash/engine/mocks/fake-qofquery.cpp | 12 ++++++ libgnucash/engine/mocks/fake-qofquery.h | 46 ++++++++++++++++++++++- 2 files changed, 56 insertions(+), 2 deletions(-) diff --git a/libgnucash/engine/mocks/fake-qofquery.cpp b/libgnucash/engine/mocks/fake-qofquery.cpp index a6479040c8..d8eca210a7 100644 --- a/libgnucash/engine/mocks/fake-qofquery.cpp +++ b/libgnucash/engine/mocks/fake-qofquery.cpp @@ -1,3 +1,7 @@ +/** + * @file fake-qofquery.cpp +*/ + #include #include @@ -12,11 +16,14 @@ static class QofFakeQueryPool { public: + + /* Add QofFakeQuery object to the pool */ void add_query(QofFakeQuery *query) { m_queriesNew.push_back(query); } + /* Request to use a QofFakeQuery object */ QofFakeQuery* request_query(QofIdTypeConst obj_type) { QofFakeQuery* query = nullptr; @@ -36,6 +43,8 @@ public: return query; } + /* Check if a QofFakeQuery object is currently used, i.e. it has been + * requested before */ bool query_used(QofQuery *query) { auto it = std::find(m_queriesUsed.begin(), m_queriesUsed.end(), (QofFakeQuery*)query); @@ -43,6 +52,8 @@ public: return (it != m_queriesUsed.end()); } + /* Release a formerly requested QofFakeQuery object, which is not used + * anymore */ void release_query(QofFakeQuery *query) { ASSERT_TRUE(query_used((QofQuery*)query)); @@ -51,6 +62,7 @@ public: m_queriesConsumed.push_back(*it); } + /* Remove a formerly added QofFakeQueryObject from the pool */ void remove_query(QofFakeQuery *query) { ASSERT_FALSE(query_used((QofQuery*)query)); diff --git a/libgnucash/engine/mocks/fake-qofquery.h b/libgnucash/engine/mocks/fake-qofquery.h index 13a5df2bd6..803f56dbd6 100644 --- a/libgnucash/engine/mocks/fake-qofquery.h +++ b/libgnucash/engine/mocks/fake-qofquery.h @@ -1,3 +1,9 @@ +/** + * @file fake-qofquery.h + * + * @brief Mocking qof queries +*/ + #ifndef FAKE_QOFQUERY_H #define FAKE_QOFQUERY_H @@ -10,8 +16,44 @@ extern "C" #include } -// Fake object providing functionality similar to QofQuery -// Note: QofQuery is a typedef for struct _QofQuery, which is is not public +/** Fake object providing functionality similar to QofQuery + * + * @note QofQuery is a @c typedef for @c struct _QofQuery, which is not + * public. Therefore class QofFakeQuery is not derived from QofQuery. + * + * To use a QofFakeQuery object simply create it before the GnuCash code + * performs a query. Check that the QofFakeQuery object is created with the + * correct object type. Also define all expectations and return values on the + * created QofFakeQuery object before the GnuCash code performs the query. + * + * After the query is finished, the QofFakeQuery object can be destroyed. A + * QofFakeQuery object can only be used once. + * + * Internally each created QofFakeQuery object is registered at a + * QofFakeQueryPool, which provides it to the GnuCash code on request. This + * pool observes the life-cycle of each QofFakeQuery object. The following + * steps are expected to be done on each QofFakeQuery object in the + * specified order: + * -# create QofFakeQuery object (test application) + * -# call qof_query_create_for() (GnuCash code) + * -# call qof_query_run() (GnuCash code) + * -# call qof_query_destroy() (GnuCash code) + * -# destroy QofFakeQuery object (test application) + * + * The calls to qof_query_create_for(), qof_query_run() and qof_query_destroy() + * are optional, but + * - qof_query_create_for() and qof_query_destroy() have to be called in + * pairs + * - if qof_query_run() is called, qof_query_create_for() has to be called + * before as well + * + * Several GTest assertions are implemented to signal violations of the + * QofFakeQuery object life-cycle. + * + * @note If you want to check, that a certain query is run by the GnuCash code, + * then define the appropriate expectations on the QofFakeQuery object in your + * test application. + */ class QofFakeQuery { public: From 41c147a91803b93a891c9a4da1f29b1fd7d302fa Mon Sep 17 00:00:00 2001 From: Christian Gruber Date: Mon, 24 Aug 2020 23:31:08 +0200 Subject: [PATCH 021/167] Use /* ... */ for multi-line comments --- libgnucash/engine/mocks/gmock-Account.h | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/libgnucash/engine/mocks/gmock-Account.h b/libgnucash/engine/mocks/gmock-Account.h index e5c6d8a940..360a8059e5 100644 --- a/libgnucash/engine/mocks/gmock-Account.h +++ b/libgnucash/engine/mocks/gmock-Account.h @@ -20,9 +20,9 @@ GType gnc_mock_account_get_type(void); class MockAccount : public Account { public: - // note: don't use default constructor instead of empty constructor, since - // it does zero initialization, which would overwrite GObject - // initialization, which is already done in the new operator. + /* note: don't use default constructor instead of empty constructor, since + * it does zero initialization, which would overwrite GObject + * initialization, which is already done in the new operator. */ MockAccount() {} void* operator new(size_t size) { @@ -46,8 +46,8 @@ public: MOCK_METHOD0(create_imap, GncImportMatchMap*()); protected: - // Protect destructor to avoid MockAccount objects to be created on stack. MockAccount - // objects can only be dynamically created, since they are derived from GObject. + /* Protect destructor to avoid MockAccount objects to be created on stack. MockAccount + * objects can only be dynamically created, since they are derived from GObject. */ ~MockAccount() {} }; From 5408854c28aa9bb47a243eed887b4bcfdc5eb049 Mon Sep 17 00:00:00 2001 From: Christian Gruber Date: Sun, 20 Sep 2020 22:33:51 +0200 Subject: [PATCH 022/167] Rename GObject type names of mock classes According to a remark in PR #738 the lower case type name is changed. Underscores should only be used between namespace and type name and between type name and suffixes. --- libgnucash/engine/mocks/fake-qofquery.cpp | 2 +- libgnucash/engine/mocks/gmock-Account.cpp | 22 +++---- libgnucash/engine/mocks/gmock-Account.h | 8 +-- libgnucash/engine/mocks/gmock-Split.cpp | 62 +++++++++---------- libgnucash/engine/mocks/gmock-Split.h | 8 +-- libgnucash/engine/mocks/gmock-Transaction.cpp | 52 ++++++++-------- libgnucash/engine/mocks/gmock-Transaction.h | 8 +-- libgnucash/engine/mocks/gmock-qofbook.cpp | 8 +-- libgnucash/engine/mocks/gmock-qofbook.h | 8 +-- 9 files changed, 89 insertions(+), 89 deletions(-) diff --git a/libgnucash/engine/mocks/fake-qofquery.cpp b/libgnucash/engine/mocks/fake-qofquery.cpp index d8eca210a7..dc8445d4d9 100644 --- a/libgnucash/engine/mocks/fake-qofquery.cpp +++ b/libgnucash/engine/mocks/fake-qofquery.cpp @@ -119,7 +119,7 @@ void qof_query_set_book (QofQuery *query, QofBook *book) { ASSERT_TRUE(queryPool.query_used(query)); - ASSERT_TRUE(QOF_IS_MOCK_BOOK(book)); + ASSERT_TRUE(QOF_IS_MOCKBOOK(book)); ((QofFakeQuery*)query)->set_book(book); } diff --git a/libgnucash/engine/mocks/gmock-Account.cpp b/libgnucash/engine/mocks/gmock-Account.cpp index 74a7a5b745..c25b1157ff 100644 --- a/libgnucash/engine/mocks/gmock-Account.cpp +++ b/libgnucash/engine/mocks/gmock-Account.cpp @@ -9,16 +9,16 @@ struct _MockAccountClass }; typedef struct _MockAccountClass MockAccountClass; -G_DEFINE_TYPE(MockAccount, gnc_mock_account, QOF_TYPE_INSTANCE); +G_DEFINE_TYPE(MockAccount, gnc_mockaccount, QOF_TYPE_INSTANCE); static void -gnc_mock_account_init (MockAccount *inst) +gnc_mockaccount_init (MockAccount *inst) { // function is unused, initialization is done in the MockAccount's C++ constructor } static void -gnc_mock_account_class_init(MockAccountClass *klass) +gnc_mockaccount_class_init(MockAccountClass *klass) { // function is unused, class functions are defined in C++ code } @@ -26,22 +26,22 @@ gnc_mock_account_class_init(MockAccountClass *klass) void xaccAccountBeginEdit (Account *account) { - ASSERT_TRUE(GNC_IS_MOCK_ACCOUNT(account)); + ASSERT_TRUE(GNC_IS_MOCKACCOUNT(account)); ((MockAccount*)account)->begin_edit(); } void xaccAccountCommitEdit (Account *account) { - ASSERT_TRUE(GNC_IS_MOCK_ACCOUNT(account)); + ASSERT_TRUE(GNC_IS_MOCKACCOUNT(account)); ((MockAccount*)account)->commit_edit(); } QofBook * gnc_account_get_book(const Account *account) { - EXPECT_TRUE(GNC_IS_MOCK_ACCOUNT(account)); - if (GNC_IS_MOCK_ACCOUNT(account)) + EXPECT_TRUE(GNC_IS_MOCKACCOUNT(account)); + if (GNC_IS_MOCKACCOUNT(account)) return ((MockAccount*)account)->get_book(); else return nullptr; @@ -51,8 +51,8 @@ gint xaccAccountForEachTransaction(const Account *acc, TransactionCallback proc, void *data) { - EXPECT_TRUE(GNC_IS_MOCK_ACCOUNT(acc)); - if (GNC_IS_MOCK_ACCOUNT(acc)) + EXPECT_TRUE(GNC_IS_MOCKACCOUNT(acc)); + if (GNC_IS_MOCKACCOUNT(acc)) return ((MockAccount*)acc)->for_each_transaction(proc, data); else return 0; @@ -61,8 +61,8 @@ xaccAccountForEachTransaction(const Account *acc, TransactionCallback proc, GncImportMatchMap * gnc_account_imap_create_imap (Account *acc) { - EXPECT_TRUE(GNC_IS_MOCK_ACCOUNT(acc)); - if (GNC_IS_MOCK_ACCOUNT(acc)) + EXPECT_TRUE(GNC_IS_MOCKACCOUNT(acc)); + if (GNC_IS_MOCKACCOUNT(acc)) return ((MockAccount*)acc)->create_imap(); else return nullptr; diff --git a/libgnucash/engine/mocks/gmock-Account.h b/libgnucash/engine/mocks/gmock-Account.h index 360a8059e5..ac5d9931b7 100644 --- a/libgnucash/engine/mocks/gmock-Account.h +++ b/libgnucash/engine/mocks/gmock-Account.h @@ -10,10 +10,10 @@ #include "gmock-gobject.h" -GType gnc_mock_account_get_type(void); +GType gnc_mockaccount_get_type(void); -#define GNC_TYPE_MOCK_ACCOUNT (gnc_mock_account_get_type ()) -#define GNC_IS_MOCK_ACCOUNT(o) (G_TYPE_CHECK_INSTANCE_TYPE ((o), GNC_TYPE_MOCK_ACCOUNT)) +#define GNC_TYPE_MOCKACCOUNT (gnc_mockaccount_get_type ()) +#define GNC_IS_MOCKACCOUNT(o) (G_TYPE_CHECK_INSTANCE_TYPE ((o), GNC_TYPE_MOCKACCOUNT)) // mock up for Account @@ -26,7 +26,7 @@ public: MockAccount() {} void* operator new(size_t size) { - return mock_g_object_new (GNC_TYPE_MOCK_ACCOUNT, NULL, size); + return mock_g_object_new (GNC_TYPE_MOCKACCOUNT, NULL, size); } // define separate free() function since destructor is protected diff --git a/libgnucash/engine/mocks/gmock-Split.cpp b/libgnucash/engine/mocks/gmock-Split.cpp index 7156ff4fe2..d33a44a1d7 100644 --- a/libgnucash/engine/mocks/gmock-Split.cpp +++ b/libgnucash/engine/mocks/gmock-Split.cpp @@ -12,16 +12,16 @@ struct _MockSplitClass }; typedef struct _MockSplitClass MockSplitClass; -G_DEFINE_TYPE(MockSplit, gnc_mock_split, QOF_TYPE_INSTANCE); +G_DEFINE_TYPE(MockSplit, gnc_mocksplit, QOF_TYPE_INSTANCE); static void -gnc_mock_split_init (MockSplit *inst) +gnc_mocksplit_init (MockSplit *inst) { // function is unused, initialization is done in the MockSplit's C++ constructor } static void -gnc_mock_split_class_init (MockSplitClass *klass) +gnc_mocksplit_class_init (MockSplitClass *klass) { // function is unused, class functions are defined in C++ code } @@ -30,8 +30,8 @@ gnc_mock_split_class_init (MockSplitClass *klass) Split * xaccMallocSplit (QofBook *book) { - EXPECT_TRUE(QOF_IS_MOCK_BOOK(book)); - if (QOF_IS_MOCK_BOOK(book)) + EXPECT_TRUE(QOF_IS_MOCKBOOK(book)); + if (QOF_IS_MOCKBOOK(book)) return ((QofMockBook*)book)->malloc_split(); else return nullptr; @@ -40,8 +40,8 @@ xaccMallocSplit (QofBook *book) QofBook * xaccSplitGetBook (const Split *split) { - EXPECT_TRUE(GNC_IS_MOCK_SPLIT(split)); - if (GNC_IS_MOCK_SPLIT(split)) + EXPECT_TRUE(GNC_IS_MOCKSPLIT(split)); + if (GNC_IS_MOCKSPLIT(split)) return ((MockSplit*)split)->get_book(); else return nullptr; @@ -50,8 +50,8 @@ xaccSplitGetBook (const Split *split) Account * xaccSplitGetAccount (const Split *split) { - EXPECT_TRUE(GNC_IS_MOCK_SPLIT(split)); - if (GNC_IS_MOCK_SPLIT(split)) + EXPECT_TRUE(GNC_IS_MOCKSPLIT(split)); + if (GNC_IS_MOCKSPLIT(split)) return ((MockSplit*)split)->get_account(); else return nullptr; @@ -60,16 +60,16 @@ xaccSplitGetAccount (const Split *split) void xaccSplitSetAccount (Split *split, Account *acc) { - ASSERT_TRUE(GNC_IS_MOCK_SPLIT(split)); - ASSERT_TRUE(GNC_IS_MOCK_ACCOUNT(acc)); + ASSERT_TRUE(GNC_IS_MOCKSPLIT(split)); + ASSERT_TRUE(GNC_IS_MOCKACCOUNT(acc)); ((MockSplit*)split)->set_account(acc); } gnc_numeric xaccSplitGetAmount (const Split *split) { - EXPECT_TRUE(GNC_IS_MOCK_SPLIT(split)); - if (GNC_IS_MOCK_SPLIT(split)) + EXPECT_TRUE(GNC_IS_MOCKSPLIT(split)); + if (GNC_IS_MOCKSPLIT(split)) return ((MockSplit*)split)->get_amount(); else return gnc_numeric_zero(); @@ -78,15 +78,15 @@ xaccSplitGetAmount (const Split *split) void xaccSplitSetAmount (Split *split, gnc_numeric amt) { - ASSERT_TRUE(GNC_IS_MOCK_SPLIT(split)); + ASSERT_TRUE(GNC_IS_MOCKSPLIT(split)); ((MockSplit*)split)->set_amount(amt); } gnc_numeric xaccSplitGetValue (const Split *split) { - EXPECT_TRUE(GNC_IS_MOCK_SPLIT(split)); - if (GNC_IS_MOCK_SPLIT(split)) + EXPECT_TRUE(GNC_IS_MOCKSPLIT(split)); + if (GNC_IS_MOCKSPLIT(split)) return ((MockSplit*)split)->get_value(); else return gnc_numeric_zero(); @@ -95,15 +95,15 @@ xaccSplitGetValue (const Split *split) void xaccSplitSetValue (Split *split, gnc_numeric val) { - ASSERT_TRUE(GNC_IS_MOCK_SPLIT(split)); + ASSERT_TRUE(GNC_IS_MOCKSPLIT(split)); ((MockSplit*)split)->set_value(val); } const char * xaccSplitGetMemo (const Split *split) { - EXPECT_TRUE(GNC_IS_MOCK_SPLIT(split)); - if (GNC_IS_MOCK_SPLIT(split)) + EXPECT_TRUE(GNC_IS_MOCKSPLIT(split)); + if (GNC_IS_MOCKSPLIT(split)) return ((MockSplit*)split)->get_memo(); else return nullptr; @@ -112,8 +112,8 @@ xaccSplitGetMemo (const Split *split) char xaccSplitGetReconcile (const Split *split) { - EXPECT_TRUE(GNC_IS_MOCK_SPLIT(split)); - if (GNC_IS_MOCK_SPLIT(split)) + EXPECT_TRUE(GNC_IS_MOCKSPLIT(split)); + if (GNC_IS_MOCKSPLIT(split)) return ((MockSplit*)split)->get_reconcile(); else return VREC; @@ -122,22 +122,22 @@ xaccSplitGetReconcile (const Split *split) void xaccSplitSetReconcile (Split *split, char recn) { - ASSERT_TRUE(GNC_IS_MOCK_SPLIT(split)); + ASSERT_TRUE(GNC_IS_MOCKSPLIT(split)); ((MockSplit*)split)->set_reconcile(recn); } void xaccSplitSetDateReconciledSecs (Split *split, time64 secs) { - ASSERT_TRUE(GNC_IS_MOCK_SPLIT(split)); + ASSERT_TRUE(GNC_IS_MOCKSPLIT(split)); ((MockSplit*)split)->set_date_reconciled_secs(secs); } const char * xaccSplitGetAction (const Split *split) { - EXPECT_TRUE(GNC_IS_MOCK_SPLIT(split)); - if (GNC_IS_MOCK_SPLIT(split)) + EXPECT_TRUE(GNC_IS_MOCKSPLIT(split)); + if (GNC_IS_MOCKSPLIT(split)) return ((MockSplit*)split)->get_action(); else return nullptr; @@ -146,8 +146,8 @@ xaccSplitGetAction (const Split *split) Split * xaccSplitGetOtherSplit (const Split *split) { - EXPECT_TRUE(GNC_IS_MOCK_SPLIT(split)); - if (GNC_IS_MOCK_SPLIT(split)) + EXPECT_TRUE(GNC_IS_MOCKSPLIT(split)); + if (GNC_IS_MOCKSPLIT(split)) return ((MockSplit*)split)->get_other_split(); else return nullptr; @@ -156,8 +156,8 @@ xaccSplitGetOtherSplit (const Split *split) Transaction * xaccSplitGetParent (const Split *split) { - EXPECT_TRUE(GNC_IS_MOCK_SPLIT(split)); - if (GNC_IS_MOCK_SPLIT(split)) + EXPECT_TRUE(GNC_IS_MOCKSPLIT(split)); + if (GNC_IS_MOCKSPLIT(split)) return ((MockSplit*)split)->get_parent(); else return nullptr; @@ -166,7 +166,7 @@ xaccSplitGetParent (const Split *split) void xaccSplitSetParent(Split *split, Transaction *trans) { - ASSERT_TRUE(GNC_IS_MOCK_SPLIT(split)); - ASSERT_TRUE(GNC_IS_MOCK_TRANSACTION(trans)); + ASSERT_TRUE(GNC_IS_MOCKSPLIT(split)); + ASSERT_TRUE(GNC_IS_MOCKTRANSACTION(trans)); ((MockSplit*)split)->set_parent(trans); } diff --git a/libgnucash/engine/mocks/gmock-Split.h b/libgnucash/engine/mocks/gmock-Split.h index 9ff7dfd630..5fe8b29e43 100644 --- a/libgnucash/engine/mocks/gmock-Split.h +++ b/libgnucash/engine/mocks/gmock-Split.h @@ -10,10 +10,10 @@ #include "gmock-gobject.h" -GType gnc_mock_split_get_type(void); +GType gnc_mocksplit_get_type(void); -#define GNC_TYPE_MOCK_SPLIT (gnc_mock_split_get_type ()) -#define GNC_IS_MOCK_SPLIT(o) (G_TYPE_CHECK_INSTANCE_TYPE ((o), GNC_TYPE_MOCK_SPLIT)) +#define GNC_TYPE_MOCKSPLIT (gnc_mocksplit_get_type ()) +#define GNC_IS_MOCKSPLIT(o) (G_TYPE_CHECK_INSTANCE_TYPE ((o), GNC_TYPE_MOCKSPLIT)) // mock up for Split @@ -46,7 +46,7 @@ public: } void* operator new(size_t size) { - return mock_g_object_new (GNC_TYPE_MOCK_SPLIT, NULL, size); + return mock_g_object_new (GNC_TYPE_MOCKSPLIT, NULL, size); } // define separate free() function since destructor is protected diff --git a/libgnucash/engine/mocks/gmock-Transaction.cpp b/libgnucash/engine/mocks/gmock-Transaction.cpp index 4bb1763751..5310ef5266 100644 --- a/libgnucash/engine/mocks/gmock-Transaction.cpp +++ b/libgnucash/engine/mocks/gmock-Transaction.cpp @@ -10,16 +10,16 @@ struct _MockTransactionClass }; typedef struct _MockTransactionClass MockTransactionClass; -G_DEFINE_TYPE(MockTransaction, gnc_mock_transaction, QOF_TYPE_INSTANCE); +G_DEFINE_TYPE(MockTransaction, gnc_mocktransaction, QOF_TYPE_INSTANCE); static void -gnc_mock_transaction_init (MockTransaction *inst) +gnc_mocktransaction_init (MockTransaction *inst) { // function is unused, initialization is done in the MockTransaction's C++ constructor } static void -gnc_mock_transaction_class_init(MockTransactionClass *klass) +gnc_mocktransaction_class_init(MockTransactionClass *klass) { // function is unused, class functions are defined in C++ code } @@ -28,22 +28,22 @@ gnc_mock_transaction_class_init(MockTransactionClass *klass) void xaccTransBeginEdit (Transaction *trans) { - ASSERT_TRUE(GNC_IS_MOCK_TRANSACTION(trans)); + ASSERT_TRUE(GNC_IS_MOCKTRANSACTION(trans)); ((MockTransaction*)trans)->begin_edit(); } void xaccTransCommitEdit (Transaction *trans) { - ASSERT_TRUE(GNC_IS_MOCK_TRANSACTION(trans)); + ASSERT_TRUE(GNC_IS_MOCKTRANSACTION(trans)); ((MockTransaction*)trans)->commit_edit(); } Split * xaccTransGetSplit (const Transaction *trans, int i) { - EXPECT_TRUE(GNC_IS_MOCK_TRANSACTION(trans)); - if (GNC_IS_MOCK_TRANSACTION(trans)) + EXPECT_TRUE(GNC_IS_MOCKTRANSACTION(trans)); + if (GNC_IS_MOCKTRANSACTION(trans)) return ((MockTransaction*)trans)->get_split(i); else return nullptr; @@ -52,9 +52,9 @@ xaccTransGetSplit (const Transaction *trans, int i) Split * xaccTransFindSplitByAccount(const Transaction *trans, const Account *acc) { - EXPECT_TRUE(GNC_IS_MOCK_TRANSACTION(trans)); - EXPECT_TRUE(GNC_IS_MOCK_ACCOUNT(acc)); - if (GNC_IS_MOCK_TRANSACTION(trans)) + EXPECT_TRUE(GNC_IS_MOCKTRANSACTION(trans)); + EXPECT_TRUE(GNC_IS_MOCKACCOUNT(acc)); + if (GNC_IS_MOCKTRANSACTION(trans)) return ((MockTransaction*)trans)->find_split_by_account(acc); else return nullptr; @@ -63,8 +63,8 @@ xaccTransFindSplitByAccount(const Transaction *trans, const Account *acc) time64 xaccTransGetDate (const Transaction *trans) { - EXPECT_TRUE(GNC_IS_MOCK_TRANSACTION(trans)); - if (GNC_IS_MOCK_TRANSACTION(trans)) + EXPECT_TRUE(GNC_IS_MOCKTRANSACTION(trans)); + if (GNC_IS_MOCKTRANSACTION(trans)) return ((MockTransaction*)trans)->get_date(); else return 0; @@ -73,15 +73,15 @@ xaccTransGetDate (const Transaction *trans) void xaccTransSetDatePostedSecsNormalized (Transaction *trans, time64 time) { - ASSERT_TRUE(GNC_IS_MOCK_TRANSACTION(trans)); + ASSERT_TRUE(GNC_IS_MOCKTRANSACTION(trans)); ((MockTransaction*)trans)->set_date_posted_secs_normalized(time); } const char * xaccTransGetDescription (const Transaction *trans) { - EXPECT_TRUE(GNC_IS_MOCK_TRANSACTION(trans)); - if (GNC_IS_MOCK_TRANSACTION(trans)) + EXPECT_TRUE(GNC_IS_MOCKTRANSACTION(trans)); + if (GNC_IS_MOCKTRANSACTION(trans)) return ((MockTransaction*)trans)->get_description(); else return nullptr; @@ -90,15 +90,15 @@ xaccTransGetDescription (const Transaction *trans) void xaccTransSetDescription (Transaction *trans, const char *desc) { - ASSERT_TRUE(GNC_IS_MOCK_TRANSACTION(trans)); + ASSERT_TRUE(GNC_IS_MOCKTRANSACTION(trans)); ((MockTransaction*)trans)->set_description(desc); } const char * xaccTransGetNotes (const Transaction *trans) { - EXPECT_TRUE(GNC_IS_MOCK_TRANSACTION(trans)); - if (GNC_IS_MOCK_TRANSACTION(trans)) + EXPECT_TRUE(GNC_IS_MOCKTRANSACTION(trans)); + if (GNC_IS_MOCKTRANSACTION(trans)) return ((MockTransaction*)trans)->get_notes(); else return nullptr; @@ -107,15 +107,15 @@ xaccTransGetNotes (const Transaction *trans) void xaccTransSetNotes (Transaction *trans, const char *notes) { - ASSERT_TRUE(GNC_IS_MOCK_TRANSACTION(trans)); + ASSERT_TRUE(GNC_IS_MOCKTRANSACTION(trans)); ((MockTransaction*)trans)->set_description(notes); } gnc_numeric xaccTransGetImbalanceValue (const Transaction * trans) { - EXPECT_TRUE(GNC_IS_MOCK_TRANSACTION(trans)); - if (GNC_IS_MOCK_TRANSACTION(trans)) + EXPECT_TRUE(GNC_IS_MOCKTRANSACTION(trans)); + if (GNC_IS_MOCKTRANSACTION(trans)) return ((MockTransaction*)trans)->get_imbalance_value(); else return gnc_numeric_zero(); @@ -124,8 +124,8 @@ xaccTransGetImbalanceValue (const Transaction * trans) const char * xaccTransGetNum (const Transaction *trans) { - EXPECT_TRUE(GNC_IS_MOCK_TRANSACTION(trans)); - if (GNC_IS_MOCK_TRANSACTION(trans)) + EXPECT_TRUE(GNC_IS_MOCKTRANSACTION(trans)); + if (GNC_IS_MOCKTRANSACTION(trans)) return ((MockTransaction*)trans)->get_num(); else return nullptr; @@ -134,8 +134,8 @@ xaccTransGetNum (const Transaction *trans) gboolean xaccTransIsOpen (const Transaction *trans) { - EXPECT_TRUE(GNC_IS_MOCK_TRANSACTION(trans)); - if (GNC_IS_MOCK_TRANSACTION(trans)) + EXPECT_TRUE(GNC_IS_MOCKTRANSACTION(trans)); + if (GNC_IS_MOCKTRANSACTION(trans)) return ((MockTransaction*)trans)->is_open(); else return FALSE; @@ -144,6 +144,6 @@ xaccTransIsOpen (const Transaction *trans) void xaccTransDestroy (Transaction *trans) { - ASSERT_TRUE(GNC_IS_MOCK_TRANSACTION(trans)); + ASSERT_TRUE(GNC_IS_MOCKTRANSACTION(trans)); ((MockTransaction*)trans)->destroy(); } diff --git a/libgnucash/engine/mocks/gmock-Transaction.h b/libgnucash/engine/mocks/gmock-Transaction.h index d40850ee63..50d5ac9c5b 100644 --- a/libgnucash/engine/mocks/gmock-Transaction.h +++ b/libgnucash/engine/mocks/gmock-Transaction.h @@ -10,10 +10,10 @@ #include "gmock-gobject.h" -GType gnc_mock_transaction_get_type(void); +GType gnc_mocktransaction_get_type(void); -#define GNC_TYPE_MOCK_TRANSACTION (gnc_mock_transaction_get_type ()) -#define GNC_IS_MOCK_TRANSACTION(o) (G_TYPE_CHECK_INSTANCE_TYPE ((o), GNC_TYPE_MOCK_TRANSACTION)) +#define GNC_TYPE_MOCKTRANSACTION (gnc_mocktransaction_get_type ()) +#define GNC_IS_MOCKTRANSACTION(o) (G_TYPE_CHECK_INSTANCE_TYPE ((o), GNC_TYPE_MOCKTRANSACTION)) // mock up for Transaction @@ -36,7 +36,7 @@ public: } void* operator new(size_t size) { - return mock_g_object_new (GNC_TYPE_MOCK_TRANSACTION, NULL, size); + return mock_g_object_new (GNC_TYPE_MOCKTRANSACTION, NULL, size); } // define separate free() function since destructor is protected diff --git a/libgnucash/engine/mocks/gmock-qofbook.cpp b/libgnucash/engine/mocks/gmock-qofbook.cpp index ad186f8638..72b755e693 100644 --- a/libgnucash/engine/mocks/gmock-qofbook.cpp +++ b/libgnucash/engine/mocks/gmock-qofbook.cpp @@ -6,16 +6,16 @@ struct _QofMockBookClass }; typedef struct _QofMockBookClass QofMockBookClass; -G_DEFINE_TYPE(QofMockBook, qof_mock_book, QOF_TYPE_INSTANCE); +G_DEFINE_TYPE(QofMockBook, qof_mockbook, QOF_TYPE_INSTANCE); static void -qof_mock_book_init (QofMockBook *inst) +qof_mockbook_init (QofMockBook *inst) { // function is unused, initialization is done in the QofMockBook's C++ constructor } static void -qof_mock_book_class_init(QofMockBookClass *klass) +qof_mockbook_class_init(QofMockBookClass *klass) { // function is unused, class functions are defined in C++ code } @@ -23,7 +23,7 @@ qof_mock_book_class_init(QofMockBookClass *klass) gboolean qof_book_use_split_action_for_num_field (const QofBook *book) { - g_return_val_if_fail(QOF_IS_MOCK_BOOK(book), FALSE); + g_return_val_if_fail(QOF_IS_MOCKBOOK(book), FALSE); return ((QofMockBook*)book)->use_split_action_for_num_field(); } diff --git a/libgnucash/engine/mocks/gmock-qofbook.h b/libgnucash/engine/mocks/gmock-qofbook.h index 9b4b5cd67c..c51c3c3d9c 100644 --- a/libgnucash/engine/mocks/gmock-qofbook.h +++ b/libgnucash/engine/mocks/gmock-qofbook.h @@ -10,10 +10,10 @@ #include "gmock-Split.h" -GType qof_mock_book_get_type(void); +GType qof_mockbook_get_type(void); -#define QOF_TYPE_MOCK_BOOK (qof_mock_book_get_type ()) -#define QOF_IS_MOCK_BOOK(o) (G_TYPE_CHECK_INSTANCE_TYPE ((o), QOF_TYPE_MOCK_BOOK)) +#define QOF_TYPE_MOCKBOOK (qof_mockbook_get_type ()) +#define QOF_IS_MOCKBOOK(o) (G_TYPE_CHECK_INSTANCE_TYPE ((o), QOF_TYPE_MOCKBOOK)) // mock up for QofBook @@ -37,7 +37,7 @@ public: } void* operator new(size_t size) { - return mock_g_object_new (QOF_TYPE_MOCK_BOOK, NULL, size); + return mock_g_object_new (QOF_TYPE_MOCKBOOK, NULL, size); } // define separate free() function since destructor is protected From b0906b5e2ac000255e6e9f58def36634edc93e0e Mon Sep 17 00:00:00 2001 From: Christian Gruber Date: Sun, 20 Sep 2020 23:36:34 +0200 Subject: [PATCH 023/167] Use MOCK_CONST_METHODn() macro instead of MOCK_METHODn() macro if necessary --- libgnucash/engine/mocks/gmock-Account.h | 4 ++-- libgnucash/engine/mocks/gmock-Split.h | 18 +++++++++--------- libgnucash/engine/mocks/gmock-Transaction.h | 16 ++++++++-------- libgnucash/engine/mocks/gmock-qofbook.h | 2 +- 4 files changed, 20 insertions(+), 20 deletions(-) diff --git a/libgnucash/engine/mocks/gmock-Account.h b/libgnucash/engine/mocks/gmock-Account.h index ac5d9931b7..9552301a5a 100644 --- a/libgnucash/engine/mocks/gmock-Account.h +++ b/libgnucash/engine/mocks/gmock-Account.h @@ -41,8 +41,8 @@ public: MOCK_METHOD0(begin_edit, void()); MOCK_METHOD0(commit_edit, void()); - MOCK_METHOD0(get_book, QofMockBook*()); - MOCK_METHOD2(for_each_transaction, gint(TransactionCallback, void*)); + MOCK_CONST_METHOD0(get_book, QofMockBook*()); + MOCK_CONST_METHOD2(for_each_transaction, gint(TransactionCallback, void*)); MOCK_METHOD0(create_imap, GncImportMatchMap*()); protected: diff --git a/libgnucash/engine/mocks/gmock-Split.h b/libgnucash/engine/mocks/gmock-Split.h index 5fe8b29e43..c8ed05ab47 100644 --- a/libgnucash/engine/mocks/gmock-Split.h +++ b/libgnucash/engine/mocks/gmock-Split.h @@ -60,20 +60,20 @@ public: } MOCK_METHOD0(init, void()); - MOCK_METHOD0(get_book, QofBook *()); - MOCK_METHOD0(get_account, Account *()); + MOCK_CONST_METHOD0(get_book, QofBook *()); + MOCK_CONST_METHOD0(get_account, Account *()); MOCK_METHOD1(set_account, void(Account*)); - MOCK_METHOD0(get_amount, gnc_numeric()); + MOCK_CONST_METHOD0(get_amount, gnc_numeric()); MOCK_METHOD1(set_amount, void(gnc_numeric)); - MOCK_METHOD0(get_value, gnc_numeric()); + MOCK_CONST_METHOD0(get_value, gnc_numeric()); MOCK_METHOD1(set_value, void(gnc_numeric)); - MOCK_METHOD0(get_memo, const char *()); - MOCK_METHOD0(get_reconcile, char()); + MOCK_CONST_METHOD0(get_memo, const char *()); + MOCK_CONST_METHOD0(get_reconcile, char()); MOCK_METHOD1(set_reconcile, void(char)); MOCK_METHOD1(set_date_reconciled_secs, void(time64)); - MOCK_METHOD0(get_action, const char *()); - MOCK_METHOD0(get_other_split, Split *()); - MOCK_METHOD0(get_parent, Transaction *()); + MOCK_CONST_METHOD0(get_action, const char *()); + MOCK_CONST_METHOD0(get_other_split, Split *()); + MOCK_CONST_METHOD0(get_parent, Transaction *()); MOCK_METHOD1(set_parent, void(Transaction*)); protected: diff --git a/libgnucash/engine/mocks/gmock-Transaction.h b/libgnucash/engine/mocks/gmock-Transaction.h index 50d5ac9c5b..150f168a22 100644 --- a/libgnucash/engine/mocks/gmock-Transaction.h +++ b/libgnucash/engine/mocks/gmock-Transaction.h @@ -51,17 +51,17 @@ public: MOCK_METHOD0(begin_edit, void()); MOCK_METHOD0(commit_edit, void()); - MOCK_METHOD1(get_split, Split *(int)); - MOCK_METHOD1(find_split_by_account, Split *(const Account*)); - MOCK_METHOD0(get_date, time64()); + MOCK_CONST_METHOD1(get_split, Split *(int)); + MOCK_CONST_METHOD1(find_split_by_account, Split *(const Account*)); + MOCK_CONST_METHOD0(get_date, time64()); MOCK_METHOD1(set_date_posted_secs_normalized, void(time64)); - MOCK_METHOD0(get_description, const char *()); + MOCK_CONST_METHOD0(get_description, const char *()); MOCK_METHOD1(set_description, void(const char*)); - MOCK_METHOD0(get_notes, const char *()); + MOCK_CONST_METHOD0(get_notes, const char *()); MOCK_METHOD1(set_notes, void(const char*)); - MOCK_METHOD0(get_imbalance_value, gnc_numeric()); - MOCK_METHOD0(get_num, const char *()); - MOCK_METHOD0(is_open, gboolean()); + MOCK_CONST_METHOD0(get_imbalance_value, gnc_numeric()); + MOCK_CONST_METHOD0(get_num, const char *()); + MOCK_CONST_METHOD0(is_open, gboolean()); MOCK_METHOD0(destroy, void()); protected: diff --git a/libgnucash/engine/mocks/gmock-qofbook.h b/libgnucash/engine/mocks/gmock-qofbook.h index c51c3c3d9c..8be7cb331e 100644 --- a/libgnucash/engine/mocks/gmock-qofbook.h +++ b/libgnucash/engine/mocks/gmock-qofbook.h @@ -51,7 +51,7 @@ public: } MOCK_METHOD0(malloc_split, Split *()); - MOCK_METHOD0(use_split_action_for_num_field, gboolean()); + MOCK_CONST_METHOD0(use_split_action_for_num_field, gboolean()); protected: // Protect destructor to avoid MockQofBook objects to be created on stack. MockQofBook From bc80bbb325d1814489d72bd1bc0760e8f7423a2f Mon Sep 17 00:00:00 2001 From: Christian Gruber Date: Mon, 21 Sep 2020 00:47:53 +0200 Subject: [PATCH 024/167] Simplify type checking for GObject mockups A type conversion function is introduced for each GObject mockup. This function does a runtime type check and generates a GoogleTest failure in case of any type error. This avoids checking GObject type twice. --- libgnucash/engine/mocks/gmock-Account.cpp | 28 +++--- libgnucash/engine/mocks/gmock-Account.h | 20 ++++ libgnucash/engine/mocks/gmock-Split.cpp | 92 ++++++++----------- libgnucash/engine/mocks/gmock-Split.h | 20 ++++ libgnucash/engine/mocks/gmock-Transaction.cpp | 76 ++++++--------- libgnucash/engine/mocks/gmock-Transaction.h | 20 ++++ libgnucash/engine/mocks/gmock-qofbook.cpp | 5 +- libgnucash/engine/mocks/gmock-qofbook.h | 21 +++++ 8 files changed, 161 insertions(+), 121 deletions(-) diff --git a/libgnucash/engine/mocks/gmock-Account.cpp b/libgnucash/engine/mocks/gmock-Account.cpp index c25b1157ff..d92679f4a0 100644 --- a/libgnucash/engine/mocks/gmock-Account.cpp +++ b/libgnucash/engine/mocks/gmock-Account.cpp @@ -27,45 +27,39 @@ void xaccAccountBeginEdit (Account *account) { ASSERT_TRUE(GNC_IS_MOCKACCOUNT(account)); - ((MockAccount*)account)->begin_edit(); + gnc_mockaccount(account)->begin_edit(); } void xaccAccountCommitEdit (Account *account) { ASSERT_TRUE(GNC_IS_MOCKACCOUNT(account)); - ((MockAccount*)account)->commit_edit(); + gnc_mockaccount(account)->commit_edit(); } QofBook * gnc_account_get_book(const Account *account) { - EXPECT_TRUE(GNC_IS_MOCKACCOUNT(account)); - if (GNC_IS_MOCKACCOUNT(account)) - return ((MockAccount*)account)->get_book(); - else - return nullptr; + SCOPED_TRACE(""); + const MockAccount* mockaccount = gnc_mockaccount(account); + return mockaccount ? mockaccount->get_book() : nullptr; } gint xaccAccountForEachTransaction(const Account *acc, TransactionCallback proc, void *data) { - EXPECT_TRUE(GNC_IS_MOCKACCOUNT(acc)); - if (GNC_IS_MOCKACCOUNT(acc)) - return ((MockAccount*)acc)->for_each_transaction(proc, data); - else - return 0; + SCOPED_TRACE(""); + const MockAccount* mockaccount = gnc_mockaccount(acc); + return mockaccount ? mockaccount->for_each_transaction(proc, data) : 0; } GncImportMatchMap * gnc_account_imap_create_imap (Account *acc) { - EXPECT_TRUE(GNC_IS_MOCKACCOUNT(acc)); - if (GNC_IS_MOCKACCOUNT(acc)) - return ((MockAccount*)acc)->create_imap(); - else - return nullptr; + SCOPED_TRACE(""); + MockAccount* mockaccount = gnc_mockaccount(acc); + return mockaccount ? mockaccount->create_imap() : nullptr; } Account* diff --git a/libgnucash/engine/mocks/gmock-Account.h b/libgnucash/engine/mocks/gmock-Account.h index 9552301a5a..04a48b5d80 100644 --- a/libgnucash/engine/mocks/gmock-Account.h +++ b/libgnucash/engine/mocks/gmock-Account.h @@ -67,4 +67,24 @@ public: MOCK_METHOD2(add_account_bayes, void(std::vector&, Account*)); }; + +// type conversion functions +static inline MockAccount* +gnc_mockaccount (Account *account) +{ + if (GNC_IS_MOCKACCOUNT(account)) + return static_cast(account); + ADD_FAILURE() << "Expected 'account' to be of type 'MockAccount'"; + return nullptr; +} + +static inline const MockAccount* +gnc_mockaccount (const Account *account) +{ + if (GNC_IS_MOCKACCOUNT(account)) + return static_cast(account); + ADD_FAILURE() << "Expected 'account' to be of type 'MockAccount'"; + return nullptr; +} + #endif diff --git a/libgnucash/engine/mocks/gmock-Split.cpp b/libgnucash/engine/mocks/gmock-Split.cpp index d33a44a1d7..5db4cad974 100644 --- a/libgnucash/engine/mocks/gmock-Split.cpp +++ b/libgnucash/engine/mocks/gmock-Split.cpp @@ -30,31 +30,25 @@ gnc_mocksplit_class_init (MockSplitClass *klass) Split * xaccMallocSplit (QofBook *book) { - EXPECT_TRUE(QOF_IS_MOCKBOOK(book)); - if (QOF_IS_MOCKBOOK(book)) - return ((QofMockBook*)book)->malloc_split(); - else - return nullptr; + SCOPED_TRACE(""); + QofMockBook* mockbook = qof_mockbook(book); + return mockbook ? mockbook->malloc_split() : nullptr; } QofBook * xaccSplitGetBook (const Split *split) { - EXPECT_TRUE(GNC_IS_MOCKSPLIT(split)); - if (GNC_IS_MOCKSPLIT(split)) - return ((MockSplit*)split)->get_book(); - else - return nullptr; + SCOPED_TRACE(""); + const MockSplit* mocksplit = gnc_mocksplit(split); + return mocksplit ? mocksplit->get_book() : nullptr; } Account * xaccSplitGetAccount (const Split *split) { - EXPECT_TRUE(GNC_IS_MOCKSPLIT(split)); - if (GNC_IS_MOCKSPLIT(split)) - return ((MockSplit*)split)->get_account(); - else - return nullptr; + SCOPED_TRACE(""); + const MockSplit* mocksplit = gnc_mocksplit(split); + return mocksplit ? mocksplit->get_account() : nullptr; } void @@ -62,105 +56,91 @@ xaccSplitSetAccount (Split *split, Account *acc) { ASSERT_TRUE(GNC_IS_MOCKSPLIT(split)); ASSERT_TRUE(GNC_IS_MOCKACCOUNT(acc)); - ((MockSplit*)split)->set_account(acc); + gnc_mocksplit(split)->set_account(acc); } gnc_numeric xaccSplitGetAmount (const Split *split) { - EXPECT_TRUE(GNC_IS_MOCKSPLIT(split)); - if (GNC_IS_MOCKSPLIT(split)) - return ((MockSplit*)split)->get_amount(); - else - return gnc_numeric_zero(); + SCOPED_TRACE(""); + const MockSplit* mocksplit = gnc_mocksplit(split); + return mocksplit ? mocksplit->get_amount() : gnc_numeric_zero(); } void xaccSplitSetAmount (Split *split, gnc_numeric amt) { ASSERT_TRUE(GNC_IS_MOCKSPLIT(split)); - ((MockSplit*)split)->set_amount(amt); + gnc_mocksplit(split)->set_amount(amt); } gnc_numeric xaccSplitGetValue (const Split *split) { - EXPECT_TRUE(GNC_IS_MOCKSPLIT(split)); - if (GNC_IS_MOCKSPLIT(split)) - return ((MockSplit*)split)->get_value(); - else - return gnc_numeric_zero(); + SCOPED_TRACE(""); + const MockSplit* mocksplit = gnc_mocksplit(split); + return mocksplit ? mocksplit->get_value() : gnc_numeric_zero(); } void xaccSplitSetValue (Split *split, gnc_numeric val) { ASSERT_TRUE(GNC_IS_MOCKSPLIT(split)); - ((MockSplit*)split)->set_value(val); + gnc_mocksplit(split)->set_value(val); } const char * xaccSplitGetMemo (const Split *split) { - EXPECT_TRUE(GNC_IS_MOCKSPLIT(split)); - if (GNC_IS_MOCKSPLIT(split)) - return ((MockSplit*)split)->get_memo(); - else - return nullptr; + SCOPED_TRACE(""); + const MockSplit* mocksplit = gnc_mocksplit(split); + return mocksplit ? mocksplit->get_memo() : ""; } char xaccSplitGetReconcile (const Split *split) { - EXPECT_TRUE(GNC_IS_MOCKSPLIT(split)); - if (GNC_IS_MOCKSPLIT(split)) - return ((MockSplit*)split)->get_reconcile(); - else - return VREC; + SCOPED_TRACE(""); + const MockSplit* mocksplit = gnc_mocksplit(split); + return mocksplit ? mocksplit->get_reconcile() : VREC; } void xaccSplitSetReconcile (Split *split, char recn) { ASSERT_TRUE(GNC_IS_MOCKSPLIT(split)); - ((MockSplit*)split)->set_reconcile(recn); + gnc_mocksplit(split)->set_reconcile(recn); } void xaccSplitSetDateReconciledSecs (Split *split, time64 secs) { ASSERT_TRUE(GNC_IS_MOCKSPLIT(split)); - ((MockSplit*)split)->set_date_reconciled_secs(secs); + gnc_mocksplit(split)->set_date_reconciled_secs(secs); } const char * xaccSplitGetAction (const Split *split) { - EXPECT_TRUE(GNC_IS_MOCKSPLIT(split)); - if (GNC_IS_MOCKSPLIT(split)) - return ((MockSplit*)split)->get_action(); - else - return nullptr; + SCOPED_TRACE(""); + const MockSplit* mocksplit = gnc_mocksplit(split); + return mocksplit ? mocksplit->get_action() : ""; } Split * xaccSplitGetOtherSplit (const Split *split) { - EXPECT_TRUE(GNC_IS_MOCKSPLIT(split)); - if (GNC_IS_MOCKSPLIT(split)) - return ((MockSplit*)split)->get_other_split(); - else - return nullptr; + SCOPED_TRACE(""); + const MockSplit* mocksplit = gnc_mocksplit(split); + return mocksplit ? mocksplit->get_other_split() : nullptr; } Transaction * xaccSplitGetParent (const Split *split) { - EXPECT_TRUE(GNC_IS_MOCKSPLIT(split)); - if (GNC_IS_MOCKSPLIT(split)) - return ((MockSplit*)split)->get_parent(); - else - return nullptr; + SCOPED_TRACE(""); + const MockSplit* mocksplit = gnc_mocksplit(split); + return mocksplit ? mocksplit->get_parent() : nullptr; } void @@ -168,5 +148,5 @@ xaccSplitSetParent(Split *split, Transaction *trans) { ASSERT_TRUE(GNC_IS_MOCKSPLIT(split)); ASSERT_TRUE(GNC_IS_MOCKTRANSACTION(trans)); - ((MockSplit*)split)->set_parent(trans); + gnc_mocksplit(split)->set_parent(trans); } diff --git a/libgnucash/engine/mocks/gmock-Split.h b/libgnucash/engine/mocks/gmock-Split.h index c8ed05ab47..b60da9387b 100644 --- a/libgnucash/engine/mocks/gmock-Split.h +++ b/libgnucash/engine/mocks/gmock-Split.h @@ -82,4 +82,24 @@ protected: ~MockSplit() {} }; + +// type conversion functions +static inline MockSplit* +gnc_mocksplit (Split *split) +{ + if (GNC_IS_MOCKSPLIT(split)) + return static_cast(split); + ADD_FAILURE() << "Expected 'split' to be of type 'MockSplit'"; + return nullptr; +} + +static inline const MockSplit* +gnc_mocksplit (const Split *split) +{ + if (GNC_IS_MOCKSPLIT(split)) + return static_cast(split); + ADD_FAILURE() << "Expected 'split' to be of type 'MockSplit'"; + return nullptr; +} + #endif diff --git a/libgnucash/engine/mocks/gmock-Transaction.cpp b/libgnucash/engine/mocks/gmock-Transaction.cpp index 5310ef5266..487a5b4d8c 100644 --- a/libgnucash/engine/mocks/gmock-Transaction.cpp +++ b/libgnucash/engine/mocks/gmock-Transaction.cpp @@ -29,121 +29,105 @@ void xaccTransBeginEdit (Transaction *trans) { ASSERT_TRUE(GNC_IS_MOCKTRANSACTION(trans)); - ((MockTransaction*)trans)->begin_edit(); + gnc_mocktransaction(trans)->begin_edit(); } void xaccTransCommitEdit (Transaction *trans) { ASSERT_TRUE(GNC_IS_MOCKTRANSACTION(trans)); - ((MockTransaction*)trans)->commit_edit(); + gnc_mocktransaction(trans)->commit_edit(); } Split * xaccTransGetSplit (const Transaction *trans, int i) { - EXPECT_TRUE(GNC_IS_MOCKTRANSACTION(trans)); - if (GNC_IS_MOCKTRANSACTION(trans)) - return ((MockTransaction*)trans)->get_split(i); - else - return nullptr; + SCOPED_TRACE(""); + const MockTransaction* mocktrans = gnc_mocktransaction(trans); + return mocktrans ? mocktrans->get_split(i) : nullptr; } Split * xaccTransFindSplitByAccount(const Transaction *trans, const Account *acc) { - EXPECT_TRUE(GNC_IS_MOCKTRANSACTION(trans)); + SCOPED_TRACE(""); + const MockTransaction* mocktrans = gnc_mocktransaction(trans); EXPECT_TRUE(GNC_IS_MOCKACCOUNT(acc)); - if (GNC_IS_MOCKTRANSACTION(trans)) - return ((MockTransaction*)trans)->find_split_by_account(acc); - else - return nullptr; + return mocktrans ? mocktrans->find_split_by_account(acc) : nullptr; } time64 xaccTransGetDate (const Transaction *trans) { - EXPECT_TRUE(GNC_IS_MOCKTRANSACTION(trans)); - if (GNC_IS_MOCKTRANSACTION(trans)) - return ((MockTransaction*)trans)->get_date(); - else - return 0; + SCOPED_TRACE(""); + const MockTransaction* mocktrans = gnc_mocktransaction(trans); + return mocktrans ? mocktrans->get_date() : 0; } void xaccTransSetDatePostedSecsNormalized (Transaction *trans, time64 time) { ASSERT_TRUE(GNC_IS_MOCKTRANSACTION(trans)); - ((MockTransaction*)trans)->set_date_posted_secs_normalized(time); + gnc_mocktransaction(trans)->set_date_posted_secs_normalized(time); } const char * xaccTransGetDescription (const Transaction *trans) { - EXPECT_TRUE(GNC_IS_MOCKTRANSACTION(trans)); - if (GNC_IS_MOCKTRANSACTION(trans)) - return ((MockTransaction*)trans)->get_description(); - else - return nullptr; + SCOPED_TRACE(""); + const MockTransaction* mocktrans = gnc_mocktransaction(trans); + return mocktrans ? mocktrans->get_description() : ""; } void xaccTransSetDescription (Transaction *trans, const char *desc) { ASSERT_TRUE(GNC_IS_MOCKTRANSACTION(trans)); - ((MockTransaction*)trans)->set_description(desc); + gnc_mocktransaction(trans)->set_description(desc); } const char * xaccTransGetNotes (const Transaction *trans) { - EXPECT_TRUE(GNC_IS_MOCKTRANSACTION(trans)); - if (GNC_IS_MOCKTRANSACTION(trans)) - return ((MockTransaction*)trans)->get_notes(); - else - return nullptr; + SCOPED_TRACE(""); + const MockTransaction* mocktrans = gnc_mocktransaction(trans); + return mocktrans ? mocktrans->get_notes() : ""; } void xaccTransSetNotes (Transaction *trans, const char *notes) { ASSERT_TRUE(GNC_IS_MOCKTRANSACTION(trans)); - ((MockTransaction*)trans)->set_description(notes); + gnc_mocktransaction(trans)->set_description(notes); } gnc_numeric xaccTransGetImbalanceValue (const Transaction * trans) { - EXPECT_TRUE(GNC_IS_MOCKTRANSACTION(trans)); - if (GNC_IS_MOCKTRANSACTION(trans)) - return ((MockTransaction*)trans)->get_imbalance_value(); - else - return gnc_numeric_zero(); + SCOPED_TRACE(""); + const MockTransaction* mocktrans = gnc_mocktransaction(trans); + return mocktrans ? mocktrans->get_imbalance_value() : gnc_numeric_zero(); } const char * xaccTransGetNum (const Transaction *trans) { - EXPECT_TRUE(GNC_IS_MOCKTRANSACTION(trans)); - if (GNC_IS_MOCKTRANSACTION(trans)) - return ((MockTransaction*)trans)->get_num(); - else - return nullptr; + SCOPED_TRACE(""); + const MockTransaction* mocktrans = gnc_mocktransaction(trans); + return mocktrans ? mocktrans->get_num() : ""; } gboolean xaccTransIsOpen (const Transaction *trans) { - EXPECT_TRUE(GNC_IS_MOCKTRANSACTION(trans)); - if (GNC_IS_MOCKTRANSACTION(trans)) - return ((MockTransaction*)trans)->is_open(); - else - return FALSE; + SCOPED_TRACE(""); + const MockTransaction* mocktrans = gnc_mocktransaction(trans); + return mocktrans ? mocktrans->is_open() : FALSE; } void xaccTransDestroy (Transaction *trans) { ASSERT_TRUE(GNC_IS_MOCKTRANSACTION(trans)); - ((MockTransaction*)trans)->destroy(); + gnc_mocktransaction(trans)->destroy(); } diff --git a/libgnucash/engine/mocks/gmock-Transaction.h b/libgnucash/engine/mocks/gmock-Transaction.h index 150f168a22..f0901fb1b4 100644 --- a/libgnucash/engine/mocks/gmock-Transaction.h +++ b/libgnucash/engine/mocks/gmock-Transaction.h @@ -70,4 +70,24 @@ protected: ~MockTransaction() {} }; + +// type conversion functions +static inline MockTransaction* +gnc_mocktransaction (Transaction *trans) +{ + if (GNC_IS_MOCKTRANSACTION(trans)) + return static_cast(trans); + ADD_FAILURE() << "Expected 'trans' to be of type 'MockTransaction'"; + return nullptr; +} + +static inline const MockTransaction* +gnc_mocktransaction (const Transaction *trans) +{ + if (GNC_IS_MOCKTRANSACTION(trans)) + return static_cast(trans); + ADD_FAILURE() << "Expected 'trans' to be of type 'MockTransaction'"; + return nullptr; +} + #endif diff --git a/libgnucash/engine/mocks/gmock-qofbook.cpp b/libgnucash/engine/mocks/gmock-qofbook.cpp index 72b755e693..17a7f0061f 100644 --- a/libgnucash/engine/mocks/gmock-qofbook.cpp +++ b/libgnucash/engine/mocks/gmock-qofbook.cpp @@ -23,7 +23,8 @@ qof_mockbook_class_init(QofMockBookClass *klass) gboolean qof_book_use_split_action_for_num_field (const QofBook *book) { - g_return_val_if_fail(QOF_IS_MOCKBOOK(book), FALSE); - return ((QofMockBook*)book)->use_split_action_for_num_field(); + SCOPED_TRACE(""); + const QofMockBook* mockbook = qof_mockbook(book); + return mockbook ? mockbook->use_split_action_for_num_field() : FALSE; } diff --git a/libgnucash/engine/mocks/gmock-qofbook.h b/libgnucash/engine/mocks/gmock-qofbook.h index 8be7cb331e..035eb1a9c1 100644 --- a/libgnucash/engine/mocks/gmock-qofbook.h +++ b/libgnucash/engine/mocks/gmock-qofbook.h @@ -59,4 +59,25 @@ protected: ~QofMockBook() {} }; + +// type conversion functions +static inline QofMockBook* +qof_mockbook (QofBook *book) +{ + if (QOF_IS_MOCKBOOK(book)) + return static_cast(book); + ADD_FAILURE() << "Expected 'book' to be of type 'QofMockBook'"; + return nullptr; +} + +static inline const QofMockBook* +qof_mockbook (const QofBook *book) +{ + if (QOF_IS_MOCKBOOK(book)) + return static_cast(book); + ADD_FAILURE() << "Expected 'book' to be of type 'QofMockBook'"; + return nullptr; +} + + #endif From 833edd0b29dcc936ec77ece9bf6a331d8cffdd75 Mon Sep 17 00:00:00 2001 From: Christian Gruber Date: Mon, 21 Sep 2020 00:50:24 +0200 Subject: [PATCH 025/167] Add missing comment --- libgnucash/engine/mocks/gmock-Account.h | 1 + 1 file changed, 1 insertion(+) diff --git a/libgnucash/engine/mocks/gmock-Account.h b/libgnucash/engine/mocks/gmock-Account.h index 04a48b5d80..608e11cad8 100644 --- a/libgnucash/engine/mocks/gmock-Account.h +++ b/libgnucash/engine/mocks/gmock-Account.h @@ -52,6 +52,7 @@ protected: }; +// mock up for GncImportMatchMap class GncMockImportMatchMap : public GncImportMatchMap { public: From 99256c385b21efa920650089c5ea4d948dbb4ffe Mon Sep 17 00:00:00 2001 From: Christian Gruber Date: Tue, 22 Sep 2020 22:07:21 +0200 Subject: [PATCH 026/167] Add missing _get_type() functions of all mocked GObject classes If a GObject is replaced by a mock up, its _get_type() function has to be replaced as well. The replaced _get_type() functions have to return the type of the mock up now. --- libgnucash/engine/mocks/gmock-Account.cpp | 6 ++++++ libgnucash/engine/mocks/gmock-Split.cpp | 5 +++++ libgnucash/engine/mocks/gmock-Transaction.cpp | 5 +++++ libgnucash/engine/mocks/gmock-qofbook.cpp | 6 ++++++ 4 files changed, 22 insertions(+) diff --git a/libgnucash/engine/mocks/gmock-Account.cpp b/libgnucash/engine/mocks/gmock-Account.cpp index d92679f4a0..1b5f30a4aa 100644 --- a/libgnucash/engine/mocks/gmock-Account.cpp +++ b/libgnucash/engine/mocks/gmock-Account.cpp @@ -23,6 +23,12 @@ gnc_mockaccount_class_init(MockAccountClass *klass) // function is unused, class functions are defined in C++ code } + +GType gnc_account_get_type(void) +{ + return gnc_mockaccount_get_type(); +} + void xaccAccountBeginEdit (Account *account) { diff --git a/libgnucash/engine/mocks/gmock-Split.cpp b/libgnucash/engine/mocks/gmock-Split.cpp index 5db4cad974..2cf34bc22c 100644 --- a/libgnucash/engine/mocks/gmock-Split.cpp +++ b/libgnucash/engine/mocks/gmock-Split.cpp @@ -27,6 +27,11 @@ gnc_mocksplit_class_init (MockSplitClass *klass) } +GType gnc_split_get_type(void) +{ + return gnc_mocksplit_get_type(); +} + Split * xaccMallocSplit (QofBook *book) { diff --git a/libgnucash/engine/mocks/gmock-Transaction.cpp b/libgnucash/engine/mocks/gmock-Transaction.cpp index 487a5b4d8c..597971b6e1 100644 --- a/libgnucash/engine/mocks/gmock-Transaction.cpp +++ b/libgnucash/engine/mocks/gmock-Transaction.cpp @@ -25,6 +25,11 @@ gnc_mocktransaction_class_init(MockTransactionClass *klass) } +GType gnc_transaction_get_type(void) +{ + return gnc_mocktransaction_get_type(); +} + void xaccTransBeginEdit (Transaction *trans) { diff --git a/libgnucash/engine/mocks/gmock-qofbook.cpp b/libgnucash/engine/mocks/gmock-qofbook.cpp index 17a7f0061f..d2c389d9ac 100644 --- a/libgnucash/engine/mocks/gmock-qofbook.cpp +++ b/libgnucash/engine/mocks/gmock-qofbook.cpp @@ -20,6 +20,12 @@ qof_mockbook_class_init(QofMockBookClass *klass) // function is unused, class functions are defined in C++ code } + +GType qof_book_get_type(void) +{ + return qof_mockbook_get_type(); +} + gboolean qof_book_use_split_action_for_num_field (const QofBook *book) { From 0e634c54460463de2c8bc1204835041d03a014e0 Mon Sep 17 00:00:00 2001 From: Christian Gruber Date: Tue, 22 Sep 2020 22:20:38 +0200 Subject: [PATCH 027/167] Relax runtime type checks Runtime type checks should only check for the mock up type, if neccessary. If objects of another class than the mocked object itself are processed, runtime type check should only check for the base-class type. It should be possible to use mockup objects and non-mockup objects within the same application. The included headers are adapted accordingly. --- libgnucash/engine/mocks/fake-qofquery.cpp | 5 +++-- libgnucash/engine/mocks/gmock-Split.cpp | 9 +++++---- libgnucash/engine/mocks/gmock-Transaction.cpp | 5 +++-- libgnucash/engine/mocks/gmock-qofbook.h | 2 +- 4 files changed, 12 insertions(+), 9 deletions(-) diff --git a/libgnucash/engine/mocks/fake-qofquery.cpp b/libgnucash/engine/mocks/fake-qofquery.cpp index dc8445d4d9..53dddfd804 100644 --- a/libgnucash/engine/mocks/fake-qofquery.cpp +++ b/libgnucash/engine/mocks/fake-qofquery.cpp @@ -4,10 +4,11 @@ #include +#include + #include #include "fake-qofquery.h" -#include "gmock-qofbook.h" @@ -119,7 +120,7 @@ void qof_query_set_book (QofQuery *query, QofBook *book) { ASSERT_TRUE(queryPool.query_used(query)); - ASSERT_TRUE(QOF_IS_MOCKBOOK(book)); + ASSERT_TRUE(QOF_IS_BOOK(book)); ((QofFakeQuery*)query)->set_book(book); } diff --git a/libgnucash/engine/mocks/gmock-Split.cpp b/libgnucash/engine/mocks/gmock-Split.cpp index 2cf34bc22c..1355f121da 100644 --- a/libgnucash/engine/mocks/gmock-Split.cpp +++ b/libgnucash/engine/mocks/gmock-Split.cpp @@ -1,9 +1,10 @@ #include +#include +#include + #include "gmock-Split.h" #include "gmock-qofbook.h" -#include "gmock-Account.h" -#include "gmock-Transaction.h" struct _MockSplitClass @@ -60,7 +61,7 @@ void xaccSplitSetAccount (Split *split, Account *acc) { ASSERT_TRUE(GNC_IS_MOCKSPLIT(split)); - ASSERT_TRUE(GNC_IS_MOCKACCOUNT(acc)); + ASSERT_TRUE(GNC_IS_ACCOUNT(acc)); gnc_mocksplit(split)->set_account(acc); } @@ -152,6 +153,6 @@ void xaccSplitSetParent(Split *split, Transaction *trans) { ASSERT_TRUE(GNC_IS_MOCKSPLIT(split)); - ASSERT_TRUE(GNC_IS_MOCKTRANSACTION(trans)); + ASSERT_TRUE(GNC_IS_TRANSACTION(trans)); gnc_mocksplit(split)->set_parent(trans); } diff --git a/libgnucash/engine/mocks/gmock-Transaction.cpp b/libgnucash/engine/mocks/gmock-Transaction.cpp index 597971b6e1..bde81b33c4 100644 --- a/libgnucash/engine/mocks/gmock-Transaction.cpp +++ b/libgnucash/engine/mocks/gmock-Transaction.cpp @@ -1,7 +1,8 @@ #include +#include + #include "gmock-Transaction.h" -#include "gmock-Account.h" struct _MockTransactionClass @@ -57,7 +58,7 @@ xaccTransFindSplitByAccount(const Transaction *trans, const Account *acc) { SCOPED_TRACE(""); const MockTransaction* mocktrans = gnc_mocktransaction(trans); - EXPECT_TRUE(GNC_IS_MOCKACCOUNT(acc)); + EXPECT_TRUE(GNC_IS_ACCOUNT(acc)); return mocktrans ? mocktrans->find_split_by_account(acc) : nullptr; } diff --git a/libgnucash/engine/mocks/gmock-qofbook.h b/libgnucash/engine/mocks/gmock-qofbook.h index 035eb1a9c1..7001697afc 100644 --- a/libgnucash/engine/mocks/gmock-qofbook.h +++ b/libgnucash/engine/mocks/gmock-qofbook.h @@ -5,9 +5,9 @@ #include #include +#include #include "gmock-gobject.h" -#include "gmock-Split.h" GType qof_mockbook_get_type(void); From d673c32e358c53a49ff8b5ff8d17a661003dc582 Mon Sep 17 00:00:00 2001 From: Christian Gruber Date: Tue, 22 Sep 2020 22:24:57 +0200 Subject: [PATCH 028/167] Mock methods should not neccessarily return mock objects --- libgnucash/engine/mocks/gmock-Account.h | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/libgnucash/engine/mocks/gmock-Account.h b/libgnucash/engine/mocks/gmock-Account.h index 608e11cad8..6b7bbaefa3 100644 --- a/libgnucash/engine/mocks/gmock-Account.h +++ b/libgnucash/engine/mocks/gmock-Account.h @@ -5,8 +5,8 @@ #include #include +#include -#include "gmock-qofbook.h" #include "gmock-gobject.h" @@ -41,7 +41,7 @@ public: MOCK_METHOD0(begin_edit, void()); MOCK_METHOD0(commit_edit, void()); - MOCK_CONST_METHOD0(get_book, QofMockBook*()); + MOCK_CONST_METHOD0(get_book, QofBook*()); MOCK_CONST_METHOD2(for_each_transaction, gint(TransactionCallback, void*)); MOCK_METHOD0(create_imap, GncImportMatchMap*()); From 63969e8628d4ac5ae53c8d2a72bf6bcf717b3c03 Mon Sep 17 00:00:00 2001 From: Christian Gruber Date: Tue, 22 Sep 2020 22:25:45 +0200 Subject: [PATCH 029/167] Remove unecessary include --- libgnucash/engine/mocks/gmock-Transaction.h | 1 - 1 file changed, 1 deletion(-) diff --git a/libgnucash/engine/mocks/gmock-Transaction.h b/libgnucash/engine/mocks/gmock-Transaction.h index f0901fb1b4..d5c518d649 100644 --- a/libgnucash/engine/mocks/gmock-Transaction.h +++ b/libgnucash/engine/mocks/gmock-Transaction.h @@ -6,7 +6,6 @@ #include #include -#include "gmock-qofbook.h" #include "gmock-gobject.h" From e44cf9c61f36ef29c16dafbad443d9c1a8cfdf3f Mon Sep 17 00:00:00 2001 From: Christian Gruber Date: Wed, 23 Sep 2020 19:59:40 +0200 Subject: [PATCH 030/167] Add missing C linkage statements --- libgnucash/app-utils/mocks/gmock-gnc-prefs.cpp | 4 ++++ libgnucash/engine/mocks/fake-qofquery.cpp | 4 ++++ libgnucash/engine/mocks/gmock-Split.h | 3 +++ libgnucash/engine/mocks/gmock-Transaction.h | 3 +++ libgnucash/engine/mocks/gmock-qofinstance.cpp | 3 +++ 5 files changed, 17 insertions(+) diff --git a/libgnucash/app-utils/mocks/gmock-gnc-prefs.cpp b/libgnucash/app-utils/mocks/gmock-gnc-prefs.cpp index d9e090068a..7711d8608d 100644 --- a/libgnucash/app-utils/mocks/gmock-gnc-prefs.cpp +++ b/libgnucash/app-utils/mocks/gmock-gnc-prefs.cpp @@ -10,6 +10,8 @@ gmock_gnc_prefs_set_backend(MockPrefsBackend *backend) prefsbackend = backend; } +extern "C" +{ gboolean gnc_prefs_get_bool (const gchar *group, const gchar *pref_name) { @@ -63,3 +65,5 @@ gnc_prefs_get_coords (const gchar *group, const gchar *pref_name, gdouble *x, gd if (prefsbackend != nullptr) prefsbackend->get_coords(group, pref_name, x, y); } + +} // extern "C" diff --git a/libgnucash/engine/mocks/fake-qofquery.cpp b/libgnucash/engine/mocks/fake-qofquery.cpp index 53dddfd804..15341189aa 100644 --- a/libgnucash/engine/mocks/fake-qofquery.cpp +++ b/libgnucash/engine/mocks/fake-qofquery.cpp @@ -124,6 +124,8 @@ qof_query_set_book (QofQuery *query, QofBook *book) ((QofFakeQuery*)query)->set_book(book); } +extern "C" +{ void xaccQueryAddDateMatchTT ( QofQuery *query, @@ -144,6 +146,8 @@ xaccQueryAddSingleAccountMatch(QofQuery *query, Account *acc, QofQueryOp op) ((QofFakeQuery*)query)->add_single_account_match(acc, op); } +} // extern "C" + GList * qof_query_run (QofQuery *query) { diff --git a/libgnucash/engine/mocks/gmock-Split.h b/libgnucash/engine/mocks/gmock-Split.h index b60da9387b..d70652a5ab 100644 --- a/libgnucash/engine/mocks/gmock-Split.h +++ b/libgnucash/engine/mocks/gmock-Split.h @@ -4,7 +4,10 @@ #include #include +extern "C" +{ #include +} #include "gmock-qofbook.h" #include "gmock-gobject.h" diff --git a/libgnucash/engine/mocks/gmock-Transaction.h b/libgnucash/engine/mocks/gmock-Transaction.h index d5c518d649..125012100b 100644 --- a/libgnucash/engine/mocks/gmock-Transaction.h +++ b/libgnucash/engine/mocks/gmock-Transaction.h @@ -4,7 +4,10 @@ #include #include +extern "C" +{ #include +} #include "gmock-gobject.h" diff --git a/libgnucash/engine/mocks/gmock-qofinstance.cpp b/libgnucash/engine/mocks/gmock-qofinstance.cpp index eb6f8aeb56..e6e0c2c822 100644 --- a/libgnucash/engine/mocks/gmock-qofinstance.cpp +++ b/libgnucash/engine/mocks/gmock-qofinstance.cpp @@ -23,6 +23,8 @@ qof_instance_class_init(QofInstanceClass *klass) // function is unused, class functions are defined in C++ code } +extern "C" +{ // This is a reimplementation of the function from qofinstance.cpp void qof_instance_get (const QofInstance *inst, const gchar *first_prop, ...) @@ -48,3 +50,4 @@ qof_instance_set (QofInstance *inst, const gchar *first_prop, ...) va_end (ap); } +} // extern "C" From feba64624c360ec992f3f11a78732cf9f2461e99 Mon Sep 17 00:00:00 2001 From: Christian Gruber Date: Mon, 5 Oct 2020 22:20:02 +0200 Subject: [PATCH 031/167] Fix xaccTransSetNotes() This is a bugfix for commit 954ce9577f4de5f77956e4cdc1d79d51ef8afb1f --- libgnucash/engine/mocks/gmock-Transaction.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/libgnucash/engine/mocks/gmock-Transaction.cpp b/libgnucash/engine/mocks/gmock-Transaction.cpp index bde81b33c4..b185640b02 100644 --- a/libgnucash/engine/mocks/gmock-Transaction.cpp +++ b/libgnucash/engine/mocks/gmock-Transaction.cpp @@ -104,7 +104,7 @@ void xaccTransSetNotes (Transaction *trans, const char *notes) { ASSERT_TRUE(GNC_IS_MOCKTRANSACTION(trans)); - gnc_mocktransaction(trans)->set_description(notes); + gnc_mocktransaction(trans)->set_notes(notes); } gnc_numeric From 6394b6491b719089aeb83917bc7dd0714c880e98 Mon Sep 17 00:00:00 2001 From: Christian Gruber Date: Mon, 5 Oct 2020 22:48:52 +0200 Subject: [PATCH 032/167] fixup! Simplify type checking for GObject mockups --- libgnucash/engine/mocks/gmock-Account.cpp | 6 +++--- libgnucash/engine/mocks/gmock-Split.cpp | 18 +++++++++--------- libgnucash/engine/mocks/gmock-Transaction.cpp | 16 ++++++++-------- libgnucash/engine/mocks/gmock-qofbook.cpp | 2 +- 4 files changed, 21 insertions(+), 21 deletions(-) diff --git a/libgnucash/engine/mocks/gmock-Account.cpp b/libgnucash/engine/mocks/gmock-Account.cpp index 1b5f30a4aa..b4dd7d28fc 100644 --- a/libgnucash/engine/mocks/gmock-Account.cpp +++ b/libgnucash/engine/mocks/gmock-Account.cpp @@ -47,7 +47,7 @@ QofBook * gnc_account_get_book(const Account *account) { SCOPED_TRACE(""); - const MockAccount* mockaccount = gnc_mockaccount(account); + auto mockaccount = gnc_mockaccount(account); return mockaccount ? mockaccount->get_book() : nullptr; } @@ -56,7 +56,7 @@ xaccAccountForEachTransaction(const Account *acc, TransactionCallback proc, void *data) { SCOPED_TRACE(""); - const MockAccount* mockaccount = gnc_mockaccount(acc); + auto mockaccount = gnc_mockaccount(acc); return mockaccount ? mockaccount->for_each_transaction(proc, data) : 0; } @@ -64,7 +64,7 @@ GncImportMatchMap * gnc_account_imap_create_imap (Account *acc) { SCOPED_TRACE(""); - MockAccount* mockaccount = gnc_mockaccount(acc); + auto mockaccount = gnc_mockaccount(acc); return mockaccount ? mockaccount->create_imap() : nullptr; } diff --git a/libgnucash/engine/mocks/gmock-Split.cpp b/libgnucash/engine/mocks/gmock-Split.cpp index 1355f121da..de67a40f53 100644 --- a/libgnucash/engine/mocks/gmock-Split.cpp +++ b/libgnucash/engine/mocks/gmock-Split.cpp @@ -45,7 +45,7 @@ QofBook * xaccSplitGetBook (const Split *split) { SCOPED_TRACE(""); - const MockSplit* mocksplit = gnc_mocksplit(split); + auto mocksplit = gnc_mocksplit(split); return mocksplit ? mocksplit->get_book() : nullptr; } @@ -53,7 +53,7 @@ Account * xaccSplitGetAccount (const Split *split) { SCOPED_TRACE(""); - const MockSplit* mocksplit = gnc_mocksplit(split); + auto mocksplit = gnc_mocksplit(split); return mocksplit ? mocksplit->get_account() : nullptr; } @@ -69,7 +69,7 @@ gnc_numeric xaccSplitGetAmount (const Split *split) { SCOPED_TRACE(""); - const MockSplit* mocksplit = gnc_mocksplit(split); + auto mocksplit = gnc_mocksplit(split); return mocksplit ? mocksplit->get_amount() : gnc_numeric_zero(); } @@ -84,7 +84,7 @@ gnc_numeric xaccSplitGetValue (const Split *split) { SCOPED_TRACE(""); - const MockSplit* mocksplit = gnc_mocksplit(split); + auto mocksplit = gnc_mocksplit(split); return mocksplit ? mocksplit->get_value() : gnc_numeric_zero(); } @@ -99,7 +99,7 @@ const char * xaccSplitGetMemo (const Split *split) { SCOPED_TRACE(""); - const MockSplit* mocksplit = gnc_mocksplit(split); + auto mocksplit = gnc_mocksplit(split); return mocksplit ? mocksplit->get_memo() : ""; } @@ -107,7 +107,7 @@ char xaccSplitGetReconcile (const Split *split) { SCOPED_TRACE(""); - const MockSplit* mocksplit = gnc_mocksplit(split); + auto mocksplit = gnc_mocksplit(split); return mocksplit ? mocksplit->get_reconcile() : VREC; } @@ -129,7 +129,7 @@ const char * xaccSplitGetAction (const Split *split) { SCOPED_TRACE(""); - const MockSplit* mocksplit = gnc_mocksplit(split); + auto mocksplit = gnc_mocksplit(split); return mocksplit ? mocksplit->get_action() : ""; } @@ -137,7 +137,7 @@ Split * xaccSplitGetOtherSplit (const Split *split) { SCOPED_TRACE(""); - const MockSplit* mocksplit = gnc_mocksplit(split); + auto mocksplit = gnc_mocksplit(split); return mocksplit ? mocksplit->get_other_split() : nullptr; } @@ -145,7 +145,7 @@ Transaction * xaccSplitGetParent (const Split *split) { SCOPED_TRACE(""); - const MockSplit* mocksplit = gnc_mocksplit(split); + auto mocksplit = gnc_mocksplit(split); return mocksplit ? mocksplit->get_parent() : nullptr; } diff --git a/libgnucash/engine/mocks/gmock-Transaction.cpp b/libgnucash/engine/mocks/gmock-Transaction.cpp index b185640b02..3bd1e65df8 100644 --- a/libgnucash/engine/mocks/gmock-Transaction.cpp +++ b/libgnucash/engine/mocks/gmock-Transaction.cpp @@ -49,7 +49,7 @@ Split * xaccTransGetSplit (const Transaction *trans, int i) { SCOPED_TRACE(""); - const MockTransaction* mocktrans = gnc_mocktransaction(trans); + auto mocktrans = gnc_mocktransaction(trans); return mocktrans ? mocktrans->get_split(i) : nullptr; } @@ -57,7 +57,7 @@ Split * xaccTransFindSplitByAccount(const Transaction *trans, const Account *acc) { SCOPED_TRACE(""); - const MockTransaction* mocktrans = gnc_mocktransaction(trans); + auto mocktrans = gnc_mocktransaction(trans); EXPECT_TRUE(GNC_IS_ACCOUNT(acc)); return mocktrans ? mocktrans->find_split_by_account(acc) : nullptr; } @@ -66,7 +66,7 @@ time64 xaccTransGetDate (const Transaction *trans) { SCOPED_TRACE(""); - const MockTransaction* mocktrans = gnc_mocktransaction(trans); + auto mocktrans = gnc_mocktransaction(trans); return mocktrans ? mocktrans->get_date() : 0; } @@ -81,7 +81,7 @@ const char * xaccTransGetDescription (const Transaction *trans) { SCOPED_TRACE(""); - const MockTransaction* mocktrans = gnc_mocktransaction(trans); + auto mocktrans = gnc_mocktransaction(trans); return mocktrans ? mocktrans->get_description() : ""; } @@ -96,7 +96,7 @@ const char * xaccTransGetNotes (const Transaction *trans) { SCOPED_TRACE(""); - const MockTransaction* mocktrans = gnc_mocktransaction(trans); + auto mocktrans = gnc_mocktransaction(trans); return mocktrans ? mocktrans->get_notes() : ""; } @@ -111,7 +111,7 @@ gnc_numeric xaccTransGetImbalanceValue (const Transaction * trans) { SCOPED_TRACE(""); - const MockTransaction* mocktrans = gnc_mocktransaction(trans); + auto mocktrans = gnc_mocktransaction(trans); return mocktrans ? mocktrans->get_imbalance_value() : gnc_numeric_zero(); } @@ -119,7 +119,7 @@ const char * xaccTransGetNum (const Transaction *trans) { SCOPED_TRACE(""); - const MockTransaction* mocktrans = gnc_mocktransaction(trans); + auto mocktrans = gnc_mocktransaction(trans); return mocktrans ? mocktrans->get_num() : ""; } @@ -127,7 +127,7 @@ gboolean xaccTransIsOpen (const Transaction *trans) { SCOPED_TRACE(""); - const MockTransaction* mocktrans = gnc_mocktransaction(trans); + auto mocktrans = gnc_mocktransaction(trans); return mocktrans ? mocktrans->is_open() : FALSE; } diff --git a/libgnucash/engine/mocks/gmock-qofbook.cpp b/libgnucash/engine/mocks/gmock-qofbook.cpp index d2c389d9ac..1ea7d7215c 100644 --- a/libgnucash/engine/mocks/gmock-qofbook.cpp +++ b/libgnucash/engine/mocks/gmock-qofbook.cpp @@ -30,7 +30,7 @@ gboolean qof_book_use_split_action_for_num_field (const QofBook *book) { SCOPED_TRACE(""); - const QofMockBook* mockbook = qof_mockbook(book); + auto mockbook = qof_mockbook(book); return mockbook ? mockbook->use_split_action_for_num_field() : FALSE; } From 190d5f1a616791deaaf68e9a86eebba67bcae193 Mon Sep 17 00:00:00 2001 From: Robert Fewell <14uBobIT@gmail.com> Date: Thu, 15 Oct 2020 15:21:05 +0100 Subject: [PATCH 033/167] Bug 797971 - Inserting description text behaves oddly This is best observed when trying to insert a character, say x when the cursor is before the last character, the cursor will jump to the end like... ABCD|E results in ABCDxE| It can also affect when inserting/changing text that has come from the quick fill the cursor may end up in the wrong place. Changed a test condition to use the incoming new character length value instead of the existing cell one. --- gnucash/register/register-core/quickfillcell.c | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/gnucash/register/register-core/quickfillcell.c b/gnucash/register/register-core/quickfillcell.c index 39332eeabd..f1d4817b1f 100644 --- a/gnucash/register/register-core/quickfillcell.c +++ b/gnucash/register/register-core/quickfillcell.c @@ -198,7 +198,7 @@ gnc_quickfill_cell_modify_verify (BasicCell *_cell, } /* If we are inserting in the middle, just accept */ - if (*cursor_position < _cell->value_chars) + if (*cursor_position < newval_chars) { gnc_basic_cell_set_value_internal (&cell->cell, newval); gnc_quickfill_cell_set_original (cell, NULL); @@ -233,8 +233,6 @@ gnc_quickfill_cell_modify_verify (BasicCell *_cell, if (cell->original != NULL) newval = cell->original; - *cursor_position = -1; - gnc_basic_cell_set_value_internal (&cell->cell, newval); return; } From e255a7bfe2f3d945b17a348a002e4380a35c7301 Mon Sep 17 00:00:00 2001 From: John Ralls Date: Sun, 18 Oct 2020 10:58:42 -0700 Subject: [PATCH 034/167] Make the price database list obey the force-prices-to-decimal preference. It was always displaying decimals regardless of the preference value. --- gnucash/gnome-utils/gnc-tree-model-price.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/gnucash/gnome-utils/gnc-tree-model-price.c b/gnucash/gnome-utils/gnc-tree-model-price.c index 55311c7edc..bca5f30673 100644 --- a/gnucash/gnome-utils/gnc-tree-model-price.c +++ b/gnucash/gnome-utils/gnc-tree-model-price.c @@ -164,7 +164,7 @@ gnc_tree_model_price_init (GncTreeModelPrice *model) } priv = GNC_TREE_MODEL_PRICE_GET_PRIVATE(model); - priv->print_info = gnc_share_print_info_places(6); + priv->print_info = gnc_default_price_print_info(NULL); } static void From 94a68dca7cf94bf23b808986c8df19449da4f2bb Mon Sep 17 00:00:00 2001 From: John Ralls Date: Sun, 18 Oct 2020 15:04:06 -0700 Subject: [PATCH 035/167] Bug 797983 - v4.2 report numbers change over gnucash restarts;... Price Database dropping user:price-editor entries. A wider problem: QofInstance was unmarking itself dirty as long as the backend raised an error and unconditionally marking itself non-infant. This matters because the SQL backend depends on infant status to decide whether to do an insert or update query; either will fail if the infant status is wrong. The price editor dialog clones a price having only its commodity set and GncSqlPriceBackend declines to save if the currency isn't set. Since the instance marked itself non-infant even though it wasn't saved subsequent commits tried to use an update query and since the price wasn't in the table that inevitably failed. Requiring that QofBackend::commit should doing the marking-clean required implementing it in the backends where it wasn't already. --- libgnucash/backend/xml/gnc-xml-backend.cpp | 7 +++++++ libgnucash/backend/xml/gnc-xml-backend.hpp | 1 + libgnucash/engine/qof-backend.cpp | 7 +++++++ libgnucash/engine/qof-backend.hpp | 2 +- libgnucash/engine/qofinstance.cpp | 5 ++--- libgnucash/engine/test/test-qofinstance.cpp | 9 +++++++-- 6 files changed, 25 insertions(+), 6 deletions(-) diff --git a/libgnucash/backend/xml/gnc-xml-backend.cpp b/libgnucash/backend/xml/gnc-xml-backend.cpp index 8f7b01070a..dc3bbb19b7 100644 --- a/libgnucash/backend/xml/gnc-xml-backend.cpp +++ b/libgnucash/backend/xml/gnc-xml-backend.cpp @@ -314,6 +314,13 @@ GncXmlBackend::sync(QofBook* book) remove_old_files(); } +void +GncXmlBackend::commit(QofInstance* instance) +{ + if (qof_instance_is_dirty(instance)) + qof_instance_mark_clean(instance); +} + bool GncXmlBackend::save_may_clobber_data() { diff --git a/libgnucash/backend/xml/gnc-xml-backend.hpp b/libgnucash/backend/xml/gnc-xml-backend.hpp index 362038452f..fd84c5bbbe 100644 --- a/libgnucash/backend/xml/gnc-xml-backend.hpp +++ b/libgnucash/backend/xml/gnc-xml-backend.hpp @@ -43,6 +43,7 @@ public: void export_coa(QofBook*) override; void sync(QofBook* book) override; void safe_sync(QofBook* book) override { sync(book); } // XML sync is inherently safe. + void commit(QofInstance* instance) override; const char * get_filename() { return m_fullpath.c_str(); } QofBook* get_book() { return m_book; } diff --git a/libgnucash/engine/qof-backend.cpp b/libgnucash/engine/qof-backend.cpp index 41c8df2201..c18b8490e0 100644 --- a/libgnucash/engine/qof-backend.cpp +++ b/libgnucash/engine/qof-backend.cpp @@ -48,6 +48,13 @@ G_GNUC_UNUSED static QofLogModule log_module = QOF_MOD_BACKEND; GModuleVec QofBackend::c_be_registry{}; +void +QofBackend::commit(QofInstance* instance) +{ + if (qof_instance_is_dirty(instance)) + qof_instance_mark_clean(instance); +} + void QofBackend::set_error(QofBackendError err) { diff --git a/libgnucash/engine/qof-backend.hpp b/libgnucash/engine/qof-backend.hpp index 5fd51e42dd..aac960252e 100644 --- a/libgnucash/engine/qof-backend.hpp +++ b/libgnucash/engine/qof-backend.hpp @@ -220,7 +220,7 @@ public: /** * Commits the changes from the engine to the backend data storage. */ - virtual void commit (QofInstance*) {} + virtual void commit (QofInstance*); /** * Revert changes in the engine and unlock the backend. */ diff --git a/libgnucash/engine/qofinstance.cpp b/libgnucash/engine/qofinstance.cpp index 9f2952f3c4..980e43bf9e 100644 --- a/libgnucash/engine/qofinstance.cpp +++ b/libgnucash/engine/qofinstance.cpp @@ -1030,10 +1030,9 @@ qof_commit_edit_part2(QofInstance *inst, on_error(inst, errcode); return FALSE; } - /* XXX the backend commit code should clear dirty!! */ - priv->dirty = FALSE; + if (!priv->dirty) //Cleared if the save was successful + priv->infant = FALSE; } - priv->infant = FALSE; if (priv->do_free) { diff --git a/libgnucash/engine/test/test-qofinstance.cpp b/libgnucash/engine/test/test-qofinstance.cpp index 301c7e2897..1f979a1615 100644 --- a/libgnucash/engine/test/test-qofinstance.cpp +++ b/libgnucash/engine/test/test-qofinstance.cpp @@ -76,6 +76,8 @@ public: g_assert( commit_test.m_inst == inst ); g_assert( commit_test.m_be == this ); commit_test.m_commit_called = true; + if (qof_instance_is_dirty(inst)) + qof_instance_mark_clean(inst); set_error(m_qof_error); } @@ -569,7 +571,7 @@ test_instance_commit_edit_part2( Fixture *fixture, gconstpointer pData ) result = qof_commit_edit_part2( fixture->inst, NULL, NULL, NULL ); g_assert( result ); g_assert( qof_instance_get_dirty_flag( fixture->inst ) ); - g_assert( !qof_instance_get_infant( fixture->inst ) ); + g_assert( qof_instance_get_infant( fixture->inst ) ); g_assert( !commit_test.m_commit_called ); g_assert( !commit_test.m_commit_with_err_called ); g_assert( !commit_test.m_on_error_called ); @@ -581,6 +583,7 @@ test_instance_commit_edit_part2( Fixture *fixture, gconstpointer pData ) result = qof_commit_edit_part2( fixture->inst, on_error, on_done, on_free ); g_assert( result ); g_assert( qof_instance_get_dirty_flag( fixture->inst ) ); + g_assert( qof_instance_get_infant( fixture->inst ) ); g_assert( !commit_test.m_commit_called ); g_assert( !commit_test.m_commit_with_err_called ); g_assert( !commit_test.m_on_error_called ); @@ -593,6 +596,7 @@ test_instance_commit_edit_part2( Fixture *fixture, gconstpointer pData ) result = qof_commit_edit_part2( fixture->inst, on_error, on_done, on_free ); g_assert( result ); g_assert( qof_instance_get_dirty_flag( fixture->inst ) ); + g_assert( qof_instance_get_infant( fixture->inst ) ); g_assert( !commit_test.m_commit_called ); g_assert( !commit_test.m_commit_with_err_called ); g_assert( !commit_test.m_on_error_called ); @@ -606,6 +610,7 @@ test_instance_commit_edit_part2( Fixture *fixture, gconstpointer pData ) result = qof_commit_edit_part2( fixture->inst, on_error, on_done, on_free ); g_assert( result ); g_assert( !qof_instance_get_dirty_flag( fixture->inst ) ); + g_assert( !qof_instance_get_infant( fixture->inst ) ); g_assert( commit_test.m_commit_called ); g_assert( !commit_test.m_commit_with_err_called ); g_assert( !commit_test.m_on_error_called ); @@ -620,7 +625,7 @@ test_instance_commit_edit_part2( Fixture *fixture, gconstpointer pData ) qof_instance_set_destroying( fixture->inst, TRUE ); result = qof_commit_edit_part2( fixture->inst, on_error, on_done, on_free ); g_assert( !result ); - g_assert( qof_instance_get_dirty_flag( fixture->inst ) ); + g_assert( !qof_instance_get_dirty_flag( fixture->inst ) ); g_assert( !qof_instance_get_destroying( fixture->inst ) ); g_assert( commit_test.m_commit_called ); g_assert( commit_test.m_on_error_called ); From 6ee537e1a7fd053129c7cdaf2b3dcf7d34aa9cfa Mon Sep 17 00:00:00 2001 From: Robert Fewell <14uBobIT@gmail.com> Date: Tue, 20 Oct 2020 14:42:32 +0100 Subject: [PATCH 036/167] Allow the Check&Repair routine to be cancellable from CoA Add a callback for a keypress event when on the Accounts page that checks for the Escape key and presents a dialog to confirm whether to abort the Check&Repair. A similar dialog is used if you decide to quit Gnucash while the Check&Repair is still running. --- gnucash/gnome/gnc-plugin-page-account-tree.c | 80 ++++++++++++++++---- libgnucash/engine/Scrub.c | 6 ++ libgnucash/engine/Scrub.h | 1 + 3 files changed, 73 insertions(+), 14 deletions(-) diff --git a/gnucash/gnome/gnc-plugin-page-account-tree.c b/gnucash/gnome/gnc-plugin-page-account-tree.c index 7d5352c247..07654d1b76 100644 --- a/gnucash/gnome/gnc-plugin-page-account-tree.c +++ b/gnucash/gnome/gnc-plugin-page-account-tree.c @@ -425,6 +425,8 @@ gnc_plugin_page_account_tree_new (void) G_DEFINE_TYPE_WITH_PRIVATE(GncPluginPageAccountTree, gnc_plugin_page_account_tree, GNC_TYPE_PLUGIN_PAGE) +static gboolean show_abort_verify = TRUE; + static void prepare_scrubbing () { @@ -432,21 +434,42 @@ prepare_scrubbing () gnc_set_abort_scrub (FALSE); } +static void +finish_scrubbing (GncWindow *window, gulong handler_id) +{ + g_signal_handler_disconnect (G_OBJECT(window), handler_id); + show_abort_verify = TRUE; + gnc_resume_gui_refresh (); +} + static gboolean -finish (GncPluginPage* page) +gnc_plugin_page_account_finish_pending (GncPluginPage* page) { if (gnc_get_ongoing_scrub ()) { - gboolean ret = gnc_verify_dialog (GTK_WINDOW (gnc_plugin_page_get_window (GNC_PLUGIN_PAGE (page))), FALSE, _("'Check & Repair' is currently running, do you want to abort it?")); - if (ret) + if (show_abort_verify) { - gnc_set_abort_scrub (TRUE); - gnc_resume_gui_refresh (); // This is so quit does not complain about an ongoing operation. - return TRUE; + gboolean ret = gnc_verify_dialog (GTK_WINDOW(gnc_plugin_page_get_window + (GNC_PLUGIN_PAGE(page))), FALSE, + _("'Check & Repair' is currently running, do you want to abort it?")); + + show_abort_verify = FALSE; + + if (ret) + gnc_set_abort_scrub (TRUE); + + return ret; // verify response + } + else + { + if (gnc_get_abort_scrub ()) + return TRUE; // close + else + return FALSE; // no close } - return FALSE; } - return TRUE; + else + return TRUE; // normal close } static void @@ -466,8 +489,7 @@ gnc_plugin_page_account_tree_class_init (GncPluginPageAccountTreeClass *klass) gnc_plugin_class->save_page = gnc_plugin_page_account_tree_save_page; gnc_plugin_class->recreate_page = gnc_plugin_page_account_tree_recreate_page; gnc_plugin_class->focus_page_function = gnc_plugin_page_account_tree_focus_widget; - gnc_plugin_class->finish_pending = finish; - + gnc_plugin_class->finish_pending = gnc_plugin_page_account_finish_pending; plugin_page_signals[ACCOUNT_SELECTED] = g_signal_new ("account_selected", @@ -1955,17 +1977,42 @@ gnc_plugin_page_account_tree_cmd_lots (GtkAction *action, gnc_lot_viewer_dialog (GTK_WINDOW(window), account); } +static gboolean scrub_kp_handler (GtkWidget *widget, GdkEventKey *event, gpointer data) +{ + if (event->length == 0) return FALSE; + + switch (event->keyval) + { + case GDK_KEY_Escape: + { + gboolean abort_scrub = gnc_verify_dialog (GTK_WINDOW(widget), FALSE, + _("'Check & Repair' is currently running, do you want to abort it?")); + + if (abort_scrub) + gnc_set_abort_scrub (TRUE); + + return TRUE; + } + default: + break; + } + return FALSE; +} + static void gnc_plugin_page_account_tree_cmd_scrub (GtkAction *action, GncPluginPageAccountTree *page) { Account *account = gnc_plugin_page_account_tree_get_current_account (page); GncWindow *window; + gulong scrub_kp_handler_ID; g_return_if_fail (account != NULL); prepare_scrubbing (); window = GNC_WINDOW(GNC_PLUGIN_PAGE (page)->window); + scrub_kp_handler_ID = g_signal_connect (G_OBJECT(window), "key-press-event", + G_CALLBACK(scrub_kp_handler), NULL); gnc_window_set_progressbar_window (window); xaccAccountScrubOrphans (account, gnc_window_show_progress); @@ -1977,8 +2024,7 @@ gnc_plugin_page_account_tree_cmd_scrub (GtkAction *action, GncPluginPageAccountT gncScrubBusinessAccount(account, gnc_window_show_progress); - - gnc_resume_gui_refresh (); + finish_scrubbing (window, scrub_kp_handler_ID); } static void @@ -1986,12 +2032,15 @@ gnc_plugin_page_account_tree_cmd_scrub_sub (GtkAction *action, GncPluginPageAcco { Account *account = gnc_plugin_page_account_tree_get_current_account (page); GncWindow *window; + gulong scrub_kp_handler_ID; g_return_if_fail (account != NULL); prepare_scrubbing (); window = GNC_WINDOW(GNC_PLUGIN_PAGE (page)->window); + scrub_kp_handler_ID = g_signal_connect (G_OBJECT(window), "key-press-event", + G_CALLBACK(scrub_kp_handler), NULL); gnc_window_set_progressbar_window (window); xaccAccountTreeScrubOrphans (account, gnc_window_show_progress); @@ -2003,7 +2052,7 @@ gnc_plugin_page_account_tree_cmd_scrub_sub (GtkAction *action, GncPluginPageAcco gncScrubBusinessAccountTree(account, gnc_window_show_progress); - gnc_resume_gui_refresh (); + finish_scrubbing (window, scrub_kp_handler_ID); } static void @@ -2011,10 +2060,13 @@ gnc_plugin_page_account_tree_cmd_scrub_all (GtkAction *action, GncPluginPageAcco { Account *root = gnc_get_current_root_account (); GncWindow *window; + gulong scrub_kp_handler_ID; prepare_scrubbing (); window = GNC_WINDOW(GNC_PLUGIN_PAGE (page)->window); + scrub_kp_handler_ID = g_signal_connect (G_OBJECT(window), "key-press-event", + G_CALLBACK(scrub_kp_handler), NULL); gnc_window_set_progressbar_window (window); xaccAccountTreeScrubOrphans (root, gnc_window_show_progress); @@ -2025,7 +2077,7 @@ gnc_plugin_page_account_tree_cmd_scrub_all (GtkAction *action, GncPluginPageAcco gncScrubBusinessAccountTree(root, gnc_window_show_progress); - gnc_resume_gui_refresh (); + finish_scrubbing (window, scrub_kp_handler_ID); } /** @} */ diff --git a/libgnucash/engine/Scrub.c b/libgnucash/engine/Scrub.c index a16c0cf915..66a261324b 100644 --- a/libgnucash/engine/Scrub.c +++ b/libgnucash/engine/Scrub.c @@ -66,6 +66,12 @@ gnc_set_abort_scrub (gboolean abort) abort_now = abort; } +gboolean +gnc_get_abort_scrub (void) +{ + return abort_now; +} + gboolean gnc_get_ongoing_scrub (void) { diff --git a/libgnucash/engine/Scrub.h b/libgnucash/engine/Scrub.h index bfaea845af..34ec0e5985 100644 --- a/libgnucash/engine/Scrub.h +++ b/libgnucash/engine/Scrub.h @@ -74,6 +74,7 @@ * any scrubbing operation. */ void gnc_set_abort_scrub (gboolean abort); +gboolean gnc_get_abort_scrub (void); /** The gnc_get_ongoing_scrub () method returns TRUE if a scrub operation is ongoing. */ From 122cd682f621396a5e295b2351079f92d76e27a7 Mon Sep 17 00:00:00 2001 From: Robert Fewell <14uBobIT@gmail.com> Date: Tue, 20 Oct 2020 14:43:39 +0100 Subject: [PATCH 037/167] Add some additional places where Check&Repair can be aborted --- libgnucash/engine/Scrub.c | 9 +++++++++ libgnucash/engine/ScrubBusiness.c | 12 ++++++++++++ 2 files changed, 21 insertions(+) diff --git a/libgnucash/engine/Scrub.c b/libgnucash/engine/Scrub.c index 66a261324b..d5007cac1d 100644 --- a/libgnucash/engine/Scrub.c +++ b/libgnucash/engine/Scrub.c @@ -84,6 +84,10 @@ void xaccAccountTreeScrubOrphans (Account *acc, QofPercentageFunc percentagefunc) { if (!acc) return; + + if (abort_now) + (percentagefunc)(NULL, -1.0); + scrub_depth ++; xaccAccountScrubOrphans (acc, percentagefunc); gnc_account_foreach_descendant(acc, @@ -320,6 +324,11 @@ xaccSplitScrub (Split *split) void xaccAccountTreeScrubImbalance (Account *acc, QofPercentageFunc percentagefunc) { + if (!acc) return; + + if (abort_now) + (percentagefunc)(NULL, -1.0); + scrub_depth++; xaccAccountScrubImbalance (acc, percentagefunc); gnc_account_foreach_descendant(acc, diff --git a/libgnucash/engine/ScrubBusiness.c b/libgnucash/engine/ScrubBusiness.c index 60da737949..818cdeae20 100644 --- a/libgnucash/engine/ScrubBusiness.c +++ b/libgnucash/engine/ScrubBusiness.c @@ -38,6 +38,7 @@ #include "Account.h" #include "gncInvoice.h" #include "gncInvoiceP.h" +#include "Scrub.h" #include "Scrub2.h" #include "ScrubBusiness.h" #include "Transaction.h" @@ -614,6 +615,10 @@ gncScrubBusinessAccountLots (Account *acc, QofPercentageFunc percentagefunc) const char *message = _( "Checking business lots in account %s: %u of %u"); if (!acc) return; + + if (gnc_get_abort_scrub()) + (percentagefunc)(NULL, -1.0); + if (FALSE == xaccAccountIsAPARType (xaccAccountGetType (acc))) return; str = xaccAccountGetName(acc); @@ -664,6 +669,10 @@ gncScrubBusinessAccountSplits (Account *acc, QofPercentageFunc percentagefunc) const char *message = _( "Checking business splits in account %s: %u of %u"); if (!acc) return; + + if (gnc_get_abort_scrub()) + (percentagefunc)(NULL, -1.0); + if (FALSE == xaccAccountIsAPARType (xaccAccountGetType (acc))) return; str = xaccAccountGetName(acc); @@ -684,6 +693,9 @@ restart: PINFO("Start processing split %d of %d", curr_split_no + 1, split_count); + if (gnc_get_abort_scrub ()) + break; + if (curr_split_no % 100 == 0) { char *progress_msg = g_strdup_printf (message, str, curr_split_no, split_count); From 1be3b7808ddbcb48f898c7eca47155549ee9d601 Mon Sep 17 00:00:00 2001 From: Robert Fewell <14uBobIT@gmail.com> Date: Tue, 20 Oct 2020 14:44:20 +0100 Subject: [PATCH 038/167] Allow the Check&Repair to be cancellable on a Register page Add a callback for a keypress event when on the Register page that checks for the Escape key and presents a dialog to confirm whether to abort the Check&Repair. A similar dialog is used if you decide to quit Gnucash while the Check&Repair is still running. --- gnucash/gnome/gnc-plugin-page-register.c | 63 ++++++++++++++++++------ 1 file changed, 47 insertions(+), 16 deletions(-) diff --git a/gnucash/gnome/gnc-plugin-page-register.c b/gnucash/gnome/gnc-plugin-page-register.c index 5e36244e39..8e5785f6df 100644 --- a/gnucash/gnome/gnc-plugin-page-register.c +++ b/gnucash/gnome/gnc-plugin-page-register.c @@ -1925,22 +1925,26 @@ gnc_plugin_page_register_update_edit_menu (GncPluginPage* page, gboolean hide) static gboolean abort_scrub = FALSE; static gboolean is_scrubbing = FALSE; +static gboolean show_abort_verify = TRUE; static gboolean finish_scrub (GncPluginPage* page) { + gboolean ret = FALSE; + if (is_scrubbing) { - gboolean ret = gnc_verify_dialog (GTK_WINDOW (gnc_plugin_page_get_window (GNC_PLUGIN_PAGE (page))), FALSE, _("'Check & Repair' is currently running, do you want to abort it?")); + ret = gnc_verify_dialog (GTK_WINDOW(gnc_plugin_page_get_window + (GNC_PLUGIN_PAGE(page))), + FALSE, + _("'Check & Repair' is currently running, do you want to abort it?")); + + show_abort_verify = FALSE; + if (ret) - { abort_scrub = TRUE; - gnc_resume_gui_refresh (); // This is so quit does not complain about an ongoing operation. - return TRUE; - } - return FALSE; } - return TRUE; + return ret; } static gboolean @@ -1953,8 +1957,11 @@ gnc_plugin_page_register_finish_pending (GncPluginPage* page) const gchar* name; gint response; - if (!finish_scrub (page)) - return FALSE; + if (is_scrubbing && show_abort_verify) + { + if (!finish_scrub (page)) + return FALSE; + } reg_page = GNC_PLUGIN_PAGE_REGISTER (page); priv = GNC_PLUGIN_PAGE_REGISTER_GET_PRIVATE (reg_page); @@ -5000,10 +5007,26 @@ gnc_plugin_page_register_cmd_scrub_current (GtkAction* action, gnc_suspend_gui_refresh(); scrub_split (gnc_split_register_get_current_split (reg)); gnc_resume_gui_refresh(); - LEAVE (" "); } +static gboolean +scrub_kp_handler (GtkWidget *widget, GdkEventKey *event, gpointer data) +{ + if (event->length == 0) return FALSE; + + switch (event->keyval) + { + case GDK_KEY_Escape: + abort_scrub = gnc_verify_dialog (GTK_WINDOW(widget), FALSE, + _("'Check & Repair' is currently running, do you want to abort it?")); + return TRUE; + default: + break; + } + return FALSE; +} + static void gnc_plugin_page_register_cmd_scrub_all (GtkAction* action, GncPluginPageRegister* plugin_page) @@ -5013,6 +5036,7 @@ gnc_plugin_page_register_cmd_scrub_all (GtkAction* action, GncWindow* window; GList* node, *splits; gint split_count = 0, curr_split_no = 0; + gulong scrub_kp_handler_ID; const char* message = _ ("Checking splits in current register: %u of %u"); g_return_if_fail (GNC_IS_PLUGIN_PAGE_REGISTER (plugin_page)); @@ -5029,7 +5053,10 @@ gnc_plugin_page_register_cmd_scrub_all (GtkAction* action, gnc_suspend_gui_refresh(); is_scrubbing = TRUE; + abort_scrub = FALSE; window = GNC_WINDOW (GNC_PLUGIN_PAGE (plugin_page)->window); + scrub_kp_handler_ID = g_signal_connect (G_OBJECT (window), "key-press-event", + G_CALLBACK (scrub_kp_handler), NULL); gnc_window_set_progressbar_window (window); splits = qof_query_run (query); @@ -5043,22 +5070,26 @@ gnc_plugin_page_register_cmd_scrub_all (GtkAction* action, PINFO ("Start processing split %d of %d", curr_split_no + 1, split_count); + scrub_split (split); + + PINFO ("Finished processing split %d of %d", + curr_split_no + 1, split_count); + if (curr_split_no % 10 == 0) { char* progress_msg = g_strdup_printf (message, curr_split_no, split_count); gnc_window_show_progress (progress_msg, (100 * curr_split_no) / split_count); g_free (progress_msg); } - - scrub_split (split); - - PINFO ("Finished processing split %d of %d", - curr_split_no + 1, split_count); } + g_signal_handler_disconnect (G_OBJECT(window), scrub_kp_handler_ID); gnc_window_show_progress (NULL, -1.0); - gnc_resume_gui_refresh(); is_scrubbing = FALSE; + show_abort_verify = TRUE; + abort_scrub = FALSE; + + gnc_resume_gui_refresh(); LEAVE (" "); } From 794b31a98e2f58bde5d094409885f74cdc2498a1 Mon Sep 17 00:00:00 2001 From: Robert Fewell <14uBobIT@gmail.com> Date: Tue, 20 Oct 2020 14:45:14 +0100 Subject: [PATCH 039/167] Change Registers abort_scrub to use gnc_*_abort_scrub functions --- gnucash/gnome/gnc-plugin-page-register.c | 21 +++++++++++++-------- 1 file changed, 13 insertions(+), 8 deletions(-) diff --git a/gnucash/gnome/gnc-plugin-page-register.c b/gnucash/gnome/gnc-plugin-page-register.c index 8e5785f6df..9010465af5 100644 --- a/gnucash/gnome/gnc-plugin-page-register.c +++ b/gnucash/gnome/gnc-plugin-page-register.c @@ -1923,7 +1923,6 @@ gnc_plugin_page_register_update_edit_menu (GncPluginPage* page, gboolean hide) gtk_action_set_visible (action, !hide || can_paste); } -static gboolean abort_scrub = FALSE; static gboolean is_scrubbing = FALSE; static gboolean show_abort_verify = TRUE; @@ -1942,7 +1941,7 @@ finish_scrub (GncPluginPage* page) show_abort_verify = FALSE; if (ret) - abort_scrub = TRUE; + gnc_set_abort_scrub (TRUE); } return ret; } @@ -5018,9 +5017,15 @@ scrub_kp_handler (GtkWidget *widget, GdkEventKey *event, gpointer data) switch (event->keyval) { case GDK_KEY_Escape: - abort_scrub = gnc_verify_dialog (GTK_WINDOW(widget), FALSE, - _("'Check & Repair' is currently running, do you want to abort it?")); - return TRUE; + { + gboolean abort_scrub = gnc_verify_dialog (GTK_WINDOW(widget), FALSE, + _("'Check & Repair' is currently running, do you want to abort it?")); + + if (abort_scrub) + gnc_set_abort_scrub (TRUE); + + return TRUE; + } default: break; } @@ -5053,7 +5058,7 @@ gnc_plugin_page_register_cmd_scrub_all (GtkAction* action, gnc_suspend_gui_refresh(); is_scrubbing = TRUE; - abort_scrub = FALSE; + gnc_set_abort_scrub (FALSE); window = GNC_WINDOW (GNC_PLUGIN_PAGE (plugin_page)->window); scrub_kp_handler_ID = g_signal_connect (G_OBJECT (window), "key-press-event", G_CALLBACK (scrub_kp_handler), NULL); @@ -5061,7 +5066,7 @@ gnc_plugin_page_register_cmd_scrub_all (GtkAction* action, splits = qof_query_run (query); split_count = g_list_length (splits); - for (node = splits; node && !abort_scrub; node = node->next, curr_split_no++) + for (node = splits; node && !gnc_get_abort_scrub (); node = node->next, curr_split_no++) { Split* split = node->data; @@ -5087,7 +5092,7 @@ gnc_plugin_page_register_cmd_scrub_all (GtkAction* action, gnc_window_show_progress (NULL, -1.0); is_scrubbing = FALSE; show_abort_verify = TRUE; - abort_scrub = FALSE; + gnc_set_abort_scrub (FALSE); gnc_resume_gui_refresh(); LEAVE (" "); From 8e5e3480ad691b803e9a742d2bd82059a752095b Mon Sep 17 00:00:00 2001 From: Robert Fewell <14uBobIT@gmail.com> Date: Tue, 20 Oct 2020 14:45:44 +0100 Subject: [PATCH 040/167] Bug 797984 - Infinite loop while Check&Repair AR and AP accounts If using the Check&Repair option from the Chart of Accounts on 'Account Receivable or Payable' add has a voided transaction will cause an infinite loop. This occurs from checking the transaction split amount is zero in gncScrubBusinessSplit and trying to delete it. As the transaction is read only as a result of being voided this fails so add a further condition for the 'else if' statement to include !is_void. --- libgnucash/engine/ScrubBusiness.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/libgnucash/engine/ScrubBusiness.c b/libgnucash/engine/ScrubBusiness.c index 818cdeae20..3c02531b50 100644 --- a/libgnucash/engine/ScrubBusiness.c +++ b/libgnucash/engine/ScrubBusiness.c @@ -582,7 +582,7 @@ gncScrubBusinessSplit (Split *split) * Such splits may be the result of scrubbing the business lots, which can * merge splits together while reducing superfluous lot links */ - else if (gnc_numeric_zero_p (xaccSplitGetAmount(split)) && !gncInvoiceGetInvoiceFromTxn (txn)) + else if (gnc_numeric_zero_p (xaccSplitGetAmount(split)) && !gncInvoiceGetInvoiceFromTxn (txn) && !is_void) { GNCLot *lot = xaccSplitGetLot (split); time64 pdate = xaccTransGetDate (txn); From c11f4db96ef1c23903075807bd944731a8eab167 Mon Sep 17 00:00:00 2001 From: Robert Fewell <14uBobIT@gmail.com> Date: Thu, 22 Oct 2020 14:26:50 +0100 Subject: [PATCH 041/167] Bug 345924 - Report options 'Reset Button' always flags changes If a report is loaded with default settings and the 'Reset button' is pressed the 'OK/Apply' buttons will be enabled which should not happen as there are no changes to be made. Fixed by resetting the changed flag on options load and then comparing the current value to the default one when the 'Reset button' pressed. --- gnucash/gnome-utils/dialog-options.c | 23 +++++++++++++++++++---- libgnucash/app-utils/option-util.c | 26 ++++++++++++++------------ libgnucash/app-utils/option-util.h | 3 ++- 3 files changed, 35 insertions(+), 17 deletions(-) diff --git a/gnucash/gnome-utils/dialog-options.c b/gnucash/gnome-utils/dialog-options.c index 50a654ee05..a9f2ca0ea4 100644 --- a/gnucash/gnome-utils/dialog-options.c +++ b/gnucash/gnome-utils/dialog-options.c @@ -225,7 +225,7 @@ void gnc_option_changed_widget_cb(GtkWidget *widget, GNCOption *option) { gnc_option_set_changed (option, TRUE); - gnc_option_call_option_widget_changed_proc(option); + gnc_option_call_option_widget_changed_proc(option, FALSE); gnc_options_dialog_changed_internal (widget, TRUE); } @@ -369,7 +369,18 @@ gnc_option_set_ui_value_internal (GNCOption *option, gboolean use_default) type = gnc_option_type(option); if (use_default) + { + SCM opt_getter = gnc_option_getter(option); + SCM opt_value = scm_call_0(opt_getter); + SCM def_value; + getter = gnc_option_default_getter(option); + def_value = scm_call_0(getter); + + // only set changed if the values have changed + if (!scm_is_true(scm_equal_p(opt_value, def_value))) + gnc_option_set_changed (option, TRUE); + } else getter = gnc_option_getter(option); @@ -1983,8 +1994,9 @@ gnc_options_dialog_build_contents_full (GNCOptionWin *propertybox, for (j = 0; j < gnc_option_section_num_options(section); j++) { + // setting TRUE will clear the changed flag after proc gnc_option_call_option_widget_changed_proc( - gnc_get_option_section_option(section, j) ); + gnc_get_option_section_option(section, j), TRUE); } } @@ -2106,13 +2118,16 @@ gnc_options_dialog_reset_cb(GtkWidget * w, gpointer data) GNCOptionSection *section; gpointer val; - val = g_object_get_data(G_OBJECT(w), "section"); + val = g_object_get_data (G_OBJECT(w), "section"); g_return_if_fail (val); g_return_if_fail (win); section = (GNCOptionSection*)val; + gnc_option_db_section_reset_widgets (section); - gnc_options_dialog_changed_internal (win->window, TRUE); + + if (gnc_option_db_get_changed (win->option_db)) + gnc_options_dialog_changed_internal (win->window, TRUE); } void diff --git a/libgnucash/app-utils/option-util.c b/libgnucash/app-utils/option-util.c index 3ae27a74cc..42c3b5a191 100644 --- a/libgnucash/app-utils/option-util.c +++ b/libgnucash/app-utils/option-util.c @@ -790,17 +790,19 @@ gnc_option_widget_changed_proc_getter(GNCOption *option) } -/********************************************************************\ - * gnc_option_call_option_widget_changed_proc * - * If there is an option_widget_changed_cb for this option, call * - * it with the SCM value of the option that is passed in. If * - * there is no such callback function or value, do nothing. * - * * - * Args: option - the GNCOption * - * Returns: void * -\********************************************************************/ +/**********************************************************************\ + * gnc_option_call_option_widget_changed_proc * + * If there is an option_widget_changed_cb for this option, call * + * it with the SCM value of the option that is passed in. If * + * there is no such callback function or value, do nothing. * + * * + * Args: option - the GNCOption * + * reset_changed - whether to reset the changed flag afterwards * + * Returns: void * +\**********************************************************************/ void -gnc_option_call_option_widget_changed_proc(GNCOption *option) +gnc_option_call_option_widget_changed_proc (GNCOption *option, + gboolean reset_changed) { SCM cb, value; @@ -815,6 +817,8 @@ gnc_option_call_option_widget_changed_proc(GNCOption *option) scm_call_1(cb, value); } } + if (reset_changed) + option->changed = FALSE; } @@ -1847,9 +1851,7 @@ gnc_option_db_section_reset_widgets (GNCOptionSection *section) option_node = option_node->next) { option = option_node->data; - gnc_option_set_ui_value (option, TRUE); - gnc_option_set_changed (option, TRUE); } } diff --git a/libgnucash/app-utils/option-util.h b/libgnucash/app-utils/option-util.h index 40de7b8a46..ee963ab5fb 100644 --- a/libgnucash/app-utils/option-util.h +++ b/libgnucash/app-utils/option-util.h @@ -130,7 +130,8 @@ gboolean gnc_option_get_color_info(GNCOption *option, gdouble *blue, gdouble *alpha); -void gnc_option_call_option_widget_changed_proc (GNCOption *option); +void gnc_option_call_option_widget_changed_proc (GNCOption *option, + gboolean reset_changed); void gnc_option_set_default(GNCOption *option); From f93f850f17a333105c8a5106aa05517eea0990a0 Mon Sep 17 00:00:00 2001 From: Robert Fewell <14uBobIT@gmail.com> Date: Thu, 22 Oct 2020 14:27:54 +0100 Subject: [PATCH 042/167] Bug 345924 - Conditionally change Options dialog cancel button When the options dialog is loaded, the main buttons are a sensitive 'Cancel' button and insensitive 'OK' and 'Apply' buttons. When changes are made the 'OK' and 'Apply' buttons become sensitive and when pressed the 'OK' button will make changes and close dialog whereas the 'Apply' button will make changes and the dialog will remain open but with these buttons insensitive leaving just 'Cancel' sensitive. This could be confusing so this commit changes conditionally the text label of the 'Cancel' button between 'Cancel' and 'Close'. --- gnucash/gnome-utils/dialog-options.c | 14 ++++++++++++++ 1 file changed, 14 insertions(+) diff --git a/gnucash/gnome-utils/dialog-options.c b/gnucash/gnome-utils/dialog-options.c index a9f2ca0ea4..511413a034 100644 --- a/gnucash/gnome-utils/dialog-options.c +++ b/gnucash/gnome-utils/dialog-options.c @@ -175,6 +175,8 @@ gnc_option_get_gtk_widget (GNCOption *option) static void gnc_options_dialog_changed_internal (GtkWidget *widget, gboolean sensitive) { + GtkButton *button = NULL; + while (widget && !GTK_IS_WINDOW(widget)) widget = gtk_widget_get_parent(widget); if (widget == NULL) @@ -202,6 +204,9 @@ gnc_options_dialog_changed_internal (GtkWidget *widget, gboolean sensitive) if (g_strcmp0 (gtk_widget_get_name(GTK_WIDGET(it->data)), "apply_button") == 0) gtk_widget_set_sensitive (GTK_WIDGET(it->data), sensitive); + + if (g_strcmp0 (gtk_widget_get_name(GTK_WIDGET(it->data)), "cancel_button") == 0) + button = GTK_BUTTON(it->data); } g_list_free (children); } @@ -211,6 +216,15 @@ gnc_options_dialog_changed_internal (GtkWidget *widget, gboolean sensitive) } g_list_free (children); } + + if (button) + { + if (sensitive) + gtk_button_set_label (button, _("_Cancel")); + else + gtk_button_set_label (button, _("_Close")); + } + } void From e5886955027dad50b085871e7f8b6a081a506910 Mon Sep 17 00:00:00 2001 From: Robert Fewell <14uBobIT@gmail.com> Date: Thu, 22 Oct 2020 14:30:11 +0100 Subject: [PATCH 043/167] Change source files dialog-options.* for spaces and tabs --- gnucash/gnome-utils/dialog-options.c | 1997 +++++++++++++------------- gnucash/gnome-utils/dialog-options.h | 54 +- 2 files changed, 1011 insertions(+), 1040 deletions(-) diff --git a/gnucash/gnome-utils/dialog-options.c b/gnucash/gnome-utils/dialog-options.c index 511413a034..607c1c8de2 100644 --- a/gnucash/gnome-utils/dialog-options.c +++ b/gnucash/gnome-utils/dialog-options.c @@ -142,10 +142,11 @@ typedef struct GtkWidget *gain_loss_account_table; GtkWidget *default_gain_loss_account_text; GNCOption *option; + Account *prior_gain_loss_account; gnc_commodity *retrieved_book_currency; + SCM retrieved_policy_scm; SCM retrieved_gain_loss_acct_guid_scm; - Account *prior_gain_loss_account; } currency_accounting_data; @@ -154,22 +155,22 @@ static currency_accounting_data *book_currency_data = NULL; static GNCOptionWinCallback global_help_cb = NULL; gpointer global_help_cb_data = NULL; -static void gnc_options_dialog_reset_cb(GtkWidget * w, gpointer data); +static void gnc_options_dialog_reset_cb (GtkWidget * w, gpointer data); void gnc_options_dialog_list_select_cb (GtkTreeSelection *selection, gpointer data); -void gnc_set_default_cost_policy_widget(SCM list_symbol); -void gnc_set_default_gain_loss_account_widget(gnc_commodity *commodity); -void gnc_option_changed_book_currency_widget_cb(GtkWidget *widget); -void gnc_option_changed_gain_loss_account_widget_cb(GtkTreeSelection *selection, - gpointer data); +void gnc_set_default_cost_policy_widget (SCM list_symbol); +void gnc_set_default_gain_loss_account_widget (gnc_commodity *commodity); +void gnc_option_changed_book_currency_widget_cb (GtkWidget *widget); +void gnc_option_changed_gain_loss_account_widget_cb (GtkTreeSelection *selection, + gpointer data); void gnc_option_changed_gain_loss_account_del_button_widget_cb (GtkButton *button, - gpointer data); + gpointer data); static void component_close_handler (gpointer data); GtkWidget * gnc_option_get_gtk_widget (GNCOption *option) { - return (GtkWidget *)gnc_option_get_widget(option); + return (GtkWidget *)gnc_option_get_widget (option); } static void @@ -178,7 +179,7 @@ gnc_options_dialog_changed_internal (GtkWidget *widget, gboolean sensitive) GtkButton *button = NULL; while (widget && !GTK_IS_WINDOW(widget)) - widget = gtk_widget_get_parent(widget); + widget = gtk_widget_get_parent (widget); if (widget == NULL) return; @@ -186,26 +187,26 @@ gnc_options_dialog_changed_internal (GtkWidget *widget, gboolean sensitive) this way as opposed to using gtk_container_foreach, much less iteration */ if (GTK_IS_CONTAINER(widget)) { - GList *children = gtk_container_get_children(GTK_CONTAINER(widget)); + GList *children = gtk_container_get_children (GTK_CONTAINER(widget)); for (GList *it = children; it; it = it->next) { - if (GTK_IS_BOX (GTK_WIDGET(it->data))) + if (GTK_IS_BOX(GTK_WIDGET(it->data))) { - GList *children = gtk_container_get_children(GTK_CONTAINER(it->data)); + GList *children = gtk_container_get_children (GTK_CONTAINER(it->data)); for (GList *it = children; it; it = it->next) { - if (GTK_IS_BUTTON_BOX (GTK_WIDGET(it->data))) + if (GTK_IS_BUTTON_BOX(GTK_WIDGET(it->data))) { - GList *children = gtk_container_get_children(GTK_CONTAINER(it->data)); + GList *children = gtk_container_get_children (GTK_CONTAINER(it->data)); for (GList *it = children; it; it = it->next) { - if (g_strcmp0 (gtk_widget_get_name(GTK_WIDGET(it->data)), "ok_button") == 0) + if (g_strcmp0 (gtk_widget_get_name (GTK_WIDGET(it->data)), "ok_button") == 0) gtk_widget_set_sensitive (GTK_WIDGET(it->data), sensitive); - if (g_strcmp0 (gtk_widget_get_name(GTK_WIDGET(it->data)), "apply_button") == 0) + if (g_strcmp0 (gtk_widget_get_name (GTK_WIDGET(it->data)), "apply_button") == 0) gtk_widget_set_sensitive (GTK_WIDGET(it->data), sensitive); - if (g_strcmp0 (gtk_widget_get_name(GTK_WIDGET(it->data)), "cancel_button") == 0) + if (g_strcmp0 (gtk_widget_get_name (GTK_WIDGET(it->data)), "cancel_button") == 0) button = GTK_BUTTON(it->data); } g_list_free (children); @@ -224,7 +225,6 @@ gnc_options_dialog_changed_internal (GtkWidget *widget, gboolean sensitive) else gtk_button_set_label (button, _("_Close")); } - } void @@ -236,25 +236,24 @@ gnc_options_dialog_changed (GNCOptionWin *win) } void -gnc_option_changed_widget_cb(GtkWidget *widget, GNCOption *option) +gnc_option_changed_widget_cb (GtkWidget *widget, GNCOption *option) { gnc_option_set_changed (option, TRUE); - gnc_option_call_option_widget_changed_proc(option, FALSE); + gnc_option_call_option_widget_changed_proc (option, FALSE); gnc_options_dialog_changed_internal (widget, TRUE); } void -gnc_option_changed_option_cb(GtkWidget *dummy, GNCOption *option) +gnc_option_changed_option_cb (GtkWidget *dummy, GNCOption *option) { - GtkWidget *widget; - - widget = gnc_option_get_gtk_widget (option); - gnc_option_changed_widget_cb(widget, option); + GtkWidget *widget = gnc_option_get_gtk_widget (option); + gnc_option_changed_widget_cb (widget, option); } static void -gnc_date_option_set_select_method(GNCOption *option, gboolean use_absolute, - gboolean set_buttons) +gnc_date_option_set_select_method (GNCOption *option, + gboolean use_absolute, + gboolean set_buttons) { GList* widget_list; GtkWidget *ab_button, *rel_button, *rel_widget, *ab_widget; @@ -262,47 +261,43 @@ gnc_date_option_set_select_method(GNCOption *option, gboolean use_absolute, widget = gnc_option_get_gtk_widget (option); - widget_list = gtk_container_get_children(GTK_CONTAINER(widget)); - ab_button = g_list_nth_data(widget_list, GNC_RD_WID_AB_BUTTON_POS); - ab_widget = g_list_nth_data(widget_list, GNC_RD_WID_AB_WIDGET_POS); - rel_button = g_list_nth_data(widget_list, GNC_RD_WID_REL_BUTTON_POS); - rel_widget = g_list_nth_data(widget_list, GNC_RD_WID_REL_WIDGET_POS); - g_list_free(widget_list); + widget_list = gtk_container_get_children (GTK_CONTAINER(widget)); + ab_button = g_list_nth_data (widget_list, GNC_RD_WID_AB_BUTTON_POS); + ab_widget = g_list_nth_data (widget_list, GNC_RD_WID_AB_WIDGET_POS); + rel_button = g_list_nth_data (widget_list, GNC_RD_WID_REL_BUTTON_POS); + rel_widget = g_list_nth_data (widget_list, GNC_RD_WID_REL_WIDGET_POS); + g_list_free (widget_list); if (use_absolute) { - gtk_widget_set_sensitive(ab_widget, TRUE); - gtk_widget_set_sensitive(rel_widget, FALSE); + gtk_widget_set_sensitive (ab_widget, TRUE); + gtk_widget_set_sensitive (rel_widget, FALSE); if (set_buttons) - { - gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(ab_button), TRUE); - } + gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON(ab_button), TRUE); } else { - gtk_widget_set_sensitive(rel_widget, TRUE); - gtk_widget_set_sensitive(ab_widget, FALSE); + gtk_widget_set_sensitive (rel_widget, TRUE); + gtk_widget_set_sensitive (ab_widget, FALSE); if (set_buttons) - { - gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(rel_button), TRUE); - } + gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON(rel_button), TRUE); } } static void -gnc_rd_option_ab_set_cb(GtkWidget *widget, gpointer *raw_option) +gnc_rd_option_ab_set_cb (GtkWidget *widget, gpointer *raw_option) { GNCOption *option = (GNCOption *) raw_option; - gnc_date_option_set_select_method(option, TRUE, FALSE); - gnc_option_changed_option_cb(widget, option); + gnc_date_option_set_select_method (option, TRUE, FALSE); + gnc_option_changed_option_cb (widget, option); } static void -gnc_rd_option_rel_set_cb(GtkWidget *widget, gpointer *raw_option) +gnc_rd_option_rel_set_cb (GtkWidget *widget, gpointer *raw_option) { GNCOption *option = (GNCOption *) raw_option; - gnc_date_option_set_select_method(option, FALSE, FALSE); - gnc_option_changed_option_cb(widget, option); + gnc_date_option_set_select_method (option, FALSE, FALSE); + gnc_option_changed_option_cb (widget, option); return; } @@ -315,14 +310,14 @@ gnc_image_option_update_preview_cb (GtkFileChooser *chooser, GdkPixbuf *pixbuf; gboolean have_preview; - g_return_if_fail(chooser != NULL); + g_return_if_fail (chooser != NULL); ENTER("chooser %p, option %p", chooser, option); - filename = gtk_file_chooser_get_preview_filename(chooser); + filename = gtk_file_chooser_get_preview_filename (chooser); DEBUG("chooser preview name is %s.", filename ? filename : "(null)"); if (filename == NULL) { - filename = g_strdup(g_object_get_data(G_OBJECT(chooser), LAST_SELECTION)); + filename = g_strdup (g_object_get_data (G_OBJECT(chooser), LAST_SELECTION)); DEBUG("using last selection of %s", filename ? filename : "(null)"); if (filename == NULL) { @@ -331,16 +326,16 @@ gnc_image_option_update_preview_cb (GtkFileChooser *chooser, } } - image = GTK_IMAGE(gtk_file_chooser_get_preview_widget(chooser)); - pixbuf = gdk_pixbuf_new_from_file_at_size(filename, 128, 128, NULL); - g_free(filename); + image = GTK_IMAGE(gtk_file_chooser_get_preview_widget (chooser)); + pixbuf = gdk_pixbuf_new_from_file_at_size (filename, 128, 128, NULL); + g_free (filename); have_preview = (pixbuf != NULL); - gtk_image_set_from_pixbuf(image, pixbuf); + gtk_image_set_from_pixbuf (image, pixbuf); if (pixbuf) - g_object_unref(pixbuf); + g_object_unref (pixbuf); - gtk_file_chooser_set_preview_widget_active(chooser, have_preview); + gtk_file_chooser_set_preview_widget_active (chooser, have_preview); LEAVE("preview visible is %d", have_preview); } @@ -348,12 +343,10 @@ static void gnc_image_option_selection_changed_cb (GtkFileChooser *chooser, GNCOption *option) { - gchar *filename; - - filename = gtk_file_chooser_get_preview_filename(chooser); + gchar *filename = gtk_file_chooser_get_preview_filename (chooser); if (!filename) return; - g_object_set_data_full(G_OBJECT(chooser), LAST_SELECTION, filename, g_free); + g_object_set_data_full (G_OBJECT(chooser), LAST_SELECTION, filename, g_free); } /********************************************************************\ @@ -380,41 +373,37 @@ gnc_option_set_ui_value_internal (GNCOption *option, gboolean use_default) if (!widget) return; - type = gnc_option_type(option); + type = gnc_option_type (option); if (use_default) { - SCM opt_getter = gnc_option_getter(option); - SCM opt_value = scm_call_0(opt_getter); + SCM opt_getter = gnc_option_getter (option); + SCM opt_value = scm_call_0 (opt_getter); SCM def_value; - getter = gnc_option_default_getter(option); - def_value = scm_call_0(getter); + getter = gnc_option_default_getter (option); + def_value = scm_call_0 (getter); // only set changed if the values have changed - if (!scm_is_true(scm_equal_p(opt_value, def_value))) + if (!scm_is_true (scm_equal_p (opt_value, def_value))) gnc_option_set_changed (option, TRUE); } else - getter = gnc_option_getter(option); + getter = gnc_option_getter (option); - value = scm_call_0(getter); + value = scm_call_0 (getter); option_def = gnc_options_ui_get_option (type); if (option_def && option_def->set_value) { bad_value = option_def->set_value (option, use_default, widget, value); if (bad_value) - { PERR("bad value\n"); - } } else - { PERR("Unknown type. Ignoring.\n"); - } - free(type); + free (type); } /********************************************************************\ @@ -436,19 +425,16 @@ gnc_option_get_ui_value_internal (GNCOption *option) if (!widget) return result; - type = gnc_option_type(option); + type = gnc_option_type (option); option_def = gnc_options_ui_get_option (type); - if (option_def && option_def->get_value) - { - result = option_def->get_value (option, widget); - } - else - { - PERR("Unknown type for refresh. Ignoring.\n"); - } - free(type); + if (option_def && option_def->get_value) + result = option_def->get_value (option, widget); + else + PERR("Unknown type for refresh. Ignoring.\n"); + + free (type); return result; } @@ -477,7 +463,7 @@ gnc_option_set_selectable_internal (GNCOption *option, gboolean selectable) } static void -gnc_option_default_cb(GtkWidget *widget, GNCOption *option) +gnc_option_default_cb (GtkWidget *widget, GNCOption *option) { gnc_option_set_ui_value (option, TRUE); gnc_option_set_changed (option, TRUE); @@ -485,28 +471,28 @@ gnc_option_default_cb(GtkWidget *widget, GNCOption *option) } static void -gnc_option_show_hidden_toggled_cb(GtkWidget *widget, GNCOption* option) +gnc_option_show_hidden_toggled_cb (GtkWidget *widget, GNCOption* option) { AccountViewInfo avi; GncTreeViewAccount *tree_view; tree_view = GNC_TREE_VIEW_ACCOUNT(gnc_option_get_gtk_widget (option)); gnc_tree_view_account_get_view_info (tree_view, &avi); - avi.show_hidden = gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(widget)); + avi.show_hidden = gtk_toggle_button_get_active (GTK_TOGGLE_BUTTON(widget)); gnc_tree_view_account_set_view_info (tree_view, &avi); - gnc_option_changed_widget_cb(widget, option); + gnc_option_changed_widget_cb (widget, option); } static void -gnc_option_multichoice_cb(GtkWidget *widget, gpointer data) +gnc_option_multichoice_cb (GtkWidget *widget, gpointer data) { GNCOption *option = data; /* GtkComboBox per-item tooltip changes needed below */ - gnc_option_changed_widget_cb(widget, option); + gnc_option_changed_widget_cb (widget, option); } static void -gnc_option_radiobutton_cb(GtkWidget *w, gpointer data) +gnc_option_radiobutton_cb (GtkWidget *w, gpointer data) { GNCOption *option = data; GtkWidget *widget; @@ -515,24 +501,24 @@ gnc_option_radiobutton_cb(GtkWidget *w, gpointer data) widget = gnc_option_get_gtk_widget (option); - _current = g_object_get_data(G_OBJECT(widget), "gnc_radiobutton_index"); - current = GPOINTER_TO_INT (_current); + _current = g_object_get_data (G_OBJECT(widget), "gnc_radiobutton_index"); + current = GPOINTER_TO_INT(_current); _new_value = g_object_get_data (G_OBJECT(w), "gnc_radiobutton_index"); - new_value = GPOINTER_TO_INT (_new_value); + new_value = GPOINTER_TO_INT(_new_value); if (current == new_value) return; g_object_set_data (G_OBJECT(widget), "gnc_radiobutton_index", GINT_TO_POINTER(new_value)); - gnc_option_changed_widget_cb(widget, option); + gnc_option_changed_widget_cb (widget, option); } static gboolean gnc_gain_loss_account_view_filter (Account *account, gpointer data) { - GNCAccountType type = xaccAccountGetType(account); + GNCAccountType type = xaccAccountGetType (account); /* gain/loss accts must be an Income or Expense accts and not hidden; placeholder accounts must be included, irrespective of their currency, @@ -540,11 +526,11 @@ gnc_gain_loss_account_view_filter (Account *account, gpointer data) if (((type == ACCT_TYPE_INCOME) || (type == ACCT_TYPE_EXPENSE)) && (!xaccAccountIsHidden(account))) { - if (xaccAccountGetPlaceholder(account)) + if (xaccAccountGetPlaceholder (account)) { GList *placeholder_children = gnc_account_get_children (account); - if(placeholder_children) + if (placeholder_children) { /* determine if any children qualify; just need one but don't double count in gain_loss_accounts_in_filter */ int saved_gain_loss_accounts_in_filter = @@ -555,11 +541,11 @@ gnc_gain_loss_account_view_filter (Account *account, gpointer data) { Account *child_account = l->data; child_pass_filter = - gnc_gain_loss_account_view_filter(child_account, NULL); + gnc_gain_loss_account_view_filter (child_account, NULL); if (child_pass_filter) break; } - g_list_free(placeholder_children); + g_list_free (placeholder_children); gain_loss_accounts_in_filter = saved_gain_loss_accounts_in_filter; return child_pass_filter; @@ -572,14 +558,15 @@ gnc_gain_loss_account_view_filter (Account *account, gpointer data) /* gain/loss accts must be in book-currency; if a book currency has been specified in the widget, use it to filter */ - if (gtk_combo_box_get_active (GTK_COMBO_BOX(book_currency_data->book_currency_widget)) != -1) - commodity = gnc_currency_edit_get_currency( + if (gtk_combo_box_get_active (GTK_COMBO_BOX( + book_currency_data->book_currency_widget)) != -1) + commodity = gnc_currency_edit_get_currency ( GNC_CURRENCY_EDIT( book_currency_data->book_currency_widget)); if (commodity) { - if (gnc_commodity_equal(xaccAccountGetCommodity(account), - commodity)) + if (gnc_commodity_equal (xaccAccountGetCommodity (account), + commodity)) { gain_loss_accounts_in_filter++; return TRUE; @@ -587,8 +574,8 @@ gnc_gain_loss_account_view_filter (Account *account, gpointer data) else return FALSE; } /* else use the default currency */ - else if (gnc_commodity_equal(xaccAccountGetCommodity(account), - gnc_default_currency())) + else if (gnc_commodity_equal (xaccAccountGetCommodity (account), + gnc_default_currency ())) { gain_loss_accounts_in_filter++; return TRUE; @@ -606,9 +593,9 @@ gnc_gain_loss_account_all_fail_filter (Account *account, gpointer data) } void -gnc_set_default_cost_policy_widget(SCM list_symbol) +gnc_set_default_cost_policy_widget (SCM list_symbol) { - GList *list_of_policies = gnc_get_valid_policy_list(); + GList *list_of_policies = gnc_get_valid_policy_list (); if (list_of_policies) { @@ -617,18 +604,18 @@ gnc_set_default_cost_policy_widget(SCM list_symbol) for (l = list_of_policies; l != NULL; l = l->next) { GNCPolicy *pcy = l->data; - if (g_strcmp0(PolicyGetName (pcy), - gnc_scm_symbol_to_locale_string(list_symbol)) - == 0) + if (g_strcmp0 (PolicyGetName (pcy), + gnc_scm_symbol_to_locale_string (list_symbol)) + == 0) { /* GtkComboBox per-item tooltip changes needed below */ - gnc_combott_set_active( + gnc_combott_set_active ( GNC_COMBOTT( book_currency_data->default_cost_policy_widget), i); } i++; } - g_list_free(list_of_policies); + g_list_free (list_of_policies); } else { @@ -638,7 +625,7 @@ gnc_set_default_cost_policy_widget(SCM list_symbol) } void -gnc_set_default_gain_loss_account_widget(gnc_commodity *commodity) +gnc_set_default_gain_loss_account_widget (gnc_commodity *commodity) { if (book_currency_data->default_gain_loss_account_widget) { @@ -660,10 +647,10 @@ gnc_set_default_gain_loss_account_widget(gnc_commodity *commodity) book_currency_data->default_gain_loss_account_text); book_currency_data->default_gain_loss_account_text = NULL; } - if (gnc_is_new_book()) + if (gnc_is_new_book ()) { book_currency_data->default_gain_loss_account_text = - gtk_label_new( _("Because no accounts have " \ + gtk_label_new ( _("Because no accounts have " \ "been set up yet, you will need to return to this " \ "dialog (via File->Properties), after account setup, " \ "if you want to set a default gain/loss account.") ); @@ -677,15 +664,15 @@ gnc_set_default_gain_loss_account_widget(gnc_commodity *commodity) { GtkTreeSelection *selection = NULL; book_currency_data->default_gain_loss_account_widget = - GTK_WIDGET(gnc_tree_view_account_new(FALSE)); + GTK_WIDGET(gnc_tree_view_account_new (FALSE)); gain_loss_accounts_in_filter = 0; - selection = gtk_tree_view_get_selection(GTK_TREE_VIEW( + selection = gtk_tree_view_get_selection (GTK_TREE_VIEW( book_currency_data->default_gain_loss_account_widget)); if (!commodity) // that means not book currency { /* set the default_gain_loss_account_widget to be blank with a no-acct filter */ - gnc_tree_view_account_set_filter(GNC_TREE_VIEW_ACCOUNT ( + gnc_tree_view_account_set_filter (GNC_TREE_VIEW_ACCOUNT( book_currency_data->default_gain_loss_account_widget), gnc_gain_loss_account_all_fail_filter, NULL, /* user data */ @@ -695,7 +682,7 @@ gnc_set_default_gain_loss_account_widget(gnc_commodity *commodity) else // that means book currency { /* see if there are any accounts after filter */ - gnc_tree_view_account_set_filter(GNC_TREE_VIEW_ACCOUNT ( + gnc_tree_view_account_set_filter (GNC_TREE_VIEW_ACCOUNT( book_currency_data->default_gain_loss_account_widget), gnc_gain_loss_account_view_filter, NULL, /* user data */ @@ -707,12 +694,12 @@ gnc_set_default_gain_loss_account_widget(gnc_commodity *commodity) GtkTreeViewColumn *col; book_currency_data->gain_loss_account_del_button = - gtk_button_new_with_label( _("Select no account") ); + gtk_button_new_with_label ( _("Select no account") ); - g_signal_connect (GTK_BUTTON ( + g_signal_connect (GTK_BUTTON( book_currency_data->gain_loss_account_del_button), "clicked", - G_CALLBACK ( + G_CALLBACK( gnc_option_changed_gain_loss_account_del_button_widget_cb), NULL); gtk_grid_attach (GTK_GRID(book_currency_data->gain_loss_account_table), @@ -721,7 +708,7 @@ gnc_set_default_gain_loss_account_widget(gnc_commodity *commodity) gtk_tree_view_set_headers_visible (GTK_TREE_VIEW( book_currency_data->default_gain_loss_account_widget), TRUE); - col = gnc_tree_view_add_text_column(GNC_TREE_VIEW( + col = gnc_tree_view_add_text_column (GNC_TREE_VIEW( book_currency_data->default_gain_loss_account_widget), _("Currency"), /* title */ "commodity", /* pref name */ @@ -730,14 +717,14 @@ gnc_set_default_gain_loss_account_widget(gnc_commodity *commodity) GNC_TREE_MODEL_ACCOUNT_COL_COMMODITY, GNC_TREE_VIEW_COLUMN_VISIBLE_ALWAYS, NULL); - g_object_set_data(G_OBJECT(col), DEFAULT_VISIBLE, - GINT_TO_POINTER(1)); + g_object_set_data (G_OBJECT(col), DEFAULT_VISIBLE, + GINT_TO_POINTER(1)); // add the color background data function to the column gnc_tree_view_account_column_add_color (GNC_TREE_VIEW_ACCOUNT( book_currency_data->default_gain_loss_account_widget), col); - col = gnc_tree_view_add_toggle_column(GNC_TREE_VIEW( + col = gnc_tree_view_add_toggle_column (GNC_TREE_VIEW( book_currency_data->default_gain_loss_account_widget), _("Placeholder"), C_("Column header for 'Placeholder'", "P"), @@ -746,7 +733,7 @@ gnc_set_default_gain_loss_account_widget(gnc_commodity *commodity) GNC_TREE_VIEW_COLUMN_VISIBLE_ALWAYS, NULL, NULL); - g_object_set_data(G_OBJECT(col), DEFAULT_VISIBLE, + g_object_set_data (G_OBJECT(col), DEFAULT_VISIBLE, GINT_TO_POINTER(1)); // add the color background data function to the column @@ -755,21 +742,21 @@ gnc_set_default_gain_loss_account_widget(gnc_commodity *commodity) gnc_tree_view_configure_columns (GNC_TREE_VIEW( book_currency_data->default_gain_loss_account_widget)); - gnc_tree_view_set_show_column_menu(GNC_TREE_VIEW( + gnc_tree_view_set_show_column_menu (GNC_TREE_VIEW( book_currency_data->default_gain_loss_account_widget), FALSE); if (book_currency_data->retrieved_gain_loss_acct_guid_scm && - (scm_is_string( + (scm_is_string ( book_currency_data->retrieved_gain_loss_acct_guid_scm))) { GncGUID *guid= g_new (GncGUID, 1); if (string_to_guid ( - gnc_scm_to_utf8_string( + gnc_scm_to_utf8_string ( book_currency_data->retrieved_gain_loss_acct_guid_scm), guid)) gain_loss_account = - xaccAccountLookup(guid, gnc_get_current_book()); + xaccAccountLookup (guid, gnc_get_current_book ()); g_free (guid); } if (gain_loss_account) @@ -779,22 +766,22 @@ gnc_set_default_gain_loss_account_widget(gnc_commodity *commodity) book_currency_data->default_gain_loss_account_widget), gain_loss_account)); selected_account = - gnc_tree_view_account_get_selected_account( - GNC_TREE_VIEW_ACCOUNT ( + gnc_tree_view_account_get_selected_account ( + GNC_TREE_VIEW_ACCOUNT( book_currency_data->default_gain_loss_account_widget)); } if (selected_account) { book_currency_data->prior_gain_loss_account = selected_account; - gtk_widget_set_sensitive( + gtk_widget_set_sensitive ( book_currency_data->gain_loss_account_del_button, TRUE); } else /* none selected */ { gtk_tree_selection_unselect_all (selection); - gtk_widget_set_sensitive( + gtk_widget_set_sensitive ( book_currency_data->gain_loss_account_del_button, FALSE); } @@ -807,7 +794,7 @@ gnc_set_default_gain_loss_account_widget(gnc_commodity *commodity) book_currency_data->prior_gain_loss_account = NULL; gain_loss_accounts_in_filter = 0; book_currency_data->default_gain_loss_account_text = - gtk_label_new( _("There are no income " \ + gtk_label_new ( _("There are no income " \ "or expense accounts of the specified\n" \ "book currency; you will have to return to this " \ "dialog\n(via File->Properties), after account setup, " \ @@ -819,60 +806,59 @@ gnc_set_default_gain_loss_account_widget(gnc_commodity *commodity) if (book_currency_data->default_gain_loss_account_widget) { gtk_widget_set_hexpand (GTK_WIDGET(book_currency_data->default_gain_loss_account_widget), TRUE); - g_signal_connect (G_OBJECT (selection), - "changed", - G_CALLBACK (gnc_option_changed_gain_loss_account_widget_cb), - NULL); + g_signal_connect (G_OBJECT(selection), + "changed", + G_CALLBACK(gnc_option_changed_gain_loss_account_widget_cb), + NULL); gtk_grid_attach (GTK_GRID(book_currency_data->gain_loss_account_table), book_currency_data->default_gain_loss_account_widget, 0, 1, 2, 1); - } } } void -gnc_option_changed_book_currency_widget_cb(GtkWidget *widget) +gnc_option_changed_book_currency_widget_cb (GtkWidget *widget) { /* Once the book currency widget is set, need to set the default_gain_loss_account_widget and/or del-button or text*/ if (gtk_combo_box_get_active (GTK_COMBO_BOX(book_currency_data->book_currency_widget)) != -1) { - gnc_commodity *commodity = gnc_currency_edit_get_currency( - GNC_CURRENCY_EDIT( - book_currency_data->book_currency_widget)); + gnc_commodity *commodity = gnc_currency_edit_get_currency ( + GNC_CURRENCY_EDIT( + book_currency_data->book_currency_widget)); - gnc_set_default_gain_loss_account_widget(commodity); + gnc_set_default_gain_loss_account_widget (commodity); } - gtk_widget_show_all(book_currency_data->book_currency_vbox); - gnc_option_changed_widget_cb(widget, book_currency_data->option); + gtk_widget_show_all (book_currency_data->book_currency_vbox); + gnc_option_changed_widget_cb (widget, book_currency_data->option); } void gnc_option_changed_gain_loss_account_widget_cb (GtkTreeSelection *selection, - gpointer data) + gpointer data) { Account *account = NULL; gboolean new_eq_prior_acct = FALSE; g_return_if_fail (book_currency_data->default_gain_loss_account_widget); account = gnc_tree_view_account_get_selected_account ( - GNC_TREE_VIEW_ACCOUNT ( + GNC_TREE_VIEW_ACCOUNT( book_currency_data->default_gain_loss_account_widget)); if (account && book_currency_data->prior_gain_loss_account) - new_eq_prior_acct = xaccAccountEqual(account, + new_eq_prior_acct = xaccAccountEqual (account, book_currency_data->prior_gain_loss_account, TRUE); if (account && (!new_eq_prior_acct)) { /* a new account has been selected */ - if (!xaccAccountGetPlaceholder(account)) + if (!xaccAccountGetPlaceholder (account)) { GtkWidget *option_widget = gnc_option_get_gtk_widget (book_currency_data->option); book_currency_data->prior_gain_loss_account = account; - gtk_widget_set_sensitive( + gtk_widget_set_sensitive ( book_currency_data->gain_loss_account_del_button, TRUE); - gtk_widget_show_all(book_currency_data->book_currency_vbox); - gnc_option_changed_option_cb(option_widget, book_currency_data->option); + gtk_widget_show_all (book_currency_data->book_currency_vbox); + gnc_option_changed_option_cb (option_widget, book_currency_data->option); } else /* new account, but placeholder */ { @@ -902,7 +888,7 @@ gnc_option_changed_gain_loss_account_widget_cb (GtkTreeSelection *selection, gtk_tree_selection_unselect_all (selection); if (book_currency_data->gain_loss_account_del_button) { - gtk_widget_set_sensitive( + gtk_widget_set_sensitive ( book_currency_data->gain_loss_account_del_button, FALSE); } } @@ -910,7 +896,8 @@ gnc_option_changed_gain_loss_account_widget_cb (GtkTreeSelection *selection, } void -gnc_option_changed_gain_loss_account_del_button_widget_cb (GtkButton *button, gpointer data) +gnc_option_changed_gain_loss_account_del_button_widget_cb (GtkButton *button, + gpointer data) { GtkTreeSelection *selection = NULL; GtkWidget *option_widget = @@ -920,36 +907,36 @@ gnc_option_changed_gain_loss_account_del_button_widget_cb (GtkButton *button, gp g_return_if_fail (book_currency_data->gain_loss_account_del_button); selection = gtk_tree_view_get_selection ( - GTK_TREE_VIEW ( + GTK_TREE_VIEW( book_currency_data->default_gain_loss_account_widget)); gtk_tree_selection_unselect_all (selection); book_currency_data->prior_gain_loss_account = NULL; - gtk_widget_set_sensitive( + gtk_widget_set_sensitive ( book_currency_data->gain_loss_account_del_button, FALSE); - gnc_option_changed_option_cb(option_widget, book_currency_data->option); + gnc_option_changed_option_cb (option_widget, book_currency_data->option); } static void -gnc_option_currency_accounting_non_book_cb(GtkWidget *widget, gpointer data) +gnc_option_currency_accounting_non_book_cb (GtkWidget *widget, gpointer data) { gnc_currency_edit_clear_display (GNC_CURRENCY_EDIT( book_currency_data->book_currency_widget)); - gnc_combott_set_active(GNC_COMBOTT( - book_currency_data->default_cost_policy_widget), - -1); - gnc_set_default_gain_loss_account_widget(NULL); - gtk_widget_show_all(book_currency_data->book_currency_vbox); - gtk_widget_set_sensitive(book_currency_data->book_currency_vbox, FALSE); - gnc_option_radiobutton_cb(widget, (gpointer) book_currency_data->option); + gnc_combott_set_active (GNC_COMBOTT( + book_currency_data->default_cost_policy_widget), + -1); + gnc_set_default_gain_loss_account_widget (NULL); + gtk_widget_show_all (book_currency_data->book_currency_vbox); + gtk_widget_set_sensitive (book_currency_data->book_currency_vbox, FALSE); + gnc_option_radiobutton_cb (widget, (gpointer) book_currency_data->option); } static void -gnc_option_currency_accounting_book_cb(GtkWidget *widget, gpointer data) +gnc_option_currency_accounting_book_cb (GtkWidget *widget, gpointer data) { SCM list_symbol = - gnc_currency_accounting_option_get_default_policy( + gnc_currency_accounting_option_get_default_policy ( book_currency_data->option); - SCM curr_scm = gnc_currency_accounting_option_get_default_currency( + SCM curr_scm = gnc_currency_accounting_option_get_default_currency ( book_currency_data->option); gnc_commodity *commodity = gnc_scm_to_commodity (curr_scm); @@ -957,32 +944,32 @@ gnc_option_currency_accounting_book_cb(GtkWidget *widget, gpointer data) { gnc_currency_edit_set_currency (GNC_CURRENCY_EDIT(book_currency_data->book_currency_widget), - book_currency_data->retrieved_book_currency); + book_currency_data->retrieved_book_currency); } else if (commodity) { gnc_currency_edit_set_currency (GNC_CURRENCY_EDIT(book_currency_data->book_currency_widget), - commodity); + commodity); } else { gnc_currency_edit_set_currency (GNC_CURRENCY_EDIT(book_currency_data->book_currency_widget), - gnc_default_currency()); + gnc_default_currency()); } if (book_currency_data->retrieved_policy_scm) { - gnc_set_default_cost_policy_widget( + gnc_set_default_cost_policy_widget ( book_currency_data->retrieved_policy_scm); } else { - gnc_set_default_cost_policy_widget(list_symbol); + gnc_set_default_cost_policy_widget (list_symbol); } - gtk_widget_show_all(book_currency_data->book_currency_vbox); - gtk_widget_set_sensitive(book_currency_data->book_currency_vbox, TRUE); - gnc_option_radiobutton_cb(widget, (gpointer) book_currency_data->option); + gtk_widget_show_all (book_currency_data->book_currency_vbox); + gtk_widget_set_sensitive (book_currency_data->book_currency_vbox, TRUE); + gnc_option_radiobutton_cb (widget, (gpointer) book_currency_data->option); } static GtkWidget * @@ -996,30 +983,30 @@ gnc_option_create_date_widget (GNCOption *option) char *type; int num_values; - type = gnc_option_date_option_get_subtype(option); - show_time = gnc_option_show_time(option); - use24 = gnc_prefs_get_bool(GNC_PREFS_GROUP_GENERAL, GNC_PREF_CLOCK_24H); + type = gnc_option_date_option_get_subtype (option); + show_time = gnc_option_show_time (option); + use24 = gnc_prefs_get_bool (GNC_PREFS_GROUP_GENERAL, GNC_PREF_CLOCK_24H); - if (g_strcmp0(type, "relative") != 0) + if (g_strcmp0 (type, "relative") != 0) { - ab_widget = gnc_date_edit_new(time(NULL), show_time, use24); + ab_widget = gnc_date_edit_new (time (NULL), show_time, use24); entry = GNC_DATE_EDIT(ab_widget)->date_entry; - g_signal_connect(G_OBJECT(entry), "changed", - G_CALLBACK(gnc_option_changed_option_cb), option); + g_signal_connect (G_OBJECT(entry), "changed", + G_CALLBACK(gnc_option_changed_option_cb), option); if (show_time) { entry = GNC_DATE_EDIT(ab_widget)->time_entry; - g_signal_connect(G_OBJECT(entry), "changed", - G_CALLBACK(gnc_option_changed_option_cb), option); + g_signal_connect (G_OBJECT(entry), "changed", + G_CALLBACK(gnc_option_changed_option_cb), option); } } - if (g_strcmp0(type, "absolute") != 0) + if (g_strcmp0 (type, "absolute") != 0) { int i; - num_values = gnc_option_num_permissible_values(option); + num_values = gnc_option_num_permissible_values (option); - g_return_val_if_fail(num_values >= 0, NULL); + g_return_val_if_fail (num_values >= 0, NULL); { /* GtkComboBox still does not support per-item tooltips, so have @@ -1033,100 +1020,98 @@ gnc_option_create_date_widget (GNCOption *option) char *itemstring; char *description; - store = gtk_list_store_new(2, G_TYPE_STRING, G_TYPE_STRING); + store = gtk_list_store_new (2, G_TYPE_STRING, G_TYPE_STRING); /* Add values to the list store, entry and tooltip */ for (i = 0; i < num_values; i++) { - itemstring = gnc_option_permissible_value_name(option, i); - description = gnc_option_permissible_value_description(option, i); + itemstring = gnc_option_permissible_value_name (option, i); + description = gnc_option_permissible_value_description (option, i); gtk_list_store_append (store, &iter); gtk_list_store_set (store, &iter, 0, itemstring, 1, description, -1); if (itemstring) - g_free(itemstring); + g_free (itemstring); if (description) - g_free(description); + g_free (description); } /* Create the new Combo with tooltip and add the store */ - rel_widget = GTK_WIDGET(gnc_combott_new()); - g_object_set( G_OBJECT(rel_widget), "model", GTK_TREE_MODEL(store), NULL ); - g_object_unref(store); + rel_widget = GTK_WIDGET(gnc_combott_new ()); + g_object_set (G_OBJECT(rel_widget), "model", GTK_TREE_MODEL(store), NULL ); + g_object_unref (store); - g_signal_connect(G_OBJECT(rel_widget), "changed", - G_CALLBACK(gnc_option_multichoice_cb), option); + g_signal_connect (G_OBJECT(rel_widget), "changed", + G_CALLBACK(gnc_option_multichoice_cb), option); } } - if (g_strcmp0(type, "absolute") == 0) + if (g_strcmp0 (type, "absolute") == 0) { - free(type); + free (type); gnc_option_set_widget (option, ab_widget); return ab_widget; } - else if (g_strcmp0(type, "relative") == 0) + else if (g_strcmp0 (type, "relative") == 0) { gnc_option_set_widget (option, rel_widget); - free(type); + free (type); return rel_widget; } - else if (g_strcmp0(type, "both") == 0) + else if (g_strcmp0 (type, "both") == 0) { box = gtk_box_new (GTK_ORIENTATION_HORIZONTAL, 5); - gtk_box_set_homogeneous (GTK_BOX (box), FALSE); + gtk_box_set_homogeneous (GTK_BOX(box), FALSE); - ab_button = gtk_radio_button_new(NULL); - g_signal_connect(G_OBJECT(ab_button), "toggled", - G_CALLBACK(gnc_rd_option_ab_set_cb), option); + ab_button = gtk_radio_button_new (NULL); + g_signal_connect (G_OBJECT(ab_button), "toggled", + G_CALLBACK(gnc_rd_option_ab_set_cb), option); - rel_button = gtk_radio_button_new_from_widget(GTK_RADIO_BUTTON(ab_button)); - g_signal_connect(G_OBJECT(rel_button), "toggled", - G_CALLBACK(gnc_rd_option_rel_set_cb), option); + rel_button = gtk_radio_button_new_from_widget (GTK_RADIO_BUTTON(ab_button)); + g_signal_connect (G_OBJECT(rel_button), "toggled", + G_CALLBACK(gnc_rd_option_rel_set_cb), option); - gtk_box_pack_start(GTK_BOX(box), ab_button, FALSE, FALSE, 0); - gtk_box_pack_start(GTK_BOX(box), ab_widget, FALSE, FALSE, 0); - gtk_box_pack_start(GTK_BOX(box), rel_button, FALSE, FALSE, 0); - gtk_box_pack_start(GTK_BOX(box), rel_widget, FALSE, FALSE, 0); + gtk_box_pack_start (GTK_BOX(box), ab_button, FALSE, FALSE, 0); + gtk_box_pack_start (GTK_BOX(box), ab_widget, FALSE, FALSE, 0); + gtk_box_pack_start (GTK_BOX(box), rel_button, FALSE, FALSE, 0); + gtk_box_pack_start (GTK_BOX(box), rel_widget, FALSE, FALSE, 0); - free(type); + free (type); gnc_option_set_widget (option, box); return box; } else /* can't happen */ - { return NULL; - } } static GtkWidget * -gnc_option_create_budget_widget(GNCOption *option) +gnc_option_create_budget_widget (GNCOption *option) { GtkTreeModel *tm; GtkComboBox *cb; GtkCellRenderer *cr; - tm = gnc_tree_model_budget_new(gnc_get_current_book()); - cb = GTK_COMBO_BOX(gtk_combo_box_new_with_model(tm)); - g_object_unref(tm); - cr = gtk_cell_renderer_text_new(); - gtk_cell_layout_pack_start(GTK_CELL_LAYOUT(cb), cr, TRUE); + tm = gnc_tree_model_budget_new (gnc_get_current_book()); + cb = GTK_COMBO_BOX(gtk_combo_box_new_with_model (tm)); + g_object_unref (tm); + cr = gtk_cell_renderer_text_new (); + gtk_cell_layout_pack_start (GTK_CELL_LAYOUT(cb), cr, TRUE); - gtk_cell_layout_set_attributes(GTK_CELL_LAYOUT(cb), cr, "text", - BUDGET_NAME_COLUMN, NULL); + gtk_cell_layout_set_attributes (GTK_CELL_LAYOUT(cb), cr, "text", + BUDGET_NAME_COLUMN, NULL); return GTK_WIDGET(cb); } static GtkWidget * -gnc_option_create_multichoice_widget(GNCOption *option) +gnc_option_create_multichoice_widget (GNCOption *option) { GtkWidget *widget; int num_values; int i; - num_values = gnc_option_num_permissible_values(option); + num_values = gnc_option_num_permissible_values (option); - g_return_val_if_fail(num_values >= 0, NULL); + g_return_val_if_fail (num_values >= 0, NULL); { /* GtkComboBox still does not support per-item tooltips, so have @@ -1139,35 +1124,34 @@ gnc_option_create_multichoice_widget(GNCOption *option) char *itemstring; char *description; - store = gtk_list_store_new(2, G_TYPE_STRING, G_TYPE_STRING); + store = gtk_list_store_new (2, G_TYPE_STRING, G_TYPE_STRING); /* Add values to the list store, entry and tooltip */ for (i = 0; i < num_values; i++) { - itemstring = gnc_option_permissible_value_name(option, i); - description = gnc_option_permissible_value_description(option, i); + itemstring = gnc_option_permissible_value_name (option, i); + description = gnc_option_permissible_value_description (option, i); gtk_list_store_append (store, &iter); gtk_list_store_set (store, &iter, 0, (itemstring && *itemstring) ? _(itemstring) : "", 1, (description && *description) ? _(description) : "", -1); if (itemstring) - g_free(itemstring); + g_free (itemstring); if (description) - g_free(description); + g_free (description); } /* Create the new Combo with tooltip and add the store */ - widget = GTK_WIDGET(gnc_combott_new()); - g_object_set( G_OBJECT( widget ), "model", GTK_TREE_MODEL(store), NULL ); - g_object_unref(store); + widget = GTK_WIDGET(gnc_combott_new ()); + g_object_set (G_OBJECT( widget ), "model", GTK_TREE_MODEL(store), NULL ); + g_object_unref (store); - g_signal_connect(G_OBJECT(widget), "changed", - G_CALLBACK(gnc_option_multichoice_cb), option); + g_signal_connect (G_OBJECT(widget), "changed", + G_CALLBACK(gnc_option_multichoice_cb), option); } - return widget; } static GtkWidget * -gnc_option_create_radiobutton_widget(char *name, GNCOption *option) +gnc_option_create_radiobutton_widget (char *name, GNCOption *option) { GtkWidget *frame, *box; GtkWidget *widget = NULL; @@ -1176,42 +1160,41 @@ gnc_option_create_radiobutton_widget(char *name, GNCOption *option) char *tip; int i; - num_values = gnc_option_num_permissible_values(option); + num_values = gnc_option_num_permissible_values (option); - g_return_val_if_fail(num_values >= 0, NULL); + g_return_val_if_fail (num_values >= 0, NULL); /* Create our button frame */ frame = gtk_frame_new (name); /* Create the button box */ box = gtk_box_new (GTK_ORIENTATION_VERTICAL, 5); - gtk_box_set_homogeneous (GTK_BOX (box), FALSE); - gtk_container_add (GTK_CONTAINER (frame), box); + gtk_box_set_homogeneous (GTK_BOX(box), FALSE); + gtk_container_add (GTK_CONTAINER(frame), box); /* Iterate over the options and create a radio button for each one */ for (i = 0; i < num_values; i++) { - label = gnc_option_permissible_value_name(option, i); - tip = gnc_option_permissible_value_description(option, i); + label = gnc_option_permissible_value_name (option, i); + tip = gnc_option_permissible_value_description (option, i); widget = gtk_radio_button_new_with_label_from_widget (widget ? - GTK_RADIO_BUTTON (widget) : + GTK_RADIO_BUTTON(widget) : NULL, label && *label ? _(label) : ""); - g_object_set_data (G_OBJECT (widget), "gnc_radiobutton_index", + g_object_set_data (G_OBJECT(widget), "gnc_radiobutton_index", GINT_TO_POINTER (i)); - gtk_widget_set_tooltip_text(widget, tip && *tip ? _(tip) : ""); - g_signal_connect(G_OBJECT(widget), "toggled", - G_CALLBACK(gnc_option_radiobutton_cb), option); - gtk_box_pack_start (GTK_BOX (box), widget, FALSE, FALSE, 0); + gtk_widget_set_tooltip_text (widget, tip && *tip ? _(tip) : ""); + g_signal_connect (G_OBJECT(widget), "toggled", + G_CALLBACK(gnc_option_radiobutton_cb), option); + gtk_box_pack_start (GTK_BOX(box), widget, FALSE, FALSE, 0); if (label) free (label); if (tip) free (tip); } - return frame; } @@ -1222,9 +1205,9 @@ gnc_option_create_currency_accounting_widget (char *name, GNCOption *option) *widget = NULL, *vbox = NULL; int i; - int num_values = gnc_option_num_permissible_values(option); + int num_values = gnc_option_num_permissible_values (option); - g_return_val_if_fail(num_values == 3, NULL); + g_return_val_if_fail (num_values == 3, NULL); book_currency_data = g_new0 (currency_accounting_data, 1); book_currency_data->option = option; @@ -1235,8 +1218,8 @@ gnc_option_create_currency_accounting_widget (char *name, GNCOption *option) /* Create the vertical button box */ vbox = gtk_box_new (GTK_ORIENTATION_VERTICAL, 5); - gtk_box_set_homogeneous (GTK_BOX (vbox), FALSE); - gtk_container_add (GTK_CONTAINER (frame), vbox); + gtk_box_set_homogeneous (GTK_BOX(vbox), FALSE); + gtk_container_add (GTK_CONTAINER(frame), vbox); gtk_widget_set_halign (GTK_WIDGET(vbox), GTK_ALIGN_FILL); gtk_widget_set_hexpand (GTK_WIDGET(vbox), TRUE); @@ -1250,16 +1233,16 @@ gnc_option_create_currency_accounting_widget (char *name, GNCOption *option) char *tip; GtkWidget *table = NULL; - label = gnc_option_permissible_value_name(option, i); - tip = gnc_option_permissible_value_description(option, i); + label = gnc_option_permissible_value_name (option, i); + tip = gnc_option_permissible_value_description (option, i); widget = gtk_radio_button_new_with_label_from_widget (widget ? - GTK_RADIO_BUTTON (widget) : + GTK_RADIO_BUTTON(widget) : NULL, label && *label ? _(label) : ""); - g_object_set_data (G_OBJECT (widget), "gnc_radiobutton_index", - GINT_TO_POINTER (i)); + g_object_set_data (G_OBJECT(widget), "gnc_radiobutton_index", + GINT_TO_POINTER(i)); switch (i) { case 0: @@ -1277,91 +1260,91 @@ gnc_option_create_currency_accounting_widget (char *name, GNCOption *option) default: break; } - gtk_widget_set_tooltip_text(widget, tip && *tip ? _(tip) : ""); - if (g_strcmp0(gnc_option_permissible_value_name(option, i), + gtk_widget_set_tooltip_text (widget, tip && *tip ? _(tip) : ""); + if (g_strcmp0 (gnc_option_permissible_value_name (option, i), "Use a Book Currency") == 0) { GtkWidget *widget_label, - *policy_table = gtk_grid_new(); + *policy_table = gtk_grid_new (); - book_currency_data->book_currency_widget = gnc_currency_edit_new(); + book_currency_data->book_currency_widget = gnc_currency_edit_new (); book_currency_data->default_cost_policy_widget = - gnc_cost_policy_select_new(); + gnc_cost_policy_select_new (); book_currency_data->default_gain_loss_account_widget = NULL; book_currency_data->gain_loss_account_del_button = NULL; book_currency_data->default_gain_loss_account_text = NULL; book_currency_data->prior_gain_loss_account = NULL; book_currency_data->book_currency_vbox = gtk_box_new (GTK_ORIENTATION_VERTICAL, 0); - gtk_box_set_homogeneous (GTK_BOX (book_currency_data->book_currency_vbox), FALSE); + gtk_box_set_homogeneous (GTK_BOX(book_currency_data->book_currency_vbox), FALSE); table = gtk_grid_new (); gtk_grid_attach (GTK_GRID(table), widget, 0, 0, 2, 1); - g_signal_connect(G_OBJECT(widget), "toggled", - G_CALLBACK(gnc_option_currency_accounting_book_cb), - book_currency_data); + g_signal_connect (G_OBJECT(widget), "toggled", + G_CALLBACK(gnc_option_currency_accounting_book_cb), + book_currency_data); book_currency_data->book_currency_table = gtk_grid_new (); - gtk_grid_set_row_spacing (GTK_GRID (book_currency_data->book_currency_table), 6); - gtk_grid_set_column_spacing (GTK_GRID (book_currency_data->book_currency_table), 6); + gtk_grid_set_row_spacing (GTK_GRID(book_currency_data->book_currency_table), 6); + gtk_grid_set_column_spacing (GTK_GRID(book_currency_data->book_currency_table), 6); - tip = gnc_currency_accounting_option_currency_documentation(option); - widget_label = gtk_label_new( _("Book currency") ); - gtk_widget_set_tooltip_text(book_currency_data->book_currency_table, - tip && *tip ? _(tip) : ""); + tip = gnc_currency_accounting_option_currency_documentation (option); + widget_label = gtk_label_new ( _("Book currency") ); + gtk_widget_set_tooltip_text (book_currency_data->book_currency_table, + tip && *tip ? _(tip) : ""); gtk_widget_set_halign (GTK_WIDGET(widget_label), GTK_ALIGN_START); gtk_widget_set_hexpand (GTK_WIDGET(widget_label), TRUE); gtk_grid_attach (GTK_GRID(book_currency_data->book_currency_table), widget_label, 0, 0, 1, 1); - g_signal_connect(G_OBJECT(book_currency_data->book_currency_widget), - "changed", - G_CALLBACK(gnc_option_changed_book_currency_widget_cb), - NULL); + g_signal_connect (G_OBJECT(book_currency_data->book_currency_widget), + "changed", + G_CALLBACK(gnc_option_changed_book_currency_widget_cb), + NULL); gtk_grid_attach (GTK_GRID(book_currency_data->book_currency_table), book_currency_data->book_currency_widget, 1, 0, 1, 1); - gtk_box_pack_start (GTK_BOX (book_currency_data->book_currency_vbox), - book_currency_data->book_currency_table, - TRUE, TRUE, 0); + gtk_box_pack_start (GTK_BOX(book_currency_data->book_currency_vbox), + book_currency_data->book_currency_table, + TRUE, TRUE, 0); gtk_widget_set_margin_start (GTK_WIDGET(book_currency_data->book_currency_table), 12); - gtk_grid_set_row_spacing (GTK_GRID (policy_table), 6); - gtk_grid_set_column_spacing (GTK_GRID (policy_table), 6); + gtk_grid_set_row_spacing (GTK_GRID(policy_table), 6); + gtk_grid_set_column_spacing (GTK_GRID(policy_table), 6); - tip = gnc_currency_accounting_option_policy_documentation(option); - widget_label = gtk_label_new( _("Default lot tracking policy") ); - gtk_widget_set_tooltip_text(policy_table, tip && *tip ? _(tip) : ""); + tip = gnc_currency_accounting_option_policy_documentation (option); + widget_label = gtk_label_new ( _("Default lot tracking policy") ); + gtk_widget_set_tooltip_text (policy_table, tip && *tip ? _(tip) : ""); gtk_widget_set_halign (GTK_WIDGET(widget_label), GTK_ALIGN_START); gtk_widget_set_hexpand (GTK_WIDGET(widget_label), TRUE); gtk_grid_attach (GTK_GRID(policy_table), widget_label, 0, 1, 1, 1); - g_signal_connect(G_OBJECT( - book_currency_data->default_cost_policy_widget), - "changed", - G_CALLBACK(gnc_option_multichoice_cb), option); + g_signal_connect (G_OBJECT(book_currency_data->default_cost_policy_widget), + "changed", + G_CALLBACK(gnc_option_multichoice_cb), option); gtk_grid_attach (GTK_GRID(policy_table), book_currency_data->default_cost_policy_widget, 1, 1, 1, 1); - gtk_box_pack_start (GTK_BOX (book_currency_data->book_currency_vbox), - policy_table, TRUE, TRUE, 0); + gtk_box_pack_start (GTK_BOX(book_currency_data->book_currency_vbox), + policy_table, TRUE, TRUE, 0); gtk_widget_set_margin_start (GTK_WIDGET(policy_table), 12); book_currency_data->gain_loss_account_table = gtk_grid_new (); - gtk_grid_set_row_spacing (GTK_GRID (book_currency_data->gain_loss_account_table), 6); - gtk_grid_set_column_spacing (GTK_GRID (book_currency_data->gain_loss_account_table), 6); + gtk_grid_set_row_spacing (GTK_GRID(book_currency_data->gain_loss_account_table), 6); + gtk_grid_set_column_spacing (GTK_GRID(book_currency_data->gain_loss_account_table), 6); - tip = gnc_currency_accounting_option_gain_loss_account_documentation(option); - widget_label = gtk_label_new( _("Default gain/loss account") ); + tip = gnc_currency_accounting_option_gain_loss_account_documentation (option); + widget_label = gtk_label_new ( _("Default gain/loss account") ); gnc_label_set_alignment (GTK_WIDGET(widget_label), 0.0, 0.5); - gtk_widget_set_tooltip_text(book_currency_data->gain_loss_account_table, - tip && *tip ? _(tip) : ""); + gtk_widget_set_tooltip_text (book_currency_data->gain_loss_account_table, + tip && *tip ? _(tip) : ""); - gtk_grid_attach (GTK_GRID(book_currency_data->gain_loss_account_table), widget_label, 0, 0, 1, 1); + gtk_grid_attach (GTK_GRID(book_currency_data->gain_loss_account_table), + widget_label, 0, 0, 1, 1); widget_label = NULL; gtk_box_pack_start (GTK_BOX (book_currency_data->book_currency_vbox), @@ -1375,11 +1358,11 @@ gnc_option_create_currency_accounting_widget (char *name, GNCOption *option) table = gtk_grid_new (); gtk_grid_attach (GTK_GRID(table), widget, 0, 1, 1, 1); - g_signal_connect(G_OBJECT(widget), "toggled", - G_CALLBACK(gnc_option_currency_accounting_non_book_cb), - book_currency_data); + g_signal_connect (G_OBJECT(widget), "toggled", + G_CALLBACK(gnc_option_currency_accounting_non_book_cb), + book_currency_data); } - gtk_box_pack_start (GTK_BOX (vbox), table, TRUE, TRUE, 0); + gtk_box_pack_start (GTK_BOX(vbox), table, TRUE, TRUE, 0); if (label) free (label); @@ -1390,45 +1373,42 @@ gnc_option_create_currency_accounting_widget (char *name, GNCOption *option) } static void -gnc_option_account_cb(GtkTreeSelection *selection, gpointer data) +gnc_option_account_cb (GtkTreeSelection *selection, gpointer data) { GNCOption *option = data; - GtkTreeView *tree_view; - - tree_view = gtk_tree_selection_get_tree_view(selection); - - gnc_option_changed_widget_cb(GTK_WIDGET(tree_view), option); + GtkTreeView *tree_view = gtk_tree_selection_get_tree_view (selection); + gnc_option_changed_widget_cb (GTK_WIDGET(tree_view), option); } static void -gnc_option_account_select_all_cb(GtkWidget *widget, gpointer data) +gnc_option_account_select_all_cb (GtkWidget *widget, gpointer data) { GNCOption *option = data; GncTreeViewAccount *tree_view; GtkTreeSelection *selection; tree_view = GNC_TREE_VIEW_ACCOUNT(gnc_option_get_gtk_widget (option)); - gtk_tree_view_expand_all(GTK_TREE_VIEW(tree_view)); - selection = gtk_tree_view_get_selection(GTK_TREE_VIEW(tree_view)); - gtk_tree_selection_select_all(selection); - gnc_option_changed_widget_cb(widget, option); + gtk_tree_view_expand_all (GTK_TREE_VIEW(tree_view)); + selection = gtk_tree_view_get_selection (GTK_TREE_VIEW(tree_view)); + gtk_tree_selection_select_all (selection); + gnc_option_changed_widget_cb (widget, option); } static void -gnc_option_account_clear_all_cb(GtkWidget *widget, gpointer data) +gnc_option_account_clear_all_cb (GtkWidget *widget, gpointer data) { GNCOption *option = data; GncTreeViewAccount *tree_view; GtkTreeSelection *selection; tree_view = GNC_TREE_VIEW_ACCOUNT(gnc_option_get_gtk_widget (option)); - selection = gtk_tree_view_get_selection(GTK_TREE_VIEW(tree_view)); - gtk_tree_selection_unselect_all(selection); - gnc_option_changed_widget_cb(widget, option); + selection = gtk_tree_view_get_selection (GTK_TREE_VIEW(tree_view)); + gtk_tree_selection_unselect_all (selection); + gnc_option_changed_widget_cb (widget, option); } static void -gnc_option_account_select_children_cb(GtkWidget *widget, gpointer data) +gnc_option_account_select_children_cb (GtkWidget *widget, gpointer data) { GNCOption *option = data; GncTreeViewAccount *tree_view; @@ -1444,7 +1424,7 @@ gnc_option_account_select_children_cb(GtkWidget *widget, gpointer data) } static GtkWidget * -gnc_option_create_account_widget(GNCOption *option, char *name) +gnc_option_create_account_widget (GNCOption *option, char *name) { gboolean multiple_selection; GtkWidget *scroll_win; @@ -1456,15 +1436,15 @@ gnc_option_create_account_widget(GNCOption *option, char *name) GList *acct_type_list; GtkTreeSelection *selection; - multiple_selection = gnc_option_multiple_selection(option); - acct_type_list = gnc_option_get_account_type_list(option); + multiple_selection = gnc_option_multiple_selection (option); + acct_type_list = gnc_option_get_account_type_list (option); - frame = gtk_frame_new(name); + frame = gtk_frame_new (name); vbox = gtk_box_new (GTK_ORIENTATION_VERTICAL, 0); - gtk_box_set_homogeneous (GTK_BOX (vbox), FALSE); + gtk_box_set_homogeneous (GTK_BOX(vbox), FALSE); - gtk_container_add(GTK_CONTAINER(frame), vbox); + gtk_container_add (GTK_CONTAINER(frame), vbox); tree = GTK_WIDGET(gnc_tree_view_account_new (FALSE)); gtk_tree_view_set_headers_visible (GTK_TREE_VIEW(tree), FALSE); @@ -1480,7 +1460,7 @@ gnc_option_create_account_widget(GNCOption *option, char *name) AccountViewInfo avi; int i; - gnc_tree_view_account_get_view_info (GNC_TREE_VIEW_ACCOUNT (tree), &avi); + gnc_tree_view_account_get_view_info (GNC_TREE_VIEW_ACCOUNT(tree), &avi); for (i = 0; i < NUM_ACCOUNT_TYPES; i++) avi.include_type[i] = FALSE; @@ -1488,11 +1468,11 @@ gnc_option_create_account_widget(GNCOption *option, char *name) for (node = acct_type_list; node; node = node->next) { - GNCAccountType type = GPOINTER_TO_INT (node->data); + GNCAccountType type = GPOINTER_TO_INT(node->data); avi.include_type[type] = TRUE; } - gnc_tree_view_account_set_view_info (GNC_TREE_VIEW_ACCOUNT (tree), &avi); + gnc_tree_view_account_set_view_info (GNC_TREE_VIEW_ACCOUNT(tree), &avi); g_list_free (acct_type_list); } else @@ -1500,57 +1480,57 @@ gnc_option_create_account_widget(GNCOption *option, char *name) AccountViewInfo avi; int i; - gnc_tree_view_account_get_view_info (GNC_TREE_VIEW_ACCOUNT (tree), &avi); + gnc_tree_view_account_get_view_info (GNC_TREE_VIEW_ACCOUNT(tree), &avi); for (i = 0; i < NUM_ACCOUNT_TYPES; i++) avi.include_type[i] = TRUE; avi.show_hidden = FALSE; - gnc_tree_view_account_set_view_info (GNC_TREE_VIEW_ACCOUNT (tree), &avi); + gnc_tree_view_account_set_view_info (GNC_TREE_VIEW_ACCOUNT(tree), &avi); } - scroll_win = gtk_scrolled_window_new(NULL, NULL); - gtk_scrolled_window_set_policy(GTK_SCROLLED_WINDOW(scroll_win), - GTK_POLICY_AUTOMATIC, - GTK_POLICY_AUTOMATIC); + scroll_win = gtk_scrolled_window_new (NULL, NULL); + gtk_scrolled_window_set_policy (GTK_SCROLLED_WINDOW(scroll_win), + GTK_POLICY_AUTOMATIC, + GTK_POLICY_AUTOMATIC); - gtk_box_pack_start(GTK_BOX(vbox), scroll_win, TRUE, TRUE, 0); - gtk_container_set_border_width(GTK_CONTAINER(scroll_win), 5); - gtk_container_add(GTK_CONTAINER(scroll_win), tree); + gtk_box_pack_start (GTK_BOX(vbox), scroll_win, TRUE, TRUE, 0); + gtk_container_set_border_width (GTK_CONTAINER(scroll_win), 5); + gtk_container_add (GTK_CONTAINER(scroll_win), tree); bbox = gtk_button_box_new (GTK_ORIENTATION_HORIZONTAL); - gtk_button_box_set_layout(GTK_BUTTON_BOX(bbox), GTK_BUTTONBOX_SPREAD); - gtk_box_pack_start(GTK_BOX(vbox), bbox, FALSE, FALSE, 10); + gtk_button_box_set_layout (GTK_BUTTON_BOX(bbox), GTK_BUTTONBOX_SPREAD); + gtk_box_pack_start (GTK_BOX(vbox), bbox, FALSE, FALSE, 10); if (multiple_selection) { - button = gtk_button_new_with_label(_("Select All")); - gtk_box_pack_start(GTK_BOX(bbox), button, FALSE, FALSE, 0); - gtk_widget_set_tooltip_text(button, _("Select all accounts.")); + button = gtk_button_new_with_label (_("Select All")); + gtk_box_pack_start (GTK_BOX(bbox), button, FALSE, FALSE, 0); + gtk_widget_set_tooltip_text (button, _("Select all accounts.")); - g_signal_connect(G_OBJECT(button), "clicked", - G_CALLBACK(gnc_option_account_select_all_cb), option); + g_signal_connect (G_OBJECT(button), "clicked", + G_CALLBACK(gnc_option_account_select_all_cb), option); - button = gtk_button_new_with_label(_("Clear All")); - gtk_box_pack_start(GTK_BOX(bbox), button, FALSE, FALSE, 0); - gtk_widget_set_tooltip_text(button, _("Clear the selection and unselect all accounts.")); + button = gtk_button_new_with_label (_("Clear All")); + gtk_box_pack_start (GTK_BOX(bbox), button, FALSE, FALSE, 0); + gtk_widget_set_tooltip_text (button, _("Clear the selection and unselect all accounts.")); - g_signal_connect(G_OBJECT(button), "clicked", - G_CALLBACK(gnc_option_account_clear_all_cb), option); + g_signal_connect (G_OBJECT(button), "clicked", + G_CALLBACK(gnc_option_account_clear_all_cb), option); - button = gtk_button_new_with_label(_("Select Children")); - gtk_box_pack_start(GTK_BOX(bbox), button, FALSE, FALSE, 0); - gtk_widget_set_tooltip_text(button, _("Select all descendents of selected account.")); + button = gtk_button_new_with_label (_("Select Children")); + gtk_box_pack_start (GTK_BOX(bbox), button, FALSE, FALSE, 0); + gtk_widget_set_tooltip_text (button, _("Select all descendents of selected account.")); - g_signal_connect(G_OBJECT(button), "clicked", - G_CALLBACK(gnc_option_account_select_children_cb), option); + g_signal_connect (G_OBJECT(button), "clicked", + G_CALLBACK(gnc_option_account_select_children_cb), option); } - button = gtk_button_new_with_label(_("Select Default")); - gtk_box_pack_start(GTK_BOX(bbox), button, FALSE, FALSE, 0); - gtk_widget_set_tooltip_text(button, _("Select the default account selection.")); + button = gtk_button_new_with_label (_("Select Default")); + gtk_box_pack_start (GTK_BOX(bbox), button, FALSE, FALSE, 0); + gtk_widget_set_tooltip_text (button, _("Select the default account selection.")); - g_signal_connect(G_OBJECT(button), "clicked", - G_CALLBACK(gnc_option_default_cb), option); + g_signal_connect (G_OBJECT(button), "clicked", + G_CALLBACK(gnc_option_default_cb), option); gtk_widget_set_margin_start (GTK_WIDGET(bbox), 6); gtk_widget_set_margin_end (GTK_WIDGET(bbox), 6); @@ -1560,16 +1540,16 @@ gnc_option_create_account_widget(GNCOption *option, char *name) /* Put the "Show hidden" checkbox on a separate line since the 4 buttons make the dialog too wide. */ bbox = gtk_button_box_new (GTK_ORIENTATION_HORIZONTAL); - gtk_button_box_set_layout(GTK_BUTTON_BOX(bbox), GTK_BUTTONBOX_START); - gtk_box_pack_start(GTK_BOX(vbox), bbox, FALSE, FALSE, 0); + gtk_button_box_set_layout (GTK_BUTTON_BOX(bbox), GTK_BUTTONBOX_START); + gtk_box_pack_start (GTK_BOX(vbox), bbox, FALSE, FALSE, 0); } - button = gtk_check_button_new_with_label(_("Show Hidden Accounts")); - gtk_box_pack_start(GTK_BOX(bbox), button, FALSE, FALSE, 0); - gtk_widget_set_tooltip_text(button, _("Show accounts that have been marked hidden.")); - gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(button), FALSE); - g_signal_connect(G_OBJECT(button), "toggled", - G_CALLBACK(gnc_option_show_hidden_toggled_cb), option); + button = gtk_check_button_new_with_label (_("Show Hidden Accounts")); + gtk_box_pack_start (GTK_BOX(bbox), button, FALSE, FALSE, 0); + gtk_widget_set_tooltip_text (button, _("Show accounts that have been marked hidden.")); + gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON(button), FALSE); + g_signal_connect (G_OBJECT(button), "toggled", + G_CALLBACK(gnc_option_show_hidden_toggled_cb), option); gnc_option_set_widget (option, tree); @@ -1577,43 +1557,41 @@ gnc_option_create_account_widget(GNCOption *option, char *name) } static void -gnc_option_list_changed_cb(GtkTreeSelection *selection, - GNCOption *option) +gnc_option_list_changed_cb (GtkTreeSelection *selection, + GNCOption *option) { - GtkTreeView *view; - - view = gtk_tree_selection_get_tree_view(selection); - gnc_option_changed_widget_cb(GTK_WIDGET(view), option); + GtkTreeView *view = gtk_tree_selection_get_tree_view (selection); + gnc_option_changed_widget_cb (GTK_WIDGET(view), option); } static void -gnc_option_list_select_all_cb(GtkWidget *widget, gpointer data) +gnc_option_list_select_all_cb (GtkWidget *widget, gpointer data) { GNCOption *option = data; GtkTreeView *view; GtkTreeSelection *selection; view = GTK_TREE_VIEW(gnc_option_get_gtk_widget (option)); - selection = gtk_tree_view_get_selection(view); - gtk_tree_selection_select_all(selection); - gnc_option_changed_widget_cb(GTK_WIDGET(view), option); + selection = gtk_tree_view_get_selection (view); + gtk_tree_selection_select_all (selection); + gnc_option_changed_widget_cb (GTK_WIDGET(view), option); } static void -gnc_option_list_clear_all_cb(GtkWidget *widget, gpointer data) +gnc_option_list_clear_all_cb (GtkWidget *widget, gpointer data) { GNCOption *option = data; GtkTreeView *view; GtkTreeSelection *selection; view = GTK_TREE_VIEW(gnc_option_get_gtk_widget (option)); - selection = gtk_tree_view_get_selection(view); - gtk_tree_selection_unselect_all(selection); - gnc_option_changed_widget_cb(GTK_WIDGET(view), option); + selection = gtk_tree_view_get_selection (view); + gtk_tree_selection_unselect_all (selection); + gnc_option_changed_widget_cb (GTK_WIDGET(view), option); } static GtkWidget * -gnc_option_create_list_widget(GNCOption *option, char *name) +gnc_option_create_list_widget (GNCOption *option, char *name) { GtkListStore *store; GtkTreeView *view; @@ -1629,66 +1607,66 @@ gnc_option_create_list_widget(GNCOption *option, char *name) gint num_values; gint i; - frame = gtk_frame_new(name); + frame = gtk_frame_new (name); hbox = gtk_box_new (GTK_ORIENTATION_HORIZONTAL, 0); - gtk_box_set_homogeneous (GTK_BOX (hbox), FALSE); - gtk_container_add(GTK_CONTAINER(frame), hbox); + gtk_box_set_homogeneous (GTK_BOX(hbox), FALSE); + gtk_container_add (GTK_CONTAINER(frame), hbox); - store = gtk_list_store_new(1, G_TYPE_STRING); - view = GTK_TREE_VIEW(gtk_tree_view_new_with_model(GTK_TREE_MODEL(store))); - g_object_unref(store); - renderer = gtk_cell_renderer_text_new(); - column = gtk_tree_view_column_new_with_attributes("", renderer, - "text", 0, - NULL); - gtk_tree_view_append_column(view, column); - gtk_tree_view_set_headers_visible(view, FALSE); + store = gtk_list_store_new (1, G_TYPE_STRING); + view = GTK_TREE_VIEW(gtk_tree_view_new_with_model (GTK_TREE_MODEL(store))); + g_object_unref (store); + renderer = gtk_cell_renderer_text_new (); + column = gtk_tree_view_column_new_with_attributes ("", renderer, + "text", 0, + NULL); + gtk_tree_view_append_column (view, column); + gtk_tree_view_set_headers_visible (view, FALSE); - num_values = gnc_option_num_permissible_values(option); + num_values = gnc_option_num_permissible_values (option); for (i = 0; i < num_values; i++) { gchar *raw_string, *string; - raw_string = gnc_option_permissible_value_name(option, i); + raw_string = gnc_option_permissible_value_name (option, i); string = (raw_string && *raw_string) ? _(raw_string) : ""; - gtk_list_store_append(store, &iter); - gtk_list_store_set(store, &iter, - 0, string ? string : "", - -1); - g_free(raw_string); + gtk_list_store_append (store, &iter); + gtk_list_store_set (store, &iter, + 0, string ? string : "", + -1); + g_free (raw_string); } - gtk_box_pack_start(GTK_BOX(hbox), GTK_WIDGET(view), FALSE, FALSE, 0); + gtk_box_pack_start (GTK_BOX(hbox), GTK_WIDGET(view), FALSE, FALSE, 0); - selection = gtk_tree_view_get_selection(view); - gtk_tree_selection_set_mode(selection, GTK_SELECTION_MULTIPLE); - g_signal_connect(selection, "changed", - G_CALLBACK(gnc_option_list_changed_cb), option); + selection = gtk_tree_view_get_selection (view); + gtk_tree_selection_set_mode (selection, GTK_SELECTION_MULTIPLE); + g_signal_connect (selection, "changed", + G_CALLBACK(gnc_option_list_changed_cb), option); bbox = gtk_button_box_new (GTK_ORIENTATION_VERTICAL); - gtk_button_box_set_layout(GTK_BUTTON_BOX(bbox), GTK_BUTTONBOX_SPREAD); - gtk_box_pack_end(GTK_BOX(hbox), bbox, FALSE, FALSE, 0); + gtk_button_box_set_layout (GTK_BUTTON_BOX(bbox), GTK_BUTTONBOX_SPREAD); + gtk_box_pack_end (GTK_BOX(hbox), bbox, FALSE, FALSE, 0); - button = gtk_button_new_with_label(_("Select All")); - gtk_box_pack_start(GTK_BOX(bbox), button, FALSE, FALSE, 0); - gtk_widget_set_tooltip_text(button, _("Select all entries.")); + button = gtk_button_new_with_label (_("Select All")); + gtk_box_pack_start (GTK_BOX(bbox), button, FALSE, FALSE, 0); + gtk_widget_set_tooltip_text (button, _("Select all entries.")); - g_signal_connect(G_OBJECT(button), "clicked", - G_CALLBACK(gnc_option_list_select_all_cb), option); + g_signal_connect (G_OBJECT(button), "clicked", + G_CALLBACK(gnc_option_list_select_all_cb), option); - button = gtk_button_new_with_label(_("Clear All")); - gtk_box_pack_start(GTK_BOX(bbox), button, FALSE, FALSE, 0); - gtk_widget_set_tooltip_text(button, _("Clear the selection and unselect all entries.")); + button = gtk_button_new_with_label (_("Clear All")); + gtk_box_pack_start (GTK_BOX(bbox), button, FALSE, FALSE, 0); + gtk_widget_set_tooltip_text (button, _("Clear the selection and unselect all entries.")); - g_signal_connect(G_OBJECT(button), "clicked", - G_CALLBACK(gnc_option_list_clear_all_cb), option); + g_signal_connect (G_OBJECT(button), "clicked", + G_CALLBACK(gnc_option_list_clear_all_cb), option); - button = gtk_button_new_with_label(_("Select Default")); - gtk_box_pack_start(GTK_BOX(bbox), button, FALSE, FALSE, 0); - gtk_widget_set_tooltip_text(button, _("Select the default selection.")); + button = gtk_button_new_with_label (_("Select Default")); + gtk_box_pack_start (GTK_BOX(bbox), button, FALSE, FALSE, 0); + gtk_widget_set_tooltip_text (button, _("Select the default selection.")); - g_signal_connect(G_OBJECT(button), "clicked", - G_CALLBACK(gnc_option_default_cb), option); + g_signal_connect (G_OBJECT(button), "clicked", + G_CALLBACK(gnc_option_default_cb), option); g_object_set (G_OBJECT(hbox), "margin", 3, NULL); @@ -1698,19 +1676,19 @@ gnc_option_create_list_widget(GNCOption *option, char *name) } static void -gnc_option_color_changed_cb(GtkColorButton *color_button, GNCOption *option) +gnc_option_color_changed_cb (GtkColorButton *color_button, GNCOption *option) { - gnc_option_changed_widget_cb(GTK_WIDGET(color_button), option); + gnc_option_changed_widget_cb (GTK_WIDGET(color_button), option); } static void -gnc_option_font_changed_cb(GtkFontButton *font_button, GNCOption *option) +gnc_option_font_changed_cb (GtkFontButton *font_button, GNCOption *option) { - gnc_option_changed_widget_cb(GTK_WIDGET(font_button), option); + gnc_option_changed_widget_cb (GTK_WIDGET(font_button), option); } static void -gnc_option_set_ui_widget(GNCOption *option, GtkGrid *page_box, gint grid_row) +gnc_option_set_ui_widget (GNCOption *option, GtkGrid *page_box, gint grid_row) { GtkWidget *enclosing = NULL; GtkWidget *value = NULL; @@ -1722,8 +1700,8 @@ gnc_option_set_ui_widget(GNCOption *option, GtkGrid *page_box, gint grid_row) GtkLabel *name_label; ENTER("option %p(%s), box %p", - option, gnc_option_name(option), page_box); - type = gnc_option_type(option); + option, gnc_option_name (option), page_box); + type = gnc_option_type (option); if (type == NULL) { LEAVE("bad type"); @@ -1735,13 +1713,13 @@ gnc_option_set_ui_widget(GNCOption *option, GtkGrid *page_box, gint grid_row) return; } - raw_name = gnc_option_name(option); + raw_name = gnc_option_name (option); if (raw_name && *raw_name) name = _(raw_name); else name = NULL; - raw_documentation = gnc_option_documentation(option); + raw_documentation = gnc_option_documentation (option); if (raw_documentation && *raw_documentation) documentation = _(raw_documentation); else @@ -1763,7 +1741,7 @@ gnc_option_set_ui_widget(GNCOption *option, GtkGrid *page_box, gint grid_row) } /* attach the name label to the first column of the grid and align to the end - * if option is a check button, do not add a label as we are using the biult + * if option is a check button, do not add a label as we are using the built * in one */ if (!GTK_IS_CHECK_BUTTON(value)) gtk_grid_attach (GTK_GRID(page_box), GTK_WIDGET(name_label), @@ -1776,9 +1754,9 @@ gnc_option_set_ui_widget(GNCOption *option, GtkGrid *page_box, gint grid_row) { /* Pack option widget into an extra eventbox because otherwise the "documentation" tooltip is not displayed. */ - GtkWidget *eventbox = gtk_event_box_new(); + GtkWidget *eventbox = gtk_event_box_new (); - gtk_container_add (GTK_CONTAINER (eventbox), enclosing); + gtk_container_add (GTK_CONTAINER(eventbox), enclosing); /* attach the option widget to the second column of the grid */ gtk_grid_attach (GTK_GRID(page_box), eventbox, @@ -1789,27 +1767,27 @@ gnc_option_set_ui_widget(GNCOption *option, GtkGrid *page_box, gint grid_row) } if (value != NULL) - gtk_widget_set_tooltip_text(value, documentation); + gtk_widget_set_tooltip_text (value, documentation); if (raw_name != NULL) - free(raw_name); + free (raw_name); if (raw_documentation != NULL) - free(raw_documentation); - free(type); + free (raw_documentation); + free (type); LEAVE(" "); } static void -gnc_options_dialog_add_option(GtkWidget *page, - GNCOption *option, gint row) +gnc_options_dialog_add_option (GtkWidget *page, + GNCOption *option, gint row) { g_object_set_data (G_OBJECT(page), "options-grid-row", GINT_TO_POINTER(row)); - gnc_option_set_ui_widget(option, GTK_GRID(page), row); + gnc_option_set_ui_widget (option, GTK_GRID(page), row); } static gint -gnc_options_dialog_append_page(GNCOptionWin * propertybox, - GNCOptionSection *section) +gnc_options_dialog_append_page (GNCOptionWin * propertybox, + GNCOptionSection *section) { GNCOption *option; GtkWidget *page_label; @@ -1828,106 +1806,107 @@ gnc_options_dialog_append_page(GNCOptionWin * propertybox, gint i, page_count, name_offset; gboolean advanced; - name = gnc_option_section_name(section); + name = gnc_option_section_name (section); if (!name) return -1; - if (strncmp(name, "__", 2) == 0) + if (strncmp (name, "__", 2) == 0) return -1; - advanced = (strncmp(name, "_+", 2) == 0); + advanced = (strncmp (name, "_+", 2) == 0); name_offset = (advanced) ? 2 : 0; - page_label = gtk_label_new(_(name + name_offset)); + page_label = gtk_label_new (_(name + name_offset)); PINFO("Page_label is %s", _(name + name_offset)); - gtk_widget_show(page_label); + gtk_widget_show (page_label); /* Build this options page */ page_content_box = gtk_box_new (GTK_ORIENTATION_VERTICAL, 2); gtk_widget_set_name (page_content_box, "page-content-box"); gtk_box_set_homogeneous (GTK_BOX (page_content_box), FALSE); - gtk_container_set_border_width(GTK_CONTAINER(page_content_box), 12); + gtk_container_set_border_width (GTK_CONTAINER(page_content_box), 12); - options_scrolled_win = gtk_scrolled_window_new(NULL, NULL); - gtk_box_pack_start(GTK_BOX(page_content_box), options_scrolled_win, TRUE, TRUE, 0); + options_scrolled_win = gtk_scrolled_window_new (NULL, NULL); + gtk_box_pack_start (GTK_BOX(page_content_box), options_scrolled_win, TRUE, TRUE, 0); /* Build space for the content - the options box */ - options_box = gtk_grid_new(); // this will have two columns + options_box = gtk_grid_new (); // this will have two columns gtk_widget_set_name (options_box, "options-box"); gtk_grid_set_row_homogeneous (GTK_GRID(options_box), FALSE); gtk_grid_set_column_homogeneous (GTK_GRID(options_box), FALSE); gtk_grid_set_row_spacing (GTK_GRID(options_box), 6); gtk_grid_set_column_spacing (GTK_GRID(options_box), 6); - gtk_container_set_border_width(GTK_CONTAINER(options_box), 0); + gtk_container_set_border_width (GTK_CONTAINER(options_box), 0); gtk_container_add (GTK_CONTAINER(options_scrolled_win), GTK_WIDGET(options_box)); - gtk_scrolled_window_set_policy(GTK_SCROLLED_WINDOW(options_scrolled_win), GTK_POLICY_NEVER, GTK_POLICY_AUTOMATIC); + gtk_scrolled_window_set_policy (GTK_SCROLLED_WINDOW(options_scrolled_win), + GTK_POLICY_NEVER, GTK_POLICY_AUTOMATIC); /* Create all the options */ - num_options = gnc_option_section_num_options(section); + num_options = gnc_option_section_num_options (section); for (i = 0; i < num_options; i++) { - option = gnc_get_option_section_option(section, i); - gnc_options_dialog_add_option(options_box, option, i); + option = gnc_get_option_section_option (section, i); + gnc_options_dialog_add_option (options_box, option, i); } /* Add a button box at the bottom of the page */ buttonbox = gtk_button_box_new (GTK_ORIENTATION_HORIZONTAL); gtk_button_box_set_layout (GTK_BUTTON_BOX (buttonbox), GTK_BUTTONBOX_EDGE); - gtk_container_set_border_width(GTK_CONTAINER (buttonbox), 5); - gtk_box_pack_end(GTK_BOX(page_content_box), buttonbox, FALSE, FALSE, 0); + gtk_container_set_border_width (GTK_CONTAINER(buttonbox), 5); + gtk_box_pack_end (GTK_BOX(page_content_box), buttonbox, FALSE, FALSE, 0); /* The reset button on each option page */ reset_button = gtk_button_new_with_label (_("Reset defaults")); - gtk_widget_set_tooltip_text(reset_button, - _("Reset all values to their defaults.")); + gtk_widget_set_tooltip_text (reset_button, + _("Reset all values to their defaults.")); - g_signal_connect(G_OBJECT(reset_button), "clicked", - G_CALLBACK(gnc_options_dialog_reset_cb), propertybox); - g_object_set_data(G_OBJECT(reset_button), "section", section); - gtk_box_pack_end(GTK_BOX(buttonbox), reset_button, FALSE, FALSE, 0); - gtk_widget_show_all(page_content_box); - gtk_notebook_append_page(GTK_NOTEBOOK(propertybox->notebook), - page_content_box, page_label); + g_signal_connect (G_OBJECT(reset_button), "clicked", + G_CALLBACK(gnc_options_dialog_reset_cb), propertybox); + g_object_set_data (G_OBJECT(reset_button), "section", section); + gtk_box_pack_end (GTK_BOX(buttonbox), reset_button, FALSE, FALSE, 0); + gtk_widget_show_all (page_content_box); + gtk_notebook_append_page (GTK_NOTEBOOK(propertybox->notebook), + page_content_box, page_label); /* Switch to selection from a list if the page count threshold is reached */ - page_count = gtk_notebook_page_num(GTK_NOTEBOOK(propertybox->notebook), - page_content_box); + page_count = gtk_notebook_page_num (GTK_NOTEBOOK(propertybox->notebook), + page_content_box); if (propertybox->page_list_view) { /* Build the matching list item for selecting from large page sets */ view = GTK_TREE_VIEW(propertybox->page_list_view); - list = GTK_LIST_STORE(gtk_tree_view_get_model(view)); + list = GTK_LIST_STORE(gtk_tree_view_get_model (view)); PINFO("Page name is %s and page_count is %d", name, page_count); - gtk_list_store_append(list, &iter); - gtk_list_store_set(list, &iter, - PAGE_NAME, _(name), - PAGE_INDEX, page_count, - -1); + gtk_list_store_append (list, &iter); + gtk_list_store_set (list, &iter, + PAGE_NAME, _(name), + PAGE_INDEX, page_count, + -1); if (page_count > MAX_TAB_COUNT - 1) /* Convert 1-based -> 0-based */ { - gtk_widget_show(propertybox->page_list); - gtk_notebook_set_show_tabs(GTK_NOTEBOOK(propertybox->notebook), FALSE); - gtk_notebook_set_show_border(GTK_NOTEBOOK(propertybox->notebook), FALSE); + gtk_widget_show (propertybox->page_list); + gtk_notebook_set_show_tabs (GTK_NOTEBOOK(propertybox->notebook), FALSE); + gtk_notebook_set_show_border (GTK_NOTEBOOK(propertybox->notebook), FALSE); } else - gtk_widget_hide(propertybox->page_list); + gtk_widget_hide (propertybox->page_list); /* Tweak "advanced" pages for later handling. */ if (advanced) { - notebook_page = gtk_notebook_get_nth_page(GTK_NOTEBOOK(propertybox->notebook), - page_count); + notebook_page = gtk_notebook_get_nth_page (GTK_NOTEBOOK(propertybox->notebook), + page_count); - g_object_set_data(G_OBJECT(notebook_page), "listitem", listitem); - g_object_set_data(G_OBJECT(notebook_page), "advanced", - GINT_TO_POINTER(advanced)); + g_object_set_data (G_OBJECT(notebook_page), "listitem", listitem); + g_object_set_data (G_OBJECT(notebook_page), "advanced", + GINT_TO_POINTER(advanced)); } } - return(page_count); + return (page_count); } /********************************************************************\ @@ -1979,8 +1958,8 @@ gnc_options_dialog_build_contents_full (GNCOptionWin *propertybox, propertybox->option_db = odb; - num_sections = gnc_option_db_num_sections(odb); - default_section_name = gnc_option_db_get_default_section(odb); + num_sections = gnc_option_db_num_sections (odb); + default_section_name = gnc_option_db_get_default_section (odb); PINFO("Default Section name is %s", default_section_name); @@ -1988,88 +1967,88 @@ gnc_options_dialog_build_contents_full (GNCOptionWin *propertybox, { const char *section_name; - section = gnc_option_db_get_section(odb, i); - page = gnc_options_dialog_append_page(propertybox, section); + section = gnc_option_db_get_section (odb, i); + page = gnc_options_dialog_append_page (propertybox, section); - section_name = gnc_option_section_name(section); - if (g_strcmp0(section_name, default_section_name) == 0) + section_name = gnc_option_section_name (section); + if (g_strcmp0 (section_name, default_section_name) == 0) default_page = page; } if (default_section_name != NULL) - free(default_section_name); + free (default_section_name); /* call each option widget changed callbacks once at this point, * now that all options widgets exist. */ for (i = 0; i < num_sections; i++) { - section = gnc_option_db_get_section(odb, i); + section = gnc_option_db_get_section (odb, i); - for (j = 0; j < gnc_option_section_num_options(section); j++) + for (j = 0; j < gnc_option_section_num_options (section); j++) { // setting TRUE will clear the changed flag after proc - gnc_option_call_option_widget_changed_proc( + gnc_option_call_option_widget_changed_proc ( gnc_get_option_section_option(section, j), TRUE); } } - gtk_notebook_popup_enable(GTK_NOTEBOOK(propertybox->notebook)); + gtk_notebook_popup_enable (GTK_NOTEBOOK(propertybox->notebook)); if (default_page >= 0) { /* Find the page list and set the selection to the default page */ - GtkTreeSelection* selection = gtk_tree_view_get_selection(GTK_TREE_VIEW(propertybox->page_list_view)); + GtkTreeSelection* selection = gtk_tree_view_get_selection (GTK_TREE_VIEW(propertybox->page_list_view)); GtkTreeIter iter; GtkTreeModel *model; - model = gtk_tree_view_get_model(GTK_TREE_VIEW(propertybox->page_list_view)); - gtk_tree_model_iter_nth_child(model, &iter, NULL, default_page); + model = gtk_tree_view_get_model (GTK_TREE_VIEW(propertybox->page_list_view)); + gtk_tree_model_iter_nth_child (model, &iter, NULL, default_page); gtk_tree_selection_select_iter (selection, &iter); - gtk_notebook_set_current_page(GTK_NOTEBOOK(propertybox->notebook), default_page); + gtk_notebook_set_current_page (GTK_NOTEBOOK(propertybox->notebook), default_page); } - gnc_options_dialog_changed_internal(propertybox->window, FALSE); + gnc_options_dialog_changed_internal (propertybox->window, FALSE); if (show_dialog) - gtk_widget_show(propertybox->window); + gtk_widget_show (propertybox->window); } GtkWidget * -gnc_options_dialog_widget(GNCOptionWin * win) +gnc_options_dialog_widget (GNCOptionWin * win) { return win->window; } GtkWidget * -gnc_options_page_list(GNCOptionWin * win) +gnc_options_page_list (GNCOptionWin * win) { return win->page_list; } GtkWidget * -gnc_options_dialog_notebook(GNCOptionWin * win) +gnc_options_dialog_notebook (GNCOptionWin * win) { return win->notebook; } static void -gnc_options_dialog_help_button_cb(GtkWidget * widget, GNCOptionWin *win) +gnc_options_dialog_help_button_cb (GtkWidget * widget, GNCOptionWin *win) { if (win->help_cb) (win->help_cb)(win, win->help_cb_data); } static void -gnc_options_dialog_cancel_button_cb(GtkWidget * widget, GNCOptionWin *win) +gnc_options_dialog_cancel_button_cb (GtkWidget * widget, GNCOptionWin *win) { gnc_save_window_size (GNC_PREFS_GROUP, GTK_WINDOW(win->window)); if (win->close_cb) (win->close_cb)(win, win->close_cb_data); else - gtk_widget_hide(win->window); + gtk_widget_hide (win->window); } static void -gnc_options_dialog_apply_button_cb(GtkWidget * widget, GNCOptionWin *win) +gnc_options_dialog_apply_button_cb (GtkWidget * widget, GNCOptionWin *win) { GNCOptionWinCallback close_cb = win->close_cb; @@ -2082,7 +2061,7 @@ gnc_options_dialog_apply_button_cb(GtkWidget * widget, GNCOptionWin *win) } static void -gnc_options_dialog_ok_button_cb(GtkWidget * widget, GNCOptionWin *win) +gnc_options_dialog_ok_button_cb (GtkWidget * widget, GNCOptionWin *win) { GNCOptionWinCallback close_cb = win->close_cb; @@ -2096,7 +2075,7 @@ gnc_options_dialog_ok_button_cb(GtkWidget * widget, GNCOptionWin *win) if (win->close_cb) (win->close_cb)(win, win->close_cb_data); else - gtk_widget_hide(win->window); + gtk_widget_hide (win->window); } static void @@ -2112,7 +2091,9 @@ gnc_options_dialog_destroy_cb (GtkWidget *object, GNCOptionWin *win) } static gboolean -gnc_options_dialog_window_key_press_cb(GtkWidget *widget, GdkEventKey *event, gpointer data) +gnc_options_dialog_window_key_press_cb (GtkWidget *widget, + GdkEventKey *event, + gpointer data) { GNCOptionWin *win = data; @@ -2126,7 +2107,7 @@ gnc_options_dialog_window_key_press_cb(GtkWidget *widget, GdkEventKey *event, gp } static void -gnc_options_dialog_reset_cb(GtkWidget * w, gpointer data) +gnc_options_dialog_reset_cb (GtkWidget * w, gpointer data) { GNCOptionWin *win = data; GNCOptionSection *section; @@ -2153,13 +2134,13 @@ gnc_options_dialog_list_select_cb (GtkTreeSelection *selection, GtkTreeIter iter; gint index = 0; - if (!gtk_tree_selection_get_selected(selection, &list, &iter)) + if (!gtk_tree_selection_get_selected (selection, &list, &iter)) return; - gtk_tree_model_get(list, &iter, - PAGE_INDEX, &index, - -1); + gtk_tree_model_get (list, &iter, + PAGE_INDEX, &index, + -1); PINFO("Index is %d", index); - gtk_notebook_set_current_page(GTK_NOTEBOOK(win->notebook), index); + gtk_notebook_set_current_page (GTK_NOTEBOOK(win->notebook), index); } void @@ -2224,9 +2205,9 @@ refresh_handler (GHashTable *changes, gpointer user_data) * */ GNCOptionWin * -gnc_options_dialog_new(gchar *title, GtkWindow *parent) +gnc_options_dialog_new (gchar *title, GtkWindow *parent) { - return gnc_options_dialog_new_modal(FALSE, title, NULL, parent); + return gnc_options_dialog_new_modal (FALSE, title, NULL, parent); } /* gnc_options_dialog_new_modal: @@ -2243,9 +2224,9 @@ gnc_options_dialog_new(gchar *title, GtkWindow *parent) * the window stack instead of creating a new dialog. */ GNCOptionWin * -gnc_options_dialog_new_modal(gboolean modal, gchar *title, - const char *component_class, - GtkWindow *parent) +gnc_options_dialog_new_modal (gboolean modal, gchar *title, + const char *component_class, + GtkWindow *parent) { GNCOptionWin *retval; GtkBuilder *builder; @@ -2253,8 +2234,8 @@ gnc_options_dialog_new_modal(gboolean modal, gchar *title, gint component_id; GtkWidget *button; - retval = g_new0(GNCOptionWin, 1); - builder = gtk_builder_new(); + retval = g_new0 (GNCOptionWin, 1); + builder = gtk_builder_new (); gnc_builder_add_from_file (builder, "dialog-options.glade", "gnucash_options_window"); retval->window = GTK_WIDGET(gtk_builder_get_object (builder, "gnucash_options_window")); retval->page_list = GTK_WIDGET(gtk_builder_get_object (builder, "page_list_scroll")); @@ -2274,31 +2255,32 @@ gnc_options_dialog_new_modal(gboolean modal, gchar *title, view = GTK_TREE_VIEW(retval->page_list_view); - store = gtk_list_store_new(NUM_COLUMNS, G_TYPE_INT, G_TYPE_STRING); - gtk_tree_view_set_model(view, GTK_TREE_MODEL(store)); - g_object_unref(store); + store = gtk_list_store_new (NUM_COLUMNS, G_TYPE_INT, G_TYPE_STRING); + gtk_tree_view_set_model (view, GTK_TREE_MODEL(store)); + g_object_unref (store); - renderer = gtk_cell_renderer_text_new(); - column = gtk_tree_view_column_new_with_attributes(_("Page"), renderer, - "text", PAGE_NAME, NULL); - gtk_tree_view_append_column(view, column); + renderer = gtk_cell_renderer_text_new (); + column = gtk_tree_view_column_new_with_attributes (_("Page"), renderer, + "text", PAGE_NAME, + NULL); + gtk_tree_view_append_column (view, column); - gtk_tree_view_column_set_alignment(column, 0.5); + gtk_tree_view_column_set_alignment (column, 0.5); - selection = gtk_tree_view_get_selection(view); - gtk_tree_selection_set_mode(selection, GTK_SELECTION_BROWSE); + selection = gtk_tree_view_get_selection (view); + gtk_tree_selection_set_mode (selection, GTK_SELECTION_BROWSE); g_signal_connect (selection, "changed", G_CALLBACK (gnc_options_dialog_list_select_cb), retval); } button = GTK_WIDGET(gtk_builder_get_object (builder, "helpbutton")); - g_signal_connect(button, "clicked", G_CALLBACK(gnc_options_dialog_help_button_cb), retval); + g_signal_connect (button, "clicked", G_CALLBACK(gnc_options_dialog_help_button_cb), retval); button = GTK_WIDGET(gtk_builder_get_object (builder, "cancelbutton")); - g_signal_connect(button, "clicked", G_CALLBACK(gnc_options_dialog_cancel_button_cb), retval); + g_signal_connect (button, "clicked", G_CALLBACK(gnc_options_dialog_cancel_button_cb), retval); button = GTK_WIDGET(gtk_builder_get_object (builder, "applybutton")); - g_signal_connect(button, "clicked", G_CALLBACK(gnc_options_dialog_apply_button_cb), retval); + g_signal_connect (button, "clicked", G_CALLBACK(gnc_options_dialog_apply_button_cb), retval); button = GTK_WIDGET(gtk_builder_get_object (builder, "okbutton")); - g_signal_connect(button, "clicked", G_CALLBACK(gnc_options_dialog_ok_button_cb), retval); + g_signal_connect (button, "clicked", G_CALLBACK(gnc_options_dialog_ok_button_cb), retval); gtk_builder_connect_signals_full (builder, gnc_builder_connect_full_func, retval); @@ -2306,7 +2288,7 @@ gnc_options_dialog_new_modal(gboolean modal, gchar *title, gnc_restore_window_size (GNC_PREFS_GROUP, GTK_WINDOW(retval->window), parent); if (title) - gtk_window_set_title(GTK_WINDOW(retval->window), title); + gtk_window_set_title (GTK_WINDOW(retval->window), title); /* modal */ if (modal == TRUE) @@ -2319,12 +2301,12 @@ gnc_options_dialog_new_modal(gboolean modal, gchar *title, /* glade doesn't support a notebook with zero pages */ hbox = GTK_WIDGET(gtk_builder_get_object (builder, "notebook_placeholder")); - retval->notebook = gtk_notebook_new(); + retval->notebook = gtk_notebook_new (); gtk_widget_set_vexpand (retval->notebook, TRUE); - gtk_widget_show(retval->notebook); - gtk_box_pack_start(GTK_BOX(hbox), retval->notebook, TRUE, TRUE, 5); + gtk_widget_show (retval->notebook); + gtk_box_pack_start (GTK_BOX(hbox), retval->notebook, TRUE, TRUE, 5); retval->component_class = (component_class ? component_class : DIALOG_OPTIONS_CM_CLASS); @@ -2334,11 +2316,11 @@ gnc_options_dialog_new_modal(gboolean modal, gchar *title, gnc_gui_component_set_session (component_id, gnc_get_current_session()); /* Watch account maintenance events only if book option dialog */ - if (g_strcmp0(retval->component_class, DIALOG_BOOK_OPTIONS_CM_CLASS) == 0) + if (g_strcmp0 (retval->component_class, DIALOG_BOOK_OPTIONS_CM_CLASS) == 0) { gnc_gui_component_watch_entity_type (component_id, - GNC_ID_ACCOUNT, - QOF_EVENT_MODIFY | QOF_EVENT_DESTROY); + GNC_ID_ACCOUNT, + QOF_EVENT_MODIFY | QOF_EVENT_DESTROY); } g_signal_connect (retval->window, "destroy", @@ -2347,7 +2329,7 @@ gnc_options_dialog_new_modal(gboolean modal, gchar *title, g_signal_connect (retval->window, "key_press_event", G_CALLBACK(gnc_options_dialog_window_key_press_cb), retval); - g_object_unref(G_OBJECT(builder)); + g_object_unref (G_OBJECT(builder)); retval->destroyed = FALSE; return retval; @@ -2356,42 +2338,42 @@ gnc_options_dialog_new_modal(gboolean modal, gchar *title, /* Creates a new GNCOptionWin structure, but assumes you have your own dialog widget you want to plugin */ GNCOptionWin * -gnc_options_dialog_new_w_dialog(gchar *title, GtkWidget *window) +gnc_options_dialog_new_w_dialog (gchar *title, GtkWidget *window) { GNCOptionWin * retval; - retval = g_new0(GNCOptionWin, 1); + retval = g_new0 (GNCOptionWin, 1); retval->window = window; return retval; } void -gnc_options_dialog_set_apply_cb(GNCOptionWin * win, GNCOptionWinCallback cb, - gpointer data) +gnc_options_dialog_set_apply_cb (GNCOptionWin * win, GNCOptionWinCallback cb, + gpointer data) { win->apply_cb = cb; win->apply_cb_data = data; } void -gnc_options_dialog_set_help_cb(GNCOptionWin * win, GNCOptionWinCallback cb, - gpointer data) +gnc_options_dialog_set_help_cb (GNCOptionWin * win, GNCOptionWinCallback cb, + gpointer data) { win->help_cb = cb; win->help_cb_data = data; } void -gnc_options_dialog_set_close_cb(GNCOptionWin * win, GNCOptionWinCallback cb, - gpointer data) +gnc_options_dialog_set_close_cb (GNCOptionWin * win, GNCOptionWinCallback cb, + gpointer data) { win->close_cb = cb; win->close_cb_data = data; } void -gnc_options_dialog_set_global_help_cb(GNCOptionWinCallback thunk, - gpointer cb_data) +gnc_options_dialog_set_global_help_cb (GNCOptionWinCallback thunk, + gpointer cb_data) { global_help_cb = thunk; global_help_cb_data = cb_data; @@ -2399,14 +2381,14 @@ gnc_options_dialog_set_global_help_cb(GNCOptionWinCallback thunk, /* This is for global program preferences. */ void -gnc_options_dialog_destroy(GNCOptionWin * win) +gnc_options_dialog_destroy (GNCOptionWin * win) { if (!win) return; - gnc_unregister_gui_component_by_data(win->component_class, win); + gnc_unregister_gui_component_by_data (win->component_class, win); win->destroyed = TRUE; - gtk_widget_destroy(win->window); + gtk_widget_destroy (win->window); win->window = NULL; win->notebook = NULL; @@ -2414,7 +2396,7 @@ gnc_options_dialog_destroy(GNCOptionWin * win) win->help_cb = NULL; win->component_class = NULL; - g_free(win); + g_free (win); } /*****************************************************************/ @@ -2473,17 +2455,17 @@ gnc_option_set_ui_widget_boolean (GNCOption *option, GtkGrid *page_box, GtkWidget *value; *enclosing = gtk_box_new (GTK_ORIENTATION_HORIZONTAL, 5); - gtk_box_set_homogeneous (GTK_BOX (*enclosing), FALSE); + gtk_box_set_homogeneous (GTK_BOX(*enclosing), FALSE); value = gtk_check_button_new_with_label (gtk_label_get_text (name_label)); gnc_option_set_widget (option, value); - gnc_option_set_ui_value(option, FALSE); + gnc_option_set_ui_value (option, FALSE); - g_signal_connect(G_OBJECT(value), "toggled", - G_CALLBACK(gnc_option_changed_widget_cb), option); + g_signal_connect (G_OBJECT(value), "toggled", + G_CALLBACK(gnc_option_changed_widget_cb), option); - gtk_box_pack_start(GTK_BOX(*enclosing), value, FALSE, FALSE, 0); - gtk_widget_show_all(*enclosing); + gtk_box_pack_start (GTK_BOX(*enclosing), value, FALSE, FALSE, 0); + gtk_widget_show_all (*enclosing); return value; } @@ -2498,20 +2480,20 @@ gnc_option_set_ui_widget_string (GNCOption *option, GtkGrid *page_box, *enclosing = gtk_box_new (GTK_ORIENTATION_HORIZONTAL, 5); gtk_widget_set_hexpand (GTK_WIDGET(*enclosing), TRUE); - gtk_box_set_homogeneous (GTK_BOX (*enclosing), FALSE); - value = gtk_entry_new(); + gtk_box_set_homogeneous (GTK_BOX(*enclosing), FALSE); + value = gtk_entry_new (); gnc_option_set_widget (option, value); - gnc_option_set_ui_value(option, FALSE); + gnc_option_set_ui_value (option, FALSE); if (gtk_widget_get_direction (GTK_WIDGET(value)) == GTK_TEXT_DIR_RTL) gtk_entry_set_alignment (GTK_ENTRY(value), 1.0); - g_signal_connect(G_OBJECT(value), "changed", - G_CALLBACK(gnc_option_changed_widget_cb), option); + g_signal_connect (G_OBJECT(value), "changed", + G_CALLBACK(gnc_option_changed_widget_cb), option); - gtk_box_pack_start(GTK_BOX(*enclosing), value, TRUE, TRUE, 0); - gtk_widget_show_all(*enclosing); + gtk_box_pack_start (GTK_BOX(*enclosing), value, TRUE, TRUE, 0); + gtk_widget_show_all (*enclosing); return value; } @@ -2530,33 +2512,33 @@ gnc_option_set_ui_widget_text (GNCOption *option, GtkGrid *page_box, gnc_option_set_ui_label_alignment (name_label); - scroll = gtk_scrolled_window_new(NULL, NULL); - gtk_scrolled_window_set_policy(GTK_SCROLLED_WINDOW(scroll), - GTK_POLICY_NEVER, - GTK_POLICY_AUTOMATIC); - gtk_container_set_border_width(GTK_CONTAINER(scroll), 2); + scroll = gtk_scrolled_window_new (NULL, NULL); + gtk_scrolled_window_set_policy (GTK_SCROLLED_WINDOW(scroll), + GTK_POLICY_NEVER, + GTK_POLICY_AUTOMATIC); + gtk_container_set_border_width (GTK_CONTAINER(scroll), 2); - gtk_container_add(GTK_CONTAINER(frame), scroll); + gtk_container_add (GTK_CONTAINER(frame), scroll); *enclosing = gtk_box_new (GTK_ORIENTATION_HORIZONTAL, 10); gtk_widget_set_vexpand (GTK_WIDGET(*enclosing), TRUE); gtk_widget_set_hexpand (GTK_WIDGET(*enclosing), TRUE); gtk_box_set_homogeneous (GTK_BOX (*enclosing), FALSE); - value = gtk_text_view_new(); - gtk_text_view_set_wrap_mode(GTK_TEXT_VIEW(value), GTK_WRAP_WORD); - gtk_text_view_set_editable(GTK_TEXT_VIEW(value), TRUE); + value = gtk_text_view_new (); + gtk_text_view_set_wrap_mode (GTK_TEXT_VIEW(value), GTK_WRAP_WORD); + gtk_text_view_set_editable (GTK_TEXT_VIEW(value), TRUE); gtk_text_view_set_accepts_tab (GTK_TEXT_VIEW(value), FALSE); - gtk_container_add (GTK_CONTAINER (scroll), value); + gtk_container_add (GTK_CONTAINER(scroll), value); gnc_option_set_widget (option, value); - gnc_option_set_ui_value(option, FALSE); + gnc_option_set_ui_value (option, FALSE); - text_buffer = gtk_text_view_get_buffer(GTK_TEXT_VIEW(value)); - g_signal_connect(G_OBJECT(text_buffer), "changed", - G_CALLBACK(gnc_option_changed_option_cb), option); + text_buffer = gtk_text_view_get_buffer (GTK_TEXT_VIEW(value)); + g_signal_connect (G_OBJECT(text_buffer), "changed", + G_CALLBACK(gnc_option_changed_option_cb), option); - gtk_box_pack_start(GTK_BOX(*enclosing), frame, TRUE, TRUE, 0); - gtk_widget_show_all(*enclosing); + gtk_box_pack_start (GTK_BOX(*enclosing), frame, TRUE, TRUE, 0); + gtk_widget_show_all (*enclosing); return value; } @@ -2569,17 +2551,17 @@ gnc_option_set_ui_widget_currency (GNCOption *option, GtkGrid *page_box, GtkWidget *value; *enclosing = gtk_box_new (GTK_ORIENTATION_HORIZONTAL, 5); - gtk_box_set_homogeneous (GTK_BOX (*enclosing), FALSE); - value = gnc_currency_edit_new(); + gtk_box_set_homogeneous (GTK_BOX(*enclosing), FALSE); + value = gnc_currency_edit_new (); gnc_option_set_widget (option, value); - gnc_option_set_ui_value(option, FALSE); + gnc_option_set_ui_value (option, FALSE); - g_signal_connect(G_OBJECT(value), "changed", - G_CALLBACK(gnc_option_changed_widget_cb), option); + g_signal_connect (G_OBJECT(value), "changed", + G_CALLBACK(gnc_option_changed_widget_cb), option); - gtk_box_pack_start(GTK_BOX(*enclosing), value, FALSE, FALSE, 0); - gtk_widget_show_all(*enclosing); + gtk_box_pack_start (GTK_BOX(*enclosing), value, FALSE, FALSE, 0); + gtk_widget_show_all (*enclosing); return value; } @@ -2592,24 +2574,24 @@ gnc_option_set_ui_widget_commodity (GNCOption *option, GtkGrid *page_box, GtkWidget *value; *enclosing = gtk_box_new (GTK_ORIENTATION_HORIZONTAL, 5); - gtk_box_set_homogeneous (GTK_BOX (*enclosing), FALSE); - value = gnc_general_select_new(GNC_GENERAL_SELECT_TYPE_SELECT, - gnc_commodity_edit_get_string, - gnc_commodity_edit_new_select, - NULL); + gtk_box_set_homogeneous (GTK_BOX(*enclosing), FALSE); + value = gnc_general_select_new (GNC_GENERAL_SELECT_TYPE_SELECT, + gnc_commodity_edit_get_string, + gnc_commodity_edit_new_select, + NULL); gnc_option_set_widget (option, value); - gnc_option_set_ui_value(option, FALSE); + gnc_option_set_ui_value (option, FALSE); if (documentation != NULL) - gtk_widget_set_tooltip_text(GNC_GENERAL_SELECT(value)->entry, - documentation); + gtk_widget_set_tooltip_text (GNC_GENERAL_SELECT(value)->entry, + documentation); - g_signal_connect(G_OBJECT(GNC_GENERAL_SELECT(value)->entry), "changed", - G_CALLBACK(gnc_option_changed_widget_cb), option); + g_signal_connect (G_OBJECT(GNC_GENERAL_SELECT(value)->entry), "changed", + G_CALLBACK(gnc_option_changed_widget_cb), option); - gtk_box_pack_start(GTK_BOX(*enclosing), value, FALSE, FALSE, 0); - gtk_widget_show_all(*enclosing); + gtk_box_pack_start (GTK_BOX(*enclosing), value, FALSE, FALSE, 0); + gtk_widget_show_all (*enclosing); return value; } @@ -2622,14 +2604,14 @@ gnc_option_set_ui_widget_multichoice (GNCOption *option, GtkGrid *page_box, GtkWidget *value; *enclosing = gtk_box_new (GTK_ORIENTATION_HORIZONTAL, 5); - gtk_box_set_homogeneous (GTK_BOX (*enclosing), FALSE); + gtk_box_set_homogeneous (GTK_BOX(*enclosing), FALSE); - value = gnc_option_create_multichoice_widget(option); + value = gnc_option_create_multichoice_widget (option); gnc_option_set_widget (option, value); - gnc_option_set_ui_value(option, FALSE); - gtk_box_pack_start(GTK_BOX(*enclosing), value, FALSE, FALSE, 0); - gtk_widget_show_all(*enclosing); + gnc_option_set_ui_value (option, FALSE); + gtk_box_pack_start (GTK_BOX(*enclosing), value, FALSE, FALSE, 0); + gtk_widget_show_all (*enclosing); return value; } @@ -2648,16 +2630,16 @@ gnc_option_set_ui_widget_date (GNCOption *option, GtkGrid *page_box, gint grid_row = GPOINTER_TO_INT(g_object_get_data (G_OBJECT(page_box), "options-grid-row")); - value = gnc_option_create_date_widget(option); + value = gnc_option_create_date_widget (option); gnc_option_set_widget (option, value); - if (g_strcmp0(type, "relative") == 0) + if (g_strcmp0 (type, "relative") == 0) { *enclosing = gtk_box_new (GTK_ORIENTATION_HORIZONTAL, 5); - gtk_box_set_homogeneous (GTK_BOX (*enclosing), FALSE); + gtk_box_set_homogeneous (GTK_BOX(*enclosing), FALSE); - gtk_box_pack_start(GTK_BOX(*enclosing), value, FALSE, FALSE, 0); + gtk_box_pack_start (GTK_BOX(*enclosing), value, FALSE, FALSE, 0); } else { @@ -2672,16 +2654,16 @@ gnc_option_set_ui_widget_date (GNCOption *option, GtkGrid *page_box, /* Pack option widget into an extra eventbox because otherwise the "documentation" tooltip is not displayed. */ - eventbox = gtk_event_box_new(); - gtk_container_add (GTK_CONTAINER (eventbox), *enclosing); + eventbox = gtk_event_box_new (); + gtk_container_add (GTK_CONTAINER(eventbox), *enclosing); gtk_grid_attach (GTK_GRID(page_box), eventbox, 1, grid_row, 1, 1); *packed = TRUE; gtk_widget_set_tooltip_text (eventbox, documentation); - gnc_option_set_ui_value(option, FALSE); - gtk_widget_show_all(*enclosing); + gnc_option_set_ui_value (option, FALSE); + gtk_widget_show_all (*enclosing); return value; } @@ -2698,27 +2680,27 @@ gnc_option_set_ui_widget_account_list (GNCOption *option, GtkGrid *page_box, gnc_option_set_ui_label_alignment (name_label); - *enclosing = gnc_option_create_account_widget(option, NULL); + *enclosing = gnc_option_create_account_widget (option, NULL); gtk_widget_set_vexpand (GTK_WIDGET(*enclosing), TRUE); gtk_widget_set_hexpand (GTK_WIDGET(*enclosing), TRUE); value = gnc_option_get_gtk_widget (option); - gtk_widget_set_tooltip_text(*enclosing, documentation); + gtk_widget_set_tooltip_text (*enclosing, documentation); gtk_grid_attach (GTK_GRID(page_box), *enclosing, 1, grid_row, 1, 1); *packed = TRUE; //gtk_widget_realize(value); - gnc_option_set_ui_value(option, FALSE); + gnc_option_set_ui_value (option, FALSE); - selection = gtk_tree_view_get_selection(GTK_TREE_VIEW(value)); - g_signal_connect(G_OBJECT(selection), "changed", - G_CALLBACK(gnc_option_account_cb), option); + selection = gtk_tree_view_get_selection (GTK_TREE_VIEW(value)); + g_signal_connect (G_OBJECT(selection), "changed", + G_CALLBACK(gnc_option_account_cb), option); // gtk_clist_set_row_height(GTK_CLIST(value), 0); // gtk_widget_set_size_request(value, -1, GTK_CLIST(value)->row_height * 10); - gtk_widget_show_all(*enclosing); + gtk_widget_show_all (*enclosing); return value; } @@ -2731,19 +2713,19 @@ gnc_option_set_ui_widget_account_sel (GNCOption *option, GtkGrid *page_box, GtkWidget *value = gnc_account_sel_new (); GList *acct_type_list = gnc_option_get_account_type_list (option); - gnc_account_sel_set_acct_filters(GNC_ACCOUNT_SEL(value), acct_type_list, NULL); + gnc_account_sel_set_acct_filters (GNC_ACCOUNT_SEL(value), acct_type_list, NULL); - g_signal_connect(value, "account_sel_changed", - G_CALLBACK(gnc_option_changed_widget_cb), option); + g_signal_connect (value, "account_sel_changed", + G_CALLBACK(gnc_option_changed_widget_cb), option); gnc_option_set_widget (option, value); - gnc_option_set_ui_value(option, FALSE); + gnc_option_set_ui_value (option, FALSE); *enclosing = gtk_box_new (GTK_ORIENTATION_HORIZONTAL, 5); - gtk_box_set_homogeneous (GTK_BOX (*enclosing), FALSE); - gtk_box_pack_start(GTK_BOX(*enclosing), value, FALSE, FALSE, 0); - gtk_widget_show_all(*enclosing); + gtk_box_set_homogeneous (GTK_BOX(*enclosing), FALSE); + gtk_box_pack_start (GTK_BOX(*enclosing), value, FALSE, FALSE, 0); + gtk_widget_show_all (*enclosing); return value; } @@ -2758,23 +2740,23 @@ gnc_option_set_ui_widget_list (GNCOption *option, GtkGrid *page_box, gint grid_row = GPOINTER_TO_INT(g_object_get_data (G_OBJECT(page_box), "options-grid-row")); - *enclosing = gnc_option_create_list_widget(option, NULL); + *enclosing = gnc_option_create_list_widget (option, NULL); value = gnc_option_get_gtk_widget (option); gnc_option_set_ui_label_alignment (name_label); /* Pack option widget into an extra eventbox because otherwise the "documentation" tooltip is not displayed. */ - eventbox = gtk_event_box_new(); - gtk_container_add (GTK_CONTAINER (eventbox), *enclosing); + eventbox = gtk_event_box_new (); + gtk_container_add (GTK_CONTAINER(eventbox), *enclosing); gtk_grid_attach (GTK_GRID(page_box), eventbox, 1, grid_row, 1, 1); *packed = TRUE; - gtk_widget_set_tooltip_text(eventbox, documentation); + gtk_widget_set_tooltip_text (eventbox, documentation); - gnc_option_set_ui_value(option, FALSE); - gtk_widget_show(*enclosing); + gnc_option_set_ui_value (option, FALSE); + gtk_widget_show (*enclosing); return value; } @@ -2792,16 +2774,16 @@ gnc_option_set_ui_widget_number_range (GNCOption *option, GtkGrid *page_box, int num_decimals = 0; *enclosing = gtk_box_new (GTK_ORIENTATION_HORIZONTAL, 5); - gtk_box_set_homogeneous (GTK_BOX (*enclosing), FALSE); + gtk_box_set_homogeneous (GTK_BOX(*enclosing), FALSE); - gnc_option_get_range_info(option, &lower_bound, &upper_bound, - &num_decimals, &step_size); - adj = GTK_ADJUSTMENT(gtk_adjustment_new(lower_bound, lower_bound, - upper_bound, step_size, - step_size * 5.0, - 0)); - value = gtk_spin_button_new(adj, step_size, num_decimals); - gtk_spin_button_set_numeric(GTK_SPIN_BUTTON(value), TRUE); + gnc_option_get_range_info (option, &lower_bound, &upper_bound, + &num_decimals, &step_size); + adj = GTK_ADJUSTMENT(gtk_adjustment_new (lower_bound, lower_bound, + upper_bound, step_size, + step_size * 5.0, + 0)); + value = gtk_spin_button_new (adj, step_size, num_decimals); + gtk_spin_button_set_numeric (GTK_SPIN_BUTTON(value), TRUE); { gdouble biggest; @@ -2822,17 +2804,17 @@ gnc_option_set_ui_widget_number_range (GNCOption *option, GtkGrid *page_box, num_digits += num_decimals; - gtk_entry_set_width_chars(GTK_ENTRY(value), num_digits); + gtk_entry_set_width_chars (GTK_ENTRY(value), num_digits); } gnc_option_set_widget (option, value); - gnc_option_set_ui_value(option, FALSE); + gnc_option_set_ui_value (option, FALSE); - g_signal_connect(G_OBJECT(value), "changed", - G_CALLBACK(gnc_option_changed_widget_cb), option); + g_signal_connect (G_OBJECT(value), "changed", + G_CALLBACK(gnc_option_changed_widget_cb), option); - gtk_box_pack_start(GTK_BOX(*enclosing), value, FALSE, FALSE, 0); - gtk_widget_show_all(*enclosing); + gtk_box_pack_start (GTK_BOX(*enclosing), value, FALSE, FALSE, 0); + gtk_widget_show_all (*enclosing); return value; } @@ -2846,21 +2828,21 @@ gnc_option_set_ui_widget_color (GNCOption *option, GtkGrid *page_box, gboolean use_alpha; *enclosing = gtk_box_new (GTK_ORIENTATION_HORIZONTAL, 5); - gtk_box_set_homogeneous (GTK_BOX (*enclosing), FALSE); + gtk_box_set_homogeneous (GTK_BOX(*enclosing), FALSE); - use_alpha = gnc_option_use_alpha(option); + use_alpha = gnc_option_use_alpha (option); - value = gtk_color_button_new(); - gtk_color_chooser_set_use_alpha(GTK_COLOR_CHOOSER(value), use_alpha); + value = gtk_color_button_new (); + gtk_color_chooser_set_use_alpha (GTK_COLOR_CHOOSER(value), use_alpha); gnc_option_set_widget (option, value); - gnc_option_set_ui_value(option, FALSE); + gnc_option_set_ui_value (option, FALSE); - g_signal_connect(G_OBJECT(value), "color-set", - G_CALLBACK(gnc_option_color_changed_cb), option); + g_signal_connect (G_OBJECT(value), "color-set", + G_CALLBACK(gnc_option_color_changed_cb), option); - gtk_box_pack_start(GTK_BOX(*enclosing), value, FALSE, FALSE, 0); - gtk_widget_show_all(*enclosing); + gtk_box_pack_start (GTK_BOX(*enclosing), value, FALSE, FALSE, 0); + gtk_widget_show_all (*enclosing); return value; } @@ -2873,23 +2855,23 @@ gnc_option_set_ui_widget_font (GNCOption *option, GtkGrid *page_box, GtkWidget *value; *enclosing = gtk_box_new (GTK_ORIENTATION_HORIZONTAL, 5); - gtk_box_set_homogeneous (GTK_BOX (*enclosing), FALSE); - value = gtk_font_button_new(); - g_object_set(G_OBJECT(value), - "use-font", TRUE, - "show-style", TRUE, - "show-size", TRUE, - (char *)NULL); + gtk_box_set_homogeneous (GTK_BOX(*enclosing), FALSE); + value = gtk_font_button_new (); + g_object_set (G_OBJECT(value), + "use-font", TRUE, + "show-style", TRUE, + "show-size", TRUE, + (char *)NULL); gnc_option_set_widget (option, value); - gnc_option_set_ui_value(option, FALSE); + gnc_option_set_ui_value (option, FALSE); - g_signal_connect(G_OBJECT(value), "font-set", - G_CALLBACK(gnc_option_font_changed_cb), option); + g_signal_connect (G_OBJECT(value), "font-set", + G_CALLBACK(gnc_option_font_changed_cb), option); - gtk_box_pack_start(GTK_BOX(*enclosing), value, FALSE, FALSE, 0); - gtk_widget_show_all(*enclosing); + gtk_box_pack_start (GTK_BOX(*enclosing), value, FALSE, FALSE, 0); + gtk_widget_show_all (*enclosing); return value; } @@ -2903,35 +2885,35 @@ gnc_option_set_ui_widget_pixmap (GNCOption *option, GtkGrid *page_box, GtkWidget *button; *enclosing = gtk_box_new (GTK_ORIENTATION_HORIZONTAL, 5); - gtk_box_set_homogeneous (GTK_BOX (*enclosing), FALSE); + gtk_box_set_homogeneous (GTK_BOX(*enclosing), FALSE); - button = gtk_button_new_with_label(_("Clear")); - gtk_widget_set_tooltip_text(button, _("Clear any selected image file.")); + button = gtk_button_new_with_label (_("Clear")); + gtk_widget_set_tooltip_text (button, _("Clear any selected image file.")); - value = gtk_file_chooser_button_new(_("Select image"), - GTK_FILE_CHOOSER_ACTION_OPEN); - gtk_widget_set_tooltip_text(value, _("Select an image file.")); - g_object_set(G_OBJECT(value), - "width-chars", 30, - "preview-widget", gtk_image_new(), - (char *)NULL); - g_signal_connect(G_OBJECT (value), "selection-changed", - G_CALLBACK(gnc_option_changed_widget_cb), option); - g_signal_connect(G_OBJECT (value), "selection-changed", - G_CALLBACK(gnc_image_option_selection_changed_cb), option); - g_signal_connect(G_OBJECT (value), "update-preview", - G_CALLBACK(gnc_image_option_update_preview_cb), option); - g_signal_connect_swapped(G_OBJECT (button), "clicked", - G_CALLBACK(gtk_file_chooser_unselect_all), value); + value = gtk_file_chooser_button_new (_("Select image"), + GTK_FILE_CHOOSER_ACTION_OPEN); + gtk_widget_set_tooltip_text (value, _("Select an image file.")); + g_object_set (G_OBJECT(value), + "width-chars", 30, + "preview-widget", gtk_image_new(), + (char *)NULL); + g_signal_connect (G_OBJECT(value), "selection-changed", + G_CALLBACK(gnc_option_changed_widget_cb), option); + g_signal_connect (G_OBJECT(value), "selection-changed", + G_CALLBACK(gnc_image_option_selection_changed_cb), option); + g_signal_connect (G_OBJECT(value), "update-preview", + G_CALLBACK(gnc_image_option_update_preview_cb), option); + g_signal_connect_swapped (G_OBJECT(button), "clicked", + G_CALLBACK(gtk_file_chooser_unselect_all), value); gnc_option_set_widget (option, value); - gnc_option_set_ui_value(option, FALSE); + gnc_option_set_ui_value (option, FALSE); - gtk_box_pack_start(GTK_BOX(*enclosing), value, FALSE, FALSE, 0); - gtk_box_pack_start(GTK_BOX(*enclosing), button, FALSE, FALSE, 0); + gtk_box_pack_start (GTK_BOX(*enclosing), value, FALSE, FALSE, 0); + gtk_box_pack_start (GTK_BOX(*enclosing), button, FALSE, FALSE, 0); - gtk_widget_show(value); - gtk_widget_show(*enclosing); + gtk_widget_show (value); + gtk_widget_show (*enclosing); return value; } @@ -2945,16 +2927,16 @@ gnc_option_set_ui_widget_radiobutton (GNCOption *option, GtkGrid *page_box, GtkWidget *value; *enclosing = gtk_box_new (GTK_ORIENTATION_HORIZONTAL, 5); - gtk_box_set_homogeneous (GTK_BOX (*enclosing), FALSE); + gtk_box_set_homogeneous (GTK_BOX(*enclosing), FALSE); gnc_option_set_ui_label_alignment (name_label); - value = gnc_option_create_radiobutton_widget(NULL, option); + value = gnc_option_create_radiobutton_widget (NULL, option); gnc_option_set_widget (option, value); - gnc_option_set_ui_value(option, FALSE); - gtk_box_pack_start(GTK_BOX(*enclosing), value, FALSE, FALSE, 0); - gtk_widget_show_all(*enclosing); + gnc_option_set_ui_value (option, FALSE); + gtk_box_pack_start (GTK_BOX(*enclosing), value, FALSE, FALSE, 0); + gtk_widget_show_all (*enclosing); return value; } @@ -2969,15 +2951,15 @@ gnc_option_set_ui_widget_dateformat (GNCOption *option, GtkGrid *page_box, gnc_option_set_ui_label_alignment (name_label); - gnc_option_set_ui_value(option, FALSE); - g_signal_connect(G_OBJECT(*enclosing), "format_changed", - G_CALLBACK(gnc_option_changed_option_cb), option); - gtk_widget_show_all(*enclosing); + gnc_option_set_ui_value (option, FALSE); + g_signal_connect (G_OBJECT(*enclosing), "format_changed", + G_CALLBACK(gnc_option_changed_option_cb), option); + gtk_widget_show_all (*enclosing); return *enclosing; } static void -gnc_plot_size_option_set_select_method(GNCOption *option, gboolean set_buttons) +gnc_plot_size_option_set_select_method (GNCOption *option, gboolean set_buttons) { GList* widget_list; GtkWidget *px_widget, *p_widget; @@ -2985,43 +2967,42 @@ gnc_plot_size_option_set_select_method(GNCOption *option, gboolean set_buttons) widget = gnc_option_get_gtk_widget (option); - widget_list = gtk_container_get_children(GTK_CONTAINER(widget)); + widget_list = gtk_container_get_children (GTK_CONTAINER(widget)); // px_button item 0 - px_widget = g_list_nth_data(widget_list, 1); + px_widget = g_list_nth_data (widget_list, 1); // p_button item 2 - p_widget = g_list_nth_data(widget_list, 3); - g_list_free(widget_list); + p_widget = g_list_nth_data (widget_list, 3); + g_list_free (widget_list); if (set_buttons) { - gtk_widget_set_sensitive(px_widget, TRUE); - gtk_widget_set_sensitive(p_widget, FALSE); + gtk_widget_set_sensitive (px_widget, TRUE); + gtk_widget_set_sensitive (p_widget, FALSE); } else { - gtk_widget_set_sensitive(p_widget, TRUE); - gtk_widget_set_sensitive(px_widget, FALSE); + gtk_widget_set_sensitive (p_widget, TRUE); + gtk_widget_set_sensitive (px_widget, FALSE); } } static void -gnc_rd_option_px_set_cb(GtkWidget *widget, gpointer *raw_option) +gnc_rd_option_px_set_cb (GtkWidget *widget, gpointer *raw_option) { GNCOption *option = (GNCOption *) raw_option; - gnc_plot_size_option_set_select_method(option, TRUE); - gnc_option_changed_option_cb(widget, option); + gnc_plot_size_option_set_select_method (option, TRUE); + gnc_option_changed_option_cb (widget, option); } static void -gnc_rd_option_p_set_cb(GtkWidget *widget, gpointer *raw_option) +gnc_rd_option_p_set_cb (GtkWidget *widget, gpointer *raw_option) { GNCOption *option = (GNCOption *) raw_option; - gnc_plot_size_option_set_select_method(option, FALSE); - gnc_option_changed_option_cb(widget, option); + gnc_plot_size_option_set_select_method (option, FALSE); + gnc_option_changed_option_cb (widget, option); return; } - static GtkWidget * gnc_option_set_ui_widget_plot_size (GNCOption *option, GtkGrid *page_box, GtkLabel *name_label, char *documentation, @@ -3037,24 +3018,24 @@ gnc_option_set_ui_widget_plot_size (GNCOption *option, GtkGrid *page_box, gdouble step_size = 1.0; int num_decimals = 0; - *enclosing = gtk_frame_new(NULL); + *enclosing = gtk_frame_new (NULL); gtk_widget_set_halign (GTK_WIDGET(*enclosing), GTK_ALIGN_START); hbox = gtk_box_new (GTK_ORIENTATION_HORIZONTAL, 5); - gtk_box_set_homogeneous (GTK_BOX (hbox), FALSE); + gtk_box_set_homogeneous (GTK_BOX(hbox), FALSE); g_object_set (G_OBJECT(hbox), "margin", 3, NULL); - gtk_container_add(GTK_CONTAINER(*enclosing), hbox); + gtk_container_add (GTK_CONTAINER(*enclosing), hbox); - gnc_option_get_range_info(option, &lower_bound, &upper_bound, - &num_decimals, &step_size); - adj_px = GTK_ADJUSTMENT(gtk_adjustment_new(lower_bound, lower_bound, - upper_bound, step_size, - step_size * 5.0, - 0)); + gnc_option_get_range_info (option, &lower_bound, &upper_bound, + &num_decimals, &step_size); + adj_px = GTK_ADJUSTMENT(gtk_adjustment_new (lower_bound, lower_bound, + upper_bound, step_size, + step_size * 5.0, + 0)); - value_px = gtk_spin_button_new(adj_px, step_size, num_decimals); - gtk_spin_button_set_numeric(GTK_SPIN_BUTTON(value_px), TRUE); + value_px = gtk_spin_button_new (adj_px, step_size, num_decimals); + gtk_spin_button_set_numeric (GTK_SPIN_BUTTON(value_px), TRUE); { gdouble biggest; @@ -3075,41 +3056,41 @@ gnc_option_set_ui_widget_plot_size (GNCOption *option, GtkGrid *page_box, num_digits += num_decimals; - gtk_entry_set_width_chars(GTK_ENTRY(value_px), num_digits); + gtk_entry_set_width_chars (GTK_ENTRY(value_px), num_digits); } - gtk_spin_button_set_value(GTK_SPIN_BUTTON(value_px), (upper_bound / 2)); //default - g_signal_connect(G_OBJECT(value_px), "changed", - G_CALLBACK(gnc_option_changed_widget_cb), option); + gtk_spin_button_set_value (GTK_SPIN_BUTTON(value_px), (upper_bound / 2)); //default + g_signal_connect (G_OBJECT(value_px), "changed", + G_CALLBACK(gnc_option_changed_widget_cb), option); - adj_percent = GTK_ADJUSTMENT(gtk_adjustment_new(1, 10, 100, 1, 5.0, 0)); - value_percent = gtk_spin_button_new(adj_percent, 1, 0); - gtk_spin_button_set_numeric(GTK_SPIN_BUTTON(value_percent), TRUE); - gtk_spin_button_set_value(GTK_SPIN_BUTTON(value_percent), 100); //default - gtk_entry_set_width_chars(GTK_ENTRY(value_percent), 3); - gtk_widget_set_sensitive(value_percent, FALSE); + adj_percent = GTK_ADJUSTMENT(gtk_adjustment_new (1, 10, 100, 1, 5.0, 0)); + value_percent = gtk_spin_button_new (adj_percent, 1, 0); + gtk_spin_button_set_numeric (GTK_SPIN_BUTTON(value_percent), TRUE); + gtk_spin_button_set_value (GTK_SPIN_BUTTON(value_percent), 100); //default + gtk_entry_set_width_chars (GTK_ENTRY(value_percent), 3); + gtk_widget_set_sensitive (value_percent, FALSE); - g_signal_connect(G_OBJECT(value_percent), "changed", - G_CALLBACK(gnc_option_changed_widget_cb), option); + g_signal_connect (G_OBJECT(value_percent), "changed", + G_CALLBACK(gnc_option_changed_widget_cb), option); - px_butt = gtk_radio_button_new_with_label(NULL, _("Pixels")); + px_butt = gtk_radio_button_new_with_label (NULL, _("Pixels")); gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON(px_butt), TRUE); - g_signal_connect(G_OBJECT(px_butt), "toggled", - G_CALLBACK(gnc_rd_option_px_set_cb), option); + g_signal_connect (G_OBJECT(px_butt), "toggled", + G_CALLBACK(gnc_rd_option_px_set_cb), option); - p_butt = gtk_radio_button_new_with_label_from_widget(GTK_RADIO_BUTTON(px_butt), _("Percent")); - g_signal_connect(G_OBJECT(p_butt), "toggled", - G_CALLBACK(gnc_rd_option_p_set_cb), option); + p_butt = gtk_radio_button_new_with_label_from_widget (GTK_RADIO_BUTTON(px_butt), _("Percent")); + g_signal_connect (G_OBJECT(p_butt), "toggled", + G_CALLBACK(gnc_rd_option_p_set_cb), option); - gtk_box_pack_start(GTK_BOX(hbox), px_butt, FALSE, FALSE, 0); - gtk_box_pack_start(GTK_BOX(hbox), value_px, FALSE, FALSE, 0); - gtk_box_pack_start(GTK_BOX(hbox), p_butt, FALSE, FALSE, 0); - gtk_box_pack_start(GTK_BOX(hbox), value_percent, FALSE, FALSE, 0); + gtk_box_pack_start (GTK_BOX(hbox), px_butt, FALSE, FALSE, 0); + gtk_box_pack_start (GTK_BOX(hbox), value_px, FALSE, FALSE, 0); + gtk_box_pack_start (GTK_BOX(hbox), p_butt, FALSE, FALSE, 0); + gtk_box_pack_start (GTK_BOX(hbox), value_percent, FALSE, FALSE, 0); gnc_option_set_widget (option, hbox); gnc_option_set_ui_value (option, FALSE); - gtk_widget_show_all(*enclosing); + gtk_widget_show_all (*enclosing); return hbox; } @@ -3123,19 +3104,19 @@ gnc_option_set_ui_widget_budget (GNCOption *option, GtkGrid *page_box, *enclosing = gtk_box_new (GTK_ORIENTATION_HORIZONTAL, 5); - gtk_box_set_homogeneous (GTK_BOX (*enclosing), FALSE); + gtk_box_set_homogeneous (GTK_BOX(*enclosing), FALSE); - value = gnc_option_create_budget_widget(option); + value = gnc_option_create_budget_widget (option); gnc_option_set_widget (option, value); - gnc_option_set_ui_value(option, FALSE); + gnc_option_set_ui_value (option, FALSE); /* Maybe connect destroy handler for tree model here? */ - g_signal_connect(G_OBJECT(value), "changed", - G_CALLBACK(gnc_option_changed_widget_cb), option); + g_signal_connect (G_OBJECT(value), "changed", + G_CALLBACK(gnc_option_changed_widget_cb), option); - gtk_box_pack_start(GTK_BOX(*enclosing), value, FALSE, FALSE, 0); - gtk_widget_show_all(*enclosing); + gtk_box_pack_start (GTK_BOX(*enclosing), value, FALSE, FALSE, 0); + gtk_widget_show_all (*enclosing); return value; } @@ -3150,14 +3131,14 @@ gnc_option_set_ui_widget_currency_accounting (GNCOption *option, GtkWidget *value; *enclosing = gtk_box_new (GTK_ORIENTATION_HORIZONTAL, 5); - gtk_box_set_homogeneous (GTK_BOX (*enclosing), FALSE); + gtk_box_set_homogeneous (GTK_BOX(*enclosing), FALSE); - value = gnc_option_create_currency_accounting_widget(NULL, option); + value = gnc_option_create_currency_accounting_widget (NULL, option); gnc_option_set_widget (option, value); - gnc_option_set_ui_value(option, FALSE); - gtk_box_pack_start(GTK_BOX(*enclosing), value, TRUE, TRUE, 0); - gtk_widget_show_all(*enclosing); + gnc_option_set_ui_value (option, FALSE); + gtk_box_pack_start (GTK_BOX(*enclosing), value, TRUE, TRUE, 0); + gtk_widget_show_all (*enclosing); return value; } @@ -3177,10 +3158,10 @@ static gboolean gnc_option_set_ui_value_boolean (GNCOption *option, gboolean use_default, GtkWidget *widget, SCM value) { - if (scm_is_bool(value)) + if (scm_is_bool (value)) { - gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(widget), - scm_is_true(value)); + gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON(widget), + scm_is_true(value)); return FALSE; } else @@ -3191,12 +3172,12 @@ static gboolean gnc_option_set_ui_value_string (GNCOption *option, gboolean use_default, GtkWidget *widget, SCM value) { - if (scm_is_string(value)) + if (scm_is_string (value)) { const gchar *string; string = gnc_scm_to_utf8_string (value); - gtk_entry_set_text(GTK_ENTRY(widget), string); + gtk_entry_set_text (GTK_ENTRY(widget), string); g_free ((gpointer *) string); return FALSE; } @@ -3213,9 +3194,9 @@ gnc_option_set_ui_value_text (GNCOption *option, gboolean use_default, if (GTK_IS_TEXT_BUFFER(object)) buffer = GTK_TEXT_BUFFER(object); else - buffer = gtk_text_view_get_buffer(GTK_TEXT_VIEW(object)); + buffer = gtk_text_view_get_buffer (GTK_TEXT_VIEW(object)); - if (scm_is_string(value)) + if (scm_is_string (value)) { const gchar *string; @@ -3237,7 +3218,7 @@ gnc_option_set_ui_value_currency (GNCOption *option, gboolean use_default, commodity = gnc_scm_to_commodity (value); if (commodity) { - gnc_currency_edit_set_currency(GNC_CURRENCY_EDIT(widget), commodity); + gnc_currency_edit_set_currency (GNC_CURRENCY_EDIT(widget), commodity); return FALSE; } else @@ -3253,7 +3234,7 @@ gnc_option_set_ui_value_commodity (GNCOption *option, gboolean use_default, commodity = gnc_scm_to_commodity (value); if (commodity) { - gnc_general_select_set_selected(GNC_GENERAL_SELECT (widget), commodity); + gnc_general_select_set_selected (GNC_GENERAL_SELECT(widget), commodity); return FALSE; } else @@ -3266,13 +3247,13 @@ gnc_option_set_ui_value_multichoice (GNCOption *option, gboolean use_default, { int index; - index = gnc_option_permissible_value_index(option, value); + index = gnc_option_permissible_value_index (option, value); if (index < 0) return TRUE; else { /* GtkComboBox per-item tooltip changes needed below */ - gnc_combott_set_active(GNC_COMBOTT(widget), index); + gnc_combott_set_active (GNC_COMBOTT(widget), index); return FALSE; } } @@ -3286,84 +3267,76 @@ gnc_option_set_ui_value_date (GNCOption *option, gboolean use_default, char *symbol_str; gboolean bad_value = FALSE; - date_option_type = gnc_option_date_option_get_subtype(option); + date_option_type = gnc_option_date_option_get_subtype (option); - if (scm_is_pair(value)) + if (scm_is_pair (value)) { symbol_str = gnc_date_option_value_get_type (value); if (symbol_str) { - if (g_strcmp0(symbol_str, "relative") == 0) + if (g_strcmp0 (symbol_str, "relative") == 0) { SCM relative = gnc_date_option_value_get_relative (value); - index = gnc_option_permissible_value_index(option, relative); - if (g_strcmp0(date_option_type, "relative") == 0) + index = gnc_option_permissible_value_index (option, relative); + if (g_strcmp0 (date_option_type, "relative") == 0) { /* GtkComboBox per-item tooltip changes needed below */ - gnc_combott_set_active(GNC_COMBOTT(widget), index); + gnc_combott_set_active (GNC_COMBOTT(widget), index); } - else if (g_strcmp0(date_option_type, "both") == 0) + else if (g_strcmp0 (date_option_type, "both") == 0) { GList *widget_list; GtkWidget *rel_date_widget; - widget_list = gtk_container_get_children(GTK_CONTAINER(widget)); - rel_date_widget = g_list_nth_data(widget_list, - GNC_RD_WID_REL_WIDGET_POS); - g_list_free(widget_list); - gnc_date_option_set_select_method(option, FALSE, TRUE); + widget_list = gtk_container_get_children (GTK_CONTAINER(widget)); + rel_date_widget = g_list_nth_data (widget_list, + GNC_RD_WID_REL_WIDGET_POS); + g_list_free (widget_list); + gnc_date_option_set_select_method (option, FALSE, TRUE); /* GtkComboBox per-item tooltip changes needed below */ - gnc_combott_set_active(GNC_COMBOTT(rel_date_widget), index); + gnc_combott_set_active (GNC_COMBOTT(rel_date_widget), index); } else - { bad_value = TRUE; - } } - else if (g_strcmp0(symbol_str, "absolute") == 0) + else if (g_strcmp0 (symbol_str, "absolute") == 0) { time64 time; time = gnc_date_option_value_get_absolute (value); - if (g_strcmp0(date_option_type, "absolute") == 0) + if (g_strcmp0 (date_option_type, "absolute") == 0) { - gnc_date_edit_set_time(GNC_DATE_EDIT(widget), time); + gnc_date_edit_set_time (GNC_DATE_EDIT(widget), time); } - else if (g_strcmp0(date_option_type, "both") == 0) + else if (g_strcmp0 (date_option_type, "both") == 0) { GList *widget_list; GtkWidget *ab_widget; - widget_list = gtk_container_get_children(GTK_CONTAINER(widget)); - ab_widget = g_list_nth_data(widget_list, - GNC_RD_WID_AB_WIDGET_POS); - g_list_free(widget_list); - gnc_date_option_set_select_method(option, TRUE, TRUE); - gnc_date_edit_set_time(GNC_DATE_EDIT(ab_widget), time); + widget_list = gtk_container_get_children (GTK_CONTAINER(widget)); + ab_widget = g_list_nth_data (widget_list, + GNC_RD_WID_AB_WIDGET_POS); + g_list_free (widget_list); + gnc_date_option_set_select_method (option, TRUE, TRUE); + gnc_date_edit_set_time (GNC_DATE_EDIT(ab_widget), time); } else - { bad_value = TRUE; - } } else - { bad_value = TRUE; - } if (symbol_str) - free(symbol_str); + free (symbol_str); } } else - { bad_value = TRUE; - } if (date_option_type) - free(date_option_type); + free (date_option_type); return bad_value; } @@ -3374,12 +3347,11 @@ gnc_option_set_ui_value_account_list (GNCOption *option, gboolean use_default, { GList *list; - list = gnc_scm_list_to_glist(value); + list = gnc_scm_list_to_glist (value); gnc_tree_view_account_set_selected_accounts (GNC_TREE_VIEW_ACCOUNT(widget), - list, TRUE); - - g_list_free(list); + list, TRUE); + g_list_free (list); return FALSE; } @@ -3391,11 +3363,11 @@ gnc_option_set_ui_value_account_sel (GNCOption *option, gboolean use_default, if (value != SCM_BOOL_F) { - if (!SWIG_IsPointer(value)) - scm_misc_error("gnc_option_set_ui_value_account_sel", - "Option Value not a wcp.", value); + if (!SWIG_IsPointer (value)) + scm_misc_error ("gnc_option_set_ui_value_account_sel", + "Option Value not a wcp.", value); - acc = SWIG_MustGetPtr(value, SWIG_TypeQuery("_p_Account"), 4, 0); + acc = SWIG_MustGetPtr (value, SWIG_TypeQuery ("_p_Account"), 4, 0); } //doesn't default because this function is called to set a specific account @@ -3412,28 +3384,28 @@ gnc_option_set_ui_value_list (GNCOption *option, gboolean use_default, GtkTreePath *path; gint row; - selection = gtk_tree_view_get_selection(GTK_TREE_VIEW(widget)); - gtk_tree_selection_unselect_all(selection); + selection = gtk_tree_view_get_selection (GTK_TREE_VIEW(widget)); + gtk_tree_selection_unselect_all (selection); - while (scm_is_list(value) && !scm_is_null(value)) + while (scm_is_list (value) && !scm_is_null (value)) { SCM item; item = SCM_CAR(value); value = SCM_CDR(value); - row = gnc_option_permissible_value_index(option, item); + row = gnc_option_permissible_value_index (option, item); if (row < 0) { return TRUE; } - path = gtk_tree_path_new_from_indices(row, -1); - gtk_tree_selection_select_path(selection, path); - gtk_tree_path_free(path); + path = gtk_tree_path_new_from_indices (row, -1); + gtk_tree_selection_select_path (selection, path); + gtk_tree_path_free (path); } - if (!scm_is_list(value) || !scm_is_null(value)) + if (!scm_is_list (value) || !scm_is_null (value)) return TRUE; return FALSE; @@ -3448,10 +3420,10 @@ gnc_option_set_ui_value_number_range (GNCOption *option, gboolean use_default, spinner = GTK_SPIN_BUTTON(widget); - if (scm_is_number(value)) + if (scm_is_number (value)) { - d_value = scm_to_double(value); - gtk_spin_button_set_value(spinner, d_value); + d_value = scm_to_double (value); + gtk_spin_button_set_value (spinner, d_value); return FALSE; } else @@ -3464,9 +3436,9 @@ gnc_option_set_ui_value_color (GNCOption *option, gboolean use_default, { GdkRGBA color; - if (gnc_option_get_color_info(option, use_default, - &color.red, &color.green, - &color.blue, &color.alpha)) + if (gnc_option_get_color_info (option, use_default, + &color.red, &color.green, + &color.blue, &color.alpha)) { GtkColorChooser *color_button; @@ -3474,7 +3446,7 @@ gnc_option_set_ui_value_color (GNCOption *option, gboolean use_default, color.red, color.green, color.blue, color.alpha); color_button = GTK_COLOR_CHOOSER(widget); - gtk_color_chooser_set_rgba(color_button, &color); + gtk_color_chooser_set_rgba (color_button, &color); return FALSE; } @@ -3486,7 +3458,7 @@ static gboolean gnc_option_set_ui_value_font (GNCOption *option, gboolean use_default, GtkWidget *widget, SCM value) { - if (scm_is_string(value)) + if (scm_is_string (value)) { const gchar *string; @@ -3494,7 +3466,7 @@ gnc_option_set_ui_value_font (GNCOption *option, gboolean use_default, if ((string != NULL) && (*string != '\0')) { GtkFontButton *font_button = GTK_FONT_BUTTON(widget); - gtk_font_button_set_font_name(font_button, string); + gtk_font_button_set_font_name (font_button, string); } g_free ((gpointer *) string); return FALSE; @@ -3507,8 +3479,8 @@ static gboolean gnc_option_set_ui_value_pixmap (GNCOption *option, gboolean use_default, GtkWidget *widget, SCM value) { - ENTER("option %p(%s)", option, gnc_option_name(option)); - if (scm_is_string(value)) + ENTER("option %p(%s)", option, gnc_option_name (option)); + if (scm_is_string (value)) { const gchar *string; @@ -3517,12 +3489,12 @@ gnc_option_set_ui_value_pixmap (GNCOption *option, gboolean use_default, { gchar *test; DEBUG("string = %s", string); - gtk_file_chooser_select_filename(GTK_FILE_CHOOSER(widget), string); - test = gtk_file_chooser_get_filename(GTK_FILE_CHOOSER(widget)); - g_object_set_data_full(G_OBJECT(widget), LAST_SELECTION, - g_strdup(string), g_free); + gtk_file_chooser_select_filename (GTK_FILE_CHOOSER(widget), string); + test = gtk_file_chooser_get_filename (GTK_FILE_CHOOSER(widget)); + g_object_set_data_full (G_OBJECT(widget), LAST_SELECTION, + g_strdup (string), g_free); DEBUG("Set %s, retrieved %s", string, test ? test : "(null)"); - gnc_image_option_update_preview_cb(GTK_FILE_CHOOSER(widget), option); + gnc_image_option_update_preview_cb (GTK_FILE_CHOOSER(widget), option); } LEAVE("FALSE"); g_free ((gpointer *) string); @@ -3533,30 +3505,30 @@ gnc_option_set_ui_value_pixmap (GNCOption *option, gboolean use_default, return TRUE; } -static gboolean gnc_option_set_ui_value_budget( - GNCOption *option, gboolean use_default, GtkWidget *widget, SCM value) +static gboolean gnc_option_set_ui_value_budget (GNCOption *option, + gboolean use_default, + GtkWidget *widget, + SCM value) { GncBudget *bgt; // if (!scm_is_null(value)) { if (value != SCM_BOOL_F) { - if (!SWIG_IsPointer(value)) - scm_misc_error("gnc_option_set_ui_value_budget", - "Option Value not a wcp.", value); + if (!SWIG_IsPointer (value)) + scm_misc_error ("gnc_option_set_ui_value_budget", + "Option Value not a wcp.", value); - bgt = SWIG_MustGetPtr(value, SWIG_TypeQuery("GncBudget *"), 4, 0); + bgt = SWIG_MustGetPtr (value, SWIG_TypeQuery ("GncBudget *"), 4, 0); if (bgt) { GtkComboBox *cb = GTK_COMBO_BOX(widget); - GtkTreeModel *tm = gtk_combo_box_get_model(cb); + GtkTreeModel *tm = gtk_combo_box_get_model (cb); GtkTreeIter iter; - if (gnc_tree_model_budget_get_iter_for_budget(tm, &iter, bgt)) - gtk_combo_box_set_active_iter(cb, &iter); + if (gnc_tree_model_budget_get_iter_for_budget (tm, &iter, bgt)) + gtk_combo_box_set_active_iter (cb, &iter); } } - - //FIXME: Unimplemented. return FALSE; } @@ -3567,7 +3539,7 @@ gnc_option_set_ui_value_radiobutton (GNCOption *option, gboolean use_default, { int index; - index = gnc_option_permissible_value_index(option, value); + index = gnc_option_permissible_value_index (option, value); if (index < 0) return TRUE; else @@ -3577,21 +3549,21 @@ gnc_option_set_ui_value_radiobutton (GNCOption *option, gboolean use_default, int i; gpointer val; - list = gtk_container_get_children (GTK_CONTAINER (widget)); + list = gtk_container_get_children (GTK_CONTAINER(widget)); box = list->data; g_list_free(list); - list = gtk_container_get_children (GTK_CONTAINER (box)); + list = gtk_container_get_children (GTK_CONTAINER(box)); for (i = 0; i < index && list; i++) list = list->next; g_return_val_if_fail (list, TRUE); button = list->data; - g_list_free(list); - val = g_object_get_data (G_OBJECT (button), "gnc_radiobutton_index"); - g_return_val_if_fail (GPOINTER_TO_INT (val) == index, TRUE); + g_list_free (list); + val = g_object_get_data (G_OBJECT(button), "gnc_radiobutton_index"); + g_return_val_if_fail (GPOINTER_TO_INT(val) == index, TRUE); - gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON (button), TRUE); + gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON(button), TRUE); // g_object_set_data(G_OBJECT(widget), "gnc_radiobutton_index", // GINT_TO_POINTER(index)); return FALSE; @@ -3608,53 +3580,53 @@ gnc_option_set_ui_value_dateformat (GNCOption *option, gboolean use_default, gboolean years; char *custom; - if (gnc_dateformat_option_value_parse(value, &format, &months, &years, &custom)) + if (gnc_dateformat_option_value_parse (value, &format, &months, &years, &custom)) return TRUE; - gnc_date_format_set_format(gdf, format); - gnc_date_format_set_months(gdf, months); - gnc_date_format_set_years(gdf, years); - gnc_date_format_set_custom(gdf, custom); - gnc_date_format_refresh(gdf); + gnc_date_format_set_format (gdf, format); + gnc_date_format_set_months (gdf, months); + gnc_date_format_set_years (gdf, years); + gnc_date_format_set_custom (gdf, custom); + gnc_date_format_refresh (gdf); if (custom) - free(custom); + free (custom); return FALSE; } static gboolean gnc_option_set_ui_value_plot_size (GNCOption *option, gboolean use_default, - GtkWidget *widget, SCM value) + GtkWidget *widget, SCM value) { GList* widget_list; GtkWidget *px_button, *p_button, *px_widget, *p_widget; char *symbol_str; gdouble d_value; - widget_list = gtk_container_get_children(GTK_CONTAINER(widget)); - px_button = g_list_nth_data(widget_list, 0); - px_widget = g_list_nth_data(widget_list, 1); - p_button = g_list_nth_data(widget_list, 2); - p_widget = g_list_nth_data(widget_list, 3); - g_list_free(widget_list); + widget_list = gtk_container_get_children (GTK_CONTAINER(widget)); + px_button = g_list_nth_data (widget_list, 0); + px_widget = g_list_nth_data (widget_list, 1); + p_button = g_list_nth_data (widget_list, 2); + p_widget = g_list_nth_data (widget_list, 3); + g_list_free (widget_list); - if (scm_is_pair(value)) + if (scm_is_pair (value)) { - symbol_str = gnc_plot_size_option_value_get_type(value); - d_value = gnc_plot_size_option_value_get_value(value); + symbol_str = gnc_plot_size_option_value_get_type (value); + d_value = gnc_plot_size_option_value_get_value (value); if (symbol_str) { - if (g_strcmp0(symbol_str, "pixels") == 0) // pixel values + if (g_strcmp0 (symbol_str, "pixels") == 0) // pixel values { - gtk_spin_button_set_value(GTK_SPIN_BUTTON(px_widget), d_value); - gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(px_button), TRUE); + gtk_spin_button_set_value (GTK_SPIN_BUTTON(px_widget), d_value); + gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON(px_button), TRUE); } else // percent values { - gtk_spin_button_set_value(GTK_SPIN_BUTTON(p_widget), (d_value)); - gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(p_button), TRUE); + gtk_spin_button_set_value (GTK_SPIN_BUTTON(p_widget), (d_value)); + gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON(p_button), TRUE); } return FALSE; } @@ -3667,7 +3639,7 @@ gnc_option_set_ui_value_currency_accounting (GNCOption *option, gboolean use_default, GtkWidget *widget, SCM value) { - if (scm_is_pair(value)) + if (scm_is_pair (value)) { SCM rb_symbol; @@ -3677,7 +3649,7 @@ gnc_option_set_ui_value_currency_accounting (GNCOption *option, { int index; - index = gnc_option_permissible_value_index(option, rb_symbol); + index = gnc_option_permissible_value_index (option, rb_symbol); if (index < 0) return TRUE; else @@ -3700,12 +3672,12 @@ gnc_option_set_ui_value_currency_accounting (GNCOption *option, return TRUE; } - val = g_object_get_data (G_OBJECT (button), + val = g_object_get_data (G_OBJECT(button), "gnc_radiobutton_index"); - g_return_val_if_fail (GPOINTER_TO_INT (val) == index, TRUE); + g_return_val_if_fail (GPOINTER_TO_INT(val) == index, TRUE); - if (g_strcmp0(gnc_option_permissible_value_name(option, - index), + if (g_strcmp0 (gnc_option_permissible_value_name (option, + index), "Use a Book Currency") == 0) { gnc_commodity *commodity = NULL; @@ -3747,7 +3719,7 @@ gnc_option_set_ui_value_currency_accounting (GNCOption *option, NULL; } } - gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON (button), TRUE); + gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON(button), TRUE); /* when an unselected button in a group is clicked the clicked button receives the “toggled” signal, as does the previously selected button; however, if the first button @@ -3758,7 +3730,7 @@ gnc_option_set_ui_value_currency_accounting (GNCOption *option, FALSE, explicitly call the handler here if first button */ if (index == 0) { - gnc_option_currency_accounting_non_book_cb(button, + gnc_option_currency_accounting_non_book_cb (button, (gpointer) book_currency_data); } return FALSE; @@ -3787,7 +3759,7 @@ gnc_option_get_ui_value_boolean (GNCOption *option, GtkWidget *widget) { gboolean active; - active = gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(widget)); + active = gtk_toggle_button_get_active (GTK_TOGGLE_BUTTON(widget)); return SCM_BOOL(active); } @@ -3797,9 +3769,9 @@ gnc_option_get_ui_value_string (GNCOption *option, GtkWidget *widget) char * string; SCM result; - string = gtk_editable_get_chars(GTK_EDITABLE(widget), 0, -1); - result = scm_from_utf8_string(string ? string : ""); - g_free(string); + string = gtk_editable_get_chars (GTK_EDITABLE(widget), 0, -1); + result = scm_from_utf8_string (string ? string : ""); + g_free (string); return result; } @@ -3810,8 +3782,8 @@ gnc_option_get_ui_value_text (GNCOption *option, GtkWidget *widget) SCM result; string = xxxgtk_textview_get_text (GTK_TEXT_VIEW(widget)); - result = scm_from_utf8_string(string ? string : ""); - g_free(string); + result = scm_from_utf8_string (string ? string : ""); + g_free (string); return result; } @@ -3821,7 +3793,7 @@ gnc_option_get_ui_value_currency (GNCOption *option, GtkWidget *widget) gnc_commodity *commodity; commodity = - gnc_currency_edit_get_currency(GNC_CURRENCY_EDIT(widget)); + gnc_currency_edit_get_currency (GNC_CURRENCY_EDIT(widget)); return (gnc_commodity_to_scm (commodity)); } @@ -3832,9 +3804,9 @@ gnc_option_get_ui_value_commodity (GNCOption *option, GtkWidget *widget) gnc_commodity *commodity; commodity = - gnc_general_select_get_selected(GNC_GENERAL_SELECT(widget)); + gnc_general_select_get_selected (GNC_GENERAL_SELECT(widget)); - return (gnc_commodity_to_scm(commodity)); + return (gnc_commodity_to_scm (commodity)); } static SCM @@ -3843,8 +3815,8 @@ gnc_option_get_ui_value_multichoice (GNCOption *option, GtkWidget *widget) int index; /* GtkComboBox per-item tooltip changes needed below */ - index = gnc_combott_get_active(GNC_COMBOTT(widget)); - return (gnc_option_permissible_value(option, index)); + index = gnc_combott_get_active (GNC_COMBOTT(widget)); + return (gnc_option_permissible_value (option, index)); } static SCM @@ -3852,24 +3824,24 @@ gnc_option_get_ui_value_date (GNCOption *option, GtkWidget *widget) { int index; SCM type, val, result = SCM_UNDEFINED; - char *subtype = gnc_option_date_option_get_subtype(option); + char *subtype = gnc_option_date_option_get_subtype (option); - if (g_strcmp0(subtype, "relative") == 0) + if (g_strcmp0 (subtype, "relative") == 0) { /* GtkComboBox per-item tooltip changes needed below */ - index = gnc_combott_get_active(GNC_COMBOTT(widget)); + index = gnc_combott_get_active (GNC_COMBOTT(widget)); type = scm_from_locale_symbol ("relative"); - val = gnc_option_permissible_value(option, index); - result = scm_cons(type, val); + val = gnc_option_permissible_value (option, index); + result = scm_cons (type, val); } - else if (g_strcmp0(subtype, "absolute") == 0) + else if (g_strcmp0 (subtype, "absolute") == 0) { time64 time; - time = gnc_date_edit_get_date(GNC_DATE_EDIT(widget)); - result = scm_cons(scm_from_locale_symbol ("absolute"), scm_from_int64(time)); + time = gnc_date_edit_get_date (GNC_DATE_EDIT(widget)); + result = scm_cons (scm_from_locale_symbol ("absolute"), scm_from_int64 (time)); } - else if (g_strcmp0(subtype, "both") == 0) + else if (g_strcmp0 (subtype, "both") == 0) { time64 time; int index; @@ -3877,28 +3849,28 @@ gnc_option_get_ui_value_date (GNCOption *option, GtkWidget *widget) GList *widget_list; GtkWidget *ab_button, *rel_widget, *ab_widget; - widget_list = gtk_container_get_children(GTK_CONTAINER(widget)); - ab_button = g_list_nth_data(widget_list, GNC_RD_WID_AB_BUTTON_POS); - ab_widget = g_list_nth_data(widget_list, GNC_RD_WID_AB_WIDGET_POS); - rel_widget = g_list_nth_data(widget_list, GNC_RD_WID_REL_WIDGET_POS); - g_list_free(widget_list); + widget_list = gtk_container_get_children (GTK_CONTAINER(widget)); + ab_button = g_list_nth_data (widget_list, GNC_RD_WID_AB_BUTTON_POS); + ab_widget = g_list_nth_data (widget_list, GNC_RD_WID_AB_WIDGET_POS); + rel_widget = g_list_nth_data (widget_list, GNC_RD_WID_REL_WIDGET_POS); + g_list_free (widget_list); /* if it's an absolute date */ - if (gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(ab_button))) + if (gtk_toggle_button_get_active (GTK_TOGGLE_BUTTON(ab_button))) { - time = gnc_date_edit_get_date(GNC_DATE_EDIT(ab_widget)); - result = scm_cons(scm_from_locale_symbol ("absolute"), scm_from_int64 (time)); + time = gnc_date_edit_get_date (GNC_DATE_EDIT(ab_widget)); + result = scm_cons (scm_from_locale_symbol ("absolute"), scm_from_int64 (time)); } else { /* GtkComboBox per-item tooltip changes needed below */ - index = gnc_combott_get_active(GNC_COMBOTT(rel_widget)); + index = gnc_combott_get_active (GNC_COMBOTT(rel_widget)); - val = gnc_option_permissible_value(option, index); - result = scm_cons(scm_from_locale_symbol ("relative"), val); + val = gnc_option_permissible_value (option, index); + result = scm_cons (scm_from_locale_symbol ("relative"), val); } } - g_free(subtype); + g_free (subtype); return result; } @@ -3913,8 +3885,8 @@ gnc_option_get_ui_value_account_list (GNCOption *option, GtkWidget *widget) list = gnc_tree_view_account_get_selected_accounts (tree); /* handover list */ - result = gnc_glist_to_scm_list(list, "_p_Account"); - g_list_free(list); + result = gnc_glist_to_scm_list (list, "_p_Account"); + g_list_free (list); return result; } @@ -3930,11 +3902,11 @@ gnc_option_get_ui_value_account_sel (GNCOption *option, GtkWidget *widget) if (!acc) return SCM_BOOL_F; - return SWIG_NewPointerObj(acc, SWIG_TypeQuery("_p_Account"), 0); + return SWIG_NewPointerObj (acc, SWIG_TypeQuery ("_p_Account"), 0); } static SCM -gnc_option_get_ui_value_budget(GNCOption *option, GtkWidget *widget) +gnc_option_get_ui_value_budget (GNCOption *option, GtkWidget *widget) { GncBudget *bgt; GtkComboBox *cb; @@ -3942,14 +3914,14 @@ gnc_option_get_ui_value_budget(GNCOption *option, GtkWidget *widget) GtkTreeIter iter; cb = GTK_COMBO_BOX(widget); - gtk_combo_box_get_active_iter(cb, &iter); - tm = gtk_combo_box_get_model(cb); - bgt = gnc_tree_model_budget_get_budget(tm, &iter); + gtk_combo_box_get_active_iter (cb, &iter); + tm = gtk_combo_box_get_model (cb); + bgt = gnc_tree_model_budget_get_budget (tm, &iter); if (!bgt) return SCM_BOOL_F; - return SWIG_NewPointerObj(bgt, SWIG_TypeQuery("_p_budget_s"), 0); + return SWIG_NewPointerObj (bgt, SWIG_TypeQuery ("_p_budget_s"), 0); } static SCM @@ -3962,20 +3934,19 @@ gnc_option_get_ui_value_list (GNCOption *option, GtkWidget *widget) gint num_rows; gint row; - selection = gtk_tree_view_get_selection(GTK_TREE_VIEW(widget)); - num_rows = gnc_option_num_permissible_values(option); - result = scm_c_eval_string("'()"); + selection = gtk_tree_view_get_selection (GTK_TREE_VIEW(widget)); + num_rows = gnc_option_num_permissible_values (option); + result = scm_c_eval_string ("'()"); for (row = 0; row < num_rows; row++) { - path = gtk_tree_path_new_from_indices(row, -1); - selected = gtk_tree_selection_path_is_selected(selection, path); - gtk_tree_path_free(path); + path = gtk_tree_path_new_from_indices (row, -1); + selected = gtk_tree_selection_path_is_selected (selection, path); + gtk_tree_path_free (path); if (selected) - result = scm_cons(gnc_option_permissible_value(option, row), result); + result = scm_cons (gnc_option_permissible_value (option, row), result); } - - return (scm_reverse(result)); + return (scm_reverse (result)); } static SCM @@ -3986,7 +3957,7 @@ gnc_option_get_ui_value_number_range (GNCOption *option, GtkWidget *widget) spinner = GTK_SPIN_BUTTON(widget); - value = gtk_spin_button_get_value(spinner); + value = gtk_spin_button_get_value (spinner); return (scm_from_double (value)); } @@ -4000,18 +3971,18 @@ gnc_option_get_ui_value_color (GNCOption *option, GtkWidget *widget) gdouble scale; ENTER("option %p(%s), widget %p", - option, gnc_option_name(option), widget); + option, gnc_option_name (option), widget); color_button = GTK_COLOR_CHOOSER(widget); - gtk_color_chooser_get_rgba(color_button, &color); + gtk_color_chooser_get_rgba (color_button, &color); - scale = gnc_option_color_range(option); + scale = gnc_option_color_range (option); result = SCM_EOL; - result = scm_cons(scm_from_double (color.alpha * scale), result); - result = scm_cons(scm_from_double (color.blue * scale), result); - result = scm_cons(scm_from_double (color.green * scale), result); - result = scm_cons(scm_from_double (color.red * scale), result); + result = scm_cons (scm_from_double (color.alpha * scale), result); + result = scm_cons (scm_from_double (color.blue * scale), result); + result = scm_cons (scm_from_double (color.green * scale), result); + result = scm_cons (scm_from_double (color.red * scale), result); return result; } @@ -4021,8 +3992,8 @@ gnc_option_get_ui_value_font (GNCOption *option, GtkWidget *widget) GtkFontButton *font_button = GTK_FONT_BUTTON(widget); const gchar * string; - string = gtk_font_button_get_font_name(font_button); - return (string ? scm_from_utf8_string(string) : SCM_BOOL_F); + string = gtk_font_button_get_font_name (font_button); + return (string ? scm_from_utf8_string (string) : SCM_BOOL_F); } static SCM @@ -4031,10 +4002,10 @@ gnc_option_get_ui_value_pixmap (GNCOption *option, GtkWidget *widget) gchar *string; SCM result; - string = gtk_file_chooser_get_filename(GTK_FILE_CHOOSER(widget)); + string = gtk_file_chooser_get_filename (GTK_FILE_CHOOSER(widget)); DEBUG("filename %s", string ? string : "(null)"); - result = scm_from_utf8_string(string ? string : ""); - g_free(string); + result = scm_from_utf8_string (string ? string : ""); + g_free (string); return result; } @@ -4044,10 +4015,10 @@ gnc_option_get_ui_value_radiobutton (GNCOption *option, GtkWidget *widget) gpointer _index; int index; - _index = g_object_get_data(G_OBJECT(widget), "gnc_radiobutton_index"); + _index = g_object_get_data (G_OBJECT(widget), "gnc_radiobutton_index"); index = GPOINTER_TO_INT(_index); - return (gnc_option_permissible_value(option, index)); + return (gnc_option_permissible_value (option, index)); } static SCM @@ -4059,12 +4030,12 @@ gnc_option_get_ui_value_dateformat (GNCOption *option, GtkWidget *widget) gboolean years; const char* custom; - format = gnc_date_format_get_format(gdf); - months = gnc_date_format_get_months(gdf); - years = gnc_date_format_get_years(gdf); - custom = gnc_date_format_get_custom(gdf); + format = gnc_date_format_get_format (gdf); + months = gnc_date_format_get_months (gdf); + years = gnc_date_format_get_years (gdf); + custom = gnc_date_format_get_custom (gdf); - return (gnc_dateformat_option_set_value(format, months, years, custom)); + return (gnc_dateformat_option_set_value (format, months, years, custom)); } static SCM @@ -4075,41 +4046,41 @@ gnc_option_get_ui_value_plot_size (GNCOption *option, GtkWidget *widget) gdouble d_value; SCM type, val; - widget_list = gtk_container_get_children(GTK_CONTAINER(widget)); - px_button = g_list_nth_data(widget_list, 0); - px_widget = g_list_nth_data(widget_list, 1); + widget_list = gtk_container_get_children (GTK_CONTAINER(widget)); + px_button = g_list_nth_data (widget_list, 0); + px_widget = g_list_nth_data (widget_list, 1); // p_button item 2 - p_widget = g_list_nth_data(widget_list, 3); - g_list_free(widget_list); + p_widget = g_list_nth_data (widget_list, 3); + g_list_free (widget_list); if (gtk_toggle_button_get_active (GTK_TOGGLE_BUTTON(px_button))) { - type = scm_from_locale_symbol("pixels"); - d_value = gtk_spin_button_get_value(GTK_SPIN_BUTTON(px_widget)); + type = scm_from_locale_symbol ("pixels"); + d_value = gtk_spin_button_get_value (GTK_SPIN_BUTTON(px_widget)); } else { - type = scm_from_locale_symbol("percent"); - d_value = gtk_spin_button_get_value(GTK_SPIN_BUTTON(p_widget)); + type = scm_from_locale_symbol ("percent"); + d_value = gtk_spin_button_get_value (GTK_SPIN_BUTTON(p_widget)); } - val = scm_from_double(d_value); - return scm_cons(type, val); + val = scm_from_double (d_value); + return scm_cons (type, val); } static SCM -gnc_option_get_ui_value_currency_accounting ( - GNCOption *option, GtkWidget *widget) +gnc_option_get_ui_value_currency_accounting (GNCOption *option, + GtkWidget *widget) { gpointer _index; int index; SCM value = SCM_EOL; - _index = g_object_get_data(G_OBJECT(widget), "gnc_radiobutton_index"); + _index = g_object_get_data (G_OBJECT(widget), "gnc_radiobutton_index"); index = GPOINTER_TO_INT(_index); /* build the return list in reverse order */ - if (g_strcmp0(gnc_option_permissible_value_name(option, index), - "Use a Book Currency") == 0) + if (g_strcmp0 (gnc_option_permissible_value_name (option, index), + "Use a Book Currency") == 0) { gnc_commodity *commodity = NULL; int policy_index; @@ -4124,7 +4095,7 @@ gnc_option_get_ui_value_currency_accounting ( gain_loss_account = gnc_tree_view_account_get_selected_account - (GNC_TREE_VIEW_ACCOUNT ( + (GNC_TREE_VIEW_ACCOUNT( book_currency_data->default_gain_loss_account_widget)); if (gain_loss_account == NULL) @@ -4144,17 +4115,17 @@ gnc_option_get_ui_value_currency_accounting ( { val = SCM_BOOL_F; } - value = scm_cons(val, value); + value = scm_cons (val, value); - list_of_policies = gnc_get_valid_policy_list(); + list_of_policies = gnc_get_valid_policy_list (); if (list_of_policies && book_currency_data->default_cost_policy_widget) { GList *l = NULL; gint i = 0; /* GtkComboBox per-item tooltip changes needed below */ policy_index = - gnc_combott_get_active(GNC_COMBOTT( - book_currency_data->default_cost_policy_widget)); + gnc_combott_get_active (GNC_COMBOTT( + book_currency_data->default_cost_policy_widget)); for (l = list_of_policies; l != NULL; l = l->next) { GNCPolicy *pcy = l->data; @@ -4162,27 +4133,27 @@ gnc_option_get_ui_value_currency_accounting ( str = PolicyGetName (pcy); i++; } - g_list_free(list_of_policies); + g_list_free (list_of_policies); } if (str) { - val = scm_from_locale_symbol(str); + val = scm_from_locale_symbol (str); } else { val = SCM_BOOL_F; } - value = scm_cons(val, value); + value = scm_cons (val, value); if (gtk_combo_box_get_active (GTK_COMBO_BOX(book_currency_data->book_currency_widget)) != -1) { commodity = - gnc_currency_edit_get_currency( + gnc_currency_edit_get_currency ( GNC_CURRENCY_EDIT( book_currency_data->book_currency_widget)); if (commodity) { - val = gnc_commodity_to_scm(commodity); + val = gnc_commodity_to_scm (commodity); } else { @@ -4193,10 +4164,10 @@ gnc_option_get_ui_value_currency_accounting ( { val = SCM_BOOL_F; } - value = scm_cons(val, value); + value = scm_cons (val, value); } - return (scm_cons (gnc_option_permissible_value(option, index), value)); + return (scm_cons (gnc_option_permissible_value (option, index), value)); } /************************************/ @@ -4319,7 +4290,7 @@ GNCOptionDef_t * gnc_options_ui_get_option (const char *option_name) void gnc_options_ui_initialize (void) { - SWIG_GetModule(NULL); /* Work-around for SWIG bug. */ + SWIG_GetModule (NULL); /* Work-around for SWIG bug. */ // gnc_options_register_stocks (); g_return_if_fail (optionTable == NULL); optionTable = g_hash_table_new (g_str_hash, g_str_equal); @@ -4345,14 +4316,14 @@ scm_apply_cb (GNCOptionWin *win, gpointer data) results = gnc_option_db_commit (win->option_db); for (iter = results; iter; iter = iter->next) { - GtkWidget *dialog = gtk_message_dialog_new(GTK_WINDOW(gnc_options_dialog_widget(win)), - 0, - GTK_MESSAGE_ERROR, - GTK_BUTTONS_OK, - "%s", - (char*)iter->data); - gtk_dialog_run(GTK_DIALOG(dialog)); - gtk_widget_destroy(dialog); + GtkWidget *dialog = gtk_message_dialog_new (GTK_WINDOW(gnc_options_dialog_widget (win)), + 0, + GTK_MESSAGE_ERROR, + GTK_BUTTONS_OK, + "%s", + (char*)iter->data); + gtk_dialog_run (GTK_DIALOG(dialog)); + gtk_widget_destroy (dialog); g_free (iter->data); } g_list_free (results); diff --git a/gnucash/gnome-utils/dialog-options.h b/gnucash/gnome-utils/dialog-options.h index e59c1c89ef..3000717348 100644 --- a/gnucash/gnome-utils/dialog-options.h +++ b/gnucash/gnome-utils/dialog-options.h @@ -35,49 +35,49 @@ typedef struct gnc_option_win GNCOptionWin; typedef void (* GNCOptionWinCallback)(GNCOptionWin *, gpointer data); -GNCOptionWin * gnc_options_dialog_new_modal(gboolean modal, gchar *title, - const char *component_class, - GtkWindow *parent); -GNCOptionWin * gnc_options_dialog_new(gchar *title, GtkWindow *parent); -GNCOptionWin * gnc_options_dialog_new_w_dialog(gchar *title, GtkWidget *dialog); -void gnc_options_dialog_destroy(GNCOptionWin * win); +GNCOptionWin * gnc_options_dialog_new_modal (gboolean modal, gchar *title, + const char *component_class, + GtkWindow *parent); +GNCOptionWin * gnc_options_dialog_new (gchar *title, GtkWindow *parent); +GNCOptionWin * gnc_options_dialog_new_w_dialog (gchar *title, GtkWidget *dialog); +void gnc_options_dialog_destroy (GNCOptionWin * win); void gnc_options_register_stocks (void); -GtkWidget * gnc_options_dialog_widget(GNCOptionWin * win); -GtkWidget * gnc_options_page_list(GNCOptionWin * win); -GtkWidget * gnc_options_dialog_notebook(GNCOptionWin * win); +GtkWidget * gnc_options_dialog_widget (GNCOptionWin * win); +GtkWidget * gnc_options_page_list (GNCOptionWin * win); +GtkWidget * gnc_options_dialog_notebook (GNCOptionWin * win); void gnc_options_dialog_changed (GNCOptionWin *win); -void gnc_option_changed_widget_cb(GtkWidget *widget, GNCOption *option); -void gnc_option_changed_option_cb(GtkWidget *dummy, GNCOption *option); +void gnc_option_changed_widget_cb (GtkWidget *widget, GNCOption *option); +void gnc_option_changed_option_cb (GtkWidget *dummy, GNCOption *option); -void gnc_options_dialog_set_apply_cb(GNCOptionWin * win, - GNCOptionWinCallback thunk, - gpointer cb_data); -void gnc_options_dialog_set_help_cb(GNCOptionWin * win, - GNCOptionWinCallback thunk, - gpointer cb_data); -void gnc_options_dialog_set_close_cb(GNCOptionWin * win, +void gnc_options_dialog_set_apply_cb (GNCOptionWin * win, + GNCOptionWinCallback thunk, + gpointer cb_data); +void gnc_options_dialog_set_help_cb (GNCOptionWin * win, GNCOptionWinCallback thunk, gpointer cb_data); +void gnc_options_dialog_set_close_cb (GNCOptionWin * win, + GNCOptionWinCallback thunk, + gpointer cb_data); -void gnc_options_dialog_set_global_help_cb(GNCOptionWinCallback thunk, - gpointer cb_data); +void gnc_options_dialog_set_global_help_cb (GNCOptionWinCallback thunk, + gpointer cb_data); -void gnc_options_dialog_build_contents(GNCOptionWin *win, - GNCOptionDB *odb); +void gnc_options_dialog_build_contents (GNCOptionWin *win, + GNCOptionDB *odb); -void gnc_options_dialog_build_contents_full(GNCOptionWin *win, - GNCOptionDB *odb, - gboolean show_dialog); +void gnc_options_dialog_build_contents_full (GNCOptionWin *win, + GNCOptionDB *odb, + gboolean show_dialog); /* Both apply_cb and close_cb should be scheme functions with 0 arguments. * References to these functions will be held until the close_cb is called */ void gnc_options_dialog_set_scm_callbacks (GNCOptionWin *win, - SCM apply_cb, - SCM close_cb); + SCM apply_cb, + SCM close_cb); /*****************************************************************/ /* Option Registration */ From 3c5066feb4a6a58c263c3ae83a16739fedf28266 Mon Sep 17 00:00:00 2001 From: Robert Fewell <14uBobIT@gmail.com> Date: Thu, 22 Oct 2020 14:30:46 +0100 Subject: [PATCH 044/167] Change source files option-util.* for spaces and tabs --- libgnucash/app-utils/option-util.c | 1065 +++++++++++++--------------- libgnucash/app-utils/option-util.h | 296 ++++---- 2 files changed, 650 insertions(+), 711 deletions(-) diff --git a/libgnucash/app-utils/option-util.c b/libgnucash/app-utils/option-util.c index 42c3b5a191..c36656ac01 100644 --- a/libgnucash/app-utils/option-util.c +++ b/libgnucash/app-utils/option-util.c @@ -194,14 +194,13 @@ gnc_option_set_selectable (GNCOption *option, gboolean selectable) * Returns: nothing * \********************************************************************/ static void -gnc_option_db_init(GNCOptionDB *odb) +gnc_option_db_init (GNCOptionDB *odb) { - SCM func = scm_c_eval_string("gnc:send-options"); + SCM func = scm_c_eval_string ("gnc:send-options"); - scm_call_2(func, scm_from_int (odb->handle), odb->guile_options); + scm_call_2 (func, scm_from_int (odb->handle), odb->guile_options); } - /********************************************************************\ * gnc_option_db_new * * allocate a new option database and initialize its values * @@ -210,32 +209,32 @@ gnc_option_db_init(GNCOptionDB *odb) * Returns: a new option database * \********************************************************************/ GNCOptionDB * -gnc_option_db_new(SCM guile_options) +gnc_option_db_new (SCM guile_options) { GNCOptionDB *odb; GNCOptionDB *lookup; - odb = g_new0(GNCOptionDB, 1); + odb = g_new0 (GNCOptionDB, 1); odb->guile_options = guile_options; - scm_gc_protect_object(guile_options); + scm_gc_protect_object (guile_options); odb->option_sections = NULL; odb->options_dirty = FALSE; if (option_dbs == NULL) - option_dbs = g_hash_table_new(g_int_hash, g_int_equal); + option_dbs = g_hash_table_new (g_int_hash, g_int_equal); do { odb->handle = last_db_handle++; - lookup = g_hash_table_lookup(option_dbs, &odb->handle); + lookup = g_hash_table_lookup (option_dbs, &odb->handle); } while (lookup != NULL); - g_hash_table_insert(option_dbs, &odb->handle, odb); + g_hash_table_insert (option_dbs, &odb->handle, odb); - gnc_option_db_init(odb); + gnc_option_db_init (odb); return odb; } @@ -249,43 +248,43 @@ static void init_table(void) { if (!kvp_registry) - kvp_registry = g_hash_table_new(g_str_hash, g_str_equal); + kvp_registry = g_hash_table_new (g_str_hash, g_str_equal); } /* create a new options object for the requested type */ static SCM -gnc_make_kvp_options(QofIdType id_type) +gnc_make_kvp_options (QofIdType id_type) { GList *list, *p; SCM gnc_new_options = SCM_UNDEFINED; SCM options = SCM_UNDEFINED; init_table(); - list = g_hash_table_lookup(kvp_registry, id_type); - gnc_new_options = scm_c_eval_string("gnc:new-options"); - options = scm_call_0(gnc_new_options); + list = g_hash_table_lookup (kvp_registry, id_type); + gnc_new_options = scm_c_eval_string ("gnc:new-options"); + options = scm_call_0 (gnc_new_options); for (p = list; p; p = p->next) { SCM generator = p->data; - scm_call_1(generator, options); + scm_call_1 (generator, options); } return options; } GNCOptionDB * -gnc_option_db_new_for_type(QofIdType id_type) +gnc_option_db_new_for_type (QofIdType id_type) { SCM options; if (!id_type) return NULL; - options = gnc_make_kvp_options(id_type); + options = gnc_make_kvp_options (id_type); return gnc_option_db_new (options); } void -gnc_option_db_load(GNCOptionDB* odb, QofBook *book) +gnc_option_db_load (GNCOptionDB* odb, QofBook *book) { static SCM kvp_to_scm = SCM_UNDEFINED; SCM scm_book; @@ -294,7 +293,7 @@ gnc_option_db_load(GNCOptionDB* odb, QofBook *book) if (kvp_to_scm == SCM_UNDEFINED) { - kvp_to_scm = scm_c_eval_string("gnc:options-kvp->scm"); + kvp_to_scm = scm_c_eval_string ("gnc:options-kvp->scm"); if (!scm_is_procedure (kvp_to_scm)) { PERR ("not a procedure\n"); @@ -303,13 +302,13 @@ gnc_option_db_load(GNCOptionDB* odb, QofBook *book) } } - scm_book = SWIG_NewPointerObj(book, SWIG_TypeQuery("_p_QofBook"), 0); + scm_book = SWIG_NewPointerObj (book, SWIG_TypeQuery ("_p_QofBook"), 0); scm_call_2 (kvp_to_scm, odb->guile_options, scm_book); } void -gnc_option_db_save(GNCOptionDB* odb, QofBook *book, gboolean clear_all) +gnc_option_db_save (GNCOptionDB* odb, QofBook *book, gboolean clear_all) { static SCM scm_to_kvp = SCM_UNDEFINED; SCM scm_book; @@ -319,7 +318,7 @@ gnc_option_db_save(GNCOptionDB* odb, QofBook *book, gboolean clear_all) if (scm_to_kvp == SCM_UNDEFINED) { - scm_to_kvp = scm_c_eval_string("gnc:options-scm->kvp"); + scm_to_kvp = scm_c_eval_string ("gnc:options-scm->kvp"); if (!scm_is_procedure (scm_to_kvp)) { PERR ("not a procedure\n"); @@ -328,11 +327,12 @@ gnc_option_db_save(GNCOptionDB* odb, QofBook *book, gboolean clear_all) } } - scm_book = SWIG_NewPointerObj(book, SWIG_TypeQuery("_p_QofBook"), 0); + scm_book = SWIG_NewPointerObj (book, SWIG_TypeQuery ("_p_QofBook"), 0); scm_clear_all = scm_from_bool (clear_all); scm_call_3 (scm_to_kvp, odb->guile_options, scm_book, scm_clear_all); } + /********************************************************************\ * gnc_option_db_destroy * * unregister the scheme options and free all the memory * @@ -343,7 +343,7 @@ gnc_option_db_save(GNCOptionDB* odb, QofBook *book, gboolean clear_all) * Returns: nothing * \********************************************************************/ void -gnc_option_db_destroy(GNCOptionDB *odb) +gnc_option_db_destroy (GNCOptionDB *odb) { GSList *snode; @@ -359,35 +359,35 @@ gnc_option_db_destroy(GNCOptionDB *odb) { GNCOption *option = onode->data; - scm_gc_unprotect_object(option->guile_option); + scm_gc_unprotect_object (option->guile_option); g_free (option); } /* Free the option list */ - g_slist_free(section->options); + g_slist_free (section->options); section->options = NULL; if (section->section_name != NULL) - free(section->section_name); + free (section->section_name); section->section_name = NULL; g_free (section); } - g_slist_free(odb->option_sections); + g_slist_free (odb->option_sections); odb->option_sections = NULL; odb->options_dirty = FALSE; - g_hash_table_remove(option_dbs, &odb->handle); + g_hash_table_remove (option_dbs, &odb->handle); - if (g_hash_table_size(option_dbs) == 0) + if (g_hash_table_size (option_dbs) == 0) { - g_hash_table_destroy(option_dbs); + g_hash_table_destroy (option_dbs); option_dbs = NULL; } - scm_gc_unprotect_object(odb->guile_options); + scm_gc_unprotect_object (odb->guile_options); odb->guile_options = SCM_UNDEFINED; g_free(odb); @@ -421,11 +421,11 @@ gnc_option_db_set_ui_callbacks (GNCOptionDB *odb, * Returns: SCM handle for unregistering * \********************************************************************/ SCM -gnc_option_db_register_change_callback(GNCOptionDB *odb, - GNCOptionChangeCallback callback, - gpointer data, - const char *section, - const char *name) +gnc_option_db_register_change_callback (GNCOptionDB *odb, + GNCOptionChangeCallback callback, + gpointer data, + const char *section, + const char *name) { SCM register_proc; SCM arg; @@ -435,8 +435,8 @@ gnc_option_db_register_change_callback(GNCOptionDB *odb, return SCM_UNDEFINED; /* Get the register procedure */ - register_proc = scm_c_eval_string("gnc:options-register-c-callback"); - if (!scm_is_procedure(register_proc)) + register_proc = scm_c_eval_string ("gnc:options-register-c-callback"); + if (!scm_is_procedure (register_proc)) { PERR("not a procedure\n"); return SCM_UNDEFINED; @@ -446,16 +446,16 @@ gnc_option_db_register_change_callback(GNCOptionDB *odb, args = SCM_EOL; /* first the guile options database */ - args = scm_cons(odb->guile_options, args); + args = scm_cons (odb->guile_options, args); /* next the data */ - arg = SWIG_NewPointerObj(data, SWIG_TypeQuery("_p_void"), 0); - args = scm_cons(arg, args); + arg = SWIG_NewPointerObj (data, SWIG_TypeQuery ("_p_void"), 0); + args = scm_cons (arg, args); /* next the callback */ - arg = SWIG_NewPointerObj( - callback, SWIG_TypeQuery("GNCOptionChangeCallback"), 0); - args = scm_cons(arg, args); + arg = SWIG_NewPointerObj ( + callback, SWIG_TypeQuery ("GNCOptionChangeCallback"), 0); + args = scm_cons (arg, args); /* next the name */ if (name == NULL) @@ -464,9 +464,9 @@ gnc_option_db_register_change_callback(GNCOptionDB *odb, } else { - arg = scm_from_utf8_string(name); + arg = scm_from_utf8_string (name); } - args = scm_cons(arg, args); + args = scm_cons (arg, args); /* next the section */ if (section == NULL) @@ -475,15 +475,14 @@ gnc_option_db_register_change_callback(GNCOptionDB *odb, } else { - arg = scm_from_utf8_string(section); + arg = scm_from_utf8_string (section); } - args = scm_cons(arg, args); + args = scm_cons (arg, args); /* now apply the procedure */ - return scm_apply(register_proc, args, SCM_EOL); + return scm_apply (register_proc, args, SCM_EOL); } - /********************************************************************\ * gnc_option_db_unregister_change_callback_id * * unregister the change callback associated with the given id * @@ -493,21 +492,21 @@ gnc_option_db_register_change_callback(GNCOptionDB *odb, * Returns: nothing * \********************************************************************/ void -gnc_option_db_unregister_change_callback_id(GNCOptionDB *odb, SCM callback_id) +gnc_option_db_unregister_change_callback_id (GNCOptionDB *odb, SCM callback_id) { SCM proc; if (callback_id == SCM_UNDEFINED) return; - proc = scm_c_eval_string("gnc:options-unregister-callback-id"); - if (!scm_is_procedure(proc)) + proc = scm_c_eval_string ("gnc:options-unregister-callback-id"); + if (!scm_is_procedure (proc)) { PERR("not a procedure\n"); return; } - scm_call_2(proc, callback_id, odb->guile_options); + scm_call_2 (proc, callback_id, odb->guile_options); } void @@ -517,21 +516,20 @@ gncp_option_invoke_callback (GNCOptionChangeCallback callback, void *data) } static void -gnc_call_option_change_callbacks(GNCOptionDB *odb) +gnc_call_option_change_callbacks (GNCOptionDB *odb) { SCM proc; - proc = scm_c_eval_string("gnc:options-run-callbacks"); - if (!scm_is_procedure(proc)) + proc = scm_c_eval_string ("gnc:options-run-callbacks"); + if (!scm_is_procedure (proc)) { PERR("not a procedure\n"); return; } - scm_call_1(proc, odb->guile_options); + scm_call_1 (proc, odb->guile_options); } - static void initialize_getters(void) { @@ -540,59 +538,58 @@ initialize_getters(void) if (getters_initialized) return; - getters.section = scm_c_eval_string("gnc:option-section"); - getters.name = scm_c_eval_string("gnc:option-name"); - getters.type = scm_c_eval_string("gnc:option-type"); - getters.sort_tag = scm_c_eval_string("gnc:option-sort-tag"); + getters.section = scm_c_eval_string ("gnc:option-section"); + getters.name = scm_c_eval_string ("gnc:option-name"); + getters.type = scm_c_eval_string ("gnc:option-type"); + getters.sort_tag = scm_c_eval_string ("gnc:option-sort-tag"); getters.documentation = - scm_c_eval_string("gnc:option-documentation"); - getters.getter = scm_c_eval_string("gnc:option-getter"); - getters.setter = scm_c_eval_string("gnc:option-setter"); + scm_c_eval_string ("gnc:option-documentation"); + getters.getter = scm_c_eval_string ("gnc:option-getter"); + getters.setter = scm_c_eval_string ("gnc:option-setter"); getters.default_getter = - scm_c_eval_string("gnc:option-default-getter"); + scm_c_eval_string ("gnc:option-default-getter"); getters.value_validator = - scm_c_eval_string("gnc:option-value-validator"); - getters.option_data = scm_c_eval_string("gnc:option-data"); - getters.index_to_name = scm_c_eval_string("gnc:option-index-get-name"); + scm_c_eval_string ("gnc:option-value-validator"); + getters.option_data = scm_c_eval_string ("gnc:option-data"); + getters.index_to_name = scm_c_eval_string ("gnc:option-index-get-name"); getters.index_to_description = - scm_c_eval_string("gnc:option-index-get-description"); - getters.number_of_indices = scm_c_eval_string("gnc:option-number-of-indices"); - getters.index_to_value = scm_c_eval_string("gnc:option-index-get-value"); - getters.value_to_index = scm_c_eval_string("gnc:option-value-get-index"); + scm_c_eval_string ("gnc:option-index-get-description"); + getters.number_of_indices = scm_c_eval_string ("gnc:option-number-of-indices"); + getters.index_to_value = scm_c_eval_string ("gnc:option-index-get-value"); + getters.value_to_index = scm_c_eval_string ("gnc:option-value-get-index"); getters.option_widget_changed_cb = - scm_c_eval_string("gnc:option-widget-changed-proc"); - getters.date_option_subtype = scm_c_eval_string("gnc:date-option-get-subtype"); - getters.date_option_show_time = scm_c_eval_string("gnc:date-option-show-time?"); + scm_c_eval_string ("gnc:option-widget-changed-proc"); + getters.date_option_subtype = scm_c_eval_string ("gnc:date-option-get-subtype"); + getters.date_option_show_time = scm_c_eval_string ("gnc:date-option-show-time?"); getters.date_option_value_type = scm_c_eval_string ("gnc:date-option-value-type"); getters.date_option_value_absolute = - scm_c_eval_string("gnc:date-option-absolute-time"); + scm_c_eval_string ("gnc:date-option-absolute-time"); getters.date_option_value_relative = - scm_c_eval_string("gnc:date-option-relative-time"); + scm_c_eval_string ("gnc:date-option-relative-time"); getters.plot_size_option_value_type = scm_c_eval_string ("gnc:plot-size-option-value-type"); - getters.plot_size_option_value = scm_c_eval_string("gnc:plot-size-option-value"); + getters.plot_size_option_value = scm_c_eval_string ("gnc:plot-size-option-value"); getters.currency_accounting_option_currency_doc_string = - scm_c_eval_string("gnc:currency-accounting-option-get-curr-doc-string"); + scm_c_eval_string ("gnc:currency-accounting-option-get-curr-doc-string"); getters.currency_accounting_option_default_currency = - scm_c_eval_string("gnc:currency-accounting-option-get-default-curr"); + scm_c_eval_string ("gnc:currency-accounting-option-get-default-curr"); getters.currency_accounting_option_policy_doc_string = - scm_c_eval_string("gnc:currency-accounting-option-get-policy-doc-string"); + scm_c_eval_string ("gnc:currency-accounting-option-get-policy-doc-string"); getters.currency_accounting_option_default_policy = - scm_c_eval_string("gnc:currency-accounting-option-get-default-policy"); + scm_c_eval_string ("gnc:currency-accounting-option-get-default-policy"); getters.currency_accounting_option_gain_loss_account_doc_string = - scm_c_eval_string("gnc:currency-accounting-option-get-gain-loss-account-doc-string"); + scm_c_eval_string ("gnc:currency-accounting-option-get-gain-loss-account-doc-string"); getters.currency_accounting_option_method = - scm_c_eval_string("gnc:currency-accounting-option-selected-method"); + scm_c_eval_string ("gnc:currency-accounting-option-selected-method"); getters.currency_accounting_option_book_currency = - scm_c_eval_string("gnc:currency-accounting-option-selected-currency"); + scm_c_eval_string ("gnc:currency-accounting-option-selected-currency"); getters.currency_accounting_option_selected_default_policy = - scm_c_eval_string("gnc:currency-accounting-option-selected-policy"); + scm_c_eval_string ("gnc:currency-accounting-option-selected-policy"); getters.currency_accounting_option_selected_default_gain_loss_account = - scm_c_eval_string("gnc:currency-accounting-option-selected-gain-loss-account"); + scm_c_eval_string ("gnc:currency-accounting-option-selected-gain-loss-account"); getters_initialized = TRUE; } - /********************************************************************\ * gnc_option_section * * returns the malloc'ed section name of the option, or NULL * @@ -602,14 +599,13 @@ initialize_getters(void) * Returns: malloc'ed char * or NULL * \********************************************************************/ char * -gnc_option_section(GNCOption *option) +gnc_option_section (GNCOption *option) { - initialize_getters(); + initialize_getters (); - return gnc_scm_call_1_to_string(getters.section, option->guile_option); + return gnc_scm_call_1_to_string (getters.section, option->guile_option); } - /********************************************************************\ * gnc_option_name * * returns the malloc'ed name of the option, or NULL * @@ -619,14 +615,13 @@ gnc_option_section(GNCOption *option) * Returns: malloc'ed char * or NULL * \********************************************************************/ char * -gnc_option_name(GNCOption *option) +gnc_option_name (GNCOption *option) { - initialize_getters(); + initialize_getters (); - return gnc_scm_call_1_to_string(getters.name, option->guile_option); + return gnc_scm_call_1_to_string (getters.name, option->guile_option); } - /********************************************************************\ * gnc_option_type * * returns the malloc'ed type of the option, or NULL * @@ -636,15 +631,14 @@ gnc_option_name(GNCOption *option) * Returns: malloc'ed char * or NULL * \********************************************************************/ char * -gnc_option_type(GNCOption *option) +gnc_option_type (GNCOption *option) { - initialize_getters(); + initialize_getters (); - return gnc_scm_call_1_symbol_to_string(getters.type, + return gnc_scm_call_1_symbol_to_string (getters.type, option->guile_option); } - /********************************************************************\ * gnc_option_sort_tag * * returns the malloc'ed sort tag of the option, or NULL * @@ -654,14 +648,13 @@ gnc_option_type(GNCOption *option) * Returns: malloc'ed char * or NULL * \********************************************************************/ char * -gnc_option_sort_tag(GNCOption *option) +gnc_option_sort_tag (GNCOption *option) { - initialize_getters(); + initialize_getters (); - return gnc_scm_call_1_to_string(getters.sort_tag, option->guile_option); + return gnc_scm_call_1_to_string (getters.sort_tag, option->guile_option); } - /********************************************************************\ * gnc_option_documentation * * returns the malloc'ed documentation string of the option, or * @@ -671,15 +664,14 @@ gnc_option_sort_tag(GNCOption *option) * Returns: malloc'ed char * or NULL * \********************************************************************/ char * -gnc_option_documentation(GNCOption *option) +gnc_option_documentation (GNCOption *option) { - initialize_getters(); + initialize_getters (); - return gnc_scm_call_1_to_string(getters.documentation, + return gnc_scm_call_1_to_string (getters.documentation, option->guile_option); } - /********************************************************************\ * gnc_option_getter * * returns the SCM handle for the option getter function. * @@ -689,15 +681,14 @@ gnc_option_documentation(GNCOption *option) * Returns: SCM handle to function * \********************************************************************/ SCM -gnc_option_getter(GNCOption *option) +gnc_option_getter (GNCOption *option) { - initialize_getters(); + initialize_getters (); - return gnc_scm_call_1_to_procedure(getters.getter, + return gnc_scm_call_1_to_procedure (getters.getter, option->guile_option); } - /********************************************************************\ * gnc_option_setter * * returns the SCM handle for the option setter function. * @@ -707,15 +698,14 @@ gnc_option_getter(GNCOption *option) * Returns: SCM handle to function * \********************************************************************/ SCM -gnc_option_setter(GNCOption *option) +gnc_option_setter (GNCOption *option) { - initialize_getters(); + initialize_getters (); - return gnc_scm_call_1_to_procedure(getters.setter, + return gnc_scm_call_1_to_procedure (getters.setter, option->guile_option); } - /********************************************************************\ * gnc_option_default_getter * * returns the SCM handle for the option default_getter function. * @@ -725,15 +715,14 @@ gnc_option_setter(GNCOption *option) * Returns: SCM handle to function * \********************************************************************/ SCM -gnc_option_default_getter(GNCOption *option) +gnc_option_default_getter (GNCOption *option) { - initialize_getters(); + initialize_getters (); - return gnc_scm_call_1_to_procedure(getters.default_getter, + return gnc_scm_call_1_to_procedure (getters.default_getter, option->guile_option); } - /********************************************************************\ * gnc_option_value_validator * * returns the SCM handle for the option value validator function.* @@ -743,15 +732,14 @@ gnc_option_default_getter(GNCOption *option) * Returns: SCM handle to function * \********************************************************************/ SCM -gnc_option_value_validator(GNCOption *option) +gnc_option_value_validator (GNCOption *option) { - initialize_getters(); + initialize_getters (); - return gnc_scm_call_1_to_procedure(getters.value_validator, + return gnc_scm_call_1_to_procedure (getters.value_validator, option->guile_option); } - /********************************************************************\ * gnc_option_widget_changed_proc_getter * * returns the SCM handle for the function to be called if the * @@ -764,20 +752,20 @@ gnc_option_value_validator(GNCOption *option) * If no such function exists, returns SCM_UNDEFINED. * \********************************************************************/ SCM -gnc_option_widget_changed_proc_getter(GNCOption *option) +gnc_option_widget_changed_proc_getter (GNCOption *option) { SCM cb; - initialize_getters(); + initialize_getters (); - if ( scm_is_procedure( getters.option_widget_changed_cb ) ) + if (scm_is_procedure (getters.option_widget_changed_cb)) { /* call the callback function getter to get the actual callback function */ - cb = scm_call_1(getters.option_widget_changed_cb, option->guile_option); + cb = scm_call_1 (getters.option_widget_changed_cb, option->guile_option); - if ( scm_is_procedure( cb ) ) /* a callback exists */ + if (scm_is_procedure (cb)) /* a callback exists */ { - return( cb ); + return (cb); } /* else no callback exists - this is a legal situation */ } @@ -789,7 +777,6 @@ gnc_option_widget_changed_proc_getter(GNCOption *option) return( SCM_UNDEFINED ); } - /**********************************************************************\ * gnc_option_call_option_widget_changed_proc * * If there is an option_widget_changed_cb for this option, call * @@ -806,22 +793,21 @@ gnc_option_call_option_widget_changed_proc (GNCOption *option, { SCM cb, value; - cb = gnc_option_widget_changed_proc_getter(option); + cb = gnc_option_widget_changed_proc_getter (option); - if ( cb != SCM_UNDEFINED ) + if (cb != SCM_UNDEFINED) { - value = gnc_option_get_ui_value(option); + value = gnc_option_get_ui_value (option); - if ( value != SCM_UNDEFINED ) + if (value != SCM_UNDEFINED) { - scm_call_1(cb, value); + scm_call_1 (cb, value); } } if (reset_changed) option->changed = FALSE; } - /********************************************************************\ * gnc_option_num_permissible_values * * returns the number of permissible values in the option, or * @@ -831,17 +817,17 @@ gnc_option_call_option_widget_changed_proc (GNCOption *option, * Returns: number of permissible options or -1 * \********************************************************************/ int -gnc_option_num_permissible_values(GNCOption *option) +gnc_option_num_permissible_values (GNCOption *option) { SCM value; - initialize_getters(); + initialize_getters (); - value = scm_call_1(getters.number_of_indices, option->guile_option); + value = scm_call_1 (getters.number_of_indices, option->guile_option); - if (scm_is_exact(value)) + if (scm_is_exact (value)) { - return scm_to_int(value); + return scm_to_int (value); } else { @@ -849,7 +835,6 @@ gnc_option_num_permissible_values(GNCOption *option) } } - /********************************************************************\ * gnc_option_permissible_value_index * * returns the index of the permissible value matching the * @@ -860,21 +845,20 @@ gnc_option_num_permissible_values(GNCOption *option) * Returns: index of permissible value, or -1 * \********************************************************************/ int -gnc_option_permissible_value_index(GNCOption *option, SCM search_value) +gnc_option_permissible_value_index (GNCOption *option, SCM search_value) { SCM value; - value = scm_call_2(getters.value_to_index, option->guile_option, search_value); + value = scm_call_2 (getters.value_to_index, option->guile_option, search_value); if (value == SCM_BOOL_F) { return -1; } else { - return scm_to_int(value); + return scm_to_int (value); } } - /********************************************************************\ * gnc_option_permissible_value * * returns the SCM handle to the indexth permissible value in the * @@ -886,22 +870,21 @@ gnc_option_permissible_value_index(GNCOption *option, SCM search_value) * Returns: SCM handle to option value or SCM_UNDEFINED * \********************************************************************/ SCM -gnc_option_permissible_value(GNCOption *option, int index) +gnc_option_permissible_value (GNCOption *option, int index) { SCM value; if (index < 0) return SCM_UNDEFINED; - initialize_getters(); + initialize_getters (); - value = scm_call_2(getters.index_to_value, option->guile_option, - scm_from_int (index)); + value = scm_call_2 (getters.index_to_value, option->guile_option, + scm_from_int (index)); return value; } - /********************************************************************\ * gnc_option_permissible_value_name * * returns the malloc'd name of the indexth permissible value in * @@ -913,26 +896,25 @@ gnc_option_permissible_value(GNCOption *option, int index) * Returns: malloc'd name of permissible value or NULL * \********************************************************************/ char * -gnc_option_permissible_value_name(GNCOption *option, int index) +gnc_option_permissible_value_name (GNCOption *option, int index) { SCM name; if (index < 0) return NULL; - initialize_getters(); + initialize_getters (); - name = scm_call_2(getters.index_to_name, option->guile_option, - scm_from_int (index)); + name = scm_call_2 (getters.index_to_name, option->guile_option, + scm_from_int (index)); if (name == SCM_UNDEFINED) return NULL; - if (!scm_is_string(name)) + if (!scm_is_string (name)) return NULL; return gnc_scm_to_utf8_string (name); } - /********************************************************************\ * gnc_option_permissible_value_description * * returns the malloc'd description of the indexth permissible * @@ -944,26 +926,25 @@ gnc_option_permissible_value_name(GNCOption *option, int index) * Returns: malloc'd description of permissible value or NULL * \********************************************************************/ char * -gnc_option_permissible_value_description(GNCOption *option, int index) +gnc_option_permissible_value_description (GNCOption *option, int index) { SCM help; if (index < 0) return NULL; - initialize_getters(); + initialize_getters (); - help = scm_call_2(getters.index_to_description, option->guile_option, - scm_from_int (index)); + help = scm_call_2 (getters.index_to_description, option->guile_option, + scm_from_int (index)); if (help == SCM_UNDEFINED) return NULL; - if (!scm_is_string(help)) + if (!scm_is_string (help)) return NULL; return gnc_scm_to_utf8_string (help); } - /********************************************************************\ * gnc_option_show_time * * returns true if the gui should display the time as well as * @@ -973,15 +954,15 @@ gnc_option_permissible_value_description(GNCOption *option, int index) * Returns: true if time should be shown * \********************************************************************/ gboolean -gnc_option_show_time(GNCOption *option) +gnc_option_show_time (GNCOption *option) { SCM value; - initialize_getters(); + initialize_getters (); - value = scm_call_1(getters.date_option_show_time, option->guile_option); + value = scm_call_1 (getters.date_option_show_time, option->guile_option); - return scm_is_true(value); + return scm_is_true (value); } /********************************************************************\ @@ -992,14 +973,13 @@ gnc_option_show_time(GNCOption *option) * Returns: the option data * \********************************************************************/ SCM -gnc_option_get_option_data(GNCOption *option) +gnc_option_get_option_data (GNCOption *option) { - initialize_getters(); + initialize_getters (); - return scm_call_1(getters.option_data, option->guile_option); + return scm_call_1 (getters.option_data, option->guile_option); } - /********************************************************************\ * gnc_option_multiple_selection * * returns true if the gui should allow multiple selection of * @@ -1009,15 +989,15 @@ gnc_option_get_option_data(GNCOption *option) * Returns: true if multiple selection allowed * \********************************************************************/ gboolean -gnc_option_multiple_selection(GNCOption *option) +gnc_option_multiple_selection (GNCOption *option) { SCM pair; - initialize_getters(); + initialize_getters (); - pair = scm_call_1(getters.option_data, option->guile_option); + pair = scm_call_1 (getters.option_data, option->guile_option); - return !scm_is_true(scm_not(SCM_CAR(pair))); + return !scm_is_true (scm_not (SCM_CAR(pair))); } /********************************************************************\ @@ -1030,15 +1010,15 @@ gnc_option_multiple_selection(GNCOption *option) * Returns: GList of account types (must be freed by caller) * \********************************************************************/ GList * -gnc_option_get_account_type_list(GNCOption *option) +gnc_option_get_account_type_list (GNCOption *option) { SCM pair; SCM lst; GList *type_list = NULL; - initialize_getters(); + initialize_getters (); - pair = scm_call_1(getters.option_data, option->guile_option); + pair = scm_call_1 (getters.option_data, option->guile_option); lst = SCM_CDR(pair); while (!scm_is_null (lst)) @@ -1047,12 +1027,12 @@ gnc_option_get_account_type_list(GNCOption *option) SCM item; /* Compute this item and the rest of the list */ - item = SCM_CAR (lst); - lst = SCM_CDR (lst); + item = SCM_CAR(lst); + lst = SCM_CDR(lst); if (scm_is_false (scm_integer_p (item))) { - PERR ("Invalid type"); + PERR("Invalid type"); } else { @@ -1064,7 +1044,6 @@ gnc_option_get_account_type_list(GNCOption *option) return g_list_reverse (type_list); } - /********************************************************************\ * gnc_option_get_range_info * * returns the range info for a number range option in the pointer* @@ -1074,53 +1053,53 @@ gnc_option_get_account_type_list(GNCOption *option) * Args: option - the GNCOption * * Returns: true if everything went ok :) * \********************************************************************/ -gboolean gnc_option_get_range_info(GNCOption *option, - double *lower_bound, - double *upper_bound, - int *num_decimals, - double *step_size) +gboolean gnc_option_get_range_info (GNCOption *option, + double *lower_bound, + double *upper_bound, + int *num_decimals, + double *step_size) { SCM list; SCM value; - initialize_getters(); + initialize_getters (); - list = scm_call_1(getters.option_data, option->guile_option); + list = scm_call_1 (getters.option_data, option->guile_option); - if (!scm_is_list(list) || scm_is_null(list)) + if (!scm_is_list (list) || scm_is_null (list)) return FALSE; /* lower bound */ value = SCM_CAR(list); list = SCM_CDR(list); - if (!scm_is_number(value)) + if (!scm_is_number (value)) return FALSE; if (lower_bound != NULL) - *lower_bound = scm_to_double(value); + *lower_bound = scm_to_double (value); - if (!scm_is_list(list) || scm_is_null(list)) + if (!scm_is_list (list) || scm_is_null (list)) return FALSE; /* upper bound */ value = SCM_CAR(list); list = SCM_CDR(list); - if (!scm_is_number(value)) + if (!scm_is_number (value)) return FALSE; if (upper_bound != NULL) - *upper_bound = scm_to_double(value); + *upper_bound = scm_to_double (value); - if (!scm_is_list(list) || scm_is_null(list)) + if (!scm_is_list (list) || scm_is_null (list)) return FALSE; /* number of decimals */ value = SCM_CAR(list); list = SCM_CDR(list); - if (!scm_is_number(value)) + if (!scm_is_number (value)) return FALSE; /* Guile-1.6 returns this as a double, so let's use that in all cases. @@ -1128,26 +1107,25 @@ gboolean gnc_option_get_range_info(GNCOption *option, */ if (num_decimals != NULL) { - double decimals = scm_to_double(value); + double decimals = scm_to_double (value); *num_decimals = (int)decimals; } - if (!scm_is_list(list) || scm_is_null(list)) + if (!scm_is_list (list) || scm_is_null (list)) return FALSE; /* step size */ value = SCM_CAR(list); - if (!scm_is_number(value)) + if (!scm_is_number (value)) return FALSE; if (step_size != NULL) - *step_size = scm_to_double(value); + *step_size = scm_to_double (value); return TRUE; } - /********************************************************************\ * gnc_option_color_range * * returns the color range for rgba values. * @@ -1157,25 +1135,24 @@ gboolean gnc_option_get_range_info(GNCOption *option, * Returns: color range for the option * \********************************************************************/ gdouble -gnc_option_color_range(GNCOption *option) +gnc_option_color_range (GNCOption *option) { SCM list; SCM value; - initialize_getters(); + initialize_getters (); - list = scm_call_1(getters.option_data, option->guile_option); - if (!scm_is_list(list) || scm_is_null(list)) + list = scm_call_1 (getters.option_data, option->guile_option); + if (!scm_is_list (list) || scm_is_null (list)) return 0.0; value = SCM_CAR(list); - if (!scm_is_number(value)) + if (!scm_is_number (value)) return 0.0; - return scm_to_double(value); + return scm_to_double (value); } - /********************************************************************\ * gnc_option_use_alpha * * returns true if the color option should use alpha transparency * @@ -1185,29 +1162,28 @@ gnc_option_color_range(GNCOption *option) * Returns: true if alpha transparency should be used * \********************************************************************/ gdouble -gnc_option_use_alpha(GNCOption *option) +gnc_option_use_alpha (GNCOption *option) { SCM list; SCM value; - initialize_getters(); + initialize_getters (); - list = scm_call_1(getters.option_data, option->guile_option); - if (!scm_is_list(list) || scm_is_null(list)) + list = scm_call_1 (getters.option_data, option->guile_option); + if (!scm_is_list (list) || scm_is_null (list)) return FALSE; list = SCM_CDR(list); - if (!scm_is_list(list) || scm_is_null(list)) + if (!scm_is_list (list) || scm_is_null (list)) return FALSE; value = SCM_CAR(list); - if (!scm_is_bool(value)) + if (!scm_is_bool (value)) return FALSE; - return scm_is_true(value); + return scm_is_true (value); } - /********************************************************************\ * gnc_option_get_color_argb * * returns the argb value of a color option * @@ -1216,12 +1192,12 @@ gnc_option_use_alpha(GNCOption *option) * Returns: argb value of option * \********************************************************************/ guint32 -gnc_option_get_color_argb(GNCOption *option) +gnc_option_get_color_argb (GNCOption *option) { gdouble red, green, blue, alpha; guint32 color = 0; - if (!gnc_option_get_color_info(option, FALSE, &red, &green, &blue, &alpha)) + if (!gnc_option_get_color_info (option, FALSE, &red, &green, &blue, &alpha)) return 0; color |= (guint32) (alpha * 255.0); @@ -1238,7 +1214,6 @@ gnc_option_get_color_argb(GNCOption *option) return color; } - /********************************************************************\ * gnc_option_get_color_info * * gets the color information from a color option. rgba values * @@ -1253,12 +1228,12 @@ gnc_option_get_color_argb(GNCOption *option) * Return: true if everything went ok * \********************************************************************/ gboolean -gnc_option_get_color_info(GNCOption *option, - gboolean use_default, - gdouble *red, - gdouble *green, - gdouble *blue, - gdouble *alpha) +gnc_option_get_color_info (GNCOption *option, + gboolean use_default, + gdouble *red, + gdouble *green, + gdouble *blue, + gdouble *alpha) { gdouble scale; gdouble rgba; @@ -1269,54 +1244,53 @@ gnc_option_get_color_info(GNCOption *option, return FALSE; if (use_default) - getter = gnc_option_default_getter(option); + getter = gnc_option_default_getter (option); else - getter = gnc_option_getter(option); + getter = gnc_option_getter (option); if (getter == SCM_UNDEFINED) return FALSE; - value = scm_call_0(getter); - if (!scm_is_list(value) || scm_is_null(value) || !scm_is_number(SCM_CAR(value))) + value = scm_call_0 (getter); + if (!scm_is_list (value) || scm_is_null (value) || !scm_is_number (SCM_CAR(value))) return FALSE; - scale = gnc_option_color_range(option); + scale = gnc_option_color_range (option); if (scale <= 0.0) return FALSE; scale = 1.0 / scale; - rgba = scm_to_double(SCM_CAR(value)); + rgba = scm_to_double (SCM_CAR(value)); if (red != NULL) *red = MIN(1.0, rgba * scale); value = SCM_CDR(value); - if (!scm_is_list(value) || scm_is_null(value) || !scm_is_number(SCM_CAR(value))) + if (!scm_is_list (value) || scm_is_null (value) || !scm_is_number (SCM_CAR(value))) return FALSE; - rgba = scm_to_double(SCM_CAR(value)); + rgba = scm_to_double (SCM_CAR(value)); if (green != NULL) *green = MIN(1.0, rgba * scale); value = SCM_CDR(value); - if (!scm_is_list(value) || scm_is_null(value) || !scm_is_number(SCM_CAR(value))) + if (!scm_is_list (value) || scm_is_null (value) || !scm_is_number (SCM_CAR(value))) return FALSE; - rgba = scm_to_double(SCM_CAR(value)); + rgba = scm_to_double (SCM_CAR(value)); if (blue != NULL) *blue = MIN(1.0, rgba * scale); value = SCM_CDR(value); - if (!scm_is_list(value) || scm_is_null(value) || !scm_is_number(SCM_CAR(value))) + if (!scm_is_list (value) || scm_is_null (value) || !scm_is_number (SCM_CAR(value))) return FALSE; - rgba = scm_to_double(SCM_CAR(value)); + rgba = scm_to_double (SCM_CAR(value)); if (alpha != NULL) *alpha = MIN(1.0, rgba * scale); return TRUE; } - /********************************************************************\ * gnc_option_set_default * * set the option to its default value * @@ -1325,7 +1299,7 @@ gnc_option_get_color_info(GNCOption *option, * Returns: nothing * \********************************************************************/ void -gnc_option_set_default(GNCOption *option) +gnc_option_set_default (GNCOption *option) { SCM default_getter; SCM setter; @@ -1334,45 +1308,44 @@ gnc_option_set_default(GNCOption *option) if (option == NULL) return; - default_getter = gnc_option_default_getter(option); + default_getter = gnc_option_default_getter (option); if (default_getter == SCM_UNDEFINED) return; - value = scm_call_0(default_getter); + value = scm_call_0 (default_getter); - setter = gnc_option_setter(option); + setter = gnc_option_setter (option); if (setter == SCM_UNDEFINED) return; - scm_call_1(setter, value); + scm_call_1 (setter, value); } - static gint -compare_sections(gconstpointer a, gconstpointer b) +compare_sections (gconstpointer a, gconstpointer b) { const GNCOptionSection *sa = a; const GNCOptionSection *sb = b; - return g_strcmp0(sa->section_name, sb->section_name); + return g_strcmp0 (sa->section_name, sb->section_name); } static gint -compare_option_tags(gconstpointer a, gconstpointer b) +compare_option_tags (gconstpointer a, gconstpointer b) { GNCOption *oa = (GNCOption *) a; GNCOption *ob = (GNCOption *) b; - char *tag_a = gnc_option_sort_tag(oa); - char *tag_b = gnc_option_sort_tag(ob); + char *tag_a = gnc_option_sort_tag (oa); + char *tag_b = gnc_option_sort_tag (ob); gint result; - result = g_strcmp0(tag_a, tag_b); + result = g_strcmp0 (tag_a, tag_b); if (tag_a != NULL) - free(tag_a); + free (tag_a); if (tag_b != NULL) - free(tag_b); + free (tag_b); return result; } @@ -1385,28 +1358,26 @@ compare_option_tags(gconstpointer a, gconstpointer b) * Returns: dirty flag * \********************************************************************/ gboolean -gnc_option_db_dirty(GNCOptionDB *odb) +gnc_option_db_dirty (GNCOptionDB *odb) { g_return_val_if_fail (odb, FALSE); return odb->options_dirty; } - /********************************************************************\ * gnc_option_db_clean * * resets the dirty flag of the option database * * * \********************************************************************/ void -gnc_option_db_clean(GNCOptionDB *odb) +gnc_option_db_clean (GNCOptionDB *odb) { g_return_if_fail (odb); odb->options_dirty = FALSE; } - /********************************************************************\ * _gnc_option_db_register_option * * registers an option with an option database. Intended to be * @@ -1417,56 +1388,56 @@ gnc_option_db_clean(GNCOptionDB *odb) * Returns: nothing * \********************************************************************/ void -gnc_option_db_register_option(GNCOptionDBHandle handle, SCM guile_option) +gnc_option_db_register_option (GNCOptionDBHandle handle, SCM guile_option) { GNCOptionDB *odb; GNCOption *option; GNCOptionSection *section; - odb = g_hash_table_lookup(option_dbs, &handle); + odb = g_hash_table_lookup (option_dbs, &handle); g_return_if_fail (odb != NULL); odb->options_dirty = TRUE; /* Make the option structure */ - option = g_new0(GNCOption, 1); + option = g_new0 (GNCOption, 1); option->guile_option = guile_option; option->changed = FALSE; option->widget = NULL; option->odb = odb; /* Prevent guile from garbage collecting the option */ - scm_gc_protect_object(guile_option); + scm_gc_protect_object (guile_option); /* Make the section structure */ - section = g_new0(GNCOptionSection, 1); - section->section_name = gnc_option_section(option); + section = g_new0 (GNCOptionSection, 1); + section->section_name = gnc_option_section (option); section->options = NULL; /* See if the section is already there */ { GSList *old; - old = g_slist_find_custom(odb->option_sections, section, compare_sections); + old = g_slist_find_custom (odb->option_sections, section, compare_sections); if (old != NULL) { if (section->section_name != NULL) - free(section->section_name); - g_free(section); + free (section->section_name); + g_free (section); section = old->data; } else - odb->option_sections = g_slist_insert_sorted(odb->option_sections, - section, compare_sections); + odb->option_sections = g_slist_insert_sorted (odb->option_sections, + section, + compare_sections); } - section->options = g_slist_insert_sorted(section->options, option, - compare_option_tags); + section->options = g_slist_insert_sorted (section->options, option, + compare_option_tags); } - /********************************************************************\ * gnc_option_db_num_sections * * returns the number of option sections registered so far in the * @@ -1476,12 +1447,11 @@ gnc_option_db_register_option(GNCOptionDBHandle handle, SCM guile_option) * Returns: number of option sections * \********************************************************************/ guint -gnc_option_db_num_sections(GNCOptionDB *odb) +gnc_option_db_num_sections (GNCOptionDB *odb) { - return g_slist_length(odb->option_sections); + return g_slist_length (odb->option_sections); } - /********************************************************************\ * gnc_option_db_get_section * * returns the ith option section in the database, or NULL * @@ -1491,12 +1461,11 @@ gnc_option_db_num_sections(GNCOptionDB *odb) * Returns: ith option sectioin * \********************************************************************/ GNCOptionSection * -gnc_option_db_get_section(GNCOptionDB *odb, gint i) +gnc_option_db_get_section (GNCOptionDB *odb, gint i) { - return g_slist_nth_data(odb->option_sections, i); + return g_slist_nth_data (odb->option_sections, i); } - /********************************************************************\ * gnc_option_section_name * * returns the name of the options section * @@ -1505,12 +1474,11 @@ gnc_option_db_get_section(GNCOptionDB *odb, gint i) * Returns: name of option section * \********************************************************************/ const char * -gnc_option_section_name(GNCOptionSection *section) +gnc_option_section_name (GNCOptionSection *section) { return section->section_name; } - /********************************************************************\ * gnc_option_section_num_options * * returns the number of options in a given section * @@ -1519,12 +1487,11 @@ gnc_option_section_name(GNCOptionSection *section) * Returns: number of options in section * \********************************************************************/ guint -gnc_option_section_num_options(GNCOptionSection *section) +gnc_option_section_num_options (GNCOptionSection *section) { - return g_slist_length(section->options); + return g_slist_length (section->options); } - /********************************************************************\ * gnc_get_option_section_option * * returns the ith option in a given section * @@ -1534,12 +1501,11 @@ gnc_option_section_num_options(GNCOptionSection *section) * Returns: ith option in section * \********************************************************************/ GNCOption * -gnc_get_option_section_option(GNCOptionSection *section, int i) +gnc_get_option_section_option (GNCOptionSection *section, int i) { - return g_slist_nth_data(section->options, i); + return g_slist_nth_data (section->options, i); } - /********************************************************************\ * gnc_option_db_get_option_by_name * * returns an option given section name and name * @@ -1550,8 +1516,9 @@ gnc_get_option_section_option(GNCOptionSection *section, int i) * Returns: given option, or NULL if none * \********************************************************************/ GNCOption * -gnc_option_db_get_option_by_name(GNCOptionDB *odb, const char *section_name, - const char *name) +gnc_option_db_get_option_by_name (GNCOptionDB *odb, + const char *section_name, + const char *name) { GSList *section_node; GSList *option_node; @@ -1566,8 +1533,8 @@ gnc_option_db_get_option_by_name(GNCOptionDB *odb, const char *section_name, section_key.section_name = (char *) section_name; - section_node = g_slist_find_custom(odb->option_sections, §ion_key, - compare_sections); + section_node = g_slist_find_custom (odb->option_sections, §ion_key, + compare_sections); if (section_node == NULL) return NULL; @@ -1579,20 +1546,18 @@ gnc_option_db_get_option_by_name(GNCOptionDB *odb, const char *section_name, { option = option_node->data; - node_name = gnc_option_name(option); - result = g_strcmp0(name, node_name); - free(node_name); + node_name = gnc_option_name (option); + result = g_strcmp0 (name, node_name); + free (node_name); if (result == 0) return option; option_node = option_node->next; } - return NULL; } - /********************************************************************\ * gnc_option_db_get_option_by_SCM * * returns an option given SCM handle. Uses section and name. * @@ -1602,7 +1567,7 @@ gnc_option_db_get_option_by_name(GNCOptionDB *odb, const char *section_name, * Returns: given option, or NULL if none * \********************************************************************/ GNCOption * -gnc_option_db_get_option_by_SCM(GNCOptionDB *odb, SCM guile_option) +gnc_option_db_get_option_by_SCM (GNCOptionDB *odb, SCM guile_option) { GNCOption option_key; GNCOption *option; @@ -1611,64 +1576,62 @@ gnc_option_db_get_option_by_SCM(GNCOptionDB *odb, SCM guile_option) option_key.guile_option = guile_option; - section_name = gnc_option_section(&option_key); - name = gnc_option_name(&option_key); + section_name = gnc_option_section (&option_key); + name = gnc_option_name (&option_key); - option = gnc_option_db_get_option_by_name(odb, section_name, name); + option = gnc_option_db_get_option_by_name (odb, section_name, name); if (section_name != NULL) - free(section_name); + free (section_name); if (name != NULL) - free(name); + free (name); return option; } - static SCM -gnc_option_valid_value(GNCOption *option, SCM value) +gnc_option_valid_value (GNCOption *option, SCM value) { SCM validator; SCM result, ok; - validator = gnc_option_value_validator(option); + validator = gnc_option_value_validator (option); - result = scm_call_1(validator, value); - if (!scm_is_list(result) || scm_is_null(result)) + result = scm_call_1 (validator, value); + if (!scm_is_list (result) || scm_is_null (result)) return SCM_UNDEFINED; ok = SCM_CAR(result); - if (!scm_is_bool(ok)) + if (!scm_is_bool (ok)) return SCM_UNDEFINED; - if (!scm_is_true(ok)) + if (!scm_is_true (ok)) return SCM_UNDEFINED; result = SCM_CDR(result); - if (!scm_is_list(result) || scm_is_null(result)) + if (!scm_is_list (result) || scm_is_null (result)) return SCM_UNDEFINED; return SCM_CAR(result); } - static char* -gnc_commit_option(GNCOption *option) +gnc_commit_option (GNCOption *option) { SCM validator, setter, value; SCM result, ok; char* retval = NULL; /* Validate the ui's value */ - value = gnc_option_get_ui_value(option); + value = gnc_option_get_ui_value (option); if (value == SCM_UNDEFINED) return NULL; - validator = gnc_option_value_validator(option); + validator = gnc_option_value_validator (option); result = scm_call_1(validator, value); - if (!scm_is_list(result) || scm_is_null(result)) + if (!scm_is_list (result) || scm_is_null (result)) { PERR("bad validation result\n"); return NULL; @@ -1676,19 +1639,19 @@ gnc_commit_option(GNCOption *option) /* First element determines validity */ ok = SCM_CAR(result); - if (!scm_is_bool(ok)) + if (!scm_is_bool (ok)) { PERR("bad validation result\n"); return NULL; } - if (scm_is_true(ok)) + if (scm_is_true (ok)) { /* Second element is value to use */ value = SCM_CADR(result); - setter = gnc_option_setter(option); + setter = gnc_option_setter (option); - scm_call_1(setter, value); + scm_call_1 (setter, value); gnc_option_set_ui_value (option, FALSE); } @@ -1700,38 +1663,36 @@ gnc_commit_option(GNCOption *option) const char *format = _("There is a problem with option %s:%s.\n%s"); const char *bad_value = _("Invalid option value"); - name = gnc_option_name(option); - section = gnc_option_section(option); + name = gnc_option_name (option); + section = gnc_option_section (option); /* Second element is error message */ oops = SCM_CADR(result); - if (!scm_is_string(oops)) + if (!scm_is_string (oops)) { PERR("bad validation result\n"); - retval = g_strdup_printf(format, - section ? section : "(null)", - name ? name : "(null)", - bad_value); + retval = g_strdup_printf (format, + section ? section : "(null)", + name ? name : "(null)", + bad_value); } else { message = gnc_scm_to_utf8_string (oops); - retval = g_strdup_printf(format, - section ? section : "(null)", - name ? name : "(null)", - message ? message : "(null)"); + retval = g_strdup_printf (format, + section ? section : "(null)", + name ? name : "(null)", + message ? message : "(null)"); } if (name != NULL) - free(name); + free (name); if (section != NULL) - free(section); + free (section); g_free ((gpointer *) message); } - return retval; } - /********************************************************************\ * gnc_option_db_get_changed * * returns a boolean value, TRUE if any option has changed, * @@ -1741,7 +1702,7 @@ gnc_commit_option(GNCOption *option) * Return: boolean * \********************************************************************/ gboolean -gnc_option_db_get_changed(GNCOptionDB *odb) +gnc_option_db_get_changed (GNCOptionDB *odb) { GSList *section_node; GSList *option_node; @@ -1753,13 +1714,11 @@ gnc_option_db_get_changed(GNCOptionDB *odb) for (section_node = odb->option_sections; section_node; section_node = section_node->next) { - section = section_node->data; for (option_node = section->options; option_node; option_node = option_node->next) { - option = option_node->data; if (option->changed) @@ -1769,7 +1728,6 @@ gnc_option_db_get_changed(GNCOptionDB *odb) return FALSE; } - /********************************************************************\ * gnc_option_db_commit * * commits the options which have changed, and which are valid * @@ -1779,7 +1737,7 @@ gnc_option_db_get_changed(GNCOptionDB *odb) * Return: nothing * \********************************************************************/ GList* -gnc_option_db_commit(GNCOptionDB *odb) +gnc_option_db_commit (GNCOptionDB *odb) { GSList *section_node; GSList *option_node; @@ -1803,26 +1761,22 @@ gnc_option_db_commit(GNCOptionDB *odb) if (option->changed) { char *result = NULL; - result = gnc_commit_option(option_node->data); + result = gnc_commit_option (option_node->data); if (result) commit_errors = g_list_append (commit_errors, result); changed_something = TRUE; option->changed = FALSE; } - option_node = option_node->next; } - section_node = section_node->next; } - if (changed_something) - gnc_call_option_change_callbacks(odb); + gnc_call_option_change_callbacks (odb); return commit_errors; } - /********************************************************************\ * gnc_option_db_section_reset_widgets * * reset all option widgets in one section to their default. * @@ -1855,7 +1809,6 @@ gnc_option_db_section_reset_widgets (GNCOptionSection *section) } } - /********************************************************************\ * gnc_option_db_reset_widgets * * reset all option widgets to their default values. * @@ -1880,7 +1833,6 @@ gnc_option_db_reset_widgets (GNCOptionDB *odb) } } - /********************************************************************\ * gnc_option_db_get_default_section * * returns the malloc'd section name of the default section, * @@ -1890,7 +1842,7 @@ gnc_option_db_reset_widgets (GNCOptionDB *odb) * Return: g_malloc'd default section name * \********************************************************************/ char * -gnc_option_db_get_default_section(GNCOptionDB *odb) +gnc_option_db_get_default_section (GNCOptionDB *odb) { SCM getter; SCM value; @@ -1898,18 +1850,17 @@ gnc_option_db_get_default_section(GNCOptionDB *odb) if (odb == NULL) return NULL; - getter = scm_c_eval_string("gnc:options-get-default-section"); - if (!scm_is_procedure(getter)) + getter = scm_c_eval_string ("gnc:options-get-default-section"); + if (!scm_is_procedure (getter)) return NULL; - value = scm_call_1(getter, odb->guile_options); - if (!scm_is_string(value)) + value = scm_call_1 (getter, odb->guile_options); + if (!scm_is_string (value)) return NULL; return gnc_scm_to_utf8_string (value); } - /********************************************************************\ * gnc_option_db_lookup_option * * looks up an option. If present, returns its SCM value, * @@ -1922,24 +1873,24 @@ gnc_option_db_get_default_section(GNCOptionDB *odb) * Return: option value * \********************************************************************/ SCM -gnc_option_db_lookup_option(GNCOptionDB *odb, - const char *section, - const char *name, - SCM default_value) +gnc_option_db_lookup_option (GNCOptionDB *odb, + const char *section, + const char *name, + SCM default_value) { GNCOption *option; SCM getter; - option = gnc_option_db_get_option_by_name(odb, section, name); + option = gnc_option_db_get_option_by_name (odb, section, name); if (option == NULL) return default_value; - getter = gnc_option_getter(option); + getter = gnc_option_getter (option); if (getter == SCM_UNDEFINED) return default_value; - return scm_call_0(getter); + return scm_call_0 (getter); } /********************************************************************\ @@ -1954,33 +1905,32 @@ gnc_option_db_lookup_option(GNCOptionDB *odb, * Return: gboolean option value * \********************************************************************/ gboolean -gnc_option_db_lookup_boolean_option(GNCOptionDB *odb, - const char *section, - const char *name, - gboolean default_value) +gnc_option_db_lookup_boolean_option (GNCOptionDB *odb, + const char *section, + const char *name, + gboolean default_value) { GNCOption *option; SCM getter; SCM value; - option = gnc_option_db_get_option_by_name(odb, section, name); + option = gnc_option_db_get_option_by_name (odb, section, name); if (option == NULL) return default_value; - getter = gnc_option_getter(option); + getter = gnc_option_getter (option); if (getter == SCM_UNDEFINED) return default_value; - value = scm_call_0(getter); + value = scm_call_0 (getter); - if (scm_is_bool(value)) - return scm_is_true(value); + if (scm_is_bool (value)) + return scm_is_true (value); else return default_value; } - /********************************************************************\ * gnc_option_db_lookup_string_option * * looks up a string option. If present, returns its malloc'ed * @@ -1994,24 +1944,24 @@ gnc_option_db_lookup_boolean_option(GNCOptionDB *odb, * Return: char * option value * \********************************************************************/ char * -gnc_option_db_lookup_string_option(GNCOptionDB *odb, - const char *section, - const char *name, - const char *default_value) +gnc_option_db_lookup_string_option (GNCOptionDB *odb, + const char *section, + const char *name, + const char *default_value) { GNCOption *option; SCM getter; SCM value; - option = gnc_option_db_get_option_by_name(odb, section, name); + option = gnc_option_db_get_option_by_name (odb, section, name); if (option != NULL) { - getter = gnc_option_getter(option); + getter = gnc_option_getter (option); if (getter != SCM_UNDEFINED) { - value = scm_call_0(getter); - if (scm_is_string(value)) + value = scm_call_0 (getter); + if (scm_is_string (value)) return gnc_scm_to_utf8_string (value); } } @@ -2019,10 +1969,9 @@ gnc_option_db_lookup_string_option(GNCOptionDB *odb, if (default_value == NULL) return NULL; - return strdup(default_value); + return strdup (default_value); } - /********************************************************************\ * gnc_option_db_lookup_font_option * * looks up a font option. If present, returns its malloc'ed * @@ -2036,15 +1985,14 @@ gnc_option_db_lookup_string_option(GNCOptionDB *odb, * Return: char * option value * \********************************************************************/ char * -gnc_option_db_lookup_font_option(GNCOptionDB *odb, - const char *section, - const char *name, - const char *default_value) +gnc_option_db_lookup_font_option (GNCOptionDB *odb, + const char *section, + const char *name, + const char *default_value) { - return gnc_option_db_lookup_string_option(odb, section, name, default_value); + return gnc_option_db_lookup_string_option (odb, section, name, default_value); } - /********************************************************************\ * gnc_option_db_lookup_multichoice_option * * looks up a multichoice option. If present, returns its * @@ -2059,24 +2007,24 @@ gnc_option_db_lookup_font_option(GNCOptionDB *odb, * Return: char * option value * \********************************************************************/ char * -gnc_option_db_lookup_multichoice_option(GNCOptionDB *odb, - const char *section, - const char *name, - const char *default_value) +gnc_option_db_lookup_multichoice_option (GNCOptionDB *odb, + const char *section, + const char *name, + const char *default_value) { GNCOption *option; SCM getter; SCM value; - option = gnc_option_db_get_option_by_name(odb, section, name); + option = gnc_option_db_get_option_by_name (odb, section, name); if (option != NULL) { - getter = gnc_option_getter(option); + getter = gnc_option_getter (option); if (getter != SCM_UNDEFINED) { - value = scm_call_0(getter); - if (scm_is_symbol(value)) + value = scm_call_0 (getter); + if (scm_is_symbol (value)) return gnc_scm_symbol_to_locale_string (value); } } @@ -2084,7 +2032,7 @@ gnc_option_db_lookup_multichoice_option(GNCOptionDB *odb, if (default_value == NULL) return NULL; - return strdup(default_value); + return strdup (default_value); } /********************************************************************\ @@ -2099,32 +2047,30 @@ gnc_option_db_lookup_multichoice_option(GNCOptionDB *odb, * Return: gdouble representation of value * \********************************************************************/ gdouble -gnc_option_db_lookup_number_option(GNCOptionDB *odb, - const char *section, - const char *name, - gdouble default_value) +gnc_option_db_lookup_number_option (GNCOptionDB *odb, + const char *section, + const char *name, + gdouble default_value) { GNCOption *option; SCM getter; SCM value; - option = gnc_option_db_get_option_by_name(odb, section, name); + option = gnc_option_db_get_option_by_name (odb, section, name); if (option != NULL) { - getter = gnc_option_getter(option); + getter = gnc_option_getter (option); if (getter != SCM_UNDEFINED) { - value = scm_call_0(getter); - if (scm_is_number(value)) - return scm_to_double(value); + value = scm_call_0 (getter); + if (scm_is_number (value)) + return scm_to_double (value); } } - return default_value; } - /********************************************************************\ * gnc_option_db_lookup_color_option * * looks up a color option. If present, returns its value in the * @@ -2139,22 +2085,21 @@ gnc_option_db_lookup_number_option(GNCOptionDB *odb, * alpha - where to store the alpha value * * Return: true if option was found * \********************************************************************/ -gboolean gnc_option_db_lookup_color_option(GNCOptionDB *odb, - const char *section, - const char *name, - gdouble *red, - gdouble *green, - gdouble *blue, - gdouble *alpha) +gboolean gnc_option_db_lookup_color_option (GNCOptionDB *odb, + const char *section, + const char *name, + gdouble *red, + gdouble *green, + gdouble *blue, + gdouble *alpha) { GNCOption *option; - option = gnc_option_db_get_option_by_name(odb, section, name); + option = gnc_option_db_get_option_by_name (odb, section, name); - return gnc_option_get_color_info(option, FALSE, red, green, blue, alpha); + return gnc_option_get_color_info (option, FALSE, red, green, blue, alpha); } - /********************************************************************\ * gnc_option_db_lookup_color_option_argb * * looks up a color option. If present, returns its argb value, * @@ -2166,21 +2111,20 @@ gboolean gnc_option_db_lookup_color_option(GNCOptionDB *odb, * default_value - default value to return if problem * * Return: argb value * \********************************************************************/ -guint32 gnc_option_db_lookup_color_option_argb(GNCOptionDB *odb, - const char *section, - const char *name, - guint32 default_value) +guint32 gnc_option_db_lookup_color_option_argb (GNCOptionDB *odb, + const char *section, + const char *name, + guint32 default_value) { GNCOption *option; - option = gnc_option_db_get_option_by_name(odb, section, name); + option = gnc_option_db_get_option_by_name (odb, section, name); if (option == NULL) return default_value; - return gnc_option_get_color_argb(option); + return gnc_option_get_color_argb (option); } - /********************************************************************\ * gnc_option_db_lookup_list_option * * looks up a list option. If present, returns its value as a * @@ -2193,10 +2137,10 @@ guint32 gnc_option_db_lookup_color_option_argb(GNCOptionDB *odb, * Return: list of values * \********************************************************************/ GSList * -gnc_option_db_lookup_list_option(GNCOptionDB *odb, - const char *section, - const char *name, - GSList *default_value) +gnc_option_db_lookup_list_option (GNCOptionDB *odb, + const char *section, + const char *name, + GSList *default_value) { GNCOption *option; GSList *list = NULL; @@ -2204,41 +2148,39 @@ gnc_option_db_lookup_list_option(GNCOptionDB *odb, SCM value; SCM item; - option = gnc_option_db_get_option_by_name(odb, section, name); + option = gnc_option_db_get_option_by_name (odb, section, name); if (option == NULL) return default_value; - getter = gnc_option_getter(option); + getter = gnc_option_getter (option); if (getter == SCM_UNDEFINED) return default_value; - value = scm_call_0(getter); - while (scm_is_list(value) && !scm_is_null(value)) + value = scm_call_0 (getter); + while (scm_is_list (value) && !scm_is_null (value)) { item = SCM_CAR(value); value = SCM_CDR(value); - if (!scm_is_symbol(item)) + if (!scm_is_symbol (item)) { - gnc_free_list_option_value(list); + gnc_free_list_option_value (list); return default_value; } - list = g_slist_prepend(list, gnc_scm_symbol_to_locale_string (item)); + list = g_slist_prepend (list, gnc_scm_symbol_to_locale_string (item)); } - if (!scm_is_list(value) || !scm_is_null(value)) + if (!scm_is_list (value) || !scm_is_null (value)) { - gnc_free_list_option_value(list); + gnc_free_list_option_value (list); return default_value; } - return list; } - /********************************************************************\ * gnc_option_db_lookup_currency_option * * looks up a currency option. If present, returns its value as a * @@ -2251,42 +2193,42 @@ gnc_option_db_lookup_list_option(GNCOptionDB *odb, * Return: commodity or NULL if no commodity found * \********************************************************************/ gnc_commodity * -gnc_option_db_lookup_currency_option(GNCOptionDB *odb, - const char *section, - const char *name, - gnc_commodity *default_value) +gnc_option_db_lookup_currency_option (GNCOptionDB *odb, + const char *section, + const char *name, + gnc_commodity *default_value) { GNCOption *option; SCM getter; SCM value; - option = gnc_option_db_get_option_by_name(odb, section, name); + option = gnc_option_db_get_option_by_name (odb, section, name); if (option == NULL) return default_value; - getter = gnc_option_getter(option); + getter = gnc_option_getter (option); if (getter == SCM_UNDEFINED) return default_value; - value = scm_call_0(getter); + value = scm_call_0 (getter); return gnc_scm_to_commodity (value); } static void -free_helper(gpointer string, gpointer not_used) +free_helper (gpointer string, gpointer not_used) { - if (string) free(string); + if (string) + free (string); } void -gnc_free_list_option_value(GSList *list) +gnc_free_list_option_value (GSList *list) { - g_slist_foreach(list, free_helper, NULL); - g_slist_free(list); + g_slist_foreach (list, free_helper, NULL); + g_slist_free (list); } - /********************************************************************\ * gnc_option_db_set_option_default * * set the option to its default value * @@ -2297,18 +2239,17 @@ gnc_free_list_option_value(GSList *list) * Returns: nothing * \********************************************************************/ void -gnc_option_db_set_option_default(GNCOptionDB *odb, - const char *section, - const char *name) +gnc_option_db_set_option_default (GNCOptionDB *odb, + const char *section, + const char *name) { GNCOption *option; - option = gnc_option_db_get_option_by_name(odb, section, name); + option = gnc_option_db_get_option_by_name (odb, section, name); - gnc_option_set_default(option); + gnc_option_set_default (option); } - /********************************************************************\ * gnc_option_db_set_option * * sets the option to the given value. If successful * @@ -2321,32 +2262,31 @@ gnc_option_db_set_option_default(GNCOptionDB *odb, * Return: success indicator * \********************************************************************/ gboolean -gnc_option_db_set_option(GNCOptionDB *odb, - const char *section, - const char *name, - SCM value) +gnc_option_db_set_option (GNCOptionDB *odb, + const char *section, + const char *name, + SCM value) { GNCOption *option; SCM setter; - option = gnc_option_db_get_option_by_name(odb, section, name); + option = gnc_option_db_get_option_by_name (odb, section, name); if (option == NULL) return FALSE; - value = gnc_option_valid_value(option, value); + value = gnc_option_valid_value (option, value); if (value == SCM_UNDEFINED) return FALSE; - setter = gnc_option_setter(option); + setter = gnc_option_setter (option); if (setter == SCM_UNDEFINED) return FALSE; - scm_call_1(setter, value); + scm_call_1 (setter, value); return TRUE; } - /********************************************************************\ * gnc_option_db_set_number_option * * sets the number option to the given value. If successful * @@ -2359,30 +2299,30 @@ gnc_option_db_set_option(GNCOptionDB *odb, * Return: success indicator * \********************************************************************/ gboolean -gnc_option_db_set_number_option(GNCOptionDB *odb, - const char *section, - const char *name, - gdouble value) +gnc_option_db_set_number_option (GNCOptionDB *odb, + const char *section, + const char *name, + gdouble value) { GNCOption *option; SCM scm_value; SCM setter; - option = gnc_option_db_get_option_by_name(odb, section, name); + option = gnc_option_db_get_option_by_name (odb, section, name); if (option == NULL) return FALSE; scm_value = scm_from_double (value); - scm_value = gnc_option_valid_value(option, scm_value); + scm_value = gnc_option_valid_value (option, scm_value); if (scm_value == SCM_UNDEFINED) return FALSE; - setter = gnc_option_setter(option); + setter = gnc_option_setter (option); if (setter == SCM_UNDEFINED) return FALSE; - scm_call_1(setter, scm_value); + scm_call_1 (setter, scm_value); return TRUE; } @@ -2399,30 +2339,30 @@ gnc_option_db_set_number_option(GNCOptionDB *odb, * Return: success indicator * \********************************************************************/ gboolean -gnc_option_db_set_boolean_option(GNCOptionDB *odb, - const char *section, - const char *name, - gboolean value) +gnc_option_db_set_boolean_option (GNCOptionDB *odb, + const char *section, + const char *name, + gboolean value) { GNCOption *option; SCM scm_value; SCM setter; - option = gnc_option_db_get_option_by_name(odb, section, name); + option = gnc_option_db_get_option_by_name (odb, section, name); if (option == NULL) return FALSE; scm_value = SCM_BOOL(value); - scm_value = gnc_option_valid_value(option, scm_value); + scm_value = gnc_option_valid_value (option, scm_value); if (scm_value == SCM_UNDEFINED) return FALSE; - setter = gnc_option_setter(option); + setter = gnc_option_setter (option); if (setter == SCM_UNDEFINED) return FALSE; - scm_call_1(setter, scm_value); + scm_call_1 (setter, scm_value); return TRUE; } @@ -2439,33 +2379,33 @@ gnc_option_db_set_boolean_option(GNCOptionDB *odb, * Return: success indicator * \********************************************************************/ gboolean -gnc_option_db_set_string_option(GNCOptionDB *odb, - const char *section, - const char *name, - const char *value) +gnc_option_db_set_string_option (GNCOptionDB *odb, + const char *section, + const char *name, + const char *value) { GNCOption *option; SCM scm_value; SCM setter; - option = gnc_option_db_get_option_by_name(odb, section, name); + option = gnc_option_db_get_option_by_name (odb, section, name); if (option == NULL) return FALSE; if (value) - scm_value = scm_from_utf8_string(value); + scm_value = scm_from_utf8_string (value); else scm_value = SCM_BOOL_F; - scm_value = gnc_option_valid_value(option, scm_value); + scm_value = gnc_option_valid_value (option, scm_value); if (scm_value == SCM_UNDEFINED) return FALSE; - setter = gnc_option_setter(option); + setter = gnc_option_setter (option); if (setter == SCM_UNDEFINED) return FALSE; - scm_call_1(setter, scm_value); + scm_call_1 (setter, scm_value); return TRUE; } @@ -2478,11 +2418,11 @@ gnc_option_db_set_string_option(GNCOptionDB *odb, * Return: newly allocated subtype string or NULL * \*******************************************************************/ char * -gnc_option_date_option_get_subtype(GNCOption *option) +gnc_option_date_option_get_subtype (GNCOption *option) { - initialize_getters(); + initialize_getters (); - return gnc_scm_call_1_symbol_to_string(getters.date_option_subtype, option->guile_option); + return gnc_scm_call_1_symbol_to_string (getters.date_option_subtype, option->guile_option); } /*******************************************************************\ @@ -2495,7 +2435,7 @@ gnc_option_date_option_get_subtype(GNCOption *option) char * gnc_date_option_value_get_type (SCM option_value) { - initialize_getters(); + initialize_getters (); return gnc_scm_call_1_symbol_to_string (getters.date_option_value_type, option_value); } @@ -2511,7 +2451,7 @@ time64 gnc_date_option_value_get_absolute (SCM option_value) { SCM value; - initialize_getters(); + initialize_getters (); value = scm_call_1 (getters.date_option_value_absolute, option_value); return scm_to_int64 (value); } @@ -2526,7 +2466,7 @@ gnc_date_option_value_get_absolute (SCM option_value) SCM gnc_date_option_value_get_relative (SCM option_value) { - initialize_getters(); + initialize_getters (); return scm_call_1 (getters.date_option_value_relative, option_value); } @@ -2541,7 +2481,7 @@ gnc_date_option_value_get_relative (SCM option_value) char * gnc_plot_size_option_value_get_type (SCM option_value) { - initialize_getters(); + initialize_getters (); return gnc_scm_call_1_symbol_to_string (getters.plot_size_option_value_type, option_value); } @@ -2558,11 +2498,11 @@ gnc_plot_size_option_value_get_value (SCM option_value) { SCM value; - initialize_getters(); + initialize_getters (); value = scm_call_1 (getters.plot_size_option_value, option_value); - if (scm_is_number(value)) + if (scm_is_number (value)) return scm_to_double (value); else return 1.0; @@ -2578,16 +2518,15 @@ gnc_plot_size_option_value_get_value (SCM option_value) * Returns: malloc'ed char * or NULL * \********************************************************************/ char * -gnc_currency_accounting_option_currency_documentation(GNCOption *option) +gnc_currency_accounting_option_currency_documentation (GNCOption *option) { - initialize_getters(); + initialize_getters (); return gnc_scm_call_1_to_string (getters.currency_accounting_option_currency_doc_string, option->guile_option); } - /********************************************************************\ * gnc_currency_accounting_option_get_default_currency * * returns the SCM value for the currency-accounting option * @@ -2597,16 +2536,15 @@ gnc_currency_accounting_option_currency_documentation(GNCOption *option) * Returns: SCM value * \********************************************************************/ SCM -gnc_currency_accounting_option_get_default_currency(GNCOption *option) +gnc_currency_accounting_option_get_default_currency (GNCOption *option) { - initialize_getters(); + initialize_getters (); return scm_call_1 (getters.currency_accounting_option_default_currency, option->guile_option); } - /********************************************************************\ * gnc_currency_accounting_option_policy_documentation * * returns the malloc'ed documentation string for policy * @@ -2617,16 +2555,15 @@ gnc_currency_accounting_option_get_default_currency(GNCOption *option) * Returns: malloc'ed char * or NULL * \********************************************************************/ char * -gnc_currency_accounting_option_policy_documentation(GNCOption *option) +gnc_currency_accounting_option_policy_documentation (GNCOption *option) { - initialize_getters(); + initialize_getters (); return gnc_scm_call_1_to_string (getters.currency_accounting_option_policy_doc_string, option->guile_option); } - /********************************************************************\ * gnc_currency_accounting_option_get_default_policy * * returns the SCM value for the currency-accounting option * @@ -2636,16 +2573,15 @@ gnc_currency_accounting_option_policy_documentation(GNCOption *option) * Returns: SCM value * \********************************************************************/ SCM -gnc_currency_accounting_option_get_default_policy(GNCOption *option) +gnc_currency_accounting_option_get_default_policy (GNCOption *option) { - initialize_getters(); + initialize_getters (); return scm_call_1 (getters.currency_accounting_option_default_policy, option->guile_option); } - /********************************************************************\ * gnc_currency_accounting_option_gain_loss_account_documentation * * returns the malloc'ed documentation string for account * @@ -2656,16 +2592,15 @@ gnc_currency_accounting_option_get_default_policy(GNCOption *option) * Returns: malloc'ed char * or NULL * \********************************************************************/ char * -gnc_currency_accounting_option_gain_loss_account_documentation(GNCOption *option) +gnc_currency_accounting_option_gain_loss_account_documentation (GNCOption *option) { - initialize_getters(); + initialize_getters (); return gnc_scm_call_1_to_string (getters.currency_accounting_option_gain_loss_account_doc_string, option->guile_option); } - /*******************************************************************\ * gnc_currency_accounting_option_value_get_method * * get the currency accounting method of the option as a symbol * @@ -2676,9 +2611,10 @@ gnc_currency_accounting_option_gain_loss_account_documentation(GNCOption *option SCM gnc_currency_accounting_option_value_get_method (SCM option_value) { - initialize_getters(); + initialize_getters (); - return scm_call_1 (getters.currency_accounting_option_method, option_value); + return scm_call_1 (getters.currency_accounting_option_method, + option_value); } /*******************************************************************\ @@ -2692,9 +2628,10 @@ gnc_currency_accounting_option_value_get_method (SCM option_value) SCM gnc_currency_accounting_option_value_get_book_currency (SCM option_value) { - initialize_getters(); + initialize_getters (); - return scm_call_1 (getters.currency_accounting_option_book_currency, option_value); + return scm_call_1 (getters.currency_accounting_option_book_currency, + option_value); } /*******************************************************************\ @@ -2708,7 +2645,7 @@ gnc_currency_accounting_option_value_get_book_currency (SCM option_value) SCM gnc_currency_accounting_option_value_get_default_policy (SCM option_value) { - initialize_getters(); + initialize_getters (); return scm_call_1 (getters.currency_accounting_option_selected_default_policy, @@ -2727,7 +2664,7 @@ gnc_currency_accounting_option_value_get_default_policy (SCM option_value) SCM gnc_currency_accounting_option_value_get_default_account (SCM option_value) { - initialize_getters(); + initialize_getters (); return scm_call_1 (getters.currency_accounting_option_selected_default_gain_loss_account, @@ -2740,12 +2677,10 @@ find_option_db_with_selectable_pred (gpointer key, gpointer value, gpointer data SCM guile_options = data; GNCOptionDB *odb = value; - if (odb && (odb->guile_options == guile_options) - && odb->set_selectable ) + if (odb && (odb->guile_options == guile_options) && odb->set_selectable) return TRUE; return FALSE; - } static GNCOptionDB * @@ -2766,10 +2701,10 @@ find_option_db_with_selectable (SCM guile_options) * Return: SCM value * \*******************************************************************/ void -gnc_option_db_set_option_selectable_by_name(SCM guile_options, - const char *section, - const char *name, - gboolean selectable) +gnc_option_db_set_option_selectable_by_name (SCM guile_options, + const char *section, + const char *name, + gboolean selectable) { GNCOptionDB *odb; GNCOption *option; @@ -2778,7 +2713,7 @@ gnc_option_db_set_option_selectable_by_name(SCM guile_options, if (!odb) return; - option = gnc_option_db_get_option_by_name(odb, section, name); + option = gnc_option_db_get_option_by_name (odb, section, name); if (!option) return; @@ -2789,31 +2724,32 @@ gnc_option_db_set_option_selectable_by_name(SCM guile_options, * format(symbol), month(symbol), include-years(bool), custom-string(string) */ -gboolean gnc_dateformat_option_value_parse(SCM value, QofDateFormat *format, - GNCDateMonthFormat *months, - gboolean *years, char **custom) +gboolean gnc_dateformat_option_value_parse (SCM value, + QofDateFormat *format, + GNCDateMonthFormat *months, + gboolean *years, + char **custom) { SCM val; gchar *str; - if (!scm_is_list(value) || scm_is_null(value)) + if (!scm_is_list (value) || scm_is_null (value)) return TRUE; do { - /* Parse the format */ val = SCM_CAR(value); value = SCM_CDR(value); - if (!scm_is_symbol(val)) + if (!scm_is_symbol (val)) break; - str = gnc_scm_symbol_to_locale_string (val); + str = gnc_scm_symbol_to_locale_string (val); if (!str) break; if (format) { - if (gnc_date_string_to_dateformat(str, format)) + if (gnc_date_string_to_dateformat (str, format)) { g_free (str); break; @@ -2824,7 +2760,7 @@ gboolean gnc_dateformat_option_value_parse(SCM value, QofDateFormat *format, /* parse the months */ val = SCM_CAR(value); value = SCM_CDR(value); - if (!scm_is_symbol(val)) + if (!scm_is_symbol (val)) break; str = gnc_scm_symbol_to_locale_string (val); if (!str) @@ -2832,7 +2768,7 @@ gboolean gnc_dateformat_option_value_parse(SCM value, QofDateFormat *format, if (months) { - if (gnc_date_string_to_monthformat(str, months)) + if (gnc_date_string_to_monthformat (str, months)) { g_free (str); break; @@ -2843,33 +2779,34 @@ gboolean gnc_dateformat_option_value_parse(SCM value, QofDateFormat *format, /* parse the years */ val = SCM_CAR(value); value = SCM_CDR(value); - if (!scm_is_bool(val)) + if (!scm_is_bool (val)) break; if (years) - *years = scm_is_true(val); + *years = scm_is_true (val); /* parse the custom */ val = SCM_CAR(value); value = SCM_CDR(value); - if (!scm_is_string(val)) + if (!scm_is_string (val)) break; - if (!scm_is_null(value)) + if (!scm_is_null (value)) break; if (custom) *custom = gnc_scm_to_utf8_string (val); return FALSE; - } while (FALSE); return TRUE; } -SCM gnc_dateformat_option_set_value(QofDateFormat format, GNCDateMonthFormat months, - gboolean years, const char *custom) +SCM gnc_dateformat_option_set_value (QofDateFormat format, + GNCDateMonthFormat months, + gboolean years, + const char *custom) { SCM value = SCM_EOL; SCM val; @@ -2877,27 +2814,27 @@ SCM gnc_dateformat_option_set_value(QofDateFormat format, GNCDateMonthFormat mon /* build the list in reverse order */ if (custom) - val = scm_from_utf8_string(custom); + val = scm_from_utf8_string (custom); else val = SCM_BOOL_F; - value = scm_cons(val, value); + value = scm_cons (val, value); val = SCM_BOOL(years); - value = scm_cons(val, value); + value = scm_cons (val, value); - str = gnc_date_monthformat_to_string(months); + str = gnc_date_monthformat_to_string (months); if (str) - val = scm_from_locale_symbol(str); + val = scm_from_locale_symbol (str); else val = SCM_BOOL_F; - value = scm_cons(val, value); + value = scm_cons (val, value); - str = gnc_date_dateformat_to_string(format); + str = gnc_date_dateformat_to_string (format); if (str) - val = scm_from_locale_symbol(str); + val = scm_from_locale_symbol (str); else val = SCM_BOOL_F; - value = scm_cons(val, value); + value = scm_cons (val, value); return value; } @@ -2908,12 +2845,12 @@ SCM gnc_dateformat_option_set_value(QofDateFormat format, GNCDateMonthFormat mon * its defined kvp options. */ void -gnc_register_kvp_option_generator(QofIdType id_type, SCM generator) +gnc_register_kvp_option_generator (QofIdType id_type, SCM generator) { GList *list; init_table(); - list = g_hash_table_lookup(kvp_registry, id_type); - list = g_list_prepend(list, generator); - g_hash_table_insert(kvp_registry, (gpointer) id_type, list); - scm_gc_protect_object(generator); + list = g_hash_table_lookup (kvp_registry, id_type); + list = g_list_prepend (list, generator); + g_hash_table_insert (kvp_registry, (gpointer) id_type, list); + scm_gc_protect_object (generator); } diff --git a/libgnucash/app-utils/option-util.h b/libgnucash/app-utils/option-util.h index ee963ab5fb..1ea0d5ab77 100644 --- a/libgnucash/app-utils/option-util.h +++ b/libgnucash/app-utils/option-util.h @@ -60,186 +60,185 @@ gpointer gnc_option_get_widget (GNCOption *option); * here. */ void gnc_option_set_widget (GNCOption *option, gpointer widget); -SCM gnc_option_get_ui_value(GNCOption *option); -void gnc_option_set_ui_value(GNCOption *option, gboolean use_default); +SCM gnc_option_get_ui_value (GNCOption *option); +void gnc_option_set_ui_value (GNCOption *option, gboolean use_default); void gnc_option_set_selectable (GNCOption *option, gboolean selectable); -GNCOptionDB * gnc_option_db_new(SCM guile_options); -void gnc_option_db_destroy(GNCOptionDB *odb); +GNCOptionDB * gnc_option_db_new (SCM guile_options); +void gnc_option_db_destroy (GNCOptionDB *odb); /* Create an option DB for a particular type, and save/load from a kvp. * This assumes the gnc:*kvp-option-path* location for the options * in the kvp. */ -GNCOptionDB * gnc_option_db_new_for_type(QofIdType id_type); -void gnc_option_db_load(GNCOptionDB* odb, QofBook *book); -void gnc_option_db_save(GNCOptionDB* odb, QofBook *book, gboolean clear_all); +GNCOptionDB * gnc_option_db_new_for_type (QofIdType id_type); +void gnc_option_db_load (GNCOptionDB* odb, QofBook *book); +void gnc_option_db_save (GNCOptionDB* odb, QofBook *book, gboolean clear_all); -void gnc_register_kvp_option_generator(QofIdType id_type, SCM generator); +void gnc_register_kvp_option_generator (QofIdType id_type, SCM generator); void gnc_option_db_set_ui_callbacks (GNCOptionDB *odb, GNCOptionGetUIValue get_ui_value, GNCOptionSetUIValue set_ui_value, GNCOptionSetSelectable set_selectable); -SCM gnc_option_db_register_change_callback(GNCOptionDB *odb, - GNCOptionChangeCallback callback, - gpointer data, - const char *section, - const char *name); +SCM gnc_option_db_register_change_callback (GNCOptionDB *odb, + GNCOptionChangeCallback callback, + gpointer data, + const char *section, + const char *name); -void gnc_option_db_unregister_change_callback_id(GNCOptionDB *odb, - SCM callback_id); +void gnc_option_db_unregister_change_callback_id (GNCOptionDB *odb, + SCM callback_id); -char * gnc_option_section(GNCOption *option); -char * gnc_option_name(GNCOption *option); -char * gnc_option_type(GNCOption *option); -char * gnc_option_sort_tag(GNCOption *option); -char * gnc_option_documentation(GNCOption *option); -SCM gnc_option_getter(GNCOption *option); -SCM gnc_option_setter(GNCOption *option); -SCM gnc_option_default_getter(GNCOption *option); -SCM gnc_option_value_validator(GNCOption *option); -SCM gnc_option_widget_changed_proc_getter(GNCOption *option); -SCM gnc_option_get_option_data(GNCOption *option); +char * gnc_option_section (GNCOption *option); +char * gnc_option_name (GNCOption *option); +char * gnc_option_type (GNCOption *option); +char * gnc_option_sort_tag (GNCOption *option); +char * gnc_option_documentation (GNCOption *option); +SCM gnc_option_getter (GNCOption *option); +SCM gnc_option_setter (GNCOption *option); +SCM gnc_option_default_getter (GNCOption *option); +SCM gnc_option_value_validator (GNCOption *option); +SCM gnc_option_widget_changed_proc_getter (GNCOption *option); +SCM gnc_option_get_option_data (GNCOption *option); -int gnc_option_num_permissible_values(GNCOption *option); -int gnc_option_permissible_value_index(GNCOption *option, SCM value); -SCM gnc_option_permissible_value(GNCOption *option, int index); -char * gnc_option_permissible_value_name(GNCOption *option, int index); -char * gnc_option_permissible_value_description(GNCOption *option, int index); +int gnc_option_num_permissible_values (GNCOption *option); +int gnc_option_permissible_value_index (GNCOption *option, SCM value); +SCM gnc_option_permissible_value (GNCOption *option, int index); +char * gnc_option_permissible_value_name (GNCOption *option, int index); +char * gnc_option_permissible_value_description (GNCOption *option, int index); -gboolean gnc_option_show_time(GNCOption *option); +gboolean gnc_option_show_time (GNCOption *option); -gboolean gnc_option_multiple_selection(GNCOption *option); -GList * gnc_option_get_account_type_list(GNCOption *option); +gboolean gnc_option_multiple_selection (GNCOption *option); +GList * gnc_option_get_account_type_list (GNCOption *option); -gboolean gnc_option_get_range_info(GNCOption *option, - double *lower_bound, - double *upper_bound, - int *num_decimals, - double *step_size); +gboolean gnc_option_get_range_info (GNCOption *option, + double *lower_bound, + double *upper_bound, + int *num_decimals, + double *step_size); -gdouble gnc_option_color_range(GNCOption *option); -gdouble gnc_option_use_alpha(GNCOption *option); -guint32 gnc_option_get_color_argb(GNCOption *option); -gboolean gnc_option_get_color_info(GNCOption *option, - gboolean use_default, - gdouble *red, - gdouble *green, - gdouble *blue, - gdouble *alpha); +gdouble gnc_option_color_range (GNCOption *option); +gdouble gnc_option_use_alpha (GNCOption *option); +guint32 gnc_option_get_color_argb (GNCOption *option); +gboolean gnc_option_get_color_info (GNCOption *option, + gboolean use_default, + gdouble *red, + gdouble *green, + gdouble *blue, + gdouble *alpha); void gnc_option_call_option_widget_changed_proc (GNCOption *option, gboolean reset_changed); -void gnc_option_set_default(GNCOption *option); +void gnc_option_set_default (GNCOption *option); -guint gnc_option_db_num_sections(GNCOptionDB *odb); +guint gnc_option_db_num_sections (GNCOptionDB *odb); -const char * gnc_option_section_name(GNCOptionSection *section); -guint gnc_option_section_num_options(GNCOptionSection *section); +const char * gnc_option_section_name (GNCOptionSection *section); +guint gnc_option_section_num_options (GNCOptionSection *section); -GNCOptionSection * gnc_option_db_get_section(GNCOptionDB *odb, gint i); +GNCOptionSection * gnc_option_db_get_section (GNCOptionDB *odb, gint i); -GNCOption * gnc_get_option_section_option(GNCOptionSection *section, int i); +GNCOption * gnc_get_option_section_option (GNCOptionSection *section, int i); -GNCOption * gnc_option_db_get_option_by_name(GNCOptionDB *odb, - const char *section_name, - const char *name); +GNCOption * gnc_option_db_get_option_by_name (GNCOptionDB *odb, + const char *section_name, + const char *name); -GNCOption * gnc_option_db_get_option_by_SCM(GNCOptionDB *odb, - SCM guile_option); +GNCOption * gnc_option_db_get_option_by_SCM (GNCOptionDB *odb, + SCM guile_option); -gboolean gnc_option_db_dirty(GNCOptionDB *odb); -void gnc_option_db_clean(GNCOptionDB *odb); +gboolean gnc_option_db_dirty (GNCOptionDB *odb); +void gnc_option_db_clean (GNCOptionDB *odb); -gboolean gnc_option_db_get_changed(GNCOptionDB *odb); -GList* gnc_option_db_commit(GNCOptionDB *odb); +gboolean gnc_option_db_get_changed (GNCOptionDB *odb); +GList* gnc_option_db_commit (GNCOptionDB *odb); -char * gnc_option_db_get_default_section(GNCOptionDB *odb); +char * gnc_option_db_get_default_section (GNCOptionDB *odb); -SCM gnc_option_db_lookup_option(GNCOptionDB *odb, - const char *section, - const char *name, - SCM default_value); +SCM gnc_option_db_lookup_option (GNCOptionDB *odb, + const char *section, + const char *name, + SCM default_value); -gboolean gnc_option_db_lookup_boolean_option(GNCOptionDB *odb, - const char *section, - const char *name, - gboolean default_value); +gboolean gnc_option_db_lookup_boolean_option (GNCOptionDB *odb, + const char *section, + const char *name, + gboolean default_value); -char * gnc_option_db_lookup_string_option(GNCOptionDB *odb, - const char *section, - const char *name, - const char *default_value); +char * gnc_option_db_lookup_string_option (GNCOptionDB *odb, + const char *section, + const char *name, + const char *default_value); -char * gnc_option_db_lookup_font_option(GNCOptionDB *odb, - const char *section, - const char *name, - const char *default_value); +char * gnc_option_db_lookup_font_option (GNCOptionDB *odb, + const char *section, + const char *name, + const char *default_value); -char * gnc_option_db_lookup_multichoice_option(GNCOptionDB *odb, - const char *section, - const char *name, - const char *default_value); +char * gnc_option_db_lookup_multichoice_option (GNCOptionDB *odb, + const char *section, + const char *name, + const char *default_value); -gdouble gnc_option_db_lookup_number_option(GNCOptionDB *odb, - const char *section, - const char *name, - gdouble default_value); +gdouble gnc_option_db_lookup_number_option (GNCOptionDB *odb, + const char *section, + const char *name, + gdouble default_value); -gboolean gnc_option_db_lookup_color_option(GNCOptionDB *odb, - const char *section, - const char *name, - gdouble *red, - gdouble *green, - gdouble *blue, - gdouble *alpha); +gboolean gnc_option_db_lookup_color_option (GNCOptionDB *odb, + const char *section, + const char *name, + gdouble *red, + gdouble *green, + gdouble *blue, + gdouble *alpha); -guint32 gnc_option_db_lookup_color_option_argb(GNCOptionDB *odb, - const char *section, - const char *name, - guint32 default_value); +guint32 gnc_option_db_lookup_color_option_argb (GNCOptionDB *odb, + const char *section, + const char *name, + guint32 default_value); -GSList * gnc_option_db_lookup_list_option(GNCOptionDB *odb, - const char *section, - const char *name, - GSList *default_value); +GSList * gnc_option_db_lookup_list_option (GNCOptionDB *odb, + const char *section, + const char *name, + GSList *default_value); -void gnc_free_list_option_value(GSList *list); +void gnc_free_list_option_value (GSList *list); -gnc_commodity * -gnc_option_db_lookup_currency_option(GNCOptionDB *odb, - const char *section, - const char *name, - gnc_commodity *default_value); +gnc_commodity * gnc_option_db_lookup_currency_option (GNCOptionDB *odb, + const char *section, + const char *name, + gnc_commodity *default_value); -void gnc_option_db_set_option_default(GNCOptionDB *odb, - const char *section, - const char *name); +void gnc_option_db_set_option_default (GNCOptionDB *odb, + const char *section, + const char *name); -gboolean gnc_option_db_set_option(GNCOptionDB *odb, - const char *section, - const char *name, - SCM value); +gboolean gnc_option_db_set_option (GNCOptionDB *odb, + const char *section, + const char *name, + SCM value); -gboolean gnc_option_db_set_number_option(GNCOptionDB *odb, - const char *section, - const char *name, - gdouble value); +gboolean gnc_option_db_set_number_option (GNCOptionDB *odb, + const char *section, + const char *name, + gdouble value); -gboolean gnc_option_db_set_boolean_option(GNCOptionDB *odb, - const char *section, - const char *name, - gboolean value); +gboolean gnc_option_db_set_boolean_option (GNCOptionDB *odb, + const char *section, + const char *name, + gboolean value); -gboolean gnc_option_db_set_string_option(GNCOptionDB *odb, - const char *section, - const char *name, - const char *value); +gboolean gnc_option_db_set_string_option (GNCOptionDB *odb, + const char *section, + const char *name, + const char *value); -char * gnc_option_date_option_get_subtype(GNCOption *option); +char * gnc_option_date_option_get_subtype (GNCOption *option); char * gnc_date_option_value_get_type (SCM option_value); time64 gnc_date_option_value_get_absolute (SCM option_value); @@ -248,34 +247,37 @@ SCM gnc_date_option_value_get_relative (SCM option_value); char * gnc_plot_size_option_value_get_type (SCM option_value); gdouble gnc_plot_size_option_value_get_value (SCM option_value); -char * gnc_currency_accounting_option_currency_documentation(GNCOption *option); -SCM gnc_currency_accounting_option_get_default_currency(GNCOption *option); -char * gnc_currency_accounting_option_policy_documentation(GNCOption *option); -SCM gnc_currency_accounting_option_get_default_policy(GNCOption *option); -char * gnc_currency_accounting_option_gain_loss_account_documentation(GNCOption *option); +char * gnc_currency_accounting_option_currency_documentation (GNCOption *option); +SCM gnc_currency_accounting_option_get_default_currency (GNCOption *option); +char * gnc_currency_accounting_option_policy_documentation (GNCOption *option); +SCM gnc_currency_accounting_option_get_default_policy (GNCOption *option); +char * gnc_currency_accounting_option_gain_loss_account_documentation (GNCOption *option); SCM gnc_currency_accounting_option_value_get_method (SCM option_value); SCM gnc_currency_accounting_option_value_get_book_currency (SCM option_value); SCM gnc_currency_accounting_option_value_get_default_policy (SCM option_value); SCM gnc_currency_accounting_option_value_get_default_account (SCM option_value); -void gnc_option_db_set_option_selectable_by_name(SCM guile_options, - const char *section, - const char *name, - gboolean selectable); +void gnc_option_db_set_option_selectable_by_name (SCM guile_options, + const char *section, + const char *name, + gboolean selectable); -gboolean gnc_dateformat_option_value_parse(SCM value, QofDateFormat *format, - GNCDateMonthFormat *months, - gboolean *years, char **custom); -SCM gnc_dateformat_option_set_value(QofDateFormat format, GNCDateMonthFormat months, - gboolean years, const char *custom); +gboolean gnc_dateformat_option_value_parse (SCM value, + QofDateFormat *format, + GNCDateMonthFormat *months, + gboolean *years, char **custom); +SCM gnc_dateformat_option_set_value (QofDateFormat format, + GNCDateMonthFormat months, + gboolean years, + const char *custom); -void gnc_option_db_register_option(GNCOptionDBHandle handle, - SCM guile_option); +void gnc_option_db_register_option (GNCOptionDBHandle handle, + SCM guile_option); /* private */ -void gncp_option_invoke_callback(GNCOptionChangeCallback callback, - gpointer data); +void gncp_option_invoke_callback (GNCOptionChangeCallback callback, + gpointer data); /* Reset all the widgets in one section to their default values */ void gnc_option_db_section_reset_widgets (GNCOptionSection *section); From efb9226e4aa4cc783ec0d6440ca09356d3d91801 Mon Sep 17 00:00:00 2001 From: Giuseppe Foti Date: Thu, 22 Oct 2020 09:14:25 +0200 Subject: [PATCH 045/167] L10N:it: Updated Italian translation; 5528 translated messagges. --- po/it.po | 576 ++++++++++++------------------------------------------- 1 file changed, 119 insertions(+), 457 deletions(-) diff --git a/po/it.po b/po/it.po index 349a754b2b..15fd752bf4 100644 --- a/po/it.po +++ b/po/it.po @@ -1,10 +1,9 @@ # Italian translation of Gnucash. -# Copyright (C) 2020 THE Gnucash'S COPYRIGHT HOLDER +# Copyright (C) 2020 by the GnuCash developers and the translators below. # This file is distributed under the same license as the Gnucash package. -# <>, 2020. # Giuseppe Foti , 2020; -# Cristian Marchi, 2008, 2009, 2010; -# Simone Zinanni ,2008; +# Cristian Marchi , 2008, 2009, 2010; +# Simone Zinanni , 2008; # Lorenzo Cappelletti , 2003-2005. # Lorenzo Cappelletti , 2002 2003; # Alessandro Seveso , 2000; @@ -51,11 +50,11 @@ # msgid "" msgstr "" -"Project-Id-Version: Gnucash 4.0\n" +"Project-Id-Version: Gnucash 4.2\n" "Report-Msgid-Bugs-To: https://bugs.gnucash.org/enter_bug.cgi?" "product=GnuCash&component=Translations\n" -"POT-Creation-Date: 2020-10-14 01:49+0200\n" -"PO-Revision-Date: 2020-08-15 19:28+0200\n" +"POT-Creation-Date: 2020-10-22 07:30+0200\n" +"PO-Revision-Date: 2020-10-22 07:39+0200\n" "Last-Translator: Giuseppe Foti \n" "Language-Team: Italian \n" "Language: it\n" @@ -1452,7 +1451,7 @@ msgstr "Eliminare la commodity?" #: gnucash/gtkbuilder/gnc-plugin-page-register.glade:934 #: gnucash/gtkbuilder/gnc-plugin-page-register.glade:1144 #: gnucash/gtkbuilder/gnc-tree-view-owner.glade:24 -#: gnucash/gtkbuilder/window-autoclear.glade:22 +#: gnucash/gtkbuilder/window-autoclear.glade:25 #: gnucash/gtkbuilder/window-reconcile.glade:21 #: gnucash/html/gnc-html-webkit1.c:1197 #: gnucash/import-export/aqb/dialog-ab.glade:302 @@ -1651,10 +1650,8 @@ msgid "Enter URL like http://www.gnucash.org:" msgstr "Inserisci una URL come https://www.gnucash.org:" #: gnucash/gnome/dialog-doclink.c:205 -#, fuzzy -#| msgid "Existing Association is" msgid "Existing Document Link is" -msgstr "L'associazione esistente è" +msgstr "L'attuale associazione ad un documento è" #: gnucash/gnome/dialog-doclink.c:461 gnucash/gnome/dialog-doclink.c:506 msgid "File Found" @@ -1687,7 +1684,7 @@ msgstr "Il file di input non può essere modificato." #: gnucash/gnome/gnc-plugin-page-invoice.c:1361 #: gnucash/gnome/gnc-plugin-page-register.c:631 msgid "Manage Document Link" -msgstr "" +msgstr "Gestisci il collegamento al documento" #: gnucash/gnome/dialog-doclink.c:690 msgid "Transaction can not be modified." @@ -1700,10 +1697,8 @@ msgstr "Non definito" #. Translators: This is the label of a dialog box that lists all of the #. transaction that have files or URIs linked with them. #: gnucash/gnome/dialog-doclink.c:1010 -#, fuzzy -#| msgid "Transaction Details" msgid "Transaction Document Links" -msgstr "Dettagli della transazione" +msgstr "Collegamenti ai documenti della transazione" #: gnucash/gnome/dialog-doclink.c:1013 #: gnucash/gnome/dialog-find-transactions2.c:157 @@ -1748,26 +1743,21 @@ msgid "Description" msgstr "Descrizione" #: gnucash/gnome/dialog-doclink.c:1024 -#, fuzzy -#| msgid "" -#| " To jump to the Business Item, double click on the entry in the " -#| "id\n" -#| " column, Association column to open the Association or Available to update" msgid "" "Double click on the entry in the Id column to jump to the Business Item.\n" "Double click on the entry in the Link column to open the Linked Document.\n" "Double click on the entry in the Available column to modify the document " "link." msgstr "" -" Per passare all'elemento, fai doppio clic sulla colonna id,\n" -"sulla colonna Associazione per aprire l'Associazione o su Disponibile per " -"aggiornare" +"Doppio click sull'elemento nella colonna \"Id\" per passare all'elemento.\n" +"Doppio click sull'elemento nella colonna \"Documento collegato\" per aprire " +"il documento collegato.\n" +"Doppio click sull'elemento nella colonna \"Disponibile\" per modificare il " +"collegamento al documento." #: gnucash/gnome/dialog-doclink.c:1033 -#, fuzzy -#| msgid "Business Associations" msgid "Business Document Links" -msgstr "Documenti associati" +msgstr "Documenti collegati" #: gnucash/gnome/dialog-employee.c:199 msgid "You must enter a username." @@ -2367,10 +2357,8 @@ msgid "View Expense Voucher" msgstr "Visualizza nota spese" #: gnucash/gnome/dialog-invoice.c:2471 -#, fuzzy -#| msgid "No Linked Account" msgid "Open Linked Document:" -msgstr "Nessun conto collegato" +msgstr "Apri il documento collegato:" #: gnucash/gnome/dialog-invoice.c:2585 gnucash/gnome/dialog-invoice.c:2810 msgid "Bill Information" @@ -3651,16 +3639,12 @@ msgid "View and Delete Bayesian and Non Bayesian information" msgstr "Vedi e cancella informazioni Bayesiane e Non Bayesiane" #: gnucash/gnome/gnc-plugin-basic-commands.c:216 -#, fuzzy -#| msgid "Transaction amount" msgid "_Transaction Linked Documents" -msgstr "Importo della transazione" +msgstr "_Collegamenti ai documenti della transazione" #: gnucash/gnome/gnc-plugin-basic-commands.c:217 -#, fuzzy -#| msgid "View all Transaction Associations" msgid "View all Transaction Linked Documents" -msgstr "Visualizza tutte le associazioni della transazione" +msgstr "Visualizza tutti i documenti commerciali collegati alla transazione" #: gnucash/gnome/gnc-plugin-basic-commands.c:224 msgid "_Tips Of The Day" @@ -3793,7 +3777,7 @@ msgstr "Selezionare un bilancio di previsione" #: gnucash/gtkbuilder/gnc-plugin-page-register.glade:949 #: gnucash/gtkbuilder/gnc-plugin-page-register.glade:1159 #: gnucash/gtkbuilder/gnc-tree-view-owner.glade:39 -#: gnucash/gtkbuilder/window-autoclear.glade:38 +#: gnucash/gtkbuilder/window-autoclear.glade:41 #: gnucash/gtkbuilder/window-reconcile.glade:36 #: gnucash/import-export/aqb/dialog-ab.glade:317 #: gnucash/import-export/aqb/dialog-ab.glade:595 @@ -3988,13 +3972,11 @@ msgstr "Apre la finestra per la ricerca di una nota spese" #: gnucash/gnome/gnc-plugin-business.c:278 msgid "Business Linked Documents" -msgstr "" +msgstr "Documenti commerciali collegati" #: gnucash/gnome/gnc-plugin-business.c:279 -#, fuzzy -#| msgid "View all Business Associations" msgid "View all Linked Business Documents" -msgstr "Visualizza tutte le associazioni dei documenti commerciali" +msgstr "Visualizza tutti i documenti commerciali collegati" #: gnucash/gnome/gnc-plugin-business.c:283 msgid "Sales _Tax Table" @@ -4346,7 +4328,7 @@ msgstr "Elimina" #: gnucash/gnome/gnc-plugin-page-account-tree.c:440 #: gnucash/gnome/gnc-plugin-page-register.c:1934 msgid "'Check & Repair' is currently running, do you want to abort it?" -msgstr "" +msgstr "'Controlla e Ripara' è in esecuzione, vuoi interrompere l'operazione?" #: gnucash/gnome/gnc-plugin-page-account-tree.c:498 #: gnucash/gnome/gnc-plugin-page-account-tree.c:504 @@ -4754,7 +4736,7 @@ msgstr "Registra _pagamento documento di vendita" #: gnucash/gnome/gnc-plugin-page-invoice.c:366 #: gnucash/gnome/gnc-plugin-page-register.c:300 msgid "_Manage Document Link..." -msgstr "" +msgstr "_Gestisci il collegamento al documento..." #. Translators: This is a menu item that opens an external file or URI that may #. be linked to the current bill, invoice, transaction, or voucher using @@ -4764,10 +4746,8 @@ msgstr "" #: gnucash/gnome/gnc-plugin-page-invoice.c:346 #: gnucash/gnome/gnc-plugin-page-invoice.c:367 #: gnucash/gnome/gnc-plugin-page-register.c:304 -#, fuzzy -#| msgid "No Linked Account" msgid "_Open Linked Document" -msgstr "Nessun conto collegato" +msgstr "_Apri il documento collegato" #: gnucash/gnome/gnc-plugin-page-invoice.c:310 msgid "_Use as Default Layout for Customer Documents" @@ -4925,10 +4905,8 @@ msgstr "Apri un resoconto per l'intestatario di questo documento di vendita" #: gnucash/gnome/gnc-plugin-page-invoice.c:425 #: gnucash/gnome/gnc-plugin-page-invoice.c:446 #: gnucash/gnome/gnc-plugin-page-register.c:632 -#, fuzzy -#| msgid "No Linked Account" msgid "Open Linked Document" -msgstr "Nessun conto collegato" +msgstr "Apri il documento collegato" #: gnucash/gnome/gnc-plugin-page-invoice.c:388 msgid "" @@ -5090,7 +5068,7 @@ msgstr "Apri un resoconto sull'intestatario di questa nota di credito" #: gnucash/gnome/gnc-plugin-page-invoice.c:445 msgid "Manage Document Link..." -msgstr "" +msgstr "Gestisci il collegamento al documento..." #: gnucash/gnome/gnc-plugin-page-invoice.c:452 #: gnucash/gnome/gnc-plugin-page-register2.c:498 @@ -5526,18 +5504,16 @@ msgstr "Modifica il tasso di cambio per la transazione corrente" #. with focus on the current transaction's entry in that register. #: gnucash/gnome/gnc-plugin-page-register2.c:387 #: gnucash/gnome/gnc-plugin-page-register.c:513 -#, fuzzy -#| msgid "Display the other account code?" msgid "_Jump to the other account" -msgstr "Visualizza il codice dell'altro conto?" +msgstr "_Visualizza il primo conto della contropartita" #: gnucash/gnome/gnc-plugin-page-register2.c:388 #: gnucash/gnome/gnc-plugin-page-register.c:514 -#, fuzzy -#| msgid "Open a register report for the selected Transaction" msgid "" "Open a new register tab for the other account with focus on this transaction." -msgstr "Apri un resoconto del registro per la transazione selezionata" +msgstr "" +"Apri una nuova etichetta del registro per l'altro conto con il focus su " +"questa transazione." #: gnucash/gnome/gnc-plugin-page-register2.c:392 #: gnucash/gnome/gnc-plugin-page-register.c:518 @@ -5591,16 +5567,12 @@ msgstr "Riga _doppia" # tooltip #: gnucash/gnome/gnc-plugin-page-register2.c:425 #: gnucash/gnome/gnc-plugin-page-register.c:554 -#, fuzzy -#| msgid "" -#| "Show a second line with \"Action\", \"Notes\", and \"File Association\" " -#| "for each transaction." msgid "" "Show a second line with \"Action\", \"Notes\", and \"Linked Document\" for " "each transaction." msgstr "" -"Mostra una seconda riga con «Operazione», «Note» e «File associato» per ogni " -"transazione." +"Mostra una seconda riga con «Operazione», «Note» e «Documento collegato» per " +"ogni transazione." #: gnucash/gnome/gnc-plugin-page-register2.c:430 msgid "Show _Extra Dates" @@ -5666,10 +5638,8 @@ msgstr "Suddivisione" #: gnucash/gnome/gnc-plugin-page-register2.c:503 #: gnucash/gnome/gnc-plugin-page-register.c:626 -#, fuzzy -#| msgid "_Jump" msgid "Jump" -msgstr "S_alta" +msgstr "Vai" #: gnucash/gnome/gnc-plugin-page-register2.c:504 #: gnucash/gnome/gnc-plugin-page-register.c:627 @@ -5873,26 +5843,21 @@ msgstr "Filtra %s per..." #. Translators: This is a menu item that will open the bill, invoice, or voucher #. that is posted to the current transaction if there is one. #: gnucash/gnome/gnc-plugin-page-register.c:307 -#, fuzzy -#| msgid "Edit Invoice" msgid "Jump to Invoice" -msgstr "Modifica documento di vendita" +msgstr "Vai al documento di vendita o acquisto" #: gnucash/gnome/gnc-plugin-page-register.c:318 -#, fuzzy -#| msgid "Edit the exchange rate for the current transaction" msgid "Add, change, or unlink the document linked with the current transaction" -msgstr "Modifica il tasso di cambio per la transazione corrente" +msgstr "" +"Aggiungi cambia o scollega il documento collegato con questa transazione" #: gnucash/gnome/gnc-plugin-page-register.c:319 -#, fuzzy -#| msgid "Open Association for the current transaction" msgid "Open the linked document for the current transaction" -msgstr "Apri l'associazione per questa transazione" +msgstr "Apri il documento collegato per questa transazione" #: gnucash/gnome/gnc-plugin-page-register.c:320 msgid "Jump to the linked bill, invoice, or voucher" -msgstr "" +msgstr "Vai alla fattura o alla nota spesa collegata" #: gnucash/gnome/gnc-plugin-page-register.c:409 msgid "Remo_ve Other Splits" @@ -5904,17 +5869,13 @@ msgid "_Sort By..." msgstr "_Ordina per..." #: gnucash/gnome/gnc-plugin-page-register.c:500 -#, fuzzy -#| msgid "Post Date" msgid "_Go to Date" -msgstr "Data di registrazione" +msgstr "_vai alla data" # tooltip #: gnucash/gnome/gnc-plugin-page-register.c:501 -#, fuzzy -#| msgid "Do not print transactions out of specified dates." msgid "Move to the split at the specified date" -msgstr "Non stampa le transazioni al di fuori delle date specificate." +msgstr "Spostati alla suddivisione ad una data specifica" #: gnucash/gnome/gnc-plugin-page-register.c:828 msgid "" @@ -6022,17 +5983,15 @@ msgstr "Ordina %s per..." #: gnucash/gnome/gnc-plugin-page-register.c:4702 #, c-format msgid "%s %s from %s, posted %s, amount %s" -msgstr "" +msgstr "%s %s da %s, emesse %s, importo %s" #: gnucash/gnome/gnc-plugin-page-register.c:4711 -#, fuzzy -#| msgid "Select Account" msgid "Select document" -msgstr "Scegliere il conto" +msgstr "Scegli il documento" #: gnucash/gnome/gnc-plugin-page-register.c:4712 msgid "Several documents are linked with this transaction. Please choose one:" -msgstr "" +msgstr "Più documenti sono collegati a questa transazione. Scegline uno:" #: gnucash/gnome/gnc-plugin-page-register.c:4713 #: gnucash/gnome-search/dialog-search.c:323 @@ -6041,10 +6000,8 @@ msgid "Select" msgstr "Seleziona" #: gnucash/gnome/gnc-plugin-page-register.c:4761 -#, fuzzy -#| msgid "Post Date" msgid "Go to Date" -msgstr "Data di registrazione" +msgstr "Vai alla data" #: gnucash/gnome/gnc-plugin-page-register.c:5016 #, c-format @@ -6225,6 +6182,8 @@ msgid "" "This report must be upgraded to return a document object with export-string " "or export-error." msgstr "" +"Questo resoconto deve essere aggiornato per restituire un oggetto documento " +"con una stringa di esportazione o un errore di esportazione." #: gnucash/gnome/gnc-plugin-page-report.c:1710 #, c-format @@ -6573,10 +6532,8 @@ msgid "_Remove Splits" msgstr "_Rimuovi suddivisioni" #: gnucash/gnome/gnc-split-reg.c:1299 -#, fuzzy -#| msgid "Change a Transaction Association" msgid "Change a Transaction Linked Document" -msgstr "Modifica un'associazione della transazione" +msgstr "Modifica il documento collegato alla transazione" #: gnucash/gnome/gnc-split-reg.c:1440 #: gnucash/gnome-utils/gnc-tree-control-split-reg.c:963 @@ -6843,13 +6800,13 @@ msgstr "Impresa" msgid "Searching for splits to clear ..." msgstr "Ricerca delle suddivisioni da eliminare..." -#: gnucash/gnome/window-autoclear.c:241 +#: gnucash/gnome/window-autoclear.c:243 msgid "Cannot uniquely clear splits. Found multiple possibilities." msgstr "" "Impossibile eliminare in modo univoco le suddivisioni; sono state " "individuate diverse possibilità." -#: gnucash/gnome/window-autoclear.c:248 +#: gnucash/gnome/window-autoclear.c:251 msgid "The selected amount cannot be cleared." msgstr "L'importo selezionato non può essere liquidato." @@ -8778,16 +8735,12 @@ msgstr "Posizione attesa" #: gnucash/gnome-utils/gnc-gnome-utils.c:446 #: gnucash/gnome-utils/gnc-gnome-utils.c:486 -#, fuzzy -#| msgid "GnuCash could not find the associated file." msgid "GnuCash could not find the linked document." -msgstr "Impossibile trovare il file associato." +msgstr "Impossibile trovare il file collegato." #: gnucash/gnome-utils/gnc-gnome-utils.c:516 -#, fuzzy -#| msgid "GnuCash could not open the associated file:" msgid "GnuCash could not open the linked document:" -msgstr "GnucCash non può aprire il file associato:" +msgstr "GnucCash non può aprire il file collegato:" #. Translators: %s is a path to a database or any other url, #. like mysql://user@server.somewhere/somedb, https://www.somequotes.com/thequotes @@ -9114,14 +9067,11 @@ msgstr "Contabilità delle finanze personali e per piccole imprese." #: gnucash/gnome-utils/gnc-main-window.c:4537 msgid "translator-credits" msgstr "" -" \n" -" Traduzione di Giuseppe Foti (2020)\n" -" Traduzione di Cristian Marchi (2008, 2009, 2010, 2014)\n" -" Traduzione di Simone Zinanni (2008)\n" -" Traduzione di Lorenzo Cappelletti (2002, 2003-2005)\n" -" Traduzione di Alessandro Seveso (2000)\n" -"\n" -"------------------\n" +" Giuseppe Foti (2020)\n" +" Cristian Marchi (2008, 2009, 2010, 2014)\n" +" Simone Zinanni (2008)\n" +" Lorenzo Cappelletti (2002, 2003-2005)\n" +" Alessandro Seveso (2000)\n" "\n" " Si ringraziano per la revisione e l'aiuto:\n" " Andrea Celli\n" @@ -9130,13 +9080,11 @@ msgstr "" " Martuzzi Pierluigi\n" " Yuri\n" "\n" -"------------------\n" +" Invia i tuoi suggerimenti o critiche e domande alla\n" +" comunità Gnucash di lingua italiana \n" "\n" -" Segnalare eventuali problemi o errori\n" -" nella traduzione a:\n" -" \n" -"\n" -"------------------" +" Per evitare che le tue email vengano moderate, dovresti iscriverti alla\n" +" lista gnucash-it" #: gnucash/gnome-utils/gnc-main-window.c:4540 msgid "Visit the GnuCash website." @@ -10368,13 +10316,6 @@ msgid "Report Generation Options" msgstr "Opzioni del _resoconto" #: gnucash/gnucash-cli.cpp:104 -#, fuzzy -#| msgid "" -#| "Execute report related commands. The following commands are supported.\n" -#| "\n" -#| " list: \tLists available reports.\n" -#| " show: \tDescribe the options modified in the named report.\n" -#| " run: \tRun the named report in the given GnuCash datafile.\n" msgid "" "Execute report related commands. The following commands are supported.\n" "\n" @@ -10383,10 +10324,11 @@ msgid "" "be specified to describe some saved options.\n" " run: \tRun the named report in the given GnuCash datafile.\n" msgstr "" -"Esegui i comandi relativi ai rapporti. Sono supportati i seguenti comandi.\n" +"Esegui i comandi relativi ai resoconti. Sono supportati i seguenti comandi.\n" "+\n" -" list: \t Lista i rapporti disponibili.\n" -" show: \t Visualizza le opzioni modificate di un resoconto.\n" +" list: \t Lista i resoconti disponibili.\n" +" show: \t Visualizza le opzioni modificate di un resoconto. Può essere " +"specificato un file di dati per descrivere alcune opzioni salvate.\n" " run: \t Esegue un resoconto in un file di dati GnuCash.\n" # tooltip @@ -11689,18 +11631,15 @@ msgstr "" "e «period»." #: gnucash/gschemas/org.gnucash.gschema.xml.in:25 -#, fuzzy -#| msgid "Transaction Associations head path" msgid "Transaction Linked Files head path" -msgstr "Percorso file associati alla transazione" +msgstr "Prefisso dei collegamenti ai file della transazione" #: gnucash/gschemas/org.gnucash.gschema.xml.in:26 -#, fuzzy -#| msgid "This is the path head for the Transaction file Associations" msgid "" "This is the path head for the Transaction Linked Files with relative paths" msgstr "" -"Questa è la prima parte del percorso dei file associati alle transazioni" +"Questa è la prima parte del percorso relativo dei file collegati alle " +"transazioni" #: gnucash/gschemas/org.gnucash.gschema.xml.in:30 msgid "Compress the data file" @@ -12438,35 +12377,25 @@ msgstr "" # tooltip #: gnucash/gschemas/org.gnucash.gschema.xml.in:300 -#, fuzzy -#| msgid "" -#| "Show a second line with \"Action\", \"Notes\", and \"File Association\" " -#| "for each transaction." msgid "" "Show a second line with \"Action\", \"Notes\", and \"Linked Documents\" for " "each transaction." msgstr "" -"Mostra una seconda riga con «Operazione», «Note» e «File associato» per ogni " -"transazione." +"Mostra una seconda riga con «Operazione», «Note» e «Documento collegato» per " +"ogni transazione." # Tooltip #: gnucash/gschemas/org.gnucash.gschema.xml.in:301 -#, fuzzy -#| msgid "" -#| "Show a second line with \"Action\", \"Notes\", and \"File Association\" " -#| "for each transaction in a register. This is the default setting for when " -#| "a register is first opened. The setting can be changed at any time via " -#| "the \"View->Double Line\" menu item." msgid "" "Show a second line with \"Action\", \"Notes\", and \"Linked Documents\" for " "each transaction in a register. This is the default setting for when a " "register is first opened. The setting can be changed at any time via the " "\"View->Double Line\" menu item." msgstr "" -"Visualizza una seconda riga con «Operazione», «Note» e «File associato» per " -"ogni transazione presente nel registro. Questa è l'impostazione predefinita " -"per ogni nuovo registro. L'impostazione può essere cambiata in qualsiasi " -"momento attraverso la voce del menu «Visualizza->Riga doppia»." +"Visualizza una seconda riga con «Operazione», «Note» e «Documento collegato» " +"per ogni transazione presente nel registro. Questa è l'impostazione " +"predefinita per ogni nuovo registro. L'impostazione può essere cambiata in " +"qualsiasi momento attraverso la voce del menu «Visualizza->Riga doppia»." #: gnucash/gschemas/org.gnucash.gschema.xml.in:305 msgid "Only display leaf account names." @@ -14959,10 +14888,8 @@ msgstr "_Promemoria" #. Default memo text for the remains of a stock split #: gnucash/gtkbuilder/assistant-stock-split.glade:316 -#, fuzzy -#| msgid "Cash in Lieu" msgid "Cash in lieu" -msgstr "Cash in Lieu" +msgstr "Conguaglio in denaro" #: gnucash/gtkbuilder/assistant-stock-split.glade:352 msgid "_Income Account" @@ -16118,16 +16045,10 @@ msgid "Question" msgstr "Domanda" #: gnucash/gtkbuilder/dialog-doclink.glade:49 -#, fuzzy -#| msgid "Change Association path head" msgid "Change Linked Document path head" -msgstr "Modifica il percorso dell'associazione" +msgstr "Modifica il percorso del documento collegato" #: gnucash/gtkbuilder/dialog-doclink.glade:85 -#, fuzzy -#| msgid "" -#| "Existing relative file path associations will be converted to absolute " -#| "ones by combining them with the existing path head unless box unticked." msgid "" "Existing relative file path links will be converted to absolute ones by " "combining them with the existing path head unless box unticked." @@ -16137,36 +16058,27 @@ msgstr "" "selezionata." #: gnucash/gtkbuilder/dialog-doclink.glade:140 -#, fuzzy -#| msgid "" -#| "Existing absolute file path associations will be converted to relative " -#| "ones by comparing them to the new path head unless box unticked." msgid "" "Existing absolute file path links will be converted to relative ones by " "comparing them to the new path head unless box unticked." msgstr "" "I percorsi assoluti dei file con le associazioni verranno convertiti in " -"percorsi relativi confrontandoli con il nuovo prefisso se questa box non è " +"percorsi relativi confrontandoli con il nuovo percorso se questa box non è " "selezionata." #: gnucash/gtkbuilder/dialog-doclink.glade:178 -#, fuzzy -#| msgid "Note: Only Associations that are not read-only will be changed." msgid "Note: Only Document Links that are not read-only will be changed." msgstr "" -"Nota: Verranno modificate solo le associazioni che non sono di sola lettura." +"Nota: Verranno modificate solo i documenti collegati che non sono di sola " +"lettura." #: gnucash/gtkbuilder/dialog-doclink.glade:279 -#, fuzzy -#| msgid "Linked Details" msgid "Linked _File" -msgstr "Dettagli collegati" +msgstr "_File collegato" #: gnucash/gtkbuilder/dialog-doclink.glade:295 -#, fuzzy -#| msgid "Picture Location" msgid "Linked _Location" -msgstr "Posizione immagine" +msgstr "_Posizione collegatao" #: gnucash/gtkbuilder/dialog-doclink.glade:380 msgid "Enter URL like http://www.gnucash.org" @@ -16177,42 +16089,32 @@ msgid "Location does not start with a valid scheme" msgstr "La posizione non inizia con uno schema valido" #: gnucash/gtkbuilder/dialog-doclink.glade:504 -#, fuzzy -#| msgid "Reload and Locate _Associations" msgid "Reload and Locate Linked Documents" -msgstr "Ricarica ed individua le _associazioni" +msgstr "Ricarica ed individua i documenti collegati" #: gnucash/gtkbuilder/dialog-doclink.glade:518 msgid "_Reload" msgstr "_Ricarica" #: gnucash/gtkbuilder/dialog-doclink.glade:532 -#, fuzzy -#| msgid "No Linked Account" msgid "_Locate Linked Documents" -msgstr "Nessun conto collegato" +msgstr "_Individua i documenti collegati" #: gnucash/gtkbuilder/dialog-doclink.glade:572 -#, fuzzy -#| msgid "No Linked Account" msgid "All Linked Documents" -msgstr "Nessun conto collegato" +msgstr "Tutti i documenti collegati" #: gnucash/gtkbuilder/dialog-doclink.glade:626 msgid "Id" msgstr "Id" #: gnucash/gtkbuilder/dialog-doclink.glade:654 -#, fuzzy -#| msgid "Linked Details" msgid "Linked Document" -msgstr "Dettagli collegati" +msgstr "Documento collegato" #: gnucash/gtkbuilder/dialog-doclink.glade:671 -#, fuzzy -#| msgid "Available ?" msgid "Available" -msgstr "Disponibile ?" +msgstr "Disponibile" #: gnucash/gtkbuilder/dialog-doclink.glade:686 msgid "Relative" @@ -16226,6 +16128,12 @@ msgid "" "Double click on the entry in the Available column to modify the document " "link." msgstr "" +"Doppio click sull'elemento nella colonna \"Descrizione\" per andare alla " +"transazione.\n" +"Doppio click sull'elemento nella colonna \"Documento collegato\" per aprire " +"il documento collegato.\n" +"Doppio click sull'elemento nella colonna \"Disponibile\" per modificare il " +"documento collegato." # Tooltip #: gnucash/gtkbuilder/dialog-employee.glade:166 @@ -16741,10 +16649,8 @@ msgid "(owner)" msgstr "(intestatario)" #: gnucash/gtkbuilder/dialog-invoice.glade:418 -#, fuzzy -#| msgid "Open imported documents in tabs" msgid "Open Document Link" -msgstr "Apri i documenti importati nelle schede" +msgstr "Apri i collegamenti al documento" #: gnucash/gtkbuilder/dialog-invoice.glade:535 #: gnucash/gtkbuilder/dialog-invoice.glade:1113 @@ -17386,7 +17292,7 @@ msgstr "2" #: gnucash/gtkbuilder/dialog-preferences.glade:1245 msgid "Numbers, Date, Time" -msgstr "" +msgstr "Numeri, Data, Orario" #: gnucash/gtkbuilder/dialog-preferences.glade:1274 msgid "Perform account list _setup on new file" @@ -17501,16 +17407,12 @@ msgstr "secondi" # Tooltip #: gnucash/gtkbuilder/dialog-preferences.glade:1730 -#, fuzzy -#| msgid "Path head for Associated Files" msgid "Path head for Linked File Relative Paths" -msgstr "Percorso per i file associati" +msgstr "Prefisso per i percorsi relativi per i documenti collegati" #: gnucash/gtkbuilder/dialog-preferences.glade:1748 -#, fuzzy -#| msgid "Path head for files is," msgid "Path head for Linked Files Relative Paths" -msgstr "Il percorso per i file è," +msgstr "Prefisso dei percorsi relativi per i file collegati" # Tooltip #: gnucash/gtkbuilder/dialog-preferences.glade:1777 @@ -17541,10 +17443,8 @@ msgstr "" "Conti." #: gnucash/gtkbuilder/dialog-preferences.glade:1814 -#, fuzzy -#| msgid "Files" msgid "Linked Files" -msgstr "File" +msgstr "File collegati" #. Preferences->Online Banking:Generic #: gnucash/gtkbuilder/dialog-preferences.glade:1909 @@ -19754,10 +19654,8 @@ msgid "_Transaction Number" msgstr "Numero _transazione" #: gnucash/gtkbuilder/gnc-plugin-page-register.glade:1086 -#, fuzzy -#| msgid "Delete the current entry" msgid "Keep Linked Document Entry" -msgstr "Elimina l'elemento corrente" +msgstr "Mantieni la registrazione del documento collegato" #: gnucash/gtkbuilder/gnc-recurrence.glade:12 msgid "day(s)" @@ -19820,11 +19718,20 @@ msgstr "Mostra solo intestatari _attivi" msgid "Show _zero balance owners" msgstr "Mostra gli intestatari a saldo _zero" -#: gnucash/gtkbuilder/window-autoclear.glade:71 -msgid "Auto-Clear Information" -msgstr "Informazioni di liquidazione automatica" +#: gnucash/gtkbuilder/window-autoclear.glade:74 +msgid "" +"Auto-Clear Information\n" +"Use this dialog if you want GnuCash to automatically find which transactions " +"are cleared, given an ending balance. For example, said ending balance can " +"be the current balance given by your online bank." +msgstr "" +" Liquidazione automatica delle informazioni \n" +"Utilizza questa finestra di dialogo se desideri che GnuCash trovi " +"automaticamente quali transazioni sono state liquidate, dato un saldo " +"finale. Ad esempio, detto saldo finale può essere il saldo corrente fornito " +"dalla tua banca online." -#: gnucash/gtkbuilder/window-autoclear.glade:92 +#: gnucash/gtkbuilder/window-autoclear.glade:98 #: gnucash/gtkbuilder/window-reconcile.glade:117 msgid "_Ending Balance" msgstr "Saldo _finale" @@ -23332,7 +23239,7 @@ msgstr "Descrizione di una transazione" #: gnucash/report/trep-engine.scm:1258 gnucash/report/trep-engine.scm:1259 msgctxt "Column header for 'Document Link'" msgid "L" -msgstr "" +msgstr "L" #: gnucash/register/ledger-core/split-register-layout.c:711 #: gnucash/register/ledger-core/split-register-layout.c:751 @@ -24498,16 +24405,12 @@ msgstr "91+ giorni" #: gnucash/report/reports/aging.scm:773 #: gnucash/report/reports/standard/new-aging.scm:164 -#, fuzzy -#| msgid "Y" msgctxt "One-letter indication for 'yes'" msgid "Y" msgstr "S" #: gnucash/report/reports/aging.scm:773 #: gnucash/report/reports/standard/new-aging.scm:164 -#, fuzzy -#| msgid "N" msgctxt "One-letter indication for 'no'" msgid "N" msgstr "N" @@ -27498,7 +27401,7 @@ msgstr "Somma complessiva" #: gnucash/report/reports/standard/category-barchart.scm:684 #: gnucash/report/reports/standard/net-charts.scm:471 msgid "No exportable data" -msgstr "" +msgstr "Nessun dato esportabile" #: gnucash/report/reports/standard/customer-summary.scm:52 msgid "The income accounts where the sales and income was recorded." @@ -28027,8 +27930,6 @@ msgstr "Formato del resoconto" #: gnucash/report/reports/standard/income-gst-statement.scm:164 #: gnucash/report/reports/standard/income-gst-statement.scm:165 -#, fuzzy -#| msgid "default format" msgid "Default Format" msgstr "formato predefinito" @@ -28037,8 +27938,6 @@ msgid "Australia BAS" msgstr "Dichiarazione BAS Australia" #: gnucash/report/reports/standard/income-gst-statement.scm:168 -#, fuzzy -#| msgid "Australia BAS. Specify sales, purchase and tax accounts." msgid "" "Australia Business Activity Statement. Specify sales, purchase and tax " "accounts." @@ -28771,16 +28670,12 @@ msgid "Debits" msgstr "Debiti" #: gnucash/report/reports/standard/new-owner-report.scm:59 -#, fuzzy -#| msgid "Documents" msgid "Document Links" -msgstr "Documenti" +msgstr "Documenti collegati" #: gnucash/report/reports/standard/new-owner-report.scm:60 -#, fuzzy -#| msgid "Transactions" msgid "Transaction Links" -msgstr "Transazioni" +msgstr "Collegamenti transazione" #: gnucash/report/reports/standard/new-owner-report.scm:91 #: gnucash/report/reports/standard/owner-report.scm:87 @@ -28891,10 +28786,8 @@ msgstr "" "delle fatture e gli importi." #: gnucash/report/reports/standard/new-owner-report.scm:948 -#, fuzzy -#| msgid "Display amounts as hyperlinks" msgid "Display document link?" -msgstr "Visualizza gli importi come collegamenti ipertestuali" +msgstr "Visualizza il collegamento al documento?" #: gnucash/report/reports/standard/new-owner-report.scm:1076 msgid "No valid account found" @@ -29011,16 +28904,12 @@ msgid "Double-Weeks" msgstr "Due settimane" #: gnucash/report/reports/standard/price-scatter.scm:142 -#, fuzzy -#| msgid "Quarter" msgid "Quarters" -msgstr "Trimestre" +msgstr "Trimestri" #: gnucash/report/reports/standard/price-scatter.scm:143 -#, fuzzy -#| msgid "Half Year" msgid "Half Years" -msgstr "Mezzo anno" +msgstr "Semestre" #: gnucash/report/reports/standard/price-scatter.scm:238 msgid "Identical commodities" @@ -30880,10 +30769,8 @@ msgstr "Visualizza il codice dell'altro conto?" # tooltip #: gnucash/report/trep-engine.scm:954 -#, fuzzy -#| msgid "Display the transaction amount?" msgid "Display the transaction linked document" -msgstr "Visualizzare l'importo della transazione?" +msgstr "Mostra il documento collegato alla transazione" #: gnucash/report/trep-engine.scm:957 msgid "Display a subtotal summary table." @@ -31706,17 +31593,11 @@ msgid "v" msgstr "v" #: libgnucash/app-utils/gnc-ui-util.c:911 -#, fuzzy -#| msgctxt "Association flag for 'web'" -#| msgid "w" msgctxt "Document Link flag for 'web'" msgid "w" msgstr "w" #: libgnucash/app-utils/gnc-ui-util.c:913 -#, fuzzy -#| msgctxt "Reconciled flag 'frozen'" -#| msgid "f" msgctxt "Document Link flag for 'file'" msgid "f" msgstr "f" @@ -32104,222 +31985,3 @@ msgstr "Ho invalidato la transazione" #: libgnucash/tax/us/txf.scm:98 msgid "No help available." msgstr "Aiuto non disponibile." - -#, c-format -#~ msgid "Bad URL %s" -#~ msgstr "URL errato %s" - -#, c-format -#~ msgid "No such Account entity: %s" -#~ msgstr "Entità conto inesistente: %s" - -#~ msgid "Change a Business Association" -#~ msgstr "Modifica un'associazione del documento commerciale" - -#~ msgid "Transaction Associations" -#~ msgstr "Associazioni della transazione" - -#~ msgid "Open Association:" -#~ msgstr "Apri documento associato:" - -#~ msgid "_Transaction Associations" -#~ msgstr "_Associazioni transazione" - -#~ msgid "Business _Associations" -#~ msgstr "_Documenti associati" - -#~ msgid "_Update Association for Invoice" -#~ msgstr "_Aggiorna l'associazione per il documento di vendita" - -#~ msgid "_Open Association for Invoice" -#~ msgstr "_Apri l'associazione per il documento di vendita" - -#~ msgid "_Remove Association from Invoice" -#~ msgstr "_Rimuovi l'associazione per il documento di vendita" - -#~ msgid "_Update Association for Bill" -#~ msgstr "_Aggiorna documento di acquisto associato" - -#~ msgid "_Open Association for Bill" -#~ msgstr "_Apri documento di acquisto associato" - -#~ msgid "_Remove Association from Bill" -#~ msgstr "_Rimuovi documento di acquisto associato" - -#~ msgid "_Update Association for Voucher" -#~ msgstr "_Aggiorna nota spese associata" - -#~ msgid "_Open Association for Voucher" -#~ msgstr "_Apri nota spese associata" - -#~ msgid "_Remove Association from Voucher" -#~ msgstr "_Rimuovi l'associazione dalla nota spese" - -# Tooltip -#~ msgid "_Update Association for Credit Note" -#~ msgstr "_Aggiorna nota credito associata" - -#~ msgid "_Open Association for Credit Note" -#~ msgstr "_Apri nota credito associata" - -# Tooltip -#~ msgid "_Remove Association from Credit Note" -#~ msgstr "_Rimuovi nota credito associata" - -#~ msgid "Update Association for current invoice" -#~ msgstr "Aggiorna l'associazione per questo documento di vendita" - -#~ msgid "Open Association for current invoice" -#~ msgstr "Apri l'associazione per questo documento di vendita" - -#~ msgid "Remove Association from invoice" -#~ msgstr "Rimuovi l'associazione dal documento di vendita" - -#~ msgid "Update Association for current bill" -#~ msgstr "Aggiorna l'associazione per questo documento di acquisto" - -#~ msgid "Open Association for current bill" -#~ msgstr "Apri l'associazione per questo documento di acquisto" - -#~ msgid "Remove Association from bill" -#~ msgstr "Rimuovi l'associazione dal documento di acquisto" - -#~ msgid "Update Association for current voucher" -#~ msgstr "Aggiorna l'associazione per questa nota spese" - -#~ msgid "Open Association for current voucher" -#~ msgstr "Apri l'associazione per questa nota spese" - -#~ msgid "Remove Association from voucher" -#~ msgstr "Rimuovi l'associazione dalla nota spese" - -# Tooltip -#~ msgid "Update Association for credit note" -#~ msgstr "Aggiorna l'associazione per la nota credito" - -#~ msgid "Open Association for credit note" -#~ msgstr "Apri l'associazione per la nota credito" - -#~ msgid "Remove Association from credit note" -#~ msgstr "Rimuovi l'associazione dalla nota credito" - -# Tooltip -#~ msgid "Jump to the corresponding transaction in the other account" -#~ msgstr "Va alla transazione corrispondente nell'altro conto" - -#~ msgid "Update _Association for Transaction" -#~ msgstr "A_ggiorna l'associazione per la transazione" - -#~ msgid "_Open Association for Transaction" -#~ msgstr "_Apri l'associazione per la transazione" - -#~ msgid "Re_move Association from Transaction" -#~ msgstr "_Rimuovi l'associazione per la transazione" - -#~ msgid "Open Associated Invoice" -#~ msgstr "Apri documento di vendita associato" - -#~ msgid "Update Association for the current transaction" -#~ msgstr "Aggiorna l'associazione per questa transazione" - -#~ msgid "Remove the association from the current transaction" -#~ msgstr "Rimuovi l'associazione da questa transazione" - -#~ msgid "Open the associated invoice" -#~ msgstr "Apre il documento di vendita associato" - -#~ msgid "Update Association" -#~ msgstr "Aggiorna associazione" - -#~ msgid "Open Association" -#~ msgstr "Apri associazione" - -#~ msgid "Remove Association" -#~ msgstr "Rimuovi associazione" - -#~ msgid "Open Invoice" -#~ msgstr "Apri documento di vendita" - -#~ msgid "_File Association" -#~ msgstr "Associazione _file" - -#~ msgid "_Location Association" -#~ msgstr "Associazione _posizione" - -#~ msgid "All Associations" -#~ msgstr "Tutte le associazioni" - -#~ msgid "_Locate Associations" -#~ msgstr "_Individua le associazioni" - -#~ msgid "Association" -#~ msgstr "Associazione" - -#~ msgid "" -#~ " To jump to the Transaction, double click on the entry in the " -#~ "Description\n" -#~ "column, Association column to open the Association or Available to update" -#~ msgstr "" -#~ " Per passare alla transazione, fai doppio clic sulla voce nella " -#~ "colonna descrizione\n" -#~ "o nella colonna associazione per aprire l'Associazione, o su disponibile " -#~ "per aggiornare" - -#~ msgid "Date/Time" -#~ msgstr "Data e ora" - -#~ msgid "Associated Files" -#~ msgstr "File associati" - -#~ msgid "Keep Associated Entry" -#~ msgstr "Mantieni la voce associata" - -#~ msgid "Date-opened" -#~ msgstr "Data-apertura" - -#~ msgid "Date-posted" -#~ msgstr "Data-emissione" - -#~ msgid "Due-date" -#~ msgstr "Data-scadenza" - -#~ msgctxt "Column header for 'Associate'" -#~ msgid "A" -#~ msgstr "A" - -#~ msgid "One year." -#~ msgstr "Un anno." - -#~ msgid "Links" -#~ msgstr "Collegamenti" - -#, scheme-format -#~ msgid "No transactions were found associated with the ~a." -#~ msgstr "Non è stata trovata nessuna transazione associata con ~a." - -#~ msgid "Font to use for the main heading" -#~ msgstr "Tipo di carattere da utilizzare per l'intestazione principale" - -#~ msgid "Font to use for everything else" -#~ msgstr "Tipo di carattere da utilizzare per il resto" - -# tooltip -#~ msgid "Display the transaction association" -#~ msgstr "Mostra l'associazione della transazione" - -#~ msgid "Enable links" -#~ msgstr "Abilita collegamenti" - -#~ msgid "A" -#~ msgstr "A" - -#, scheme-format -#~ msgid "error ~a during csv output to ~a: ~s" -#~ msgstr "error ~a durante l'esportazione cvs a ~a: ~s" - -#~ msgctxt "Association flag for 'file'" -#~ msgid "f" -#~ msgstr "f" - -#~ msgid "gnucash-icon" -#~ msgstr "gnucash-icon" From 78c8b03c5ec033221449d7d8f99ffef07a40af43 Mon Sep 17 00:00:00 2001 From: Christopher Lam Date: Wed, 14 Oct 2020 20:38:47 +0800 Subject: [PATCH 046/167] [window-autoclear.c] cleanup, optimize, prevent UI lag abort: 1. if too many splits lead to >1,000,000 reachable amounts 2. if the end_balance is the same as cleared_balance also: - g_free lists properly - move knapsack algorithm to gnc-ui-balances.c - show newly cleared splits in a new register: "Cleared Transactions" - remove unneeded #includes --- gnucash/gnome/window-autoclear.c | 229 +++++++------------------ libgnucash/app-utils/gnc-ui-balances.c | 155 +++++++++++++++++ libgnucash/app-utils/gnc-ui-balances.h | 9 +- 3 files changed, 221 insertions(+), 172 deletions(-) diff --git a/gnucash/gnome/window-autoclear.c b/gnucash/gnome/window-autoclear.c index 4bdf148742..294cb7a987 100644 --- a/gnucash/gnome/window-autoclear.c +++ b/gnucash/gnome/window-autoclear.c @@ -25,18 +25,14 @@ #include #include -#include "Scrub.h" -#include "dialog-account.h" -#include "dialog-transfer.h" #include "dialog-utils.h" #include "gnc-amount-edit.h" -#include "gnc-component-manager.h" -#include "gnc-date-edit.h" #include "gnc-event.h" #include "gnc-gnome-utils.h" #include "gnc-main-window.h" #include "gnc-plugin-page-register.h" #include "gnc-ui.h" +#include "gnc-ui-balances.h" #include "window-autoclear.h" #define WINDOW_AUTOCLEAR_CM_CLASS "window-autoclear" @@ -95,191 +91,73 @@ gnc_autoclear_make_window_name(Account *account) return title; } -static gboolean -ght_gnc_numeric_equal(gconstpointer v1, gconstpointer v2) +static void +show_cleared_splits (GList *splits) { - gnc_numeric n1 = *(gnc_numeric *)v1, n2 = *(gnc_numeric *)v2; - return gnc_numeric_equal(n1, n2); -} + GNCLedgerDisplay *ledger; + GncPluginPage *page; + Query *book_query, *guid_query; -static guint -ght_gnc_numeric_hash(gconstpointer v1) -{ - gnc_numeric n1 = *(gnc_numeric *)v1; - gdouble d1 = gnc_numeric_to_double(n1); - return g_double_hash (&d1); -} + book_query = qof_query_create_for (GNC_ID_SPLIT); + guid_query = qof_query_create_for (GNC_ID_SPLIT); + qof_query_set_book (book_query, gnc_get_current_book ()); -typedef struct _sack_foreach_data_t -{ - gnc_numeric split_value; - GList *reachable_list; -} *sack_foreach_data_t; - -static void sack_foreach_func(gpointer key, gpointer value, gpointer user_data) -{ - sack_foreach_data_t data = (sack_foreach_data_t)user_data; - gnc_numeric thisvalue = *(gnc_numeric *)key; - - gnc_numeric reachable_value = gnc_numeric_add_fixed(thisvalue, data->split_value); - data->reachable_list = g_list_prepend - (data->reachable_list, g_memdup (&reachable_value, sizeof (gnc_numeric))); - PINFO(" Sack: found %s, added %s\n", gnc_numeric_to_string(thisvalue), gnc_numeric_to_string(reachable_value)); + for (GList *iter = splits; iter; iter = iter->next) + { + GncGUID guid = xaccSplitReturnGUID (iter->data); + xaccQueryAddGUIDMatch (guid_query, &guid, GNC_ID_SPLIT, QOF_QUERY_OR); + } + book_query = qof_query_merge (book_query, guid_query, QOF_QUERY_AND); + ledger = gnc_ledger_display_query (book_query, SEARCH_LEDGER, REG_STYLE_JOURNAL); + gnc_ledger_display_refresh (ledger); + page = gnc_plugin_page_register_new_ledger (ledger); + main_window_update_page_name (page, _("Cleared Transactions")); + gnc_main_window_open_page (NULL, page); + qof_query_destroy (book_query); + qof_query_destroy (guid_query); } void gnc_autoclear_window_ok_cb (GtkWidget *widget, AutoClearWindow *data) { - GList *node, *nc_list = 0, *toclear_list = 0; + GList *toclear_list; gnc_numeric toclear_value; - GHashTable *sack; + gchar *errmsg = NULL; - gtk_label_set_text(data->status_label, _("Searching for splits to clear ...")); + g_return_if_fail (widget && data); - /* Value we have to reach */ toclear_value = gnc_amount_edit_get_amount(data->end_value); + if (gnc_reverse_balance(data->account)) - toclear_value = gnc_numeric_neg(toclear_value); - toclear_value = gnc_numeric_convert(toclear_value, xaccAccountGetCommoditySCU(data->account), GNC_HOW_RND_NEVER); + toclear_value = gnc_numeric_neg (toclear_value); - /* Extract which splits are not cleared and compute the amount we have to clear */ - for (node = xaccAccountGetSplitList(data->account); node; node = node->next) + toclear_value = gnc_numeric_convert + (toclear_value, xaccAccountGetCommoditySCU(data->account), GNC_HOW_RND_ROUND); + + toclear_list = gnc_account_get_autoclear_splits + (data->account, toclear_value, &errmsg); + + if (errmsg) { - Split *split = (Split *)node->data; - char recn; - gnc_numeric value; - - recn = xaccSplitGetReconcile (split); - value = xaccSplitGetAmount (split); - - if (recn == NREC) - nc_list = g_list_prepend (nc_list, split); - else - toclear_value = gnc_numeric_sub_fixed(toclear_value, value); + gtk_label_set_text (data->status_label, errmsg); + gnc_amount_edit_set_amount (data->end_value, toclear_value); + gtk_editable_select_region (GTK_EDITABLE (data->end_value), 0, -1); + g_free (errmsg); } - - /* Pretty print information */ - PINFO("Amount to clear: %s\n", gnc_numeric_to_string(toclear_value)); - PINFO("Available splits:\n"); - for (node = nc_list; node; node = node->next) + else { - Split *split = (Split *)node->data; - gnc_numeric value = xaccSplitGetAmount (split); - PINFO(" %s\n", gnc_numeric_to_string(value)); + xaccAccountBeginEdit (data->account); + for (GList *node = toclear_list; node; node = node->next) + xaccSplitSetReconcile (node->data, CREC); + xaccAccountCommitEdit (data->account); + show_cleared_splits (toclear_list); + g_list_free (toclear_list); + + /* Close window */ + gtk_widget_destroy (data->window); + g_free (data); } - - /* Run knapsack */ - /* Entries in the hash table are: - * - key = amount to which we know how to clear (freed by GHashTable) - * - value = last split we used to clear this amount (not managed by GHashTable) - */ - PINFO("Knapsacking ...\n"); - sack = g_hash_table_new_full (ght_gnc_numeric_hash, ght_gnc_numeric_equal, g_free, NULL); - for (node = nc_list; node; node = node->next) - { - Split *split = (Split *)node->data; - gnc_numeric split_value = xaccSplitGetAmount(split); - - GList *node; - struct _sack_foreach_data_t data[1]; - data->split_value = split_value; - data->reachable_list = 0; - - PINFO(" Split value: %s\n", gnc_numeric_to_string(split_value)); - - /* For each value in the sack, compute a new reachable value */ - g_hash_table_foreach (sack, sack_foreach_func, data); - - /* Add the value of the split itself to the reachable_list */ - data->reachable_list = g_list_prepend - (data->reachable_list, g_memdup (&split_value, sizeof (gnc_numeric))); - - /* Add everything to the sack, looking out for duplicates */ - for (node = data->reachable_list; node; node = node->next) - { - gnc_numeric *reachable_value = node->data; - Split *toinsert_split = split; - - PINFO(" Reachable value: %s ", gnc_numeric_to_string(*reachable_value)); - - /* Check if it already exists */ - if (g_hash_table_lookup_extended(sack, reachable_value, NULL, NULL)) - { - /* If yes, we are in trouble, we reached an amount using two solutions */ - toinsert_split = NULL; - PINFO("dup"); - } - g_hash_table_insert (sack, reachable_value, toinsert_split); - PINFO("\n"); - } - g_list_free(data->reachable_list); - } - - /* Check solution */ - PINFO("Rebuilding solution ...\n"); - while (!gnc_numeric_zero_p(toclear_value)) - { - gpointer psplit = NULL; - - PINFO(" Left to clear: %s\n", gnc_numeric_to_string(toclear_value)); - if (g_hash_table_lookup_extended(sack, &toclear_value, NULL, &psplit)) - { - if (psplit != NULL) - { - /* Cast the gpointer to the kind of pointer we actually need */ - Split *split = (Split *)psplit; - toclear_list = g_list_prepend(toclear_list, split); - toclear_value = gnc_numeric_sub_fixed(toclear_value, - xaccSplitGetAmount(split)); - PINFO(" Cleared: %s -> %s\n", - gnc_numeric_to_string(xaccSplitGetAmount(split)), - gnc_numeric_to_string(toclear_value)); - } - else - { - /* We couldn't reconstruct the solution */ - PINFO(" Solution not unique.\n"); - gtk_label_set_text(data->status_label, _("Cannot uniquely clear splits. Found multiple possibilities.")); - gtk_editable_select_region (GTK_EDITABLE (data->end_value), 0, -1); - return; - } - } - else - { - PINFO(" No solution found.\n"); - gtk_label_set_text(data->status_label, _("The selected amount cannot be cleared.")); - gtk_editable_select_region (GTK_EDITABLE (data->end_value), 0, -1); - return; - } - } - g_hash_table_destroy (sack); - - /* Show solution */ - PINFO("Clearing splits:\n"); - for (node = toclear_list; node; node = node->next) - { - Split *split = node->data; - char recn; - gnc_numeric value; - - recn = xaccSplitGetReconcile (split); - value = xaccSplitGetAmount (split); - - PINFO(" %c %s\n", recn, gnc_numeric_to_string(value)); - - xaccSplitSetReconcile (split, CREC); - } - if (toclear_list == 0) - PINFO(" None\n"); - - /* Free lists */ - g_list_free(nc_list); - g_list_free(toclear_list); - - /* Close window */ - gtk_widget_destroy(data->window); - g_free(data); } void @@ -291,6 +169,12 @@ gnc_autoclear_window_cancel_cb (GtkWidget *widget, g_free(data); } +static void clear_status_label_cb (GtkEditable *editable, AutoClearWindow *data) +{ + gtk_label_set_text (data->status_label, ""); +} + + /********************************************************************\ * autoClearWindow * * opens up the window to auto-clear an account * @@ -328,6 +212,9 @@ autoClearWindow (GtkWidget *parent, Account *account) g_signal_connect(GTK_WIDGET(data->end_value), "activate", G_CALLBACK(gnc_autoclear_window_ok_cb), data); + g_signal_connect (GTK_WIDGET(data->end_value), "changed", + G_CALLBACK(clear_status_label_cb), data); + box = GTK_BOX(gtk_builder_get_object (builder, "end_value_box")); gtk_box_pack_start(box, GTK_WIDGET(data->end_value), TRUE, TRUE, 0); diff --git a/libgnucash/app-utils/gnc-ui-balances.c b/libgnucash/app-utils/gnc-ui-balances.c index b02fe76cb8..27ce976666 100644 --- a/libgnucash/app-utils/gnc-ui-balances.c +++ b/libgnucash/app-utils/gnc-ui-balances.c @@ -31,6 +31,7 @@ #include #include "Account.h" +#include "Split.h" #include "gncOwner.h" #include "qof.h" @@ -338,3 +339,157 @@ gnc_ui_owner_get_print_report_balance (GncOwner *owner, print_info = gnc_commodity_print_info (report_commodity, TRUE); return g_strdup (xaccPrintAmount (balance, print_info)); } + + +/* the following functions are used in window-autoclear: */ + +#define MAXIMUM_SACK_SIZE 1000000 + +static gboolean +ght_gnc_numeric_equal(gconstpointer v1, gconstpointer v2) +{ + gnc_numeric n1 = *(gnc_numeric *)v1, n2 = *(gnc_numeric *)v2; + return gnc_numeric_equal(n1, n2); +} + +static guint +ght_gnc_numeric_hash(gconstpointer v1) +{ + gnc_numeric n1 = *(gnc_numeric *)v1; + gdouble d1 = gnc_numeric_to_double(n1); + return g_double_hash (&d1); +} + +typedef struct _sack_foreach_data_t +{ + gnc_numeric split_value; + GList *reachable_list; +} *sack_foreach_data_t; + +static void sack_foreach_func(gpointer key, gpointer value, gpointer user_data) +{ + sack_foreach_data_t data = (sack_foreach_data_t) user_data; + gnc_numeric thisvalue = *(gnc_numeric *) key; + gnc_numeric reachable_value = gnc_numeric_add_fixed (thisvalue, data->split_value); + + data->reachable_list = g_list_prepend + (data->reachable_list, g_memdup (&reachable_value, sizeof (gnc_numeric))); +} + +GList * +gnc_account_get_autoclear_splits (Account *account, gnc_numeric toclear_value, + gchar **errmsg) +{ + GList *nc_list = NULL, *toclear_list = NULL; + GHashTable *sack; + gchar *msg = NULL; + guint sack_size = 0; + + g_return_val_if_fail (GNC_IS_ACCOUNT (account), NULL); + + sack = g_hash_table_new_full (ght_gnc_numeric_hash, ght_gnc_numeric_equal, + g_free, NULL); + + /* Extract which splits are not cleared and compute the amount we have to clear */ + for (GList *node = xaccAccountGetSplitList (account); node; node = node->next) + { + Split *split = (Split *)node->data; + + if (xaccSplitGetReconcile (split) == NREC) + nc_list = g_list_prepend (nc_list, split); + else + toclear_value = gnc_numeric_sub_fixed + (toclear_value, xaccSplitGetAmount (split)); + } + + if (gnc_numeric_zero_p (toclear_value)) + { + msg = _("Account is already at Auto-Clear Balance."); + goto skip_knapsack; + } + + /* Run knapsack */ + /* Entries in the hash table are: + * - key = amount to which we know how to clear (freed by GHashTable) + * - value = last split we used to clear this amount (not managed by GHashTable) + */ + for (GList *node = nc_list; node; node = node->next) + { + Split *split = (Split *)node->data; + gnc_numeric split_value = xaccSplitGetAmount (split); + + struct _sack_foreach_data_t s_data[1]; + s_data->split_value = split_value; + s_data->reachable_list = NULL; + + /* For each value in the sack, compute a new reachable value */ + g_hash_table_foreach (sack, sack_foreach_func, s_data); + + /* Add the value of the split itself to the reachable_list */ + s_data->reachable_list = g_list_prepend + (s_data->reachable_list, g_memdup (&split_value, sizeof (gnc_numeric))); + + /* Add everything to the sack, looking out for duplicates */ + for (GList *s_node = s_data->reachable_list; s_node; s_node = s_node->next) + { + gnc_numeric *reachable_value = s_node->data; + + /* Check if it already exists */ + if (g_hash_table_lookup_extended (sack, reachable_value, NULL, NULL)) + { + /* If yes, we are in trouble, we reached an amount + using two solutions */ + g_hash_table_insert (sack, reachable_value, NULL); + } + else + { + g_hash_table_insert (sack, reachable_value, split); + sack_size++; + + if (sack_size > MAXIMUM_SACK_SIZE) + { + msg = _("Too many uncleared splits"); + goto skip_knapsack; + } + } + } + g_list_free (s_data->reachable_list); + } + + /* Check solution */ + while (!gnc_numeric_zero_p (toclear_value)) + { + Split *split = NULL; + + if (!g_hash_table_lookup_extended (sack, &toclear_value, + NULL, (gpointer) &split)) + { + msg = _("The selected amount cannot be cleared."); + goto skip_knapsack; + } + + if (!split) + { + msg = _("Cannot uniquely clear splits. Found multiple possibilities."); + goto skip_knapsack; + } + + toclear_list = g_list_prepend (toclear_list, split); + toclear_value = gnc_numeric_sub_fixed (toclear_value, + xaccSplitGetAmount (split)); + } + + skip_knapsack: + g_hash_table_destroy (sack); + g_list_free (nc_list); + + if (msg) + { + *errmsg = g_strdup (msg); + g_list_free (toclear_list); + return NULL; + } + + *errmsg = NULL; + return toclear_list; +} diff --git a/libgnucash/app-utils/gnc-ui-balances.h b/libgnucash/app-utils/gnc-ui-balances.h index 3479f74775..67d5f05e08 100644 --- a/libgnucash/app-utils/gnc-ui-balances.h +++ b/libgnucash/app-utils/gnc-ui-balances.h @@ -146,5 +146,12 @@ gchar * gnc_ui_owner_get_print_balance (GncOwner *owner, gchar * gnc_ui_owner_get_print_report_balance (GncOwner *owner, gboolean *negative); - +/** Account splits are analysed; attempts to find a unique combination + * of uncleared splits which would set cleared balance to + * toclear_value. If this is not possible, *errmsg will be error + * message. errmsg must be a pointer to a gchar. If it is set, it + * must be freed by the caller. + */ +GList * gnc_account_get_autoclear_splits (Account *account, gnc_numeric toclear_value, + gchar **errmsg); #endif /* GNC_UI_BALANCES_H_ */ From 26e7eada37efa2a3b91509483e17e9c9ba544ec6 Mon Sep 17 00:00:00 2001 From: Christopher Lam Date: Mon, 19 Oct 2020 10:26:23 +0800 Subject: [PATCH 047/167] [gnc-pricedb.c] refactor amount converters, use common code --- libgnucash/engine/gnc-pricedb.c | 66 +++++++++++++++------------------ 1 file changed, 30 insertions(+), 36 deletions(-) diff --git a/libgnucash/engine/gnc-pricedb.c b/libgnucash/engine/gnc-pricedb.c index 94075ac03a..6887652d66 100644 --- a/libgnucash/engine/gnc-pricedb.c +++ b/libgnucash/engine/gnc-pricedb.c @@ -2581,34 +2581,44 @@ indirect_balance_conversion (GNCPriceDB *db, gnc_numeric bal, return zero; } - -/* - * Convert a balance from one currency to another. - */ -gnc_numeric -gnc_pricedb_convert_balance_latest_price(GNCPriceDB *pdb, - gnc_numeric balance, - const gnc_commodity *balance_currency, - const gnc_commodity *new_currency) +static gnc_numeric convert_amount_at_date (GNCPriceDB *pdb, + gnc_numeric amount, + const gnc_commodity *orig_currency, + const gnc_commodity *new_currency, + const time64 t) { gnc_numeric new_value; - if (gnc_numeric_zero_p (balance) || - gnc_commodity_equiv (balance_currency, new_currency)) - return balance; + if (gnc_numeric_zero_p (amount) || + gnc_commodity_equiv (orig_currency, new_currency)) + return amount; /* Look for a direct price. */ - new_value = direct_balance_conversion(pdb, balance, balance_currency, - new_currency, INT64_MAX); - if (!gnc_numeric_zero_p(new_value)) - return new_value; + new_value = direct_balance_conversion + (pdb, amount, orig_currency, new_currency, t); /* * no direct price found, try if we find a price in another currency * and convert in two stages */ - return indirect_balance_conversion(pdb, balance, balance_currency, - new_currency, INT64_MAX); + if (gnc_numeric_zero_p (new_value)) + new_value = indirect_balance_conversion + (pdb, amount, orig_currency, new_currency, t); + + return new_value; +} + +/* + * Convert a balance from one currency to another. + */ +gnc_numeric +gnc_pricedb_convert_balance_latest_price (GNCPriceDB *pdb, + gnc_numeric balance, + const gnc_commodity *balance_currency, + const gnc_commodity *new_currency) +{ + return convert_amount_at_date + (pdb, balance, balance_currency, new_currency, INT64_MAX); } gnc_numeric @@ -2618,24 +2628,8 @@ gnc_pricedb_convert_balance_nearest_price_t64(GNCPriceDB *pdb, const gnc_commodity *new_currency, time64 t) { - gnc_numeric new_value; - - if (gnc_numeric_zero_p (balance) || - gnc_commodity_equiv (balance_currency, new_currency)) - return balance; - - /* Look for a direct price. */ - new_value = direct_balance_conversion(pdb, balance, balance_currency, - new_currency, t); - if (!gnc_numeric_zero_p(new_value)) - return new_value; - - /* - * no direct price found, try if we find a price in another currency - * and convert in two stages - */ - return indirect_balance_conversion(pdb, balance, balance_currency, - new_currency, t); + return convert_amount_at_date + (pdb, balance, balance_currency, new_currency, t); } From 4d63eb922f4ae3794315dad36c9dafc0e9f752e3 Mon Sep 17 00:00:00 2001 From: Christopher Lam Date: Mon, 19 Oct 2020 10:47:50 +0800 Subject: [PATCH 048/167] [gnc-pricedb.c] copy convert_amount to convert_price --- libgnucash/engine/gnc-pricedb.c | 88 +++++++++++++++++++++++++++++++++ 1 file changed, 88 insertions(+) diff --git a/libgnucash/engine/gnc-pricedb.c b/libgnucash/engine/gnc-pricedb.c index 6887652d66..3b39788c17 100644 --- a/libgnucash/engine/gnc-pricedb.c +++ b/libgnucash/engine/gnc-pricedb.c @@ -2513,6 +2513,94 @@ extract_common_prices (PriceList *from_prices, PriceList *to_prices, return retval; } + +static gnc_numeric +convert_price (const gnc_commodity *from, const gnc_commodity *to, PriceTuple tuple) +{ + gnc_commodity *from_com = gnc_price_get_commodity (tuple.from); + gnc_commodity *from_cur = gnc_price_get_currency (tuple.from); + gnc_commodity *to_com = gnc_price_get_commodity (tuple.to); + gnc_commodity *to_cur = gnc_price_get_currency (tuple.to); + gnc_numeric from_val = gnc_price_get_value (tuple.from); + gnc_numeric to_val = gnc_price_get_value (tuple.to); + gnc_numeric price; + int no_round = GNC_HOW_DENOM_EXACT | GNC_HOW_RND_NEVER; + + price = gnc_numeric_div (to_val, from_val, GNC_DENOM_AUTO, no_round); + + if (from_cur == from && to_cur == to) + return price; + + if (from_com == from && to_com == to) + return gnc_numeric_invert (price); + + price = gnc_numeric_mul (from_val, to_val, GNC_DENOM_AUTO, no_round); + + if (from_cur == from) + return gnc_numeric_invert (price); + + return price; +} + +static gnc_numeric +indirect_price_conversion (GNCPriceDB *db, const gnc_commodity *from, + const gnc_commodity *to, time64 t) +{ + GList *from_prices = NULL, *to_prices = NULL; + PriceTuple tuple; + gnc_numeric zero = gnc_numeric_zero(); + if (!from || !to) + return zero; + if (t == INT64_MAX) + { + from_prices = gnc_pricedb_lookup_latest_any_currency(db, from); + /* "to" is often the book currency which may have lots of prices, + so avoid getting them if they aren't needed. */ + if (from_prices) + to_prices = gnc_pricedb_lookup_latest_any_currency(db, to); + } + else + { + from_prices = gnc_pricedb_lookup_nearest_in_time_any_currency_t64 (db, from, t); + if (from_prices) + to_prices = gnc_pricedb_lookup_nearest_in_time_any_currency_t64 (db, to, t); + } + if (!from_prices || !to_prices) + return zero; + tuple = extract_common_prices (from_prices, to_prices, from, to); + gnc_price_list_destroy (from_prices); + gnc_price_list_destroy (to_prices); + if (tuple.from) + return convert_price (from, to, tuple); + return zero; +} + + +static gnc_numeric +direct_price_conversion (GNCPriceDB *db, const gnc_commodity *from, + const gnc_commodity *to, time64 t) +{ + GNCPrice *price; + gnc_numeric retval = gnc_numeric_zero(); + + if (!from || !to) return retval; + + if (t == INT64_MAX) + price = gnc_pricedb_lookup_latest(db, from, to); + else + price = gnc_pricedb_lookup_nearest_in_time64(db, from, to, t); + + if (!price) return retval; + + retval = gnc_price_get_value (price); + + if (gnc_price_get_commodity (price) != from) + retval = gnc_numeric_invert (retval); + + gnc_price_unref (price); + return retval; +} + static gnc_numeric convert_balance(gnc_numeric bal, const gnc_commodity *from, const gnc_commodity *to, PriceTuple tuple) From 5671028ba338498eb77ffdd40a376c0fb0e9fad5 Mon Sep 17 00:00:00 2001 From: "Frank H. Ellenberger" Date: Fri, 23 Oct 2020 21:24:15 +0200 Subject: [PATCH 049/167] L10N:de: Verbesserung translator-credits (von it.po) --- po/de.po | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/po/de.po b/po/de.po index d07bf5b2d7..47721f1d90 100644 --- a/po/de.po +++ b/po/de.po @@ -9047,7 +9047,10 @@ msgstr "" "Christian Meyer, 2000-2001\n" "Jan-Uwe Finck, 1999\n" "\n" -"Verbesserungsvorschläge zur Übersetzung an gnucash-de@gnucash.org" +"Anregungen, Kritik und Fragen zur Übersetzung an die\n" +"deutschsprachige GnuCash-Gemeinschaft Liste gnucash-de" #: gnucash/gnome-utils/gnc-main-window.c:4540 msgid "Visit the GnuCash website." From b675e17e4e24bb738bf786bc9eb642a5241e81d0 Mon Sep 17 00:00:00 2001 From: "Frank H. Ellenberger" Date: Sun, 25 Oct 2020 07:48:23 +0100 Subject: [PATCH 050/167] L10N:de: Fix typo of last commit --- po/de.po | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/po/de.po b/po/de.po index 47721f1d90..25ea99a4ac 100644 --- a/po/de.po +++ b/po/de.po @@ -9048,7 +9048,7 @@ msgstr "" "Jan-Uwe Finck, 1999\n" "\n" "Anregungen, Kritik und Fragen zur Übersetzung an die\n" -"deutschsprachige GnuCash-Gemeinschaft \n" "Um die Moderation zu vermeiden, empfiehlt sich die Anmeldung auf der\n" "Liste gnucash-de" From 2ecdd70e2412dac95d6b65eece136e718797252f Mon Sep 17 00:00:00 2001 From: Christopher Lam Date: Mon, 19 Oct 2020 20:08:44 +0800 Subject: [PATCH 051/167] [gnc-pricedb.c][api] pull out composite pricedb price retriever * tries direct price retrieval from pricedb. * if fails, tries intermediate currency. --- libgnucash/engine/gnc-pricedb.c | 135 +++++++------------------------- libgnucash/engine/gnc-pricedb.h | 18 +++++ 2 files changed, 48 insertions(+), 105 deletions(-) diff --git a/libgnucash/engine/gnc-pricedb.c b/libgnucash/engine/gnc-pricedb.c index 3b39788c17..481df22adc 100644 --- a/libgnucash/engine/gnc-pricedb.c +++ b/libgnucash/engine/gnc-pricedb.c @@ -2435,35 +2435,6 @@ gnc_pricedb_lookup_latest_before_t64 (GNCPriceDB *db, return current_price; } -static gnc_numeric -direct_balance_conversion (GNCPriceDB *db, gnc_numeric bal, - const gnc_commodity *from, const gnc_commodity *to, - time64 t) -{ - GNCPrice *price; - gnc_numeric retval = gnc_numeric_zero(); - if (from == NULL || to == NULL) - return retval; - if (gnc_numeric_zero_p(bal)) - return retval; - if (t != INT64_MAX) - price = gnc_pricedb_lookup_nearest_in_time64(db, from, to, t); - else - price = gnc_pricedb_lookup_latest(db, from, to); - if (price == NULL) - return retval; - if (gnc_price_get_commodity(price) == from) - retval = gnc_numeric_mul (bal, gnc_price_get_value (price), - gnc_commodity_get_fraction (to), - GNC_HOW_RND_ROUND); - else - retval = gnc_numeric_div (bal, gnc_price_get_value (price), - gnc_commodity_get_fraction (to), - GNC_HOW_RND_ROUND); - gnc_price_unref (price); - return retval; - -} typedef struct { @@ -2601,72 +2572,35 @@ direct_price_conversion (GNCPriceDB *db, const gnc_commodity *from, return retval; } -static gnc_numeric -convert_balance(gnc_numeric bal, const gnc_commodity *from, - const gnc_commodity *to, PriceTuple tuple) +gnc_numeric +gnc_pricedb_get_nearest_price (GNCPriceDB *pdb, + const gnc_commodity *orig_currency, + const gnc_commodity *new_currency, + const time64 t) { - gnc_commodity *from_com = gnc_price_get_commodity(tuple.from); - gnc_commodity *from_cur = gnc_price_get_currency(tuple.from); - gnc_commodity *to_com = gnc_price_get_commodity(tuple.to); - gnc_commodity *to_cur = gnc_price_get_currency(tuple.to); - gnc_numeric from_val = gnc_price_get_value(tuple.from); - gnc_numeric to_val = gnc_price_get_value(tuple.to); - int fraction = gnc_commodity_get_fraction(to); + gnc_numeric price; - int no_round = GNC_HOW_DENOM_EXACT | GNC_HOW_RND_NEVER; - if (from_cur == from && to_cur == to) - return gnc_numeric_div(gnc_numeric_mul(bal, to_val, GNC_DENOM_AUTO, - no_round), - from_val, fraction, GNC_HOW_RND_ROUND); - if (from_com == from && to_com == to) - return gnc_numeric_div(gnc_numeric_mul(bal, from_val, GNC_DENOM_AUTO, - no_round), - to_val, fraction, GNC_HOW_RND_ROUND); - if (from_cur == from) - return gnc_numeric_div(bal, gnc_numeric_mul(from_val, to_val, - GNC_DENOM_AUTO, no_round), - fraction, GNC_HOW_RND_ROUND); - return gnc_numeric_mul(bal, gnc_numeric_mul(from_val, to_val, - GNC_DENOM_AUTO, no_round), - fraction, GNC_HOW_RND_ROUND); + if (gnc_commodity_equiv (orig_currency, new_currency)) + return gnc_numeric_create (1, 1); + /* Look for a direct price. */ + price = direct_price_conversion (pdb, orig_currency, new_currency, t); + + /* + * no direct price found, try find a price in another currency + */ + if (gnc_numeric_zero_p (price)) + price = indirect_price_conversion (pdb, orig_currency, new_currency, t); + + return gnc_numeric_reduce (price); } -static gnc_numeric -indirect_balance_conversion (GNCPriceDB *db, gnc_numeric bal, - const gnc_commodity *from, const gnc_commodity *to, - time64 t ) + +gnc_numeric +gnc_pricedb_get_latest_price (GNCPriceDB *pdb, + const gnc_commodity *orig_currency, + const gnc_commodity *new_currency) { - GList *from_prices = NULL, *to_prices = NULL; - PriceTuple tuple; - gnc_numeric zero = gnc_numeric_zero(); - if (from == NULL || to == NULL) - return zero; - if (gnc_numeric_zero_p(bal)) - return zero; - if (t == INT64_MAX) - { - from_prices = gnc_pricedb_lookup_latest_any_currency(db, from); - /* "to" is often the book currency which may have lots of prices, - so avoid getting them if they aren't needed. */ - if (from_prices) - to_prices = gnc_pricedb_lookup_latest_any_currency(db, to); - } - else - { - from_prices = gnc_pricedb_lookup_nearest_in_time_any_currency_t64(db, - from, t); - if (from_prices) - to_prices = gnc_pricedb_lookup_nearest_in_time_any_currency_t64(db, - to, t); - } - if (from_prices == NULL || to_prices == NULL) - return zero; - tuple = extract_common_prices(from_prices, to_prices, from, to); - gnc_price_list_destroy(from_prices); - gnc_price_list_destroy(to_prices); - if (tuple.from) - return convert_balance(bal, from, to, tuple); - return zero; + return gnc_pricedb_get_nearest_price (pdb, orig_currency, new_currency, INT64_MAX); } static gnc_numeric convert_amount_at_date (GNCPriceDB *pdb, @@ -2675,25 +2609,16 @@ static gnc_numeric convert_amount_at_date (GNCPriceDB *pdb, const gnc_commodity *new_currency, const time64 t) { - gnc_numeric new_value; + gnc_numeric price; - if (gnc_numeric_zero_p (amount) || - gnc_commodity_equiv (orig_currency, new_currency)) + if (gnc_numeric_zero_p (amount)) return amount; - /* Look for a direct price. */ - new_value = direct_balance_conversion - (pdb, amount, orig_currency, new_currency, t); + price = gnc_pricedb_get_nearest_price (pdb, orig_currency, new_currency, t); - /* - * no direct price found, try if we find a price in another currency - * and convert in two stages - */ - if (gnc_numeric_zero_p (new_value)) - new_value = indirect_balance_conversion - (pdb, amount, orig_currency, new_currency, t); - - return new_value; + return gnc_numeric_mul + (amount, price, gnc_commodity_get_fraction (new_currency), + GNC_HOW_DENOM_EXACT | GNC_HOW_RND_ROUND); } /* diff --git a/libgnucash/engine/gnc-pricedb.h b/libgnucash/engine/gnc-pricedb.h index 6a8301f3c0..5010476c3e 100644 --- a/libgnucash/engine/gnc-pricedb.h +++ b/libgnucash/engine/gnc-pricedb.h @@ -559,6 +559,24 @@ PriceList * gnc_pricedb_lookup_latest_before_any_currency_t64(GNCPriceDB *db, time64 t); +/** @brief Retrieve the price one currency to another at specified date + * @param pdb The pricedb + * @param orig_currency The commodity in which the balance is currently + * expressed + * @param new_currency The commodity to which the balance should be converted + * @return A price, or gnc_numeric_zero if no price is available. + */ + +gnc_numeric gnc_pricedb_get_nearest_price (GNCPriceDB *pdb, + const gnc_commodity *orig_currency, + const gnc_commodity *new_currency, + const time64 t); + +gnc_numeric gnc_pricedb_get_latest_price (GNCPriceDB *pdb, + const gnc_commodity *orig_currency, + const gnc_commodity *new_currency); + + /** @brief Convert a balance from one currency to another using the most recent * price between the two. * @param pdb The pricedb From e833c8e1aa6f55341692d81c9d87aa0ad53b393b Mon Sep 17 00:00:00 2001 From: Christopher Lam Date: Mon, 26 Oct 2020 20:48:52 +0800 Subject: [PATCH 052/167] [utest-gnc-pricedb.c] test: gnc_pricedb_get_[latest|nearest]_price --- libgnucash/engine/test/utest-gnc-pricedb.c | 80 ++++++++++++++++++++++ 1 file changed, 80 insertions(+) diff --git a/libgnucash/engine/test/utest-gnc-pricedb.c b/libgnucash/engine/test/utest-gnc-pricedb.c index 0afeb86c1f..daf34df4f4 100644 --- a/libgnucash/engine/test/utest-gnc-pricedb.c +++ b/libgnucash/engine/test/utest-gnc-pricedb.c @@ -1248,6 +1248,84 @@ test_gnc_pricedb_convert_balance_nearest_price_t64 (PriceDBFixture *fixture, gco g_assert_cmpint(result.denom, ==, 100); } + +static void +test_gnc_pricedb_get_latest_price (PriceDBFixture *fixture, gconstpointer pData) +{ + gnc_numeric result; + + result = gnc_pricedb_get_latest_price (fixture->pricedb, + fixture->com->usd, + fixture->com->aud); + g_assert_cmpint(result.num, ==, 3587); + g_assert_cmpint(result.denom, ==, 3125); + + result = gnc_pricedb_get_latest_price (fixture->pricedb, + fixture->com->usd, + fixture->com->gbp); + g_assert_cmpint(result.num, ==, 50000); + g_assert_cmpint(result.denom, ==, 78829); + + result = gnc_pricedb_get_latest_price (fixture->pricedb, + fixture->com->usd, + fixture->com->eur); + g_assert_cmpint(result.num, ==, 63418); + g_assert_cmpint(result.denom, ==, 78829); + + result = gnc_pricedb_get_latest_price (fixture->pricedb, + fixture->com->gbp, + fixture->com->dkk); + g_assert_cmpint(result.num, ==, 47194370497); + g_assert_cmpint(result.denom, ==, 5000000000); + + result = gnc_pricedb_get_latest_price (fixture->pricedb, + fixture->com->amzn, + fixture->com->aud); + g_assert_cmpint(result.num, ==, 111738637); + g_assert_cmpint(result.denom, ==, 312500); +} + +static void +test_gnc_pricedb_get_nearest_price (PriceDBFixture *fixture, gconstpointer pData) +{ + time64 t = gnc_dmy2time64(15, 8, 2011); + gnc_numeric result; + + result = gnc_pricedb_get_nearest_price (fixture->pricedb, + fixture->com->usd, + fixture->com->aud, t); + g_assert_cmpint(result.num, ==, 1250); + g_assert_cmpint(result.denom, ==, 1331); + + result = gnc_pricedb_get_nearest_price (fixture->pricedb, + fixture->com->usd, + fixture->com->gbp, + t); + g_assert_cmpint(result.num, ==, 100000); + g_assert_cmpint(result.denom, ==, 161643); + + result = gnc_pricedb_get_nearest_price (fixture->pricedb, + fixture->com->usd, + fixture->com->eur, + t); + g_assert_cmpint(result.num, ==, 37763); + g_assert_cmpint(result.denom, ==, 53881); + + result = gnc_pricedb_get_nearest_price (fixture->pricedb, + fixture->com->gbp, + fixture->com->dkk, + t); + g_assert_cmpint(result.num, ==, 84450223707); + g_assert_cmpint(result.denom, ==, 10000000000); + + result = gnc_pricedb_get_nearest_price (fixture->pricedb, + fixture->com->amzn, + fixture->com->aud, + t); + g_assert_cmpint(result.num, ==, 278150); + g_assert_cmpint(result.denom, ==, 1331); +} + /* pricedb_foreach_pricelist static void pricedb_foreach_pricelist(gpointer key, gpointer val, gpointer user_data)// Local: 0:1:0 @@ -1504,6 +1582,8 @@ test_suite_gnc_pricedb (void) // GNC_TEST_ADD (suitename, "indirect balance conversion", Fixture, NULL, setup, test_indirect_balance_conversion, teardown); GNC_TEST_ADD (suitename, "gnc pricedb convert balance latest price", PriceDBFixture, NULL, setup, test_gnc_pricedb_convert_balance_latest_price, teardown); GNC_TEST_ADD (suitename, "gnc pricedb convert balance nearest price", PriceDBFixture, NULL, setup, test_gnc_pricedb_convert_balance_nearest_price_t64, teardown); + GNC_TEST_ADD (suitename, "gnc pricedb get latest price", PriceDBFixture, NULL, setup, test_gnc_pricedb_get_latest_price, teardown); + GNC_TEST_ADD (suitename, "gnc pricedb get nearest price", PriceDBFixture, NULL, setup, test_gnc_pricedb_get_nearest_price, teardown); // GNC_TEST_ADD (suitename, "pricedb foreach pricelist", Fixture, NULL, setup, test_pricedb_foreach_pricelist, teardown); // GNC_TEST_ADD (suitename, "pricedb foreach currencies hash", Fixture, NULL, setup, test_pricedb_foreach_currencies_hash, teardown); // GNC_TEST_ADD (suitename, "unstable price traversal", Fixture, NULL, setup, test_unstable_price_traversal, teardown); From e7165507c8497bfbcf7d3b107ca4e9ed2912a9d3 Mon Sep 17 00:00:00 2001 From: Christopher Lam Date: Tue, 20 Oct 2020 10:03:48 +0800 Subject: [PATCH 053/167] [commodity-utils.scm][api] gnc:html-make-rates-table with price-fn better precision than gnc:html-make-exchangerates --- gnucash/report/commodity-utilities.scm | 13 +++++++++++++ gnucash/report/html-utilities.scm | 24 ++++++++++++++++++++++++ gnucash/report/report.scm | 2 ++ 3 files changed, 39 insertions(+) diff --git a/gnucash/report/commodity-utilities.scm b/gnucash/report/commodity-utilities.scm index c6c87efa2d..e777a2a842 100644 --- a/gnucash/report/commodity-utilities.scm +++ b/gnucash/report/commodity-utilities.scm @@ -21,6 +21,7 @@ ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; (use-modules (ice-9 match)) +(use-modules (srfi srfi-26)) ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;; Functions to get splits with interesting data from accounts. @@ -764,6 +765,18 @@ (gnc:exchange-by-pricedb-nearest foreign domestic to-date-tp)))))) +(define (gnc:case-price-fn source target-curr date) + (define pdb (gnc-pricedb-get-db (gnc-get-current-book))) + (case source + ((pricedb-nearest) (cut gnc-pricedb-get-nearest-price pdb <> target-curr date)) + ((pricedb-latest) (cut gnc-pricedb-get-latest-price pdb <> target-curr)) + (else + (lambda (commodity) + (let* ((exchange-fn (gnc:case-exchange-fn source target-curr date)) + (foreign-mon (gnc:make-gnc-monetary commodity 1)) + (domestic-mon (exchange-fn foreign-mon target-curr))) + (gnc:gnc-monetary-amount domestic-mon)))))) + ;; Return a ready-to-use function. Which one to use is determined by ;; the value of 'source-option', whose possible values are set in ;; gnc:options-add-price-source!. diff --git a/gnucash/report/html-utilities.scm b/gnucash/report/html-utilities.scm index d536201e06..fb46b6a34f 100644 --- a/gnucash/report/html-utilities.scm +++ b/gnucash/report/html-utilities.scm @@ -228,6 +228,30 @@ (G_ "Exchange rates")))))) table)) +;; Create a html-table of all prices. The report-currency is +;; 'currency', The prices are given through the function 'price-fn' +;; and the 'accounts' determine which commodities to show. Returns a +;; html-object, a . price-fn is easily obtained from +;; gnc:case-price-fn +(define (gnc:html-make-rates-table currency price-fn accounts) + (define (cell c) (gnc:make-html-table-cell/markup "number-cell" c)) + (define table (gnc:make-html-table)) + (let lp ((comm-list (gnc:accounts-get-commodities accounts currency)) (entries 0)) + (match comm-list + (() + (unless (zero? entries) + (gnc:html-table-set-col-headers! + table (list (gnc:make-html-table-header-cell/size + 1 2 (if (= entries 1) (G_ "Exchange rate") + (G_ "Exchange rates")))))) + table) + ((comm . rest) + (gnc:html-table-append-row! + table + (list (cell (gnc:make-gnc-monetary comm 1)) + (cell (gnc:default-price-renderer currency (price-fn comm))))) + (lp rest (1+ entries)))))) + (define (gnc:html-make-generic-budget-warning report-title-string) (gnc:html-make-generic-simple-warning diff --git a/gnucash/report/report.scm b/gnucash/report/report.scm index 7791d969e3..8444da85c0 100644 --- a/gnucash/report/report.scm +++ b/gnucash/report/report.scm @@ -58,6 +58,7 @@ (export gnc:exchange-by-pricealist-nearest) (export gnc:case-exchange-fn) (export gnc:case-exchange-time-fn) +(export gnc:case-price-fn) (export gnc:sum-collector-commodity) ;; options-utilities.scm @@ -104,6 +105,7 @@ (export gnc:assign-colors) (export gnc:html-table-append-ruler!) (export gnc:html-make-exchangerates) +(export gnc:html-make-rates-table) (export gnc:html-render-options-changed) (export gnc:html-make-generic-warning) (export gnc:html-make-no-account-warning) From 4ff3355f02498308d4683906e2a23620b0b0414e Mon Sep 17 00:00:00 2001 From: Christopher Lam Date: Tue, 20 Oct 2020 21:55:55 +0800 Subject: [PATCH 054/167] [html-style-info.scm] price-renderer does not convert to decimal so that it may obey global pref decimal vs fraction --- gnucash/report/html-style-info.scm | 8 ++------ 1 file changed, 2 insertions(+), 6 deletions(-) diff --git a/gnucash/report/html-style-info.scm b/gnucash/report/html-style-info.scm index 20f34e640e..0c58671ece 100644 --- a/gnucash/report/html-style-info.scm +++ b/gnucash/report/html-style-info.scm @@ -167,12 +167,8 @@ (xaccPrintAmount datum (gnc-default-print-info #f))) ;; renders a price to target currency -(define (gnc:default-price-renderer currency amount) - (xaccPrintAmount - (gnc-numeric-convert - amount (min 10000 (* 100 (gnc-commodity-get-fraction currency))) - GNC-HOW-RND-ROUND) - (gnc-price-print-info currency #t))) +(define (gnc:default-price-renderer currency price) + (xaccPrintAmount price (gnc-price-print-info currency #t))) (define (gnc:default-html-gnc-monetary-renderer datum params) (let* ((comm (gnc:gnc-monetary-commodity datum)) From 89c0baee9b6f6ae6c7c74730f9920a61157adb93 Mon Sep 17 00:00:00 2001 From: Christopher Lam Date: Mon, 19 Oct 2020 22:29:59 +0800 Subject: [PATCH 055/167] Bug 797982 - exchange rates' decimal places use gnc:html-make-rates-table instead of gnc:html-make-exchangerates to show effective exchange rate or price used --- gnucash/report/reports/standard/account-summary.scm | 5 +++-- gnucash/report/reports/standard/balance-sheet.scm | 3 ++- .../report/reports/standard/budget-balance-sheet.scm | 6 +++--- .../reports/standard/budget-income-statement.scm | 5 +++-- gnucash/report/reports/standard/cash-flow.scm | 6 ++++-- gnucash/report/reports/standard/equity-statement.scm | 12 +++++++----- gnucash/report/reports/standard/income-statement.scm | 6 +++--- gnucash/report/reports/standard/trial-balance.scm | 5 +++-- 8 files changed, 28 insertions(+), 20 deletions(-) diff --git a/gnucash/report/reports/standard/account-summary.scm b/gnucash/report/reports/standard/account-summary.scm index 0ea163838e..0ffb26641e 100644 --- a/gnucash/report/reports/standard/account-summary.scm +++ b/gnucash/report/reports/standard/account-summary.scm @@ -315,6 +315,7 @@ (gnc:get-current-account-tree-depth) depth-limit)) ;; exchange rates calculation parameters + (price-fn (gnc:case-price-fn price-source report-commodity to-date)) (exchange-fn (gnc:case-exchange-fn price-source report-commodity to-date))) (gnc:html-document-set-title! @@ -441,8 +442,8 @@ ;; add currency information (when show-rates? (gnc:html-document-add-object! - doc (gnc:html-make-exchangerates - report-commodity exchange-fn + doc (gnc:html-make-rates-table + report-commodity price-fn (gnc:accounts-and-all-descendants accounts)))))) (gnc:report-finished) diff --git a/gnucash/report/reports/standard/balance-sheet.scm b/gnucash/report/reports/standard/balance-sheet.scm index dddc7dfdcd..6c1c32d769 100644 --- a/gnucash/report/reports/standard/balance-sheet.scm +++ b/gnucash/report/reports/standard/balance-sheet.scm @@ -343,6 +343,7 @@ (tree-depth (if (eq? depth-limit 'all) (gnc:get-current-account-tree-depth) depth-limit)) + (price-fn (gnc:case-price-fn price-source report-commodity reportdate)) ;; exchange rates calculation parameters (exchange-fn (gnc:case-exchange-fn price-source report-commodity reportdate))) @@ -550,7 +551,7 @@ (gnc:report-percent-done 90) (when show-rates? (gnc:html-document-add-object! - doc (gnc:html-make-exchangerates report-commodity exchange-fn accounts))) + doc (gnc:html-make-rates-table report-commodity price-fn accounts))) (gnc:report-percent-done 100))) diff --git a/gnucash/report/reports/standard/budget-balance-sheet.scm b/gnucash/report/reports/standard/budget-balance-sheet.scm index d50a7a0d75..03df94ecee 100644 --- a/gnucash/report/reports/standard/budget-balance-sheet.scm +++ b/gnucash/report/reports/standard/budget-balance-sheet.scm @@ -355,7 +355,8 @@ ;; exchange rates calculation parameters (exchange-fn (gnc:case-exchange-fn price-source report-commodity date-t64)) - ) + + (price-fn (gnc:case-price-fn price-source report-commodity date-t64))) (define (add-subtotal-line table pos-label neg-label signed-balance) (let* ((neg? (and signed-balance neg-label @@ -808,8 +809,7 @@ (if show-rates? (gnc:html-document-add-object! doc ;;(gnc:html-markup-p) - (gnc:html-make-exchangerates - report-commodity exchange-fn accounts))) + (gnc:html-make-rates-table report-commodity price-fn accounts))) (gnc:report-percent-done 100))))) (gnc:report-finished) diff --git a/gnucash/report/reports/standard/budget-income-statement.scm b/gnucash/report/reports/standard/budget-income-statement.scm index 2e2978b56f..e12e22e7ef 100644 --- a/gnucash/report/reports/standard/budget-income-statement.scm +++ b/gnucash/report/reports/standard/budget-income-statement.scm @@ -401,7 +401,8 @@ ;; exchange rates calculation parameters (exchange-fn (gnc:case-exchange-fn price-source report-commodity date-t64)) - ) + + (price-fn (gnc:case-price-fn price-source report-commodity date-t64))) (define (add-subtotal-line table pos-label neg-label signed-balance) (let* ((neg? (and signed-balance neg-label @@ -595,7 +596,7 @@ (gnc:report-percent-done 90) (when show-rates? (gnc:html-document-add-object! - doc (gnc:html-make-exchangerates report-commodity exchange-fn accounts))) + doc (gnc:html-make-rates-table report-commodity price-fn accounts))) (gnc:report-percent-done 100)))) (gnc:report-finished) diff --git a/gnucash/report/reports/standard/cash-flow.scm b/gnucash/report/reports/standard/cash-flow.scm index 623f71998a..2379e1885d 100644 --- a/gnucash/report/reports/standard/cash-flow.scm +++ b/gnucash/report/reports/standard/cash-flow.scm @@ -149,6 +149,8 @@ (exchange-fn (gnc:case-exchange-fn price-source report-currency to-date-t64)) + (price-fn (gnc:case-price-fn price-source report-currency to-date-t64)) + (doc (gnc:make-html-document)) (table (gnc:make-html-table)) @@ -321,8 +323,8 @@ (if show-rates? (gnc:html-document-add-object! doc ;;(gnc:html-markup-p - (gnc:html-make-exchangerates - report-currency exchange-fn accounts)))))) + (gnc:html-make-rates-table + report-currency price-fn accounts)))))) ;; error condition: no accounts specified diff --git a/gnucash/report/reports/standard/equity-statement.scm b/gnucash/report/reports/standard/equity-statement.scm index ce13efc1c6..4b47cb1792 100644 --- a/gnucash/report/reports/standard/equity-statement.scm +++ b/gnucash/report/reports/standard/equity-statement.scm @@ -280,7 +280,9 @@ (end-exchange-fn (gnc:case-exchange-fn price-source report-commodity end-date)) - ) + + (start-price-fn (gnc:case-price-fn price-source report-commodity start-date)) + (end-price-fn (gnc:case-price-fn price-source report-commodity end-date))) (define (unrealized-gains-at-date book-balance exchange-fn date) (define cost-fn @@ -496,10 +498,10 @@ (headers (list (qof-print-date start-date-printable) (qof-print-date end-date))) - (then (gnc:html-make-exchangerates - report-commodity start-exchange-fn accounts)) - (now (gnc:html-make-exchangerates - report-commodity end-exchange-fn accounts))) + (then (gnc:html-make-rates-table + report-commodity start-price-fn accounts)) + (now (gnc:html-make-rates-table + report-commodity end-price-fn accounts))) (gnc:html-table-set-col-headers! curr-tbl headers) (gnc:html-table-set-style! curr-tbl "table" 'attribute '("border" "1")) diff --git a/gnucash/report/reports/standard/income-statement.scm b/gnucash/report/reports/standard/income-statement.scm index 93988525d0..ec9d8df4e0 100644 --- a/gnucash/report/reports/standard/income-statement.scm +++ b/gnucash/report/reports/standard/income-statement.scm @@ -382,7 +382,7 @@ ;; exchange rates calculation parameters (exchange-fn (gnc:case-exchange-fn price-source report-commodity end-date)) - ) + (price-fn (gnc:case-price-fn price-source report-commodity end-date))) ;; Wrapper to call gnc:html-table-add-labeled-amount-line! ;; with the proper arguments. @@ -561,8 +561,8 @@ (gnc:report-percent-done 90) (when show-rates? (gnc:html-document-add-object! - doc (gnc:html-make-exchangerates - report-commodity exchange-fn accounts))) + doc (gnc:html-make-rates-table + report-commodity price-fn accounts))) (gnc:report-percent-done 100))) (gnc:report-finished) diff --git a/gnucash/report/reports/standard/trial-balance.scm b/gnucash/report/reports/standard/trial-balance.scm index 18b06f8ab6..b305d70c5a 100644 --- a/gnucash/report/reports/standard/trial-balance.scm +++ b/gnucash/report/reports/standard/trial-balance.scm @@ -401,6 +401,7 @@ ;; exchange rates calculation parameters (exchange-fn (gnc:case-exchange-fn price-source report-commodity end-date)) + (price-fn (gnc:case-price-fn price-source report-commodity end-date)) (period-for (string-append " " (G_ "for Period")))) (gnc:html-document-set-title! @@ -894,8 +895,8 @@ (if show-rates? (gnc:html-document-add-object! doc - (gnc:html-make-exchangerates - report-commodity exchange-fn accounts))) + (gnc:html-make-rates-table + report-commodity price-fn accounts))) (gnc:report-percent-done 100))) (gnc:report-finished) From 1a4f27f6b3b4d3ae2e9263396b32e684f434c96b Mon Sep 17 00:00:00 2001 From: Christopher Lam Date: Wed, 21 Oct 2020 22:45:06 +0800 Subject: [PATCH 056/167] [html-utilities.scm] deprecate gnc:html-make-exchangerates Because old exchange rates function used exchange-fn which converts 1 commodity into domestic currency; new exchange rates uses price-fn which queries the gnc_numeric pricedb entry directly. --- gnucash/report/html-utilities.scm | 2 ++ 1 file changed, 2 insertions(+) diff --git a/gnucash/report/html-utilities.scm b/gnucash/report/html-utilities.scm index fb46b6a34f..50629e01d6 100644 --- a/gnucash/report/html-utilities.scm +++ b/gnucash/report/html-utilities.scm @@ -207,6 +207,8 @@ ;; function 'exchange-fn' and the 'accounts' determine which ;; commodities to show. Returns a html-object, a . (define (gnc:html-make-exchangerates common-commodity exchange-fn accounts) + (issue-deprecation-warning + "gnc:html-make-exchangerates is deprecated. use gnc:html-make-rates-table instead.") (let ((comm-list (gnc:accounts-get-commodities accounts common-commodity)) (markup (lambda (c) (gnc:make-html-table-cell/markup "number-cell" c))) (table (gnc:make-html-table))) From 974342bbaeebccaadced41a038bbb7d8f8ae275a Mon Sep 17 00:00:00 2001 From: John Ralls Date: Sun, 25 Oct 2020 16:30:44 -0700 Subject: [PATCH 057/167] [macOS] Fix Fontconfig unable to find conf.d. --- gnucash/CMakeLists.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/gnucash/CMakeLists.txt b/gnucash/CMakeLists.txt index 7fabd35455..bc2ab97cdf 100644 --- a/gnucash/CMakeLists.txt +++ b/gnucash/CMakeLists.txt @@ -226,7 +226,7 @@ if (MAC_INTEGRATION) file(APPEND ${ENV_FILE_OUT} "GIO_MODULE_DIR={SYS_LIB}/gio/modules\n") file(APPEND ${ENV_FILE_OUT} "XDG_CONFIG_HOME={HOME}/Library/Application Support/${PACKAGE_NAME}/config\n") file(APPEND ${ENV_FILE_OUT} "GDK_PIXBUF_MODULE_FILE={SYS_LIB}/gdk-pixbuf-2.0/2.10.0/loaders.cache\n") - file(APPEND ${ENV_FILE_OUT} "FONTCONFIG_FILE={GNC_HOME}/etc/fonts/fonts.conf\n") + file(APPEND ${ENV_FILE_OUT} "FONTCONFIG_PATH={GNC_HOME}/etc/fonts\n") file(APPEND ${ENV_FILE_OUT} "OFX_DTD_PATH={GNC_HOME}/share/libofx/dtd\n") file(APPEND ${ENV_FILE_OUT} "GNC_DBD_DIR={SYS_LIB}/dbd\n") file(APPEND ${ENV_FILE_OUT} "GTK_IM_MODULE_FILE={GNC_HOME}/lib/gtk-3.0/3.0.0/immodules.cache\n") From 676cc337dcff1cb68661169ee916b90fdbc1ace9 Mon Sep 17 00:00:00 2001 From: John Ralls Date: Mon, 26 Oct 2020 11:45:23 -0700 Subject: [PATCH 058/167] [macOS] Replace bogus font name from pango. Pango on macOS reports ".AppleSystemUIFont" as the name for the system-ui alias. This bogus name doesn't work so replace it with the fallback Arial. --- gnucash/report/gnc-report.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/gnucash/report/gnc-report.c b/gnucash/report/gnc-report.c index 45065f4220..3981740df8 100644 --- a/gnucash/report/gnc-report.c +++ b/gnucash/report/gnc-report.c @@ -284,7 +284,8 @@ gnc_get_default_report_font_family(void) pango_font_description_free (font_desc); - if (default_font_family == NULL) + if (default_font_family == NULL || + g_str_has_prefix (default_font_family, ".AppleSystemUIFont")) return g_strdup("Arial"); else return default_font_family; From 4ddd28a5d9f65e7c5f05bfee9d86a56fa5a67645 Mon Sep 17 00:00:00 2001 From: John Ralls Date: Mon, 26 Oct 2020 11:48:22 -0700 Subject: [PATCH 059/167] Extract font-stretch when converting pango font names to CSS. Also wrap font-family value in quotes and lower-case the fallback generic sans-serif font-family for CSS conformance (though browsers don't seem to care). --- gnucash/report/html-fonts.scm | 14 ++++++++++++-- gnucash/report/test/test-html-fonts.scm | 10 +++++----- 2 files changed, 17 insertions(+), 7 deletions(-) diff --git a/gnucash/report/html-fonts.scm b/gnucash/report/html-fonts.scm index 0cd86c1760..ea5a3126fc 100644 --- a/gnucash/report/html-fonts.scm +++ b/gnucash/report/html-fonts.scm @@ -37,6 +37,7 @@ (define (font-name-to-style-info font-name) (let* ((font-style "") (font-weight "") + (font-stretch "") (idx (string-index-right font-name #\space)) (font-size (substring font-name (1+ idx) (string-length font-name))) (font-name (string-take font-name idx))) @@ -54,9 +55,18 @@ (set! font-style "font-style: oblique; ") (set! font-name (string-strip font-name " oblique")))) - (string-append "font-family: " font-name ", Sans-Serif; " + (cond + ((string-contains-ci font-name " expanded") + (set! font-stretch "font-stretch: expanded; ") + (set! font-name (string-strip font-name " expanded"))) + + ((string-contains-ci font-name " condensed") + (set! font-stretch "font-stretch: condensed; ") + (set! font-name (string-strip font-name " condensed")))) + + (string-append "font-family: \"" font-name "\", sans-serif; " "font-size: " font-size "pt; " - font-style font-weight))) + font-style font-weight font-stretch))) ;; Registers font options (define (register-font-options options) diff --git a/gnucash/report/test/test-html-fonts.scm b/gnucash/report/test/test-html-fonts.scm index 65352f9a67..0a6df2ca77 100644 --- a/gnucash/report/test/test-html-fonts.scm +++ b/gnucash/report/test/test-html-fonts.scm @@ -14,23 +14,23 @@ (test-begin "font-name-to-style-info") (test-equal "basic" - "font-family: Courier Regular, Sans-Serif; font-size: 20pt; " + "font-family: \"Courier Regular\", sans-serif; font-size: 20pt; " (font-name-to-style-info "Courier Regular 20")) (test-equal "basic size 50" - "font-family: Courier Regular, Sans-Serif; font-size: 50pt; " + "font-family: \"Courier Regular\", sans-serif; font-size: 50pt; " (font-name-to-style-info "Courier Regular 50")) (test-equal "basic size 50 bold" - "font-family: Courier, Sans-Serif; font-size: 50pt; font-weight: bold; " + "font-family: \"Courier\", sans-serif; font-size: 50pt; font-weight: bold; " (font-name-to-style-info "Courier bold 50")) (test-equal "basic size 50 italic" - "font-family: Courier, Sans-Serif; font-size: 50pt; font-style: italic; " + "font-family: \"Courier\", sans-serif; font-size: 50pt; font-style: italic; " (font-name-to-style-info "Courier italic 50")) (test-equal "basic size 15 oblique" - "font-family: Courier, Sans-Serif; font-size: 15pt; font-style: oblique; " + "font-family: \"Courier\", sans-serif; font-size: 15pt; font-style: oblique; " (font-name-to-style-info "Courier oblique 15")) (test-end "font-name-to-style-info")) From 946cbef95f3e68131f49bcf1801f310a476e6e0f Mon Sep 17 00:00:00 2001 From: John Ralls Date: Mon, 26 Oct 2020 14:05:31 -0700 Subject: [PATCH 060/167] HTML fonts: Parse additional values of font-weight from the pango font name. --- gnucash/report/html-fonts.scm | 18 ++++++++++++++++-- gnucash/report/test/test-html-fonts.scm | 8 ++++++-- 2 files changed, 22 insertions(+), 4 deletions(-) diff --git a/gnucash/report/html-fonts.scm b/gnucash/report/html-fonts.scm index ea5a3126fc..ee1598948a 100644 --- a/gnucash/report/html-fonts.scm +++ b/gnucash/report/html-fonts.scm @@ -26,6 +26,7 @@ (use-modules (gnucash core-utils)) +(use-modules (ice-9 regex)) (define (string-strip s1 s2) (let ((idx (string-contains-ci s1 s2))) @@ -40,11 +41,24 @@ (font-stretch "") (idx (string-index-right font-name #\space)) (font-size (substring font-name (1+ idx) (string-length font-name))) - (font-name (string-take font-name idx))) + (font-name (string-take font-name idx)) + (pat (make-regexp " weight=([0-9]+)" regexp/icase regexp/extended)) + (match (regexp-exec pat font-name))) - (when (string-contains-ci font-name " bold") + + (cond + ((string-contains-ci font-name " bold") (set! font-weight "font-weight: bold; ") (set! font-name (string-strip font-name " bold"))) + ((string-contains-ci font-name " regular") + (set! font-weight "font-weight: normal; ") + (set! font-name (string-strip font-name " regular"))) + ((string-contains-ci font-name " light") + (set! font-weight "font-weight: lighter; ") + (set! font-name (string-strip font-name " light"))) + ((regexp-match? match) + (set! font-weight (regexp-substitute #f match "font-weight: " 1 "; ")) + (set! font-name (regexp-substitute #f match 'pre 'post)))) (cond ((string-contains-ci font-name " italic") diff --git a/gnucash/report/test/test-html-fonts.scm b/gnucash/report/test/test-html-fonts.scm index 0a6df2ca77..d5abc1827d 100644 --- a/gnucash/report/test/test-html-fonts.scm +++ b/gnucash/report/test/test-html-fonts.scm @@ -14,11 +14,11 @@ (test-begin "font-name-to-style-info") (test-equal "basic" - "font-family: \"Courier Regular\", sans-serif; font-size: 20pt; " + "font-family: \"Courier\", sans-serif; font-size: 20pt; font-weight: normal; " (font-name-to-style-info "Courier Regular 20")) (test-equal "basic size 50" - "font-family: \"Courier Regular\", sans-serif; font-size: 50pt; " + "font-family: \"Courier\", sans-serif; font-size: 50pt; font-weight: normal; " (font-name-to-style-info "Courier Regular 50")) (test-equal "basic size 50 bold" @@ -33,4 +33,8 @@ "font-family: \"Courier\", sans-serif; font-size: 15pt; font-style: oblique; " (font-name-to-style-info "Courier oblique 15")) + (test-equal "basic size 15 numeric weight" + "font-family: \"Courier\", sans-serif; font-size: 15pt; font-weight: 550; " + (font-name-to-style-info "Courier weight=550 15")) + (test-end "font-name-to-style-info")) From fedaa1339601c0f21e984707dc22858ebbd41ef0 Mon Sep 17 00:00:00 2001 From: "Frank H. Ellenberger" Date: Tue, 27 Oct 2020 01:56:45 +0100 Subject: [PATCH 061/167] CMake: Mute guile-2.2 again --- CMakeLists.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/CMakeLists.txt b/CMakeLists.txt index 1617a1d9c8..7b70839f5f 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -279,7 +279,7 @@ string(REGEX MATCH "^[0-9]+[.]" SWIG_MAJOR ${SWIG_VERSION}) # guile library and include dir pkg_check_modules (GUILE3 guile-3.0 QUIET) -pkg_check_modules (GUILE22 guile-2.2) +pkg_check_modules (GUILE22 guile-2.2 QUIET) pkg_check_modules (GUILE2 guile-2.0>=2.0.9 QUIET) if (GUILE3_FOUND) # found guile-3.0 From a6c8a806f37f1ba182e954942324fff5cb95dc2b Mon Sep 17 00:00:00 2001 From: Christopher Lam Date: Tue, 27 Oct 2020 11:03:05 +0800 Subject: [PATCH 062/167] Bug 797982 - exchange rates' decimal places (bis) Bug introduced in e7165507c. We need to normalize date for pricedb-nearest to avoid getting next day price. --- gnucash/report/commodity-utilities.scm | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/gnucash/report/commodity-utilities.scm b/gnucash/report/commodity-utilities.scm index e777a2a842..2dd1e6dce6 100644 --- a/gnucash/report/commodity-utilities.scm +++ b/gnucash/report/commodity-utilities.scm @@ -768,7 +768,8 @@ (define (gnc:case-price-fn source target-curr date) (define pdb (gnc-pricedb-get-db (gnc-get-current-book))) (case source - ((pricedb-nearest) (cut gnc-pricedb-get-nearest-price pdb <> target-curr date)) + ((pricedb-nearest) (cut gnc-pricedb-get-nearest-price pdb <> target-curr + (time64CanonicalDayTime date))) ((pricedb-latest) (cut gnc-pricedb-get-latest-price pdb <> target-curr)) (else (lambda (commodity) From 1915dfb0cb255fe26dcd7810c96e855defbc747f Mon Sep 17 00:00:00 2001 From: John Ralls Date: Fri, 23 Oct 2020 12:20:01 -0700 Subject: [PATCH 063/167] Put Macs back on WebKit2. --- CMakeLists.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/CMakeLists.txt b/CMakeLists.txt index 7b70839f5f..78da42ca79 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -207,7 +207,7 @@ pkg_check_modules (GTHREAD REQUIRED gthread-2.0) pkg_check_modules (LIBXML2 REQUIRED libxml-2.0>=2.9.4) pkg_check_modules (LIBXSLT REQUIRED libxslt) if (WITH_GNUCASH) - if (WIN32 OR APPLE) + if (WIN32) pkg_check_modules (WEBKIT REQUIRED IMPORTED_TARGET webkitgtk-3.0) set(WEBKIT1 1 CACHE INTERNAL "WebKitGtk") else() From 10032c17b599dd599f03443daf7832a56521a222 Mon Sep 17 00:00:00 2001 From: "Frank H. Ellenberger" Date: Tue, 27 Oct 2020 22:17:18 +0100 Subject: [PATCH 064/167] L10N:de: Berichtige "Ausgleichskonto" zu "Anfangsbestand" MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Fehler wegen Mißdeutung des Kontexts von 'balance' --- po/de.po | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/po/de.po b/po/de.po index 25ea99a4ac..44a22a81bb 100644 --- a/po/de.po +++ b/po/de.po @@ -7502,8 +7502,8 @@ msgid "" "You must select a transfer account or choose the opening balances equity " "account." msgstr "" -"Sie müssen ein Herkunftskonto wählen oder das Ausgleichskonto für den " -"Anfangsbestand benutzen." +"Sie müssen ein Herkunftskonto wählen oder das Eigenkapitalkonto " +"»Anfangsbestand« benutzen." #: gnucash/gnome-utils/dialog-account.c:1350 msgid "" @@ -15166,7 +15166,7 @@ msgstr "Buchung Anfangssaldo" #: gnucash/gtkbuilder/dialog-account.glade:1755 msgid "_Use equity 'Opening Balances' account" -msgstr "Benutze _Ausgleichskonto für Anfangsbestand" +msgstr "Benutze Eigenkapitalkonto »_Anfangsbestand«" #: gnucash/gtkbuilder/dialog-account.glade:1772 msgid "_Select transfer account" From 6e3c98c2fb0a75cc7da179a11893e969dda1690b Mon Sep 17 00:00:00 2001 From: Christian Stimming Date: Tue, 27 Oct 2020 21:44:11 +0100 Subject: [PATCH 065/167] L10N:de: Minor improvements in German translation Made strings in the import matcher more compact, which leaves more space on the screen for the interesting content. --- po/de.po | 16 ++++++++-------- 1 file changed, 8 insertions(+), 8 deletions(-) diff --git a/po/de.po b/po/de.po index 44a22a81bb..445bc60317 100644 --- a/po/de.po +++ b/po/de.po @@ -25,7 +25,7 @@ msgstr "" "Report-Msgid-Bugs-To: https://bugs.gnucash.org/enter_bug.cgi?" "product=GnuCash&component=Translations\n" "POT-Creation-Date: 2020-10-14 01:49+0200\n" -"PO-Revision-Date: 2020-09-26 21:29+0200\n" +"PO-Revision-Date: 2020-10-27 21:23+0100\n" "Last-Translator: Christian Stimming \n" "Language-Team: Deutschsprachige GnuCash-Gemeinde \n" "Language: de\n" @@ -21786,28 +21786,28 @@ msgstr "Neu (und ausgeglichen)" #: gnucash/import-export/import-main-matcher.c:1453 #, c-format msgid "New, transfer %s to (manual) \"%s\"" -msgstr "Neu (Buchung von %s nach »%s«, manuell gewählt)" +msgstr "Neu (%s nach »%s«, manuell gewählt)" #. Translators: %1$s is the amount to be #. transferred. %2$s is the destination account. #: gnucash/import-export/import-main-matcher.c:1461 #, c-format msgid "New, transfer %s to (auto) \"%s\"" -msgstr "Neu (Buchung von %s nach »%s«, automatisch gewählt)" +msgstr "Neu (%s nach »%s«, automatisch gewählt)" #. Translators: %s is the amount to be transferred. #: gnucash/import-export/import-main-matcher.c:1472 #, c-format msgid "New, UNBALANCED (need acct to transfer %s)!" -msgstr "Neu (Nicht ausgeglichen, benötige Konto für verbleibende %s)" +msgstr "Neu (verbleibende %s benötigen Konto, nicht ausgeglichen)" #: gnucash/import-export/import-main-matcher.c:1489 msgid "Reconcile (manual) match" -msgstr "Abgleichen (mit manuell gewählter Zuordnung)" +msgstr "Abgleichen (manuell gewählte Zuordnung)" #: gnucash/import-export/import-main-matcher.c:1493 msgid "Reconcile (auto) match" -msgstr "Abgleichen (mit automatisch gewählter Zuordnung)" +msgstr "Abgleichen (automatisch gewählte Zuordnung)" #: gnucash/import-export/import-main-matcher.c:1500 #: gnucash/import-export/import-main-matcher.c:1526 @@ -21816,11 +21816,11 @@ msgstr "Zuordnung fehlt!" #: gnucash/import-export/import-main-matcher.c:1515 msgid "Update and reconcile (manual) match" -msgstr "Abgleichen und Datenübernahme (mit manuell gewählter Zuordnung)" +msgstr "Abgleichen und Datenübernahme (manuell gewählte Zuordnung)" #: gnucash/import-export/import-main-matcher.c:1519 msgid "Update and reconcile (auto) match" -msgstr "Abgleichen und Datenübernahme (mit automatisch gewählter Zuordnung)" +msgstr "Abgleichen und Datenübernahme (automatisch gewählte Zuordnung)" #: gnucash/import-export/import-main-matcher.c:1534 msgid "Do not import (no action selected)" From f3ba84921ba6e43909c04b3d3534f22abb2751ed Mon Sep 17 00:00:00 2001 From: Christian Stimming Date: Tue, 27 Oct 2020 23:03:25 +0100 Subject: [PATCH 066/167] Add tooltip in import matcher window for description and memo column. --- gnucash/import-export/import-main-matcher.c | 59 +++++++++++++++++++++ 1 file changed, 59 insertions(+) diff --git a/gnucash/import-export/import-main-matcher.c b/gnucash/import-export/import-main-matcher.c index 85cd1feb18..58888b0aac 100644 --- a/gnucash/import-export/import-main-matcher.c +++ b/gnucash/import-export/import-main-matcher.c @@ -143,6 +143,10 @@ static void refresh_model_row ( GtkTreeModel *model, GtkTreeIter *iter, GNCImportTransInfo *info); +static gboolean query_tooltip_tree_view_cb (GtkWidget *widget, gint x, gint y, + gboolean keyboard_tip, + GtkTooltip *tooltip, + gpointer user_data); /* end local prototypes */ static gboolean delete_hash (gpointer key, gpointer value, gpointer user_data) @@ -1067,6 +1071,10 @@ gnc_gen_trans_init_view (GNCImportMainMatcher *info, GTK_SORT_ASCENDING); selection = gtk_tree_view_get_selection (info->view); + g_object_set (info->view, "has-tooltip", TRUE, NULL); + g_signal_connect (G_OBJECT(info->view), "query-tooltip", + G_CALLBACK(query_tooltip_tree_view_cb), info); + g_signal_connect (info->view, "row-activated", G_CALLBACK(gnc_gen_trans_row_activated_cb), info); g_signal_connect (selection, "changed", @@ -1826,4 +1834,55 @@ GtkWidget *gnc_gen_trans_list_widget (GNCImportMainMatcher *info) return info->main_widget; } +gboolean query_tooltip_tree_view_cb (GtkWidget *widget, gint x, gint y, + gboolean keyboard_tip, + GtkTooltip *tooltip, + gpointer user_data) +{ + GtkTreeView *tree_view = GTK_TREE_VIEW(widget); + GtkTreeModel *model = gtk_tree_view_get_model(tree_view); + //GNCImportMainMatcher *info = user_data; + GtkTreePath *path = NULL; + GtkTreeViewColumn *column = NULL; + GtkTreeIter iter; + gboolean show_tooltip = FALSE; + + gtk_tree_view_convert_widget_to_bin_window_coords (tree_view, x, y, &x, &y); + if (keyboard_tip || !gtk_tree_view_get_path_at_pos (tree_view, x, y, &path, + &column, NULL, NULL)) + return FALSE; + + // Get the iter pointing to our current column + if (gtk_tree_model_get_iter(model, &iter, path) + && column) + { + const gchar *tooltip_text = NULL; + + // Select text based on column + gint num_col = gtk_tree_view_column_get_sort_column_id(column); + switch (num_col) { + case DOWNLOADED_COL_DESCRIPTION: + gtk_tree_model_get(model, &iter, DOWNLOADED_COL_DESCRIPTION, &tooltip_text, -1); + break; + case DOWNLOADED_COL_MEMO: + gtk_tree_model_get(model, &iter, DOWNLOADED_COL_MEMO, &tooltip_text, -1); + break; + default: + break; + } + + // Did we select any text? If yes, display the tooltip + if (tooltip_text) + { + show_tooltip = TRUE; + gtk_tooltip_set_text (tooltip, tooltip_text); + gtk_tree_view_set_tooltip_cell (tree_view, tooltip, path, column, NULL); + } + } + + // Clean up the object + gtk_tree_path_free (path); + return show_tooltip; +} + /** @} */ From 5df7949a877b7ab0c29f2bb9859ce115ee14dcc0 Mon Sep 17 00:00:00 2001 From: Robert Fewell <14uBobIT@gmail.com> Date: Thu, 29 Oct 2020 12:03:16 +0000 Subject: [PATCH 067/167] Fix GtkLabel error for autoclear status_label Move setting up the callback that clears the status_label till after setting up the status_label. --- gnucash/gnome/window-autoclear.c | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/gnucash/gnome/window-autoclear.c b/gnucash/gnome/window-autoclear.c index 294cb7a987..31d2c40c60 100644 --- a/gnucash/gnome/window-autoclear.c +++ b/gnucash/gnome/window-autoclear.c @@ -212,9 +212,6 @@ autoClearWindow (GtkWidget *parent, Account *account) g_signal_connect(GTK_WIDGET(data->end_value), "activate", G_CALLBACK(gnc_autoclear_window_ok_cb), data); - g_signal_connect (GTK_WIDGET(data->end_value), "changed", - G_CALLBACK(clear_status_label_cb), data); - box = GTK_BOX(gtk_builder_get_object (builder, "end_value_box")); gtk_box_pack_start(box, GTK_WIDGET(data->end_value), TRUE, TRUE, 0); @@ -231,6 +228,9 @@ autoClearWindow (GtkWidget *parent, Account *account) data->status_label = GTK_LABEL(gtk_builder_get_object (builder, "status_label")); + g_signal_connect (GTK_WIDGET(data->end_value), "changed", + G_CALLBACK(clear_status_label_cb), data); + if (parent != NULL) gtk_window_set_transient_for (GTK_WINDOW (data->window), GTK_WINDOW (parent)); From cebe6022c84bdfb111183dacf95b49f183e90de4 Mon Sep 17 00:00:00 2001 From: McLayn Date: Fri, 30 Oct 2020 00:40:02 +0100 Subject: [PATCH 068/167] fix CZK partname to nominative singular --- libgnucash/engine/iso-4217-currencies.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/libgnucash/engine/iso-4217-currencies.xml b/libgnucash/engine/iso-4217-currencies.xml index f4ae955242..afa94a5e23 100644 --- a/libgnucash/engine/iso-4217-currencies.xml +++ b/libgnucash/engine/iso-4217-currencies.xml @@ -799,7 +799,7 @@ isocode="CZK" fullname="Czech Koruna" unitname="koruna" - partname="haleru" + partname="haler" namespace="ISO4217" exchange-code="203" parts-per-unit="100" From 51715e454c022413c141e3fb5a2aa570d33dc16e Mon Sep 17 00:00:00 2001 From: Cristian Klein Date: Fri, 23 Oct 2020 14:04:16 +0200 Subject: [PATCH 069/167] [auto-clear] Add tests --- libgnucash/app-utils/test/CMakeLists.txt | 18 +++ libgnucash/app-utils/test/test-autoclear.cpp | 124 +++++++++++++++++++ 2 files changed, 142 insertions(+) create mode 100644 libgnucash/app-utils/test/test-autoclear.cpp diff --git a/libgnucash/app-utils/test/CMakeLists.txt b/libgnucash/app-utils/test/CMakeLists.txt index b738202fd6..85b85679ef 100644 --- a/libgnucash/app-utils/test/CMakeLists.txt +++ b/libgnucash/app-utils/test/CMakeLists.txt @@ -85,3 +85,21 @@ set_dist_list(test_app_utils_DIST ${test_app_utils_scheme_SOURCES} ${test_app_utils_SOURCES} ) + + +set(test_autoclear_SOURCES + test-autoclear.cpp +) +set(test_autoclear_INCLUDE_DIRS + ${APP_UTILS_TEST_INCLUDE_DIRS} + ${GTEST_INCLUDE_DIR} +) +set(test_autoclear_LIBS + ${APP_UTILS_TEST_LIBS} + gtest +) + +gnc_add_test(test-autoclear "${test_autoclear_SOURCES}" + test_autoclear_INCLUDE_DIRS + test_autoclear_LIBS +) diff --git a/libgnucash/app-utils/test/test-autoclear.cpp b/libgnucash/app-utils/test/test-autoclear.cpp new file mode 100644 index 0000000000..834c77e915 --- /dev/null +++ b/libgnucash/app-utils/test/test-autoclear.cpp @@ -0,0 +1,124 @@ +/******************************************************************** + * test-autoclear.c: test suite for Auto-Clear * + * Copyright 2020 Cristian Klein * + * * + * This program is free software; you can redistribute it and/or * + * modify it under the terms of the GNU General Public License as * + * published by the Free Software Foundation; either version 2 of * + * the License, or (at your option) any later version. * + * * + * This program is distributed in the hope that it will be useful, * + * but WITHOUT ANY WARRANTY; without even the implied warranty of * + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * + * GNU General Public License for more details. * + * * + * You should have received a copy of the GNU General Public License* + * along with this program; if not, you can retrieve it from * + * https://www.gnu.org/licenses/old-licenses/gpl-2.0.html * + * or contact: * + * * + * Free Software Foundation Voice: +1-617-542-5942 * + * 51 Franklin Street, Fifth Floor Fax: +1-617-542-2652 * + * Boston, MA 02110-1301, USA gnu@gnu.org * + ********************************************************************/ +#include "config.h" + +// GoogleTest is written in C++, however, the function we test in C. +extern "C" { +#include "../gnc-ui-balances.h" +} +#include "Split.h" + +#include "gtest/gtest.h" + +const int DENOM = 100; //< Denomerator is always 100 for simplicity. + +struct SplitDatum { + const char *memo; + int amount; //< Numerator of amount. + bool cleared; +}; + +SplitDatum splitData[] = { + { "Memo 01", - 8234, true }, + { "Memo 02", -156326, true }, + { "Memo 03", - 4500, true }, + { "Memo 04", -694056, true }, + { "Memo 05", - 7358, true }, + { "Memo 06", - 11700, true }, + { "Memo 07", - 20497, true }, + { "Memo 08", - 11900, true }, + { "Memo 09", - 8275, true }, + { "Memo 10", - 58700, true }, + { "Memo 11", +100000, true }, + { "Memo 12", - 13881, true }, + { "Memo 13", - 5000, true }, + { "Memo 14", +200000, true }, + { "Memo 15", - 16800, true }, + { "Memo 16", -152000, true }, + { "Memo 17", +160000, false }, + { "Memo 18", - 63610, false }, + { "Memo 19", - 2700, false }, + { "Memo 20", - 15400, false }, + { "Memo 21", - 3900, false }, + { "Memo 22", - 22042, false }, + { "Memo 23", - 2900, false }, + { "Memo 24", - 10900, false }, + { "Memo 25", - 44400, false }, + { "Memo 26", - 9200, false }, + { "Memo 27", - 7900, false }, + { "Memo 28", - 1990, false }, + { "Memo 29", - 7900, false }, + { "Memo 30", - 61200, false }, +}; + +struct TestCase { + int amount; + const char *expectedErr; +}; + +TestCase testCases[] = { + { 0, "The selected amount cannot be cleared.", }, + { -869227, "Account is already at Auto-Clear Balance." }, // No splits need to be cleared. + { -877127, "Cannot uniquely clear splits. Found multiple possibilities." }, // Two splits need to be cleared. + { -891269, NULL }, // One split need to be cleared. + { -963269, NULL }, // All splits need to be cleared. +}; + +TEST(AutoClear, AutoClearAll) { + QofBook *book = qof_book_new (); + Account *account = xaccMallocAccount(book); + + for (auto &d : splitData) { + Split *split = xaccMallocSplit(book); + xaccSplitSetMemo(split, d.memo); + xaccSplitSetAmount(split, gnc_numeric_create(d.amount, DENOM)); + xaccSplitSetReconcile(split, d.cleared ? CREC : NREC); + + // This way of inserting a split, seems to actualy work best. :D + gnc_account_insert_split(account, split); + } + xaccAccountRecomputeBalance(account); + + for (auto &t : testCases) { + gnc_numeric amount_to_clear = gnc_numeric_create(t.amount, DENOM); + char *err; + + GList *splits_to_clear = gnc_account_get_autoclear_splits(account, amount_to_clear, &err); + + // Actually clear splits + for (GList *node = splits_to_clear; node; node = node->next) { + Split *split = (Split *)node->data; + xaccSplitSetReconcile(split, CREC); + } + + ASSERT_STREQ(err, t.expectedErr); + if (t.expectedErr == NULL) { + gnc_numeric c = xaccAccountGetClearedBalance(account); + ASSERT_EQ(c.num, t.amount); + ASSERT_EQ(c.denom, DENOM); + } + } + + qof_book_destroy(book); +} From a1806a2f9429b5f69403b812cd77fcae32371688 Mon Sep 17 00:00:00 2001 From: Cristian Klein Date: Fri, 23 Oct 2020 15:26:23 +0200 Subject: [PATCH 070/167] [auto-clear] Fix model --- libgnucash/app-utils/test/test-autoclear.cpp | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/libgnucash/app-utils/test/test-autoclear.cpp b/libgnucash/app-utils/test/test-autoclear.cpp index 834c77e915..62fb188908 100644 --- a/libgnucash/app-utils/test/test-autoclear.cpp +++ b/libgnucash/app-utils/test/test-autoclear.cpp @@ -31,11 +31,11 @@ extern "C" { #include "gtest/gtest.h" -const int DENOM = 100; //< Denomerator is always 100 for simplicity. +const gint64 DENOM = 100; //< Denomerator is always 100 for simplicity. struct SplitDatum { const char *memo; - int amount; //< Numerator of amount. + gint64 amount; //< Numerator of amount. bool cleared; }; @@ -73,7 +73,7 @@ SplitDatum splitData[] = { }; struct TestCase { - int amount; + gint64 amount; const char *expectedErr; }; @@ -88,14 +88,15 @@ TestCase testCases[] = { TEST(AutoClear, AutoClearAll) { QofBook *book = qof_book_new (); Account *account = xaccMallocAccount(book); + xaccAccountSetName(account, "Test Account"); for (auto &d : splitData) { Split *split = xaccMallocSplit(book); xaccSplitSetMemo(split, d.memo); xaccSplitSetAmount(split, gnc_numeric_create(d.amount, DENOM)); xaccSplitSetReconcile(split, d.cleared ? CREC : NREC); + xaccSplitSetAccount(split, account); - // This way of inserting a split, seems to actualy work best. :D gnc_account_insert_split(account, split); } xaccAccountRecomputeBalance(account); From 2faecb207432027ebd9efd6c92b53c35bec44fa7 Mon Sep 17 00:00:00 2001 From: Cristian Klein Date: Fri, 23 Oct 2020 15:26:58 +0200 Subject: [PATCH 071/167] [auto-clear] Avoid testing ambigous auto-clear --- libgnucash/app-utils/test/test-autoclear.cpp | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/libgnucash/app-utils/test/test-autoclear.cpp b/libgnucash/app-utils/test/test-autoclear.cpp index 62fb188908..cd193790bb 100644 --- a/libgnucash/app-utils/test/test-autoclear.cpp +++ b/libgnucash/app-utils/test/test-autoclear.cpp @@ -58,7 +58,7 @@ SplitDatum splitData[] = { { "Memo 16", -152000, true }, { "Memo 17", +160000, false }, { "Memo 18", - 63610, false }, - { "Memo 19", - 2700, false }, + { "Memo 19", - 2702, false }, { "Memo 20", - 15400, false }, { "Memo 21", - 3900, false }, { "Memo 22", - 22042, false }, @@ -68,7 +68,7 @@ SplitDatum splitData[] = { { "Memo 26", - 9200, false }, { "Memo 27", - 7900, false }, { "Memo 28", - 1990, false }, - { "Memo 29", - 7900, false }, + { "Memo 29", - 7901, false }, { "Memo 30", - 61200, false }, }; @@ -80,9 +80,9 @@ struct TestCase { TestCase testCases[] = { { 0, "The selected amount cannot be cleared.", }, { -869227, "Account is already at Auto-Clear Balance." }, // No splits need to be cleared. - { -877127, "Cannot uniquely clear splits. Found multiple possibilities." }, // Two splits need to be cleared. - { -891269, NULL }, // One split need to be cleared. - { -963269, NULL }, // All splits need to be cleared. + { -869300, "The selected amount cannot be cleared." }, + { -869230, NULL }, + { -963272, NULL }, // All splits need to be cleared. }; TEST(AutoClear, AutoClearAll) { From 5cd777b6739c14ccefa3f88996b63b4f1b1eff95 Mon Sep 17 00:00:00 2001 From: Cristian Klein Date: Fri, 23 Oct 2020 15:30:35 +0200 Subject: [PATCH 072/167] [auto-clear] Fix test: Add xaccAccountBeginEdit / xaccAccountCommitEdit --- libgnucash/app-utils/test/test-autoclear.cpp | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/libgnucash/app-utils/test/test-autoclear.cpp b/libgnucash/app-utils/test/test-autoclear.cpp index cd193790bb..b6ba6ba196 100644 --- a/libgnucash/app-utils/test/test-autoclear.cpp +++ b/libgnucash/app-utils/test/test-autoclear.cpp @@ -90,6 +90,7 @@ TEST(AutoClear, AutoClearAll) { Account *account = xaccMallocAccount(book); xaccAccountSetName(account, "Test Account"); + xaccAccountBeginEdit(account); for (auto &d : splitData) { Split *split = xaccMallocSplit(book); xaccSplitSetMemo(split, d.memo); @@ -99,7 +100,7 @@ TEST(AutoClear, AutoClearAll) { gnc_account_insert_split(account, split); } - xaccAccountRecomputeBalance(account); + xaccAccountCommitEdit(account); for (auto &t : testCases) { gnc_numeric amount_to_clear = gnc_numeric_create(t.amount, DENOM); From 9bf550d38f19498f78562d2c4c8ed08ec784056a Mon Sep 17 00:00:00 2001 From: Cristian Klein Date: Fri, 23 Oct 2020 16:34:46 +0200 Subject: [PATCH 073/167] [auto-clear] Include test for ambiguous cases --- libgnucash/app-utils/test/test-autoclear.cpp | 53 ++++++++++++++++---- 1 file changed, 44 insertions(+), 9 deletions(-) diff --git a/libgnucash/app-utils/test/test-autoclear.cpp b/libgnucash/app-utils/test/test-autoclear.cpp index b6ba6ba196..73d9ae173e 100644 --- a/libgnucash/app-utils/test/test-autoclear.cpp +++ b/libgnucash/app-utils/test/test-autoclear.cpp @@ -39,7 +39,12 @@ struct SplitDatum { bool cleared; }; -SplitDatum splitData[] = { +struct TestCase { + gint64 amount; + const char *expectedErr; +}; + +std::vector easySplitData = { { "Memo 01", - 8234, true }, { "Memo 02", -156326, true }, { "Memo 03", - 4500, true }, @@ -72,12 +77,7 @@ SplitDatum splitData[] = { { "Memo 30", - 61200, false }, }; -struct TestCase { - gint64 amount; - const char *expectedErr; -}; - -TestCase testCases[] = { +std::vector easyTestCases = { { 0, "The selected amount cannot be cleared.", }, { -869227, "Account is already at Auto-Clear Balance." }, // No splits need to be cleared. { -869300, "The selected amount cannot be cleared." }, @@ -85,7 +85,33 @@ TestCase testCases[] = { { -963272, NULL }, // All splits need to be cleared. }; -TEST(AutoClear, AutoClearAll) { +std::vector ambiguousSplitData = { + { "Memo 01", -10, false }, + { "Memo 02", -10, false }, + { "Memo 03", -10, false }, +}; + +std::vector ambiguousTestCases = { + { -10, "Cannot uniquely clear splits. Found multiple possibilities." }, + { -20, "Cannot uniquely clear splits. Found multiple possibilities." }, + + // Commented out, auto-clear algorithm is not smart enough yet. + //{ -30, NULL }, +}; + +class AutoClearTest + : public testing::TestWithParam< + std::pair< + std::vector, + std::vector + > + > { +}; + +TEST_P(AutoClearTest, DoesAutoClear) { + auto splitData = GetParam().first; + auto testCase = GetParam().second; + QofBook *book = qof_book_new (); Account *account = xaccMallocAccount(book); xaccAccountSetName(account, "Test Account"); @@ -102,7 +128,7 @@ TEST(AutoClear, AutoClearAll) { } xaccAccountCommitEdit(account); - for (auto &t : testCases) { + for (auto &t : testCase) { gnc_numeric amount_to_clear = gnc_numeric_create(t.amount, DENOM); char *err; @@ -124,3 +150,12 @@ TEST(AutoClear, AutoClearAll) { qof_book_destroy(book); } + +INSTANTIATE_TEST_SUITE_P( + InstantiationAutoClearTest, + AutoClearTest, + testing::Values( + std::pair{ easySplitData, easyTestCases }, + std::pair{ ambiguousSplitData, ambiguousTestCases } + ) +); From 1cf7defee88db324e937a0e7c9d247c80a03603b Mon Sep 17 00:00:00 2001 From: Cristian Klein Date: Mon, 26 Oct 2020 12:33:13 +0100 Subject: [PATCH 074/167] [auto-clear] Address feedback --- libgnucash/app-utils/test/test-autoclear.cpp | 170 ++++++++++--------- 1 file changed, 88 insertions(+), 82 deletions(-) diff --git a/libgnucash/app-utils/test/test-autoclear.cpp b/libgnucash/app-utils/test/test-autoclear.cpp index 73d9ae173e..780e67bb03 100644 --- a/libgnucash/app-utils/test/test-autoclear.cpp +++ b/libgnucash/app-utils/test/test-autoclear.cpp @@ -31,7 +31,7 @@ extern "C" { #include "gtest/gtest.h" -const gint64 DENOM = 100; //< Denomerator is always 100 for simplicity. +static const int64_t DENOM = 100; //< Denomerator is always 100 for simplicity. struct SplitDatum { const char *memo; @@ -39,100 +39,108 @@ struct SplitDatum { bool cleared; }; -struct TestCase { +struct Tests { gint64 amount; const char *expectedErr; }; -std::vector easySplitData = { - { "Memo 01", - 8234, true }, - { "Memo 02", -156326, true }, - { "Memo 03", - 4500, true }, - { "Memo 04", -694056, true }, - { "Memo 05", - 7358, true }, - { "Memo 06", - 11700, true }, - { "Memo 07", - 20497, true }, - { "Memo 08", - 11900, true }, - { "Memo 09", - 8275, true }, - { "Memo 10", - 58700, true }, - { "Memo 11", +100000, true }, - { "Memo 12", - 13881, true }, - { "Memo 13", - 5000, true }, - { "Memo 14", +200000, true }, - { "Memo 15", - 16800, true }, - { "Memo 16", -152000, true }, - { "Memo 17", +160000, false }, - { "Memo 18", - 63610, false }, - { "Memo 19", - 2702, false }, - { "Memo 20", - 15400, false }, - { "Memo 21", - 3900, false }, - { "Memo 22", - 22042, false }, - { "Memo 23", - 2900, false }, - { "Memo 24", - 10900, false }, - { "Memo 25", - 44400, false }, - { "Memo 26", - 9200, false }, - { "Memo 27", - 7900, false }, - { "Memo 28", - 1990, false }, - { "Memo 29", - 7901, false }, - { "Memo 30", - 61200, false }, +struct TestCase { + std::vector splits; + std::vector tests; }; -std::vector easyTestCases = { - { 0, "The selected amount cannot be cleared.", }, - { -869227, "Account is already at Auto-Clear Balance." }, // No splits need to be cleared. - { -869300, "The selected amount cannot be cleared." }, - { -869230, NULL }, - { -963272, NULL }, // All splits need to be cleared. +TestCase easyTestCase = { + .splits = { + { "Memo 01", - 8234, true }, + { "Memo 02", -156326, true }, + { "Memo 03", - 4500, true }, + { "Memo 04", -694056, true }, + { "Memo 05", - 7358, true }, + { "Memo 06", - 11700, true }, + { "Memo 07", - 20497, true }, + { "Memo 08", - 11900, true }, + { "Memo 09", - 8275, true }, + { "Memo 10", - 58700, true }, + { "Memo 11", +100000, true }, + { "Memo 12", - 13881, true }, + { "Memo 13", - 5000, true }, + { "Memo 14", +200000, true }, + { "Memo 15", - 16800, true }, + { "Memo 16", -152000, true }, + { "Memo 17", +160000, false }, + { "Memo 18", - 63610, false }, + { "Memo 19", - 2702, false }, + { "Memo 20", - 15400, false }, + { "Memo 21", - 3900, false }, + { "Memo 22", - 22042, false }, + { "Memo 23", - 2900, false }, + { "Memo 24", - 10900, false }, + { "Memo 25", - 44400, false }, + { "Memo 26", - 9200, false }, + { "Memo 27", - 7900, false }, + { "Memo 28", - 1990, false }, + { "Memo 29", - 7901, false }, + { "Memo 30", - 61200, false }, + }, + .tests = { + { 0, "The selected amount cannot be cleared.", }, + { -869227, "Account is already at Auto-Clear Balance." }, // No splits need to be cleared. + { -869300, "The selected amount cannot be cleared." }, + { -869230, NULL }, + { -963272, NULL }, // All splits need to be cleared. + }, }; -std::vector ambiguousSplitData = { - { "Memo 01", -10, false }, - { "Memo 02", -10, false }, - { "Memo 03", -10, false }, +TestCase ambiguousTestCase = { + .splits = { + { "Memo 01", -10, false }, + { "Memo 02", -10, false }, + { "Memo 03", -10, false }, + }, + .tests = { + { -10, "Cannot uniquely clear splits. Found multiple possibilities." }, + { -20, "Cannot uniquely clear splits. Found multiple possibilities." }, + + // Forbid auto-clear to be too smart. We expect the user to manually deal + // with such situations. + { -30, "Cannot uniquely clear splits. Found multiple possibilities." }, + }, }; -std::vector ambiguousTestCases = { - { -10, "Cannot uniquely clear splits. Found multiple possibilities." }, - { -20, "Cannot uniquely clear splits. Found multiple possibilities." }, +class AutoClearTest : public testing::TestWithParam { +protected: + std::shared_ptr book_; + Account *account_; // owned by book_ + TestCase testCase_; - // Commented out, auto-clear algorithm is not smart enough yet. - //{ -30, NULL }, -}; +public: + AutoClearTest() : + book_(qof_book_new(), qof_book_destroy), + account_(xaccMallocAccount(book_.get())) + { + testCase_ = GetParam(); -class AutoClearTest - : public testing::TestWithParam< - std::pair< - std::vector, - std::vector - > - > { + xaccAccountSetName(account_, "Test Account"); + xaccAccountBeginEdit(account_); + for (auto &d : testCase_.splits) { + Split *split = xaccMallocSplit(book_.get()); + xaccSplitSetMemo(split, d.memo); + xaccSplitSetAmount(split, gnc_numeric_create(d.amount, DENOM)); + xaccSplitSetReconcile(split, d.cleared ? CREC : NREC); + xaccSplitSetAccount(split, account_); + + gnc_account_insert_split(account_, split); + } + xaccAccountCommitEdit(account_); + } }; TEST_P(AutoClearTest, DoesAutoClear) { - auto splitData = GetParam().first; - auto testCase = GetParam().second; - - QofBook *book = qof_book_new (); - Account *account = xaccMallocAccount(book); - xaccAccountSetName(account, "Test Account"); - - xaccAccountBeginEdit(account); - for (auto &d : splitData) { - Split *split = xaccMallocSplit(book); - xaccSplitSetMemo(split, d.memo); - xaccSplitSetAmount(split, gnc_numeric_create(d.amount, DENOM)); - xaccSplitSetReconcile(split, d.cleared ? CREC : NREC); - xaccSplitSetAccount(split, account); - - gnc_account_insert_split(account, split); - } - xaccAccountCommitEdit(account); - - for (auto &t : testCase) { + for (auto &t : testCase_.tests) { gnc_numeric amount_to_clear = gnc_numeric_create(t.amount, DENOM); char *err; - GList *splits_to_clear = gnc_account_get_autoclear_splits(account, amount_to_clear, &err); + GList *splits_to_clear = gnc_account_get_autoclear_splits(account_, amount_to_clear, &err); // Actually clear splits for (GList *node = splits_to_clear; node; node = node->next) { @@ -142,20 +150,18 @@ TEST_P(AutoClearTest, DoesAutoClear) { ASSERT_STREQ(err, t.expectedErr); if (t.expectedErr == NULL) { - gnc_numeric c = xaccAccountGetClearedBalance(account); + gnc_numeric c = xaccAccountGetClearedBalance(account_); ASSERT_EQ(c.num, t.amount); ASSERT_EQ(c.denom, DENOM); } } - - qof_book_destroy(book); } INSTANTIATE_TEST_SUITE_P( InstantiationAutoClearTest, AutoClearTest, testing::Values( - std::pair{ easySplitData, easyTestCases }, - std::pair{ ambiguousSplitData, ambiguousTestCases } + easyTestCase, + ambiguousTestCase ) ); From 9d4c0b05dbd181734c687012573f1c51b11512fa Mon Sep 17 00:00:00 2001 From: Cristian Klein Date: Mon, 26 Oct 2020 12:35:09 +0100 Subject: [PATCH 075/167] [auto-clear] Improve #include style --- libgnucash/app-utils/test/test-autoclear.cpp | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/libgnucash/app-utils/test/test-autoclear.cpp b/libgnucash/app-utils/test/test-autoclear.cpp index 780e67bb03..2696c2a9f8 100644 --- a/libgnucash/app-utils/test/test-autoclear.cpp +++ b/libgnucash/app-utils/test/test-autoclear.cpp @@ -27,9 +27,8 @@ extern "C" { #include "../gnc-ui-balances.h" } -#include "Split.h" - -#include "gtest/gtest.h" +#include +#include static const int64_t DENOM = 100; //< Denomerator is always 100 for simplicity. From 982cf86deb20f0b0c549e9f0efa9e0a24195ae2f Mon Sep 17 00:00:00 2001 From: Cristian Klein Date: Mon, 26 Oct 2020 14:48:20 +0100 Subject: [PATCH 076/167] [auto-clear] Fix test with googletest 1.8 --- libgnucash/app-utils/test/test-autoclear.cpp | 22 ++++++++++++-------- 1 file changed, 13 insertions(+), 9 deletions(-) diff --git a/libgnucash/app-utils/test/test-autoclear.cpp b/libgnucash/app-utils/test/test-autoclear.cpp index 2696c2a9f8..f00b809765 100644 --- a/libgnucash/app-utils/test/test-autoclear.cpp +++ b/libgnucash/app-utils/test/test-autoclear.cpp @@ -27,6 +27,7 @@ extern "C" { #include "../gnc-ui-balances.h" } +#include #include #include @@ -106,19 +107,18 @@ TestCase ambiguousTestCase = { }, }; -class AutoClearTest : public testing::TestWithParam { +class AutoClearTest : public ::testing::TestWithParam { protected: std::shared_ptr book_; Account *account_; // owned by book_ - TestCase testCase_; + TestCase &testCase_; public: AutoClearTest() : book_(qof_book_new(), qof_book_destroy), - account_(xaccMallocAccount(book_.get())) + account_(xaccMallocAccount(book_.get())), + testCase_(*GetParam()) { - testCase_ = GetParam(); - xaccAccountSetName(account_, "Test Account"); xaccAccountBeginEdit(account_); for (auto &d : testCase_.splits) { @@ -156,11 +156,15 @@ TEST_P(AutoClearTest, DoesAutoClear) { } } -INSTANTIATE_TEST_SUITE_P( +// Silence "no previous declaration for" which is treated as error, due to -Werror +testing::internal::ParamGenerator gtest_InstantiationAutoClearTestAutoClearTest_EvalGenerator_(); +std::string gtest_InstantiationAutoClearTestAutoClearTest_EvalGenerateName_(const testing::TestParamInfo&); + +INSTANTIATE_TEST_CASE_P( InstantiationAutoClearTest, AutoClearTest, - testing::Values( - easyTestCase, - ambiguousTestCase + ::testing::Values( + &easyTestCase, + &ambiguousTestCase ) ); From e5378b204849dcdaca429e3ac2a57bedfd681877 Mon Sep 17 00:00:00 2001 From: Cristian Klein Date: Wed, 28 Oct 2020 22:25:56 +0100 Subject: [PATCH 077/167] [auto-clear] Make test more future-proof with GoogleTest --- libgnucash/app-utils/test/test-autoclear.cpp | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/libgnucash/app-utils/test/test-autoclear.cpp b/libgnucash/app-utils/test/test-autoclear.cpp index f00b809765..b99b5d655e 100644 --- a/libgnucash/app-utils/test/test-autoclear.cpp +++ b/libgnucash/app-utils/test/test-autoclear.cpp @@ -156,11 +156,15 @@ TEST_P(AutoClearTest, DoesAutoClear) { } } +#ifndef INSTANTIATE_TEST_SUITE_P // Silence "no previous declaration for" which is treated as error, due to -Werror testing::internal::ParamGenerator gtest_InstantiationAutoClearTestAutoClearTest_EvalGenerator_(); std::string gtest_InstantiationAutoClearTestAutoClearTest_EvalGenerateName_(const testing::TestParamInfo&); INSTANTIATE_TEST_CASE_P( +#else // INSTANTIATE_TEST_SUITE_P +INSTANTIATE_TEST_SUITE_P( +#endif // INSTANTIATE_TEST_SUITE_P InstantiationAutoClearTest, AutoClearTest, ::testing::Values( From fa16a299480c583f6e8f8b37bb2f447e7311430d Mon Sep 17 00:00:00 2001 From: Cristian Klein Date: Wed, 28 Oct 2020 22:36:11 +0100 Subject: [PATCH 078/167] Add auto-clear to register page --- gnucash/ui/gnc-plugin-page-register-ui.xml | 1 + gnucash/ui/gnc-plugin-page-register2-ui.xml | 1 + 2 files changed, 2 insertions(+) diff --git a/gnucash/ui/gnc-plugin-page-register-ui.xml b/gnucash/ui/gnc-plugin-page-register-ui.xml index a32b3bd5ab..5a240a5b22 100644 --- a/gnucash/ui/gnc-plugin-page-register-ui.xml +++ b/gnucash/ui/gnc-plugin-page-register-ui.xml @@ -44,6 +44,7 @@ + diff --git a/gnucash/ui/gnc-plugin-page-register2-ui.xml b/gnucash/ui/gnc-plugin-page-register2-ui.xml index 3d903d9acf..8c4c4afaba 100644 --- a/gnucash/ui/gnc-plugin-page-register2-ui.xml +++ b/gnucash/ui/gnc-plugin-page-register2-ui.xml @@ -43,6 +43,7 @@ + From 9e70d7f45a4dc3c3a0cbd756f551ca491f3de75c Mon Sep 17 00:00:00 2001 From: Christopher Lam Date: Fri, 30 Oct 2020 10:49:34 +0800 Subject: [PATCH 079/167] [register.scm] some cleanups --- gnucash/report/reports/standard/register.scm | 43 ++++++-------------- 1 file changed, 12 insertions(+), 31 deletions(-) diff --git a/gnucash/report/reports/standard/register.scm b/gnucash/report/reports/standard/register.scm index 4773d1c479..b73f0d6d81 100644 --- a/gnucash/report/reports/standard/register.scm +++ b/gnucash/report/reports/standard/register.scm @@ -177,12 +177,9 @@ (if (date-col column-vector) (addto! row-contents - (if transaction-info? - (gnc:make-html-table-cell/markup - "date-cell" - (qof-print-date - (xaccTransGetDate parent))) - " "))) + (and transaction-info? + (gnc:make-html-table-cell/markup + "date-cell" (qof-print-date (xaccTransGetDate parent)))))) (if (num-col column-vector) (addto! row-contents (gnc:make-html-table-cell/markup @@ -191,29 +188,18 @@ (if (and action-for-num? ledger-type?) (gnc-get-num-action parent #f) (gnc-get-num-action parent split)) - (if split-info? - (gnc-get-action-num #f split) - " "))))) + (and split-info? (gnc-get-action-num #f split)))))) (if (description-col column-vector) (addto! row-contents (gnc:make-html-table-cell/markup "text-cell" (if transaction-info? - (if description? - (xaccTransGetDescription parent) - " " ) - (if split-info? - (if memo? - (xaccSplitGetMemo split) - " ") - " "))))) + (and description? (xaccTransGetDescription parent)) + (and split-info? memo? (xaccSplitGetMemo split)))))) (if (memo-col column-vector) (addto! row-contents (gnc:make-html-table-cell/markup - "text-cell" - (if transaction-info? - (xaccSplitGetMemo split) - " ")))) + "text-cell" (and transaction-info? (xaccSplitGetMemo split))))) (if (account-col column-vector) (addto! row-contents (gnc:make-html-table-cell/markup @@ -231,24 +217,19 @@ (addto! row-contents (gnc:make-html-table-cell/markup "number-cell" - (if split-info? - (xaccSplitGetAmount split) - " ")))) + (and split-info? (xaccSplitGetAmount split))))) (if (lot-col column-vector) (addto! row-contents (gnc:make-html-table-cell/markup "text-cell" - (if split-info? - (gnc-lot-get-title (xaccSplitGetLot split)) - " ")))) + (if split-info? (gnc-lot-get-title (xaccSplitGetLot split)))))) (if (price-col column-vector) (addto! row-contents (gnc:make-html-table-cell/markup "number-cell" - (if split-info? - (gnc:default-price-renderer - trans-currency (xaccSplitGetSharePrice split)) - " ")))) + (and split-info? + (gnc:default-price-renderer + trans-currency (xaccSplitGetSharePrice split)))))) (if (amount-single-col column-vector) (addto! row-contents (if split-info? From d87c469e17c9cbdb52756c09b3708377123aa299 Mon Sep 17 00:00:00 2001 From: Christopher Lam Date: Fri, 30 Oct 2020 09:24:07 +0800 Subject: [PATCH 080/167] Bug 797993 - Reverse balance option does not apply to an Account Report --- gnucash/report/reports/standard/register.scm | 82 +++++++++----------- 1 file changed, 36 insertions(+), 46 deletions(-) diff --git a/gnucash/report/reports/standard/register.scm b/gnucash/report/reports/standard/register.scm index b73f0d6d81..98ea1d7f39 100644 --- a/gnucash/report/reports/standard/register.scm +++ b/gnucash/report/reports/standard/register.scm @@ -170,10 +170,13 @@ (let* ((row-contents '()) (parent (xaccSplitGetParent split)) (account (xaccSplitGetAccount split)) + (reverse? (gnc-reverse-balance account)) (currency (xaccAccountGetCommodity account)) (trans-currency (xaccTransGetCurrency parent)) (damount (xaccSplitGetAmount split)) - (split-value (gnc:make-gnc-monetary currency damount))) + (dvalue (xaccSplitGetValue split)) + (split-abs-amount (gnc:make-gnc-monetary currency (abs damount))) + (split-abs-value (gnc:make-gnc-monetary currency (abs dvalue)))) (if (date-col column-vector) (addto! row-contents @@ -232,54 +235,41 @@ trans-currency (xaccSplitGetSharePrice split)))))) (if (amount-single-col column-vector) (addto! row-contents - (if split-info? - (gnc:make-html-table-cell/markup - "number-cell" - (gnc:html-split-anchor split split-value)) - " "))) + (and split-info? + (gnc:make-html-table-cell/markup + "number-cell" + (gnc:html-split-anchor + split (gnc:make-gnc-monetary + currency (if reverse? (- damount) damount))))))) (if (debit-col column-vector) - (if (positive? (gnc:gnc-monetary-amount split-value)) - (addto! row-contents - (if split-info? - (gnc:make-html-table-cell/markup - "number-cell" - (gnc:html-split-anchor split split-value)) - " ")) - (addto! row-contents " "))) + (addto! row-contents + (and split-info? (positive? damount) + (gnc:make-html-table-cell/markup + "number-cell" + (gnc:html-split-anchor split split-abs-amount))))) (if (credit-col column-vector) - (if (not (positive? (gnc:gnc-monetary-amount split-value))) - (addto! row-contents - (if split-info? - (gnc:make-html-table-cell/markup - "number-cell" - (gnc:html-split-anchor - split (gnc:monetary-neg split-value))) - " ")) - (addto! row-contents " "))) + (addto! row-contents + (and split-info? (not (positive? damount)) + (gnc:make-html-table-cell/markup + "number-cell" + (gnc:html-split-anchor split split-abs-amount))))) (if (value-single-col column-vector) (addto! row-contents - (if split-info? - (gnc:make-html-table-cell/markup - "number-cell" - (gnc:make-gnc-monetary trans-currency - (xaccSplitGetValue split))) - " "))) + (and split-info? + (gnc:make-html-table-cell/markup + "number-cell" + (gnc:make-gnc-monetary + trans-currency (if reverse? (- dvalue) dvalue)))))) (if (value-debit-col column-vector) (addto! row-contents - (if (and split-info? (positive? (xaccSplitGetValue split))) - (gnc:make-html-table-cell/markup - "number-cell" - (gnc:make-gnc-monetary trans-currency - (xaccSplitGetValue split))) - " "))) + (and split-info? (positive? dvalue) + (gnc:make-html-table-cell/markup + "number-cell" split-abs-value)))) (if (value-credit-col column-vector) (addto! row-contents - (if (and split-info? (not (positive? (xaccSplitGetValue split)))) - (gnc:make-html-table-cell/markup - "number-cell" - (gnc:make-gnc-monetary trans-currency - (- (xaccSplitGetValue split)))) - " "))) + (and split-info? (not (positive? dvalue)) + (gnc:make-html-table-cell/markup + "number-cell" split-abs-value)))) ;; For single account registers, use the split's cached balance to remain ;; consistent with the balances shown in the register itself ;; For others, use the cumulated balance from the totals-collector @@ -292,9 +282,10 @@ split (gnc:make-gnc-monetary currency - (if ledger-type? - (cadr (total-collector 'getpair currency #f)) - (xaccSplitGetBalance split))))) + (cond + (ledger-type? (cadr (total-collector 'getpair currency #f))) + ((gnc-reverse-balance account) (- (xaccSplitGetBalance split))) + (else (xaccSplitGetBalance split)))))) " "))) (gnc:html-table-append-row/markup! table row-style @@ -328,8 +319,7 @@ (gnc-get-num-action parent #f) " "))) (gnc:html-table-append-row/markup! table row-style - (reverse row-contents)))))) - split-value)) + (reverse row-contents)))))))) (define (options-generator) From e9d1e694f29a8ef93cf910ba34311fa9c45717f6 Mon Sep 17 00:00:00 2001 From: Christopher Lam Date: Sun, 1 Nov 2020 07:57:06 +0800 Subject: [PATCH 081/167] Addendum to 0446dca54, fix currency bug --- gnucash/report/reports/standard/register.scm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/gnucash/report/reports/standard/register.scm b/gnucash/report/reports/standard/register.scm index 98ea1d7f39..8f2ff6c220 100644 --- a/gnucash/report/reports/standard/register.scm +++ b/gnucash/report/reports/standard/register.scm @@ -176,7 +176,7 @@ (damount (xaccSplitGetAmount split)) (dvalue (xaccSplitGetValue split)) (split-abs-amount (gnc:make-gnc-monetary currency (abs damount))) - (split-abs-value (gnc:make-gnc-monetary currency (abs dvalue)))) + (split-abs-value (gnc:make-gnc-monetary trans-currency (abs dvalue)))) (if (date-col column-vector) (addto! row-contents From 25e4efc2b7d788b6f0b61ea0a523d8cc6e572004 Mon Sep 17 00:00:00 2001 From: Christopher Lam Date: Wed, 28 Oct 2020 21:42:31 +0800 Subject: [PATCH 082/167] [core-utils.scm][API] gnc:string-locale? locale-sensitive string-sorting functions -- currently mirrors guile's (ice-9 i18n) functions -- may be modified to call C code if guile code is not reliable. --- bindings/guile/core-utils.scm | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/bindings/guile/core-utils.scm b/bindings/guile/core-utils.scm index 32179f1493..c08643cf11 100644 --- a/bindings/guile/core-utils.scm +++ b/bindings/guile/core-utils.scm @@ -28,12 +28,15 @@ #:export (N_ G_ C_ + gnc:string-locale? gnc:version)) ;; Guile 2 needs to find the symbols from the extension at compile time already (eval-when (compile load eval expand) (load-extension "libgnucash-guile" "gnc_guile_bindings_init")) (use-modules (sw_core_utils)) +(use-modules (ice-9 i18n)) ;; Export the swig-wrapped symbols in the public interface of this module (module-use! (module-public-interface (current-module)) @@ -54,3 +57,6 @@ (define-public (_ x) (issue-deprecation-warning "Using _ to call gettext is disallowed in guile-3 and will be removed in the future. Use G_ instead.") (gnc:gettext x)))) + +(define gnc:string-locale? string-locale>?) From a10c084022bca8e47755ebe50eccbfd0fca1b298 Mon Sep 17 00:00:00 2001 From: Christopher Lam Date: Fri, 30 Oct 2020 19:52:42 +0800 Subject: [PATCH 083/167] 1/3 [report-utilities][API] copy funcs engine.scm to report-utilities.scm The following copied from similarly named functions in libgnucash gnc:account-full-nameexact @@ -732,7 +732,7 @@ (list 'zero-balance-mode (if show-zb-accts? 'show-leaf-acct 'omit-leaf-acct)) (list 'report-budget budget))) - (accounts (sort accounts account-full-name Date: Fri, 30 Oct 2020 19:53:49 +0800 Subject: [PATCH 084/167] 2/3 [taxtxf] inline single-use scheme function from engine.scm --- gnucash/report/reports/locale-specific/de_DE/taxtxf.scm | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/gnucash/report/reports/locale-specific/de_DE/taxtxf.scm b/gnucash/report/reports/locale-specific/de_DE/taxtxf.scm index cd2fd5faf7..7048ee8548 100644 --- a/gnucash/report/reports/locale-specific/de_DE/taxtxf.scm +++ b/gnucash/report/reports/locale-specific/de_DE/taxtxf.scm @@ -471,9 +471,8 @@ (txf-special-split? (gnc:account-get-txf-code account))) (+ gen 1) ; Est Fed Tax has a extra generation gen) ; no kids, return input - (apply max (gnc:account-map-children - (lambda (x) (num-generations x (+ 1 gen))) - account)))) + (apply max (map (lambda (x) (num-generations x (1+ gen))) + (or (gnc-account-get-children-sorted account) '()))))) (gnc:report-starting reportname) (let* ((from-value (gnc:date-option-absolute-time From 8628ffa957b0e9446a6ff62df2cfd949a2107172 Mon Sep 17 00:00:00 2001 From: Christopher Lam Date: Fri, 30 Oct 2020 19:54:06 +0800 Subject: [PATCH 085/167] 3/3 [engine.scm] deprecate scheme utility functions --- bindings/guile/engine.scm | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/bindings/guile/engine.scm b/bindings/guile/engine.scm index da91cf47cf..6b74ed3b59 100644 --- a/bindings/guile/engine.scm +++ b/bindings/guile/engine.scm @@ -81,20 +81,24 @@ ;; A few account related utility functions which used to be in engine-utilities.scm (define (gnc:account-map-descendants thunk account) + (issue-deprecation-warning "gnc:account-map-descendants is deprecated.") (let ((descendants (or (gnc-account-get-descendants-sorted account) '()))) (map thunk descendants))) (define (gnc:account-map-children thunk account) + (issue-deprecation-warning "gnc:account-map-children is deprecated.") (let ((children (or (gnc-account-get-children-sorted account) '()))) (map thunk children))) ;; account related functions ;; helper for sorting of account list (define (account-full-name Date: Tue, 27 Oct 2020 21:51:00 +0800 Subject: [PATCH 086/167] Bug 797989 - Sorting columns by alphabet with non-ASCII characters use gnc:string-locale for string sorting --- gnucash/gnome/report-menus.scm | 2 +- .../import-export/qif-imp/qif-dialog-utils.scm | 16 ++++++++-------- gnucash/report/html-acct-table.scm | 12 ++++++------ gnucash/report/html-style-sheet.scm | 8 ++++---- gnucash/report/report-core.scm | 3 ++- gnucash/report/report-utilities.scm | 4 ++-- .../reports/standard/account-piecharts.scm | 16 ++++++++-------- .../reports/standard/category-barchart.scm | 12 ++++++------ .../report/reports/standard/customer-summary.scm | 6 ++++-- gnucash/report/reports/standard/new-aging.scm | 2 +- gnucash/report/trep-engine.scm | 4 ++-- 11 files changed, 44 insertions(+), 41 deletions(-) diff --git a/gnucash/gnome/report-menus.scm b/gnucash/gnome/report-menus.scm index c230ed08e4..4eb08fa286 100644 --- a/gnucash/gnome/report-menus.scm +++ b/gnucash/gnome/report-menus.scm @@ -65,7 +65,7 @@ (gnc-main-window-open-report (gnc:make-report report-guid) window)))))) (sort (filter (compose gnc:report-template-in-menu? cdr) *template-items*) - (lambda (a b) (string>? (car a) (car b)))))) + (lambda (a b) (gnc:string-locale>? (car a) (car b)))))) (define (gnc:report-menu-setup) (define asset-liability-menu diff --git a/gnucash/import-export/qif-imp/qif-dialog-utils.scm b/gnucash/import-export/qif-imp/qif-dialog-utils.scm index ad6aa53f96..abddb2e84d 100644 --- a/gnucash/import-export/qif-imp/qif-dialog-utils.scm +++ b/gnucash/import-export/qif-imp/qif-dialog-utils.scm @@ -412,8 +412,8 @@ (set! retval (sort retval (lambda (a b) - (stringlist cons *gnc:_style-sheets_*)) (lambda (a b) - (stringlist cons *gnc:_style-sheet-templates_*)) (lambda (a b) - (stringtemplates report))) diff --git a/gnucash/report/report-utilities.scm b/gnucash/report/report-utilities.scm index 405af4d023..d3eb1d69d1 100644 --- a/gnucash/report/report-utilities.scm +++ b/gnucash/report/report-utilities.scm @@ -138,8 +138,8 @@ (sort-and-delete-duplicates (map xaccAccountGetCommodity accounts) (lambda (a b) - (string (car a) (car b)))))) @@ -223,12 +223,12 @@ balance at a given time")) (cond ((eq? sort-method 'acct-code) (lambda (a b) - (string (car a) (car b)))))) diff --git a/gnucash/report/reports/standard/category-barchart.scm b/gnucash/report/reports/standard/category-barchart.scm index a8523b2e4d..fc85be08c7 100644 --- a/gnucash/report/reports/standard/category-barchart.scm +++ b/gnucash/report/reports/standard/category-barchart.scm @@ -479,14 +479,14 @@ developing over time")) ((alphabetical) (lambda (a b) (if show-fullname? - (string (gnc:gnc-monetary-amount (apply gnc:monetary+ (cadr a))) diff --git a/gnucash/report/reports/standard/customer-summary.scm b/gnucash/report/reports/standard/customer-summary.scm index d89986e65c..1f2f9aa0e2 100644 --- a/gnucash/report/reports/standard/customer-summary.scm +++ b/gnucash/report/reports/standard/customer-summary.scm @@ -406,7 +406,9 @@ ;; Stable-sort the sortingtable according to column, then ;; stable-sort according to currency. This results in group-by ;; currency then sort by columns. - (let* ((str-op (if (eq? sort-order 'descend) string>? string? + gnc:string-locale <))) (define (?)) + (op-str (if increasing? gnc:string-locale?)) (op-num (if increasing? < >))) (case sort-by ((name) (op-str (gncOwnerGetName own1) (gncOwnerGetName own2))) diff --git a/gnucash/report/trep-engine.scm b/gnucash/report/trep-engine.scm index 894505083b..5e6d5fe0ec 100644 --- a/gnucash/report/trep-engine.scm +++ b/gnucash/report/trep-engine.scm @@ -2089,7 +2089,7 @@ warning will be removed in GnuCash 5.0")) (value-of-X (comparator-function split-X)) (value-of-Y (comparator-function split-Y)) (op (if (string? value-of-X) - (if ascend? string?) + (if ascend? gnc:string-locale?) (if ascend? < >)))) (and value-of-X (op value-of-X value-of-Y)))) @@ -2245,7 +2245,7 @@ warning will be removed in GnuCash 5.0")) (when subtotal-table? (let* ((generic Date: Sun, 1 Nov 2020 21:02:14 +0800 Subject: [PATCH 087/167] [dialog-tax-table.c] free GList after use --- gnucash/gnome-utils/dialog-tax-table.c | 3 +++ 1 file changed, 3 insertions(+) diff --git a/gnucash/gnome-utils/dialog-tax-table.c b/gnucash/gnome-utils/dialog-tax-table.c index b78778b7a6..803eed3c4e 100644 --- a/gnucash/gnome-utils/dialog-tax-table.c +++ b/gnucash/gnome-utils/dialog-tax-table.c @@ -409,6 +409,9 @@ tax_table_entries_refresh (TaxTableWindow *ttw) g_free (row_text[1]); } + if (list) + g_list_free (list); + if (reference) { path = gtk_tree_row_reference_get_path (reference); From 5ced417467c41138f3c0e94d6dd2d7185b7553d6 Mon Sep 17 00:00:00 2001 From: John Ralls Date: Sun, 1 Nov 2020 16:32:09 -0800 Subject: [PATCH 088/167] Bug 797994 - Account type-ahead search doesn't match accented... characters. Because of normalizing the account name but not the search pattern. --- gnucash/register/register-gnome/combocell-gnome.c | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/gnucash/register/register-gnome/combocell-gnome.c b/gnucash/register/register-gnome/combocell-gnome.c index 27add82e78..27fd7c799a 100644 --- a/gnucash/register/register-gnome/combocell-gnome.c +++ b/gnucash/register/register-gnome/combocell-gnome.c @@ -536,7 +536,8 @@ gnc_combo_cell_type_ahead_search (const gchar* newval, GRegex* regex0 = g_regex_new (escaped_sep, 0, 0, NULL); char* rep_str = g_regex_replace_literal (regex0, escaped_newval, -1, 0, newval_rep, 0, NULL); - GRegex *regex = g_regex_new (rep_str, G_REGEX_CASELESS, 0, NULL); + char* normal_rep_str = g_utf8_normalize (rep_str, -1, G_NORMALIZE_ALL); + GRegex *regex = g_regex_new (normal_rep_str, G_REGEX_CASELESS, 0, NULL); gboolean valid = gtk_tree_model_get_iter_first (GTK_TREE_MODEL (full_store), &iter); @@ -546,6 +547,7 @@ gnc_combo_cell_type_ahead_search (const gchar* newval, */ static const gint MAX_NUM_MATCHES = 30; + g_free (normal_rep_str); g_free (rep_str); g_free (newval_rep); g_free (escaped_sep); From 6d6eff6b70fd3a5c708e847d093959ef71d04b86 Mon Sep 17 00:00:00 2001 From: Christopher Lam Date: Tue, 27 Oct 2020 06:47:07 +0800 Subject: [PATCH 089/167] Expose ngettext as gnc:ngettext --- bindings/core-utils.i | 3 +++ bindings/guile/core-utils.scm | 2 ++ po/gnucash-pot.cmake | 1 + 3 files changed, 6 insertions(+) diff --git a/bindings/core-utils.i b/bindings/core-utils.i index 27976f2136..288e5c1d66 100644 --- a/bindings/core-utils.i +++ b/bindings/core-utils.i @@ -157,6 +157,9 @@ gchar *gnc_locale_name (void); } +%rename ("gnc:ngettext") ngettext; +extern const char* ngettext (const char *msgid1, const char *msgid2, + unsigned long int n); %rename ("gnc:gettext") gettext; extern const char* gettext(const char*); %rename ("gnc:C_gettext") wrap_C_; diff --git a/bindings/guile/core-utils.scm b/bindings/guile/core-utils.scm index c08643cf11..58685cee05 100644 --- a/bindings/guile/core-utils.scm +++ b/bindings/guile/core-utils.scm @@ -27,6 +27,7 @@ (define-module (gnucash core-utils) #:export (N_ G_ + NG_ C_ gnc:string-locale? @@ -46,6 +47,7 @@ ;; gettext functions (define G_ gnc:gettext) +(define NG_ gnc:ngettext) (define C_ gnc:C-gettext) (define-syntax-rule (N_ x) x) diff --git a/po/gnucash-pot.cmake b/po/gnucash-pot.cmake index d9c1e31f60..f59dba9adc 100644 --- a/po/gnucash-pot.cmake +++ b/po/gnucash-pot.cmake @@ -24,6 +24,7 @@ execute_process( --keyword=Q_:1g --keyword=G_ --keyword=N_ + --keyword=NG_:1,2 --keyword=C_:1c,2 --keyword=NC_:1c,2 --keyword=translate:1,1t From 0862143b9950705d9bc6d70c0f7fbbf9ef1e6f9b Mon Sep 17 00:00:00 2001 From: Christopher Lam Date: Tue, 27 Oct 2020 06:47:37 +0800 Subject: [PATCH 090/167] Use gnc:ngettext to pluralise strings --- gnucash/report/html-utilities.scm | 10 ++++------ 1 file changed, 4 insertions(+), 6 deletions(-) diff --git a/gnucash/report/html-utilities.scm b/gnucash/report/html-utilities.scm index 50629e01d6..fc8b80ead9 100644 --- a/gnucash/report/html-utilities.scm +++ b/gnucash/report/html-utilities.scm @@ -210,9 +210,10 @@ (issue-deprecation-warning "gnc:html-make-exchangerates is deprecated. use gnc:html-make-rates-table instead.") (let ((comm-list (gnc:accounts-get-commodities accounts common-commodity)) + (entries (length comm-list)) (markup (lambda (c) (gnc:make-html-table-cell/markup "number-cell" c))) (table (gnc:make-html-table))) - (unless (null? comm-list) + (unless (= 0 entries) (for-each (lambda (commodity) (let* ((orig-amt (gnc:make-gnc-monetary commodity 1)) @@ -225,9 +226,7 @@ comm-list) (gnc:html-table-set-col-headers! table (list (gnc:make-html-table-header-cell/size - 1 2 (if (null? (cdr comm-list)) - (G_ "Exchange rate") - (G_ "Exchange rates")))))) + 1 2 (NG_ "Exchange rate" "Exchange rates" entries))))) table)) ;; Create a html-table of all prices. The report-currency is @@ -244,8 +243,7 @@ (unless (zero? entries) (gnc:html-table-set-col-headers! table (list (gnc:make-html-table-header-cell/size - 1 2 (if (= entries 1) (G_ "Exchange rate") - (G_ "Exchange rates")))))) + 1 2 (NG_ "Exchange rate" "Exchange rates" entries))))) table) ((comm . rest) (gnc:html-table-append-row! From 362315886a56f2281cd42ea87711662cca8dca33 Mon Sep 17 00:00:00 2001 From: "Frank H. Ellenberger" Date: Mon, 2 Nov 2020 23:19:55 +0100 Subject: [PATCH 091/167] L10N:de: merge pot --- po/de.po | 870 ++++++++++++++++++++++++++++--------------------------- 1 file changed, 449 insertions(+), 421 deletions(-) diff --git a/po/de.po b/po/de.po index 445bc60317..21e7fe9723 100644 --- a/po/de.po +++ b/po/de.po @@ -24,7 +24,7 @@ msgstr "" "Project-Id-Version: GnuCash 3.10+\n" "Report-Msgid-Bugs-To: https://bugs.gnucash.org/enter_bug.cgi?" "product=GnuCash&component=Translations\n" -"POT-Creation-Date: 2020-10-14 01:49+0200\n" +"POT-Creation-Date: 2020-11-02 23:00+0100\n" "PO-Revision-Date: 2020-10-27 21:23+0100\n" "Last-Translator: Christian Stimming \n" "Language-Team: Deutschsprachige GnuCash-Gemeinde \n" @@ -896,7 +896,7 @@ msgid "No" msgstr "Nein" #: gnucash/gnome/assistant-hierarchy.c:1335 -#: gnucash/gnome-utils/dialog-options.c:717 +#: gnucash/gnome-utils/dialog-options.c:729 #: gnucash/gnome-utils/gnc-tree-view-account.c:965 #: gnucash/gtkbuilder/dialog-account.glade:272 msgid "Placeholder" @@ -1005,7 +1005,7 @@ msgstr "Darlehensrechner-Option: \"%s\"" #: gnucash/import-export/csv-exp/csv-transactions-export.c:622 #: gnucash/import-export/csv-imp/gnc-imp-props-price.cpp:49 #: gnucash/import-export/csv-imp/gnc-imp-props-tx.cpp:58 -#: gnucash/import-export/import-main-matcher.c:1034 +#: gnucash/import-export/import-main-matcher.c:1038 #: gnucash/import-export/import-match-picker.c:393 #: gnucash/import-export/import-match-picker.c:433 #: gnucash/import-export/qif-imp/assistant-qif-import.c:3700 @@ -1033,7 +1033,7 @@ msgstr "Darlehensrechner-Option: \"%s\"" #: gnucash/report/reports/standard/owner-report.scm:50 #: gnucash/report/reports/standard/portfolio.scm:51 #: gnucash/report/reports/standard/register.scm:130 -#: gnucash/report/reports/standard/register.scm:382 +#: gnucash/report/reports/standard/register.scm:353 #: gnucash/report/reports/support/receipt.eguile.scm:143 #: gnucash/report/reports/support/taxinvoice.eguile.scm:268 #: gnucash/report/trep-engine.scm:161 gnucash/report/trep-engine.scm:940 @@ -1106,7 +1106,7 @@ msgstr "Fehler beim Hinzufügen des Preises." #: gnucash/import-export/aqb/gnc-ab-utils.c:541 #: gnucash/import-export/bi-import/dialog-bi-import-gui.c:151 #: gnucash/import-export/csv-imp/gnc-imp-props-tx.cpp:65 -#: gnucash/import-export/import-main-matcher.c:1035 +#: gnucash/import-export/import-main-matcher.c:1039 #: gnucash/import-export/import-match-picker.c:392 #: gnucash/import-export/qif-imp/dialog-account-picker.c:433 #: gnucash/register/ledger-core/split-register-model.c:341 @@ -1121,7 +1121,7 @@ msgstr "Fehler beim Hinzufügen des Preises." #: gnucash/report/reports/standard/owner-report.scm:48 #: gnucash/report/reports/standard/portfolio.scm:253 #: gnucash/report/reports/standard/register.scm:143 -#: gnucash/report/reports/standard/register.scm:407 +#: gnucash/report/reports/standard/register.scm:378 #: gnucash/report/trep-engine.scm:1218 msgid "Account" msgstr "Konto" @@ -1141,7 +1141,7 @@ msgstr "Symbol" #: gnucash/report/reports/standard/general-ledger.scm:78 #: gnucash/report/reports/standard/general-ledger.scm:98 #: gnucash/report/reports/standard/register.scm:146 -#: gnucash/report/reports/standard/register.scm:412 +#: gnucash/report/reports/standard/register.scm:383 #: gnucash/report/trep-engine.scm:953 gnucash/report/trep-engine.scm:1078 #: gnucash/report/trep-engine.scm:1240 msgid "Shares" @@ -1212,7 +1212,7 @@ msgstr "Rechnung" #: gnucash/import-export/csv-imp/gnc-imp-props-price.cpp:48 #: gnucash/import-export/csv-imp/gnc-imp-props-tx.cpp:56 #: gnucash/import-export/import-pending-matches.c:192 -#: gnucash/report/reports/standard/register.scm:228 +#: gnucash/report/reports/standard/register.scm:217 #: gnucash/report/trep-engine.scm:258 gnucash/report/trep-engine.scm:291 #: gnucash/report/trep-engine.scm:341 gnucash/report/trep-engine.scm:429 #: gnucash/report/trep-engine.scm:1020 libgnucash/engine/gncOwner.c:213 @@ -1299,7 +1299,7 @@ msgid "Term \"%s\" is in use. You cannot delete it." msgstr "Zahlungsbedingung »%s« ist in Benutzung. Sie können sie nicht löschen." #: gnucash/gnome/dialog-billterms.c:678 -#: gnucash/gnome-utils/dialog-tax-table.c:670 +#: gnucash/gnome-utils/dialog-tax-table.c:673 #, c-format msgid "Are you sure you want to delete \"%s\"?" msgstr "Sind Sie sicher, dass Sie “%s” löschen möchten?" @@ -1349,18 +1349,19 @@ msgstr "Devise/Wertpapier löschen?" #: gnucash/gnome/dialog-price-edit-db.c:206 #: gnucash/gnome/dialog-price-editor.c:232 gnucash/gnome/dialog-tax-info.c:1189 #: gnucash/gnome/gnc-plugin-budget.c:289 -#: gnucash/gnome/gnc-plugin-page-account-tree.c:1765 +#: gnucash/gnome/gnc-plugin-page-account-tree.c:1787 #: gnucash/gnome/gnc-plugin-page-invoice.c:184 #: gnucash/gnome/gnc-plugin-page-owner-tree.c:1111 #: gnucash/gnome/gnc-plugin-page-register2.c:1630 -#: gnucash/gnome/gnc-plugin-page-register.c:1984 +#: gnucash/gnome/gnc-plugin-page-register.c:1990 #: gnucash/gnome/gnc-split-reg.c:975 gnucash/gnome/gnc-split-reg.c:1013 #: gnucash/gnome/gnc-split-reg.c:1235 gnucash/gnome/gnc-split-reg.c:1503 #: gnucash/gnome/gnc-split-reg.c:1543 gnucash/gnome/window-reconcile2.c:2124 #: gnucash/gnome/window-reconcile.c:2345 #: gnucash/gnome-search/search-account.c:237 #: gnucash/gnome-utils/dialog-account.c:679 -#: gnucash/gnome-utils/dialog-tax-table.c:600 +#: gnucash/gnome-utils/dialog-options.c:224 +#: gnucash/gnome-utils/dialog-tax-table.c:603 #: gnucash/gnome-utils/gnc-file.c:118 gnucash/gnome-utils/gnc-file.c:366 #: gnucash/gnome-utils/gnc-file.c:664 gnucash/gnome-utils/gnc-gui-query.c:300 #: gnucash/gnome-utils/gnc-main-window.c:1293 @@ -1429,7 +1430,7 @@ msgstr "Devise/Wertpapier löschen?" #: gnucash/gtkbuilder/gnc-plugin-page-register.glade:934 #: gnucash/gtkbuilder/gnc-plugin-page-register.glade:1144 #: gnucash/gtkbuilder/gnc-tree-view-owner.glade:24 -#: gnucash/gtkbuilder/window-autoclear.glade:22 +#: gnucash/gtkbuilder/window-autoclear.glade:25 #: gnucash/gtkbuilder/window-reconcile.glade:21 #: gnucash/html/gnc-html-webkit1.c:1197 #: gnucash/import-export/aqb/dialog-ab.glade:302 @@ -1448,7 +1449,7 @@ msgstr "_Abbrechen" #: gnucash/gnome/dialog-commodities.c:218 #: gnucash/gnome/dialog-price-edit-db.c:207 -#: gnucash/gnome/gnc-plugin-page-account-tree.c:1766 +#: gnucash/gnome/gnc-plugin-page-account-tree.c:1788 #: gnucash/gnome/gnc-plugin-page-invoice.c:189 #: gnucash/gnome/gnc-plugin-page-owner-tree.c:1112 #: gnucash/gnome/gnc-plugin-page-sx-list.c:162 @@ -1697,14 +1698,14 @@ msgstr "Buchungen mit Verknüpfungen" #: gnucash/import-export/csv-exp/csv-transactions-export.c:615 #: gnucash/import-export/csv-exp/csv-transactions-export.c:624 #: gnucash/import-export/csv-imp/gnc-imp-props-tx.cpp:60 -#: gnucash/import-export/import-main-matcher.c:1038 +#: gnucash/import-export/import-main-matcher.c:1042 #: gnucash/import-export/import-match-picker.c:395 #: gnucash/import-export/import-match-picker.c:435 #: gnucash/import-export/qif-imp/assistant-qif-import.c:3710 #: gnucash/import-export/qif-imp/assistant-qif-import.c:3761 #: gnucash/register/ledger-core/gncEntryLedgerModel.c:67 #: gnucash/register/ledger-core/split-register-model.c:295 -#: gnucash/report/reports/standard/account-summary.scm:408 +#: gnucash/report/reports/standard/account-summary.scm:409 #: gnucash/report/reports/standard/customer-summary.scm:73 #: gnucash/report/reports/standard/general-journal.scm:96 #: gnucash/report/reports/standard/general-ledger.scm:70 @@ -1716,7 +1717,7 @@ msgstr "Buchungen mit Verknüpfungen" #: gnucash/report/reports/standard/new-owner-report.scm:240 #: gnucash/report/reports/standard/owner-report.scm:54 #: gnucash/report/reports/standard/register.scm:138 -#: gnucash/report/reports/standard/register.scm:397 +#: gnucash/report/reports/standard/register.scm:368 #: gnucash/report/reports/support/taxinvoice.eguile.scm:270 #: gnucash/report/trep-engine.scm:215 gnucash/report/trep-engine.scm:945 #: gnucash/report/trep-engine.scm:1073 gnucash/report/trep-engine.scm:1198 @@ -1918,7 +1919,7 @@ msgstr "Wertpapier-/Anteilspreis" #: gnucash/gtkbuilder/assistant-loan.glade:764 #: gnucash/gtkbuilder/dialog-transfer.glade:112 #: gnucash/import-export/csv-imp/gnc-imp-props-price.cpp:50 -#: gnucash/import-export/import-main-matcher.c:1037 +#: gnucash/import-export/import-main-matcher.c:1041 #: gnucash/import-export/import-match-picker.c:394 #: gnucash/import-export/import-match-picker.c:434 #: gnucash/import-export/qif-imp/assistant-qif-import.c:3721 @@ -1931,8 +1932,8 @@ msgstr "Wertpapier-/Anteilspreis" #: gnucash/report/reports/standard/job-report.scm:45 #: gnucash/report/reports/standard/new-owner-report.scm:244 #: gnucash/report/reports/standard/owner-report.scm:59 -#: gnucash/report/reports/standard/register.scm:427 -#: gnucash/report/reports/standard/register.scm:676 +#: gnucash/report/reports/standard/register.scm:398 +#: gnucash/report/reports/standard/register.scm:647 #: gnucash/report/trep-engine.scm:207 gnucash/report/trep-engine.scm:1016 #: gnucash/report/trep-engine.scm:1067 gnucash/report/trep-engine.scm:1348 #: gnucash/report/trep-engine.scm:1364 gnucash/report/trep-engine.scm:2058 @@ -1949,7 +1950,7 @@ msgstr "Betrag" #: gnucash/report/reports/standard/advanced-portfolio.scm:1080 #: gnucash/report/reports/standard/portfolio.scm:258 #: gnucash/report/reports/standard/register.scm:158 -#: gnucash/report/reports/standard/register.scm:436 +#: gnucash/report/reports/standard/register.scm:407 msgid "Value" msgstr "Wert" @@ -1969,8 +1970,8 @@ msgstr "Buchungsdatum" #: gnucash/gnome/dialog-find-transactions.c:132 #: gnucash/gnome/dialog-find-transactions.c:171 #: gnucash/gnome/dialog-find-transactions.c:177 -#: gnucash/gnome/gnc-plugin-page-register.c:2476 -#: gnucash/gnome/gnc-plugin-page-register.c:4160 +#: gnucash/gnome/gnc-plugin-page-register.c:2482 +#: gnucash/gnome/gnc-plugin-page-register.c:4166 #: gnucash/gnome-search/dialog-search.c:866 #: gnucash/gnome-search/dialog-search.c:872 #: gnucash/import-export/csv-exp/csv-transactions-export.c:626 @@ -1984,7 +1985,7 @@ msgstr "Nummer/Aktion" #: gnucash/gnome/dialog-find-transactions.c:133 #: gnucash/gnome/dialog-find-transactions.c:170 #: gnucash/gnome/dialog-find-transactions.c:178 -#: gnucash/gnome/gnc-plugin-page-register.c:2481 +#: gnucash/gnome/gnc-plugin-page-register.c:2487 #: gnucash/gnome/gnc-split-reg.c:703 gnucash/gnome-search/dialog-search.c:865 #: gnucash/gnome-search/dialog-search.c:873 #: gnucash/gnome-utils/gnc-tree-view-split-reg.c:2749 @@ -2008,8 +2009,8 @@ msgstr "Aktion" #: gnucash/gnome/dialog-find-transactions.c:136 #: gnucash/gnome/dialog-find-transactions.c:173 #: gnucash/gnome/dialog-find-transactions.c:179 -#: gnucash/gnome/gnc-plugin-page-register.c:2475 -#: gnucash/gnome/gnc-plugin-page-register.c:4159 +#: gnucash/gnome/gnc-plugin-page-register.c:2481 +#: gnucash/gnome/gnc-plugin-page-register.c:4165 #: gnucash/gnome-search/dialog-search.c:868 #: gnucash/gnome-search/dialog-search.c:874 #: gnucash/import-export/csv-exp/csv-transactions-export.c:614 @@ -2024,7 +2025,7 @@ msgstr "Buchungsnummer" #: gnucash/gnome/dialog-find-transactions.c:137 #: gnucash/gnome/dialog-find-transactions.c:172 #: gnucash/gnome/dialog-find-transactions.c:180 -#: gnucash/gnome/gnc-plugin-page-register.c:2480 +#: gnucash/gnome/gnc-plugin-page-register.c:2486 #: gnucash/gnome/gnc-split-reg.c:691 gnucash/gnome-search/dialog-search.c:867 #: gnucash/gnome-search/dialog-search.c:875 #: gnucash/gnome-utils/gnc-tree-view-split-reg.c:2765 @@ -2053,14 +2054,14 @@ msgstr "Beschreibung / Bemerkung / Buchungstext" #: gnucash/gtkbuilder/dialog-transfer.glade:215 #: gnucash/import-export/csv-exp/csv-transactions-export.c:626 #: gnucash/import-export/csv-imp/gnc-imp-props-tx.cpp:69 -#: gnucash/import-export/import-main-matcher.c:1039 +#: gnucash/import-export/import-main-matcher.c:1043 #: gnucash/import-export/import-match-picker.c:396 #: gnucash/import-export/import-match-picker.c:436 #: gnucash/register/ledger-core/split-register-model.c:355 #: gnucash/report/reports/standard/general-ledger.scm:71 #: gnucash/report/reports/standard/general-ledger.scm:91 #: gnucash/report/reports/standard/register.scm:140 -#: gnucash/report/reports/standard/register.scm:402 +#: gnucash/report/reports/standard/register.scm:373 #: gnucash/report/trep-engine.scm:244 gnucash/report/trep-engine.scm:971 #: gnucash/report/trep-engine.scm:1095 gnucash/report/trep-engine.scm:1208 #: gnucash/report/trep-engine.scm:1209 @@ -2087,7 +2088,7 @@ msgstr "Buchungstext" #: gnucash/import-export/csv-imp/gnc-imp-props-tx.cpp:61 #: gnucash/import-export/customer-import/dialog-customer-import-gui.c:138 #: gnucash/register/ledger-core/split-register-model.c:491 -#: gnucash/report/reports/standard/account-summary.scm:436 +#: gnucash/report/reports/standard/account-summary.scm:437 #: gnucash/report/reports/standard/balsheet-eg.scm:195 #: gnucash/report/reports/standard/receipt.scm:38 #: gnucash/report/reports/standard/taxinvoice.scm:78 @@ -2486,7 +2487,7 @@ msgstr "Bemerkungen Auslagenerstattung" #: gnucash/gtkbuilder/dialog-payment.glade:280 #: gnucash/gtkbuilder/dialog-tax-info.glade:127 #: gnucash/register/ledger-core/split-register-model.c:362 -#: gnucash/report/reports/standard/account-summary.scm:407 +#: gnucash/report/reports/standard/account-summary.scm:408 #: gnucash/report/reports/standard/customer-summary.scm:72 #: gnucash/report/reports/standard/job-report.scm:43 #: gnucash/report/reports/standard/new-owner-report.scm:52 @@ -2525,7 +2526,7 @@ msgstr "Geöffnet" #: gnucash/report/reports/standard/general-journal.scm:95 #: gnucash/report/reports/standard/general-ledger.scm:89 #: gnucash/report/reports/standard/register.scm:136 -#: gnucash/report/reports/standard/register.scm:392 +#: gnucash/report/reports/standard/register.scm:363 #: gnucash/report/trep-engine.scm:944 gnucash/report/trep-engine.scm:1072 #: gnucash/report/trep-engine.scm:1180 msgid "Num" @@ -2644,8 +2645,8 @@ msgstr "Geschlossen" #: gnucash/gnome/dialog-lot-viewer.c:886 #: gnucash/gtkbuilder/assistant-acct-period.glade:143 -#: gnucash/report/html-fonts.scm:69 -#: gnucash/report/reports/standard/register.scm:376 +#: gnucash/report/html-fonts.scm:93 +#: gnucash/report/reports/standard/register.scm:347 msgid "Title" msgstr "Titel" @@ -2656,7 +2657,7 @@ msgstr "Titel" #: gnucash/gnome-utils/gnc-tree-view-split-reg.c:3112 #: gnucash/register/ledger-core/split-register-model.c:320 #: gnucash/register/ledger-core/split-register-model.c:484 -#: gnucash/report/reports/standard/account-summary.scm:421 +#: gnucash/report/reports/standard/account-summary.scm:422 #: gnucash/report/reports/standard/balance-forecast.scm:248 #: gnucash/report/reports/standard/job-report.scm:206 #: gnucash/report/reports/standard/new-owner-report.scm:58 @@ -3296,7 +3297,7 @@ msgid "Form Line Data: " msgstr "Daten der Formularzeilen:" #: gnucash/gnome/dialog-tax-info.c:291 -#: gnucash/report/reports/standard/account-summary.scm:406 +#: gnucash/report/reports/standard/account-summary.scm:407 msgid "Code" msgstr "Code" @@ -3391,17 +3392,17 @@ msgstr "Lieferant suchen" #: gnucash/report/reports/standard/balsheet-pnl.scm:1264 #: gnucash/report/reports/standard/net-charts.scm:350 #: gnucash/report/reports/standard/net-charts.scm:420 -#: gnucash/report/report-utilities.scm:110 libgnucash/engine/Account.cpp:170 -#: libgnucash/engine/Account.cpp:4322 libgnucash/engine/Scrub.c:449 +#: gnucash/report/report-utilities.scm:122 libgnucash/engine/Account.cpp:170 +#: libgnucash/engine/Account.cpp:4322 libgnucash/engine/Scrub.c:464 msgid "Income" msgstr "Ertrag" #: gnucash/gnome/gnc-budget-view.c:502 #: gnucash/import-export/qif-imp/qif-dialog-utils.scm:80 #: gnucash/import-export/qif-imp/qif-dialog-utils.scm:85 -#: gnucash/report/reports/standard/budget-income-statement.scm:520 +#: gnucash/report/reports/standard/budget-income-statement.scm:521 #: gnucash/report/reports/standard/income-statement.scm:512 -#: gnucash/report/report-utilities.scm:111 +#: gnucash/report/report-utilities.scm:123 msgid "Expenses" msgstr "Aufwand" @@ -3430,8 +3431,8 @@ msgstr "Im Budget verbleibend" #: gnucash/report/reports/standard/budget-flow.scm:168 #: gnucash/report/reports/standard/budget-flow.scm:247 #: gnucash/report/reports/standard/budget.scm:511 -#: gnucash/report/reports/standard/customer-summary.scm:476 #: gnucash/report/reports/standard/customer-summary.scm:478 +#: gnucash/report/reports/standard/customer-summary.scm:480 #: gnucash/report/reports/standard/invoice.scm:104 #: gnucash/report/reports/standard/invoice.scm:252 #: gnucash/report/reports/standard/new-aging.scm:200 @@ -3760,7 +3761,7 @@ msgstr "Budget auswählen" #: gnucash/gtkbuilder/gnc-plugin-page-register.glade:949 #: gnucash/gtkbuilder/gnc-plugin-page-register.glade:1159 #: gnucash/gtkbuilder/gnc-tree-view-owner.glade:39 -#: gnucash/gtkbuilder/window-autoclear.glade:38 +#: gnucash/gtkbuilder/window-autoclear.glade:41 #: gnucash/gtkbuilder/window-reconcile.glade:36 #: gnucash/import-export/aqb/dialog-ab.glade:317 #: gnucash/import-export/aqb/dialog-ab.glade:595 @@ -4298,13 +4299,15 @@ msgstr "Neu" msgid "Delete" msgstr "Löschen" -#: gnucash/gnome/gnc-plugin-page-account-tree.c:440 -#: gnucash/gnome/gnc-plugin-page-register.c:1934 +#: gnucash/gnome/gnc-plugin-page-account-tree.c:454 +#: gnucash/gnome/gnc-plugin-page-account-tree.c:1989 +#: gnucash/gnome/gnc-plugin-page-register.c:1939 +#: gnucash/gnome/gnc-plugin-page-register.c:5022 msgid "'Check & Repair' is currently running, do you want to abort it?" msgstr "»Konto überprüfen« läuft derzeit. Wollen Sie es abbrechen?" -#: gnucash/gnome/gnc-plugin-page-account-tree.c:498 -#: gnucash/gnome/gnc-plugin-page-account-tree.c:504 +#: gnucash/gnome/gnc-plugin-page-account-tree.c:520 +#: gnucash/gnome/gnc-plugin-page-account-tree.c:526 #: gnucash/gnome-utils/gnc-tree-view-split-reg.c:2829 #: gnucash/gnome-utils/gnc-tree-view-split-reg.c:2831 #: gnucash/gnome-utils/gnc-tree-view-split-reg.c:2833 @@ -4337,7 +4340,7 @@ msgstr "»Konto überprüfen« läuft derzeit. Wollen Sie es abbrechen?" msgid "Accounts" msgstr "Konten" -#: gnucash/gnome/gnc-plugin-page-account-tree.c:1407 +#: gnucash/gnome/gnc-plugin-page-account-tree.c:1429 #, c-format msgid "" "Account %s does not have the same currency as the one you're moving " @@ -4347,26 +4350,26 @@ msgstr "" "Das Zielkonto %s hat nicht die gleiche Währung wie das Konto, von dem Sie " "die Buchungen verschieben. Sollen die Buchungen trotzdem verschoben werden?" -#: gnucash/gnome/gnc-plugin-page-account-tree.c:1415 +#: gnucash/gnome/gnc-plugin-page-account-tree.c:1437 msgid "_Pick another account" msgstr "_Anderes Konto wählen" -#: gnucash/gnome/gnc-plugin-page-account-tree.c:1416 +#: gnucash/gnome/gnc-plugin-page-account-tree.c:1438 msgid "_Do it anyway" msgstr "Buchungen _trotzdem verschieben" -#: gnucash/gnome/gnc-plugin-page-account-tree.c:1499 -#: gnucash/gnome/gnc-plugin-page-account-tree.c:1635 +#: gnucash/gnome/gnc-plugin-page-account-tree.c:1521 +#: gnucash/gnome/gnc-plugin-page-account-tree.c:1657 #: gnucash/gnome/gnc-plugin-page-owner-tree.c:1094 msgid "(no name)" msgstr "(unbenannt)" -#: gnucash/gnome/gnc-plugin-page-account-tree.c:1510 +#: gnucash/gnome/gnc-plugin-page-account-tree.c:1532 #, c-format msgid "Deleting account %s" msgstr "Konto %s löschen" -#: gnucash/gnome/gnc-plugin-page-account-tree.c:1625 +#: gnucash/gnome/gnc-plugin-page-account-tree.c:1647 msgid "" "The list below shows objects which make use of the account which you want to " "delete.\n" @@ -4380,42 +4383,42 @@ msgstr "" "die Objekte ändern, damit diese\n" "ein anderes Konto verwenden" -#: gnucash/gnome/gnc-plugin-page-account-tree.c:1704 +#: gnucash/gnome/gnc-plugin-page-account-tree.c:1726 #, c-format msgid "The account %s will be deleted." msgstr "Das Konto %s wird gelöscht." -#: gnucash/gnome/gnc-plugin-page-account-tree.c:1713 +#: gnucash/gnome/gnc-plugin-page-account-tree.c:1735 #, c-format msgid "All transactions in this account will be moved to the account %s." msgstr "Alle Buchungen in diesem Konto werden in das Konto %s verschoben." -#: gnucash/gnome/gnc-plugin-page-account-tree.c:1720 +#: gnucash/gnome/gnc-plugin-page-account-tree.c:1742 #, c-format msgid "All transactions in this account will be deleted." msgstr "Alle Buchungen in diesem Konto werden gelöscht." -#: gnucash/gnome/gnc-plugin-page-account-tree.c:1729 +#: gnucash/gnome/gnc-plugin-page-account-tree.c:1751 #, c-format msgid "Its sub-account will be moved to the account %s." msgstr "Sein Unterkonto wird zum Konto %s verschoben." -#: gnucash/gnome/gnc-plugin-page-account-tree.c:1735 +#: gnucash/gnome/gnc-plugin-page-account-tree.c:1757 #, c-format msgid "Its subaccount will be deleted." msgstr "Sein Unterkonto wird ebenfalls gelöscht." -#: gnucash/gnome/gnc-plugin-page-account-tree.c:1739 +#: gnucash/gnome/gnc-plugin-page-account-tree.c:1761 #, c-format msgid "All sub-account transactions will be moved to the account %s." msgstr "Alle Buchungen in Unterkonten werden in das Konto %s verschoben." -#: gnucash/gnome/gnc-plugin-page-account-tree.c:1746 +#: gnucash/gnome/gnc-plugin-page-account-tree.c:1768 #, c-format msgid "All sub-account transactions will be deleted." msgstr "Alle Buchungen in Unterkonten werden ebenfalls gelöscht." -#: gnucash/gnome/gnc-plugin-page-account-tree.c:1752 +#: gnucash/gnome/gnc-plugin-page-account-tree.c:1774 msgid "Are you sure you want to do this?" msgstr "Soll diese Aktion durchgeführt werden?" @@ -5597,7 +5600,7 @@ msgstr "Terminiert" #: gnucash/gnome/gnc-plugin-page-register2.c:507 #: gnucash/gnome/gnc-plugin-page-register.c:630 -#: gnucash/gnome/window-autoclear.c:91 +#: gnucash/gnome/window-autoclear.c:87 msgid "Auto-clear" msgstr "Automatischer Abgleich" @@ -5616,13 +5619,13 @@ msgstr "Hauptbuch Journal2" #. Translators: %s is the name #. of the tab page #: gnucash/gnome/gnc-plugin-page-register2.c:1620 -#: gnucash/gnome/gnc-plugin-page-register.c:1974 +#: gnucash/gnome/gnc-plugin-page-register.c:1980 #, c-format msgid "Save changes to %s?" msgstr "Änderungen in %s speichern?" #: gnucash/gnome/gnc-plugin-page-register2.c:1624 -#: gnucash/gnome/gnc-plugin-page-register.c:1978 +#: gnucash/gnome/gnc-plugin-page-register.c:1984 msgid "" "This register has pending changes to a transaction. Would you like to save " "the changes to this transaction, discard the transaction, or cancel the " @@ -5633,12 +5636,12 @@ msgstr "" "oder möchten Sie abbrechen?" #: gnucash/gnome/gnc-plugin-page-register2.c:1627 -#: gnucash/gnome/gnc-plugin-page-register.c:1981 +#: gnucash/gnome/gnc-plugin-page-register.c:1987 msgid "_Discard Transaction" msgstr "Buchungsänderungen ver_werfen" #: gnucash/gnome/gnc-plugin-page-register2.c:1631 -#: gnucash/gnome/gnc-plugin-page-register.c:1985 +#: gnucash/gnome/gnc-plugin-page-register.c:1991 msgid "_Save Transaction" msgstr "Buchung _speichern" @@ -5647,35 +5650,35 @@ msgstr "Buchung _speichern" #: gnucash/gnome/gnc-plugin-page-register2.c:1707 #: gnucash/gnome/gnc-plugin-page-register2.c:1730 #: gnucash/gnome/gnc-plugin-page-register2.c:1778 -#: gnucash/gnome/gnc-plugin-page-register.c:2018 -#: gnucash/gnome/gnc-plugin-page-register.c:2053 -#: gnucash/gnome/gnc-plugin-page-register.c:2066 -#: gnucash/gnome/gnc-plugin-page-register.c:2129 -#: gnucash/gnome/gnc-plugin-page-register.c:2234 -#: gnucash/gnome/gnc-plugin-page-register.c:2372 +#: gnucash/gnome/gnc-plugin-page-register.c:2024 +#: gnucash/gnome/gnc-plugin-page-register.c:2059 +#: gnucash/gnome/gnc-plugin-page-register.c:2072 +#: gnucash/gnome/gnc-plugin-page-register.c:2135 +#: gnucash/gnome/gnc-plugin-page-register.c:2240 +#: gnucash/gnome/gnc-plugin-page-register.c:2378 msgid "unknown" msgstr "unbekannt" #: gnucash/gnome/gnc-plugin-page-register2.c:1681 #: gnucash/gnome/gnc-plugin-page-register2.c:2416 #: gnucash/gnome/gnc-plugin-page-register.c:906 -#: gnucash/gnome/gnc-plugin-page-register.c:2039 -#: gnucash/gnome/gnc-plugin-page-register.c:3511 +#: gnucash/gnome/gnc-plugin-page-register.c:2045 +#: gnucash/gnome/gnc-plugin-page-register.c:3517 #: gnucash/report/reports/standard/general-journal.scm:36 msgid "General Journal" msgstr "Hauptbuch Journal" #: gnucash/gnome/gnc-plugin-page-register2.c:1683 #: gnucash/gnome/gnc-plugin-page-register2.c:2422 -#: gnucash/gnome/gnc-plugin-page-register.c:2041 -#: gnucash/gnome/gnc-plugin-page-register.c:3517 +#: gnucash/gnome/gnc-plugin-page-register.c:2047 +#: gnucash/gnome/gnc-plugin-page-register.c:3523 msgid "Portfolio" msgstr "Portfolio" #: gnucash/gnome/gnc-plugin-page-register2.c:1685 #: gnucash/gnome/gnc-plugin-page-register2.c:2428 -#: gnucash/gnome/gnc-plugin-page-register.c:2043 -#: gnucash/gnome/gnc-plugin-page-register.c:3523 +#: gnucash/gnome/gnc-plugin-page-register.c:2049 +#: gnucash/gnome/gnc-plugin-page-register.c:3529 msgid "Search Results" msgstr "Suchergebnisse" @@ -5684,17 +5687,17 @@ msgid "General Journal Report" msgstr "Hauptbuch Journal Bericht" #: gnucash/gnome/gnc-plugin-page-register2.c:2424 -#: gnucash/gnome/gnc-plugin-page-register.c:3519 +#: gnucash/gnome/gnc-plugin-page-register.c:3525 msgid "Portfolio Report" msgstr "Portfolio Bericht" #: gnucash/gnome/gnc-plugin-page-register2.c:2430 -#: gnucash/gnome/gnc-plugin-page-register.c:3525 +#: gnucash/gnome/gnc-plugin-page-register.c:3531 msgid "Search Results Report" msgstr "Suchergebnisse Bericht" #: gnucash/gnome/gnc-plugin-page-register2.c:2434 -#: gnucash/gnome/gnc-plugin-page-register.c:3529 +#: gnucash/gnome/gnc-plugin-page-register.c:3535 #: gnucash/gtkbuilder/dialog-preferences.glade:2567 #: gnucash/report/reports/standard/general-journal.scm:37 #: gnucash/report/reports/standard/register.scm:64 @@ -5702,17 +5705,17 @@ msgid "Register" msgstr "Kontobuch" #: gnucash/gnome/gnc-plugin-page-register2.c:2436 -#: gnucash/report/reports/standard/register.scm:378 +#: gnucash/report/reports/standard/register.scm:349 msgid "Register Report" msgstr "Bericht zum Kontobuch" #: gnucash/gnome/gnc-plugin-page-register2.c:2452 -#: gnucash/gnome/gnc-plugin-page-register.c:3547 +#: gnucash/gnome/gnc-plugin-page-register.c:3553 msgid "and subaccounts" msgstr "und Unterkonten" #: gnucash/gnome/gnc-plugin-page-register2.c:2484 -#: gnucash/gnome/gnc-plugin-page-register.c:3576 +#: gnucash/gnome/gnc-plugin-page-register.c:3582 #: gnucash/gnome-utils/gnc-tree-model-split-reg.c:2874 #: gnucash/gnome-utils/gnc-tree-model-split-reg.c:2893 #: gnucash/gnome-utils/gnc-tree-model-split-reg.c:2911 @@ -5724,34 +5727,34 @@ msgstr "und Unterkonten" #: gnucash/register/ledger-core/split-register.c:2658 #: gnucash/register/ledger-core/split-register.c:2676 #: gnucash/report/reports/standard/general-journal.scm:83 -#: gnucash/report/reports/standard/register.scm:372 -#: gnucash/report/reports/standard/trial-balance.scm:595 +#: gnucash/report/reports/standard/register.scm:343 +#: gnucash/report/reports/standard/trial-balance.scm:596 #: gnucash/report/trep-engine.scm:1357 gnucash/report/trep-engine.scm:1374 #: libgnucash/engine/Account.cpp:177 msgid "Credit" msgstr "Haben" #: gnucash/gnome/gnc-plugin-page-register2.c:2487 -#: gnucash/gnome/gnc-plugin-page-register.c:3580 +#: gnucash/gnome/gnc-plugin-page-register.c:3586 #: gnucash/gnome-utils/gnc-tree-view-split-reg.c:3099 #: gnucash/gnome-utils/gnc-tree-view-split-reg.c:3104 #: gnucash/gtkbuilder/dialog-payment.glade:296 #: gnucash/register/ledger-core/split-register.c:2521 #: gnucash/report/reports/standard/general-journal.scm:82 -#: gnucash/report/reports/standard/register.scm:370 -#: gnucash/report/reports/standard/trial-balance.scm:592 +#: gnucash/report/reports/standard/register.scm:341 +#: gnucash/report/reports/standard/trial-balance.scm:593 #: gnucash/report/trep-engine.scm:1354 gnucash/report/trep-engine.scm:1371 #: libgnucash/engine/Account.cpp:157 msgid "Debit" msgstr "Soll" #: gnucash/gnome/gnc-plugin-page-register2.c:2653 -#: gnucash/gnome/gnc-plugin-page-register.c:3713 +#: gnucash/gnome/gnc-plugin-page-register.c:3719 msgid "Print checks from multiple accounts?" msgstr "Schecks aus mehreren Konten drucken?" #: gnucash/gnome/gnc-plugin-page-register2.c:2655 -#: gnucash/gnome/gnc-plugin-page-register.c:3715 +#: gnucash/gnome/gnc-plugin-page-register.c:3721 msgid "" "This search result contains splits from more than one account. Do you want " "to print the checks even though they are not all from the same account?" @@ -5760,12 +5763,12 @@ msgstr "" "die Schecks wirklich drucken, obwohl sie nicht alle zum selben Konto gehören?" #: gnucash/gnome/gnc-plugin-page-register2.c:2665 -#: gnucash/gnome/gnc-plugin-page-register.c:3725 +#: gnucash/gnome/gnc-plugin-page-register.c:3731 msgid "_Print checks" msgstr "Schec_ks drucken" #: gnucash/gnome/gnc-plugin-page-register2.c:2684 -#: gnucash/gnome/gnc-plugin-page-register.c:3744 +#: gnucash/gnome/gnc-plugin-page-register.c:3750 msgid "" "You can only print checks from a bank account register or search results." msgstr "" @@ -5773,7 +5776,7 @@ msgstr "" "Suchergebnissen auswählen." #: gnucash/gnome/gnc-plugin-page-register2.c:2896 -#: gnucash/gnome/gnc-plugin-page-register.c:3941 +#: gnucash/gnome/gnc-plugin-page-register.c:3947 msgid "You cannot void a transaction with reconciled or cleared splits." msgstr "" "Sie können eine Buchung mit abgeglichenen oder bestätigten Buchungsteilen " @@ -5781,7 +5784,7 @@ msgstr "" #. Translators: The %s is the name of the plugin page #: gnucash/gnome/gnc-plugin-page-register2.c:3039 -#: gnucash/gnome/gnc-plugin-page-register.c:4212 +#: gnucash/gnome/gnc-plugin-page-register.c:4218 #: gnucash/gnome-utils/gnc-tree-view-account.c:2296 #: gnucash/gnome-utils/gnc-tree-view-owner.c:1175 #, c-format @@ -5832,35 +5835,35 @@ msgstr "" "Sie wollten gerade ein Konto in der alten Kontoansicht öffnen, obwohl es " "bereits in der neuen Ansicht (register2) geöffnet ist." -#: gnucash/gnome/gnc-plugin-page-register.c:3378 +#: gnucash/gnome/gnc-plugin-page-register.c:3384 msgid "Filter By:" msgstr "Filtern nach:" -#: gnucash/gnome/gnc-plugin-page-register.c:3392 +#: gnucash/gnome/gnc-plugin-page-register.c:3398 msgid "Start Date:" msgstr "Anfangsdatum:" -#: gnucash/gnome/gnc-plugin-page-register.c:3398 +#: gnucash/gnome/gnc-plugin-page-register.c:3404 msgid "Show previous number of days:" msgstr "Anzahl der angezeigten vorherigen Tage:" -#: gnucash/gnome/gnc-plugin-page-register.c:3405 +#: gnucash/gnome/gnc-plugin-page-register.c:3411 msgid "End Date:" msgstr "Enddatum:" -#: gnucash/gnome/gnc-plugin-page-register.c:3415 +#: gnucash/gnome/gnc-plugin-page-register.c:3421 #: gnucash/report/trep-engine.scm:124 gnucash/report/trep-engine.scm:398 msgid "Unreconciled" msgstr "Nicht abgeglichene" -#: gnucash/gnome/gnc-plugin-page-register.c:3417 +#: gnucash/gnome/gnc-plugin-page-register.c:3423 #: gnucash/gnome-search/search-reconciled.c:218 #: gnucash/gnome-utils/gnc-tree-view-account.c:852 #: gnucash/report/trep-engine.scm:125 gnucash/report/trep-engine.scm:403 msgid "Cleared" msgstr "Bestätigt" -#: gnucash/gnome/gnc-plugin-page-register.c:3419 +#: gnucash/gnome/gnc-plugin-page-register.c:3425 #: gnucash/gnome-search/search-reconciled.c:221 #: gnucash/gnome-utils/gnc-tree-view-account.c:866 #: gnucash/import-export/csv-imp/gnc-imp-props-tx.cpp:70 @@ -5869,34 +5872,34 @@ msgstr "Bestätigt" msgid "Reconciled" msgstr "Abgeglichen" -#: gnucash/gnome/gnc-plugin-page-register.c:3421 +#: gnucash/gnome/gnc-plugin-page-register.c:3427 #: gnucash/gnome-search/search-reconciled.c:224 #: gnucash/report/trep-engine.scm:127 msgid "Frozen" msgstr "Fixiert" -#: gnucash/gnome/gnc-plugin-page-register.c:3423 +#: gnucash/gnome/gnc-plugin-page-register.c:3429 #: gnucash/gnome-search/search-reconciled.c:227 #: gnucash/report/trep-engine.scm:128 msgid "Voided" msgstr "Storniert" -#: gnucash/gnome/gnc-plugin-page-register.c:3427 -#: gnucash/gnome/gnc-plugin-page-register.c:3429 +#: gnucash/gnome/gnc-plugin-page-register.c:3433 +#: gnucash/gnome/gnc-plugin-page-register.c:3435 msgid "Hide:" msgstr "Versteckt:" -#: gnucash/gnome/gnc-plugin-page-register.c:3429 +#: gnucash/gnome/gnc-plugin-page-register.c:3435 msgid "Show:" msgstr "Angezeigt:" -#: gnucash/gnome/gnc-plugin-page-register.c:3513 -#: gnucash/gnome/gnc-plugin-page-register.c:3531 +#: gnucash/gnome/gnc-plugin-page-register.c:3519 +#: gnucash/gnome/gnc-plugin-page-register.c:3537 #: gnucash/report/reports/standard/transaction.scm:33 msgid "Transaction Report" msgstr "Buchungsbericht" -#: gnucash/gnome/gnc-plugin-page-register.c:3948 +#: gnucash/gnome/gnc-plugin-page-register.c:3954 #: gnucash/gnome/gnc-split-reg.c:1160 #: gnucash/gnome-utils/gnc-tree-control-split-reg.c:68 #, c-format @@ -5904,22 +5907,22 @@ msgid "This transaction is marked read-only with the comment: '%s'" msgstr "" "Diese Buchung ist mit folgendem Kommentar als schreibgeschützt markiert: '%s'" -#: gnucash/gnome/gnc-plugin-page-register.c:4028 +#: gnucash/gnome/gnc-plugin-page-register.c:4034 #: gnucash/gnome/gnc-split-reg.c:1131 #: gnucash/gnome-utils/gnc-tree-control-split-reg.c:1121 msgid "A reversing entry has already been created for this transaction." msgstr "Zu dieser Buchung wurde bereits eine Stornierungsbuchung hinzugefügt." -#: gnucash/gnome/gnc-plugin-page-register.c:4035 +#: gnucash/gnome/gnc-plugin-page-register.c:4041 msgid "Reverse Transaction" msgstr "Stornobuchung hinzufügen" -#: gnucash/gnome/gnc-plugin-page-register.c:4036 +#: gnucash/gnome/gnc-plugin-page-register.c:4042 msgid "New Transaction Information" msgstr "Buchungsinformationen für Stornobuchung" #. Translators: The %s is the name of the plugin page -#: gnucash/gnome/gnc-plugin-page-register.c:4124 +#: gnucash/gnome/gnc-plugin-page-register.c:4130 #, c-format msgid "Sort %s by..." msgstr "%s sortieren nach..." @@ -5927,31 +5930,31 @@ msgstr "%s sortieren nach..." #. Translators: %s refer to the following in #. order: invoice type, invoice ID, owner name, #. posted date, amount -#: gnucash/gnome/gnc-plugin-page-register.c:4702 +#: gnucash/gnome/gnc-plugin-page-register.c:4708 #, c-format msgid "%s %s from %s, posted %s, amount %s" msgstr "%s %s von %s, gebucht am %s, Betrag %s" -#: gnucash/gnome/gnc-plugin-page-register.c:4711 +#: gnucash/gnome/gnc-plugin-page-register.c:4717 msgid "Select document" msgstr "Verknüpftes Dokument auswählen" -#: gnucash/gnome/gnc-plugin-page-register.c:4712 +#: gnucash/gnome/gnc-plugin-page-register.c:4718 msgid "Several documents are linked with this transaction. Please choose one:" msgstr "" "Mehrere Dokumente sind mit dieser Buchung verknüpft. Bitte wählen Sie eins:" -#: gnucash/gnome/gnc-plugin-page-register.c:4713 +#: gnucash/gnome/gnc-plugin-page-register.c:4719 #: gnucash/gnome-search/dialog-search.c:323 #: gnucash/gnome-utils/gnc-cell-renderer-date.c:172 msgid "Select" msgstr "Auswählen" -#: gnucash/gnome/gnc-plugin-page-register.c:4761 +#: gnucash/gnome/gnc-plugin-page-register.c:4767 msgid "Go to Date" msgstr "Zu Datum gehen" -#: gnucash/gnome/gnc-plugin-page-register.c:5016 +#: gnucash/gnome/gnc-plugin-page-register.c:5045 #, c-format msgid "Checking splits in current register: %u of %u" msgstr "Überprüfe Buchungsteile im aktuellen Konto: %u von %u" @@ -6043,7 +6046,7 @@ msgid "_Report Options" msgstr "Berichts_optionen" #: gnucash/gnome/gnc-plugin-page-report.c:1201 -#: gnucash/report/html-utilities.scm:252 +#: gnucash/report/html-utilities.scm:276 msgid "Edit report options" msgstr "Berichtsoptionen ändern" @@ -6747,19 +6750,11 @@ msgstr "Kein Preis gefunden: %s" msgid "Business" msgstr "Geschäft" -#: gnucash/gnome/window-autoclear.c:138 -msgid "Searching for splits to clear ..." -msgstr "Buchungsteile zum Abgleichen werden gesucht..." - -#: gnucash/gnome/window-autoclear.c:241 -msgid "Cannot uniquely clear splits. Found multiple possibilities." -msgstr "" -"Automatisches Abgleichen kann nicht die Buchungsteile nicht eindeutig " -"bestimmen." - -#: gnucash/gnome/window-autoclear.c:248 -msgid "The selected amount cannot be cleared." -msgstr "Der gewählte Betrag kann nicht automatisch abgeglichen werden." +#: gnucash/gnome/window-autoclear.c:114 +#, fuzzy +#| msgid "Created Transactions" +msgid "Cleared Transactions" +msgstr "Buchungen erstellt" #: gnucash/gnome/window-reconcile2.c:417 gnucash/gnome/window-reconcile.c:458 msgid "Interest Payment" @@ -6827,7 +6822,7 @@ msgid "Reconciled Balance" msgstr "Abgeglichener Saldo" #: gnucash/gnome/window-reconcile2.c:1798 gnucash/gnome/window-reconcile.c:1991 -#: gnucash/report/reports/standard/cash-flow.scm:310 +#: gnucash/report/reports/standard/cash-flow.scm:312 msgid "Difference" msgstr "Differenz" @@ -7098,7 +7093,7 @@ msgid "matches no accounts" msgstr "entspricht keinem Konto" #: gnucash/gnome-search/search-account.c:195 -#: gnucash/report/reports/standard/cash-flow.scm:254 +#: gnucash/report/reports/standard/cash-flow.scm:256 msgid "Selected Accounts" msgstr "Ausgewählte Konten" @@ -7637,7 +7632,7 @@ msgid "Cu_rrency" msgstr "_Währung" #: gnucash/gnome-utils/dialog-commodity.c:773 -#: gnucash/gnome-utils/dialog-options.c:701 +#: gnucash/gnome-utils/dialog-options.c:713 #: gnucash/gnome-utils/gnc-tree-view-owner.c:412 #: gnucash/gnome-utils/gnc-tree-view-price.c:402 #: gnucash/gtkbuilder/dialog-customer.glade:511 @@ -7742,7 +7737,32 @@ msgstr "Speichern unter..." msgid "_Save As" msgstr "Speichern _unter..." -#: gnucash/gnome-utils/dialog-options.c:641 +#: gnucash/gnome-utils/dialog-options.c:226 +#: gnucash/gnome-utils/gnc-main-window.c:302 +#: gnucash/gtkbuilder/dialog-billterms.glade:729 +#: gnucash/gtkbuilder/dialog-commodities.glade:173 +#: gnucash/gtkbuilder/dialog-custom-report.glade:45 +#: gnucash/gtkbuilder/dialog-doclink.glade:546 +#: gnucash/gtkbuilder/dialog-fincalc.glade:107 +#: gnucash/gtkbuilder/dialog-find-account.glade:68 +#: gnucash/gtkbuilder/dialog-imap-editor.glade:80 +#: gnucash/gtkbuilder/dialog-import.glade:496 +#: gnucash/gtkbuilder/dialog-lot-viewer.glade:89 +#: gnucash/gtkbuilder/dialog-order.glade:42 +#: gnucash/gtkbuilder/dialog-preferences.glade:158 +#: gnucash/gtkbuilder/dialog-price.glade:939 +#: gnucash/gtkbuilder/dialog-query-view.glade:22 +#: gnucash/gtkbuilder/dialog-report.glade:272 +#: gnucash/gtkbuilder/dialog-report.glade:679 +#: gnucash/gtkbuilder/dialog-search.glade:52 +#: gnucash/gtkbuilder/dialog-tax-table.glade:254 +#: gnucash/gtkbuilder/dialog-totd.glade:56 +#: gnucash/gtkbuilder/gnc-plugin-page-budget.glade:736 +#: gnucash/import-export/aqb/dialog-ab.glade:43 +msgid "_Close" +msgstr "S_chließen" + +#: gnucash/gnome-utils/dialog-options.c:653 msgid "" "Because no accounts have been set up yet, you will need to return to this " "dialog (via File->Properties), after account setup, if you want to set a " @@ -7752,18 +7772,18 @@ msgstr "" "Konten über Datei->Eigenschaften zu diesem Dialog zurückkehren, um ein " "Erfolgskonto vorzuwählen," -#: gnucash/gnome-utils/dialog-options.c:685 +#: gnucash/gnome-utils/dialog-options.c:697 msgid "Select no account" msgstr "Kein Konto gewählt" -#: gnucash/gnome-utils/dialog-options.c:718 +#: gnucash/gnome-utils/dialog-options.c:730 #: gnucash/gnome-utils/gnc-tree-view-account.c:966 msgctxt "Column header for 'Placeholder'" msgid "P" msgstr "P" # Todo: sind die "\n" erforderlich? -#: gnucash/gnome-utils/dialog-options.c:785 +#: gnucash/gnome-utils/dialog-options.c:797 msgid "" "There are no income or expense accounts of the specified\n" "book currency; you will have to return to this dialog\n" @@ -7774,7 +7794,7 @@ msgstr "" "Kontenteneinrchtung müssen sie über Datei->Eigenschaften zu diesem Dialog " "zurückkehren, um ein Erfolgskonto vorzuwählen." -#: gnucash/gnome-utils/dialog-options.c:854 +#: gnucash/gnome-utils/dialog-options.c:865 #: gnucash/import-export/qif-imp/dialog-account-picker.c:299 #, c-format msgid "" @@ -7784,86 +7804,86 @@ msgstr "" "Das Konto %s ist ein Platzhalter und kann keine Buchungen enthalten. Bitte " "wählen Sie ein anderes Konto." -#: gnucash/gnome-utils/dialog-options.c:1284 +#: gnucash/gnome-utils/dialog-options.c:1292 msgid "Book currency" msgstr "Buchwährung" -#: gnucash/gnome-utils/dialog-options.c:1309 +#: gnucash/gnome-utils/dialog-options.c:1317 msgid "Default lot tracking policy" msgstr "Vorgewählte Los-Zuordnung" -#: gnucash/gnome-utils/dialog-options.c:1333 +#: gnucash/gnome-utils/dialog-options.c:1340 msgid "Default gain/loss account" msgstr "Vorgewähltes Erfolgskonto" -#: gnucash/gnome-utils/dialog-options.c:1501 -#: gnucash/gnome-utils/dialog-options.c:1647 +#: gnucash/gnome-utils/dialog-options.c:1506 +#: gnucash/gnome-utils/dialog-options.c:1650 msgid "Select All" msgstr "Alle auswählen" -#: gnucash/gnome-utils/dialog-options.c:1503 +#: gnucash/gnome-utils/dialog-options.c:1508 msgid "Select all accounts." msgstr "Alle Konten auswählen." -#: gnucash/gnome-utils/dialog-options.c:1508 -#: gnucash/gnome-utils/dialog-options.c:1654 +#: gnucash/gnome-utils/dialog-options.c:1513 +#: gnucash/gnome-utils/dialog-options.c:1657 msgid "Clear All" msgstr "Keine auswählen" -#: gnucash/gnome-utils/dialog-options.c:1510 +#: gnucash/gnome-utils/dialog-options.c:1515 msgid "Clear the selection and unselect all accounts." msgstr "Auswahl löschen und gar keine Konten auswählen." -#: gnucash/gnome-utils/dialog-options.c:1515 +#: gnucash/gnome-utils/dialog-options.c:1520 msgid "Select Children" msgstr "Unterkonten auswählen" -#: gnucash/gnome-utils/dialog-options.c:1517 +#: gnucash/gnome-utils/dialog-options.c:1522 msgid "Select all descendents of selected account." msgstr "Alle Unterkonten des gewählten Kontos auswählen." -#: gnucash/gnome-utils/dialog-options.c:1523 -#: gnucash/gnome-utils/dialog-options.c:1661 +#: gnucash/gnome-utils/dialog-options.c:1528 +#: gnucash/gnome-utils/dialog-options.c:1664 msgid "Select Default" msgstr "Voreinstellung" -#: gnucash/gnome-utils/dialog-options.c:1525 +#: gnucash/gnome-utils/dialog-options.c:1530 msgid "Select the default account selection." msgstr "Die voreingestellte Kontenauswahl auswählen." -#: gnucash/gnome-utils/dialog-options.c:1542 +#: gnucash/gnome-utils/dialog-options.c:1547 msgid "Show Hidden Accounts" msgstr "Versteckte Konten anzeigen" -#: gnucash/gnome-utils/dialog-options.c:1544 +#: gnucash/gnome-utils/dialog-options.c:1549 msgid "Show accounts that have been marked hidden." msgstr "Konten anzeigen, die als »Versteckt« markiert sind." -#: gnucash/gnome-utils/dialog-options.c:1649 +#: gnucash/gnome-utils/dialog-options.c:1652 msgid "Select all entries." msgstr "Alle Einträge auswählen." -#: gnucash/gnome-utils/dialog-options.c:1656 +#: gnucash/gnome-utils/dialog-options.c:1659 msgid "Clear the selection and unselect all entries." msgstr "Auswahl löschen und gar keine Einträge auswählen." -#: gnucash/gnome-utils/dialog-options.c:1663 +#: gnucash/gnome-utils/dialog-options.c:1666 msgid "Select the default selection." msgstr "Die voreingestellte Auswahl auswählen." -#: gnucash/gnome-utils/dialog-options.c:1856 +#: gnucash/gnome-utils/dialog-options.c:1860 msgid "Reset defaults" msgstr "Voreinstellungen" -#: gnucash/gnome-utils/dialog-options.c:1858 +#: gnucash/gnome-utils/dialog-options.c:1862 msgid "Reset all values to their defaults." msgstr "Alle Werte auf ihre Voreinstellung zurücksetzen." -#: gnucash/gnome-utils/dialog-options.c:2253 +#: gnucash/gnome-utils/dialog-options.c:2263 msgid "Page" msgstr "Seite" -#: gnucash/gnome-utils/dialog-options.c:2879 +#: gnucash/gnome-utils/dialog-options.c:2890 #: gnucash/gnome-utils/dialog-preferences.c:1374 #: gnucash/gtkbuilder/dialog-fincalc.glade:254 #: gnucash/gtkbuilder/dialog-fincalc.glade:269 @@ -7873,23 +7893,23 @@ msgstr "Seite" msgid "Clear" msgstr "Zurücksetzen" -#: gnucash/gnome-utils/dialog-options.c:2880 +#: gnucash/gnome-utils/dialog-options.c:2891 msgid "Clear any selected image file." msgstr "Auswahl der Bilddatei wieder löschen." -#: gnucash/gnome-utils/dialog-options.c:2882 +#: gnucash/gnome-utils/dialog-options.c:2893 msgid "Select image" msgstr "Bild auswählen" -#: gnucash/gnome-utils/dialog-options.c:2884 +#: gnucash/gnome-utils/dialog-options.c:2895 msgid "Select an image file." msgstr "Bilddatei auswählen." -#: gnucash/gnome-utils/dialog-options.c:3065 +#: gnucash/gnome-utils/dialog-options.c:3075 msgid "Pixels" msgstr "Pixel" -#: gnucash/gnome-utils/dialog-options.c:3071 +#: gnucash/gnome-utils/dialog-options.c:3081 msgid "Percent" msgstr "Prozent" @@ -7934,30 +7954,30 @@ msgstr "Die Prozentzahl muss zwischen -100 und 100 liegen." msgid "You must choose a Tax Account." msgstr "Sie müssen ein steuerrelevantes Konto wählen." -#: gnucash/gnome-utils/dialog-tax-table.c:630 +#: gnucash/gnome-utils/dialog-tax-table.c:633 msgid "Rename" msgstr "Umbenennen" -#: gnucash/gnome-utils/dialog-tax-table.c:631 +#: gnucash/gnome-utils/dialog-tax-table.c:634 msgid "Please enter new name" msgstr "Bitte geben Sie einen neuen Namen ein" -#: gnucash/gnome-utils/dialog-tax-table.c:632 +#: gnucash/gnome-utils/dialog-tax-table.c:635 #: gnucash/gtkbuilder/dialog-tax-table.glade:72 msgid "_Rename" msgstr "_Umbenennen" -#: gnucash/gnome-utils/dialog-tax-table.c:638 +#: gnucash/gnome-utils/dialog-tax-table.c:641 #, c-format msgid "Tax table name \"%s\" already exists." msgstr "Eine Steuertabelle mit Namen »%s« existiert bereits." -#: gnucash/gnome-utils/dialog-tax-table.c:662 +#: gnucash/gnome-utils/dialog-tax-table.c:665 #, c-format msgid "Tax table \"%s\" is in use. You cannot delete it." msgstr "Steuertabelle »%s« ist in Benutzung. Sie können sie nicht löschen." -#: gnucash/gnome-utils/dialog-tax-table.c:710 +#: gnucash/gnome-utils/dialog-tax-table.c:713 msgid "" "You cannot remove the last entry from the tax table. Try deleting the tax " "table if you want to do that." @@ -7966,7 +7986,7 @@ msgstr "" "Stattdessen müssten Sie die ganze Steuertabelle löschen, falls Sie das " "möchten." -#: gnucash/gnome-utils/dialog-tax-table.c:717 +#: gnucash/gnome-utils/dialog-tax-table.c:720 msgid "Are you sure you want to delete this entry?" msgstr "Sind Sie sicher, dass Sie diesen Eintrag löschen möchten?" @@ -8778,30 +8798,6 @@ msgstr "_Eigenschaften" msgid "Edit the properties of the current file" msgstr "Eigenschaften dieser Datei anzeigen und bearbeiten." -#: gnucash/gnome-utils/gnc-main-window.c:302 -#: gnucash/gtkbuilder/dialog-billterms.glade:729 -#: gnucash/gtkbuilder/dialog-commodities.glade:173 -#: gnucash/gtkbuilder/dialog-custom-report.glade:45 -#: gnucash/gtkbuilder/dialog-doclink.glade:546 -#: gnucash/gtkbuilder/dialog-fincalc.glade:107 -#: gnucash/gtkbuilder/dialog-find-account.glade:68 -#: gnucash/gtkbuilder/dialog-imap-editor.glade:80 -#: gnucash/gtkbuilder/dialog-import.glade:496 -#: gnucash/gtkbuilder/dialog-lot-viewer.glade:89 -#: gnucash/gtkbuilder/dialog-order.glade:42 -#: gnucash/gtkbuilder/dialog-preferences.glade:158 -#: gnucash/gtkbuilder/dialog-price.glade:939 -#: gnucash/gtkbuilder/dialog-query-view.glade:22 -#: gnucash/gtkbuilder/dialog-report.glade:272 -#: gnucash/gtkbuilder/dialog-report.glade:679 -#: gnucash/gtkbuilder/dialog-search.glade:52 -#: gnucash/gtkbuilder/dialog-tax-table.glade:254 -#: gnucash/gtkbuilder/dialog-totd.glade:56 -#: gnucash/gtkbuilder/gnc-plugin-page-budget.glade:736 -#: gnucash/import-export/aqb/dialog-ab.glade:43 -msgid "_Close" -msgstr "S_chließen" - #: gnucash/gnome-utils/gnc-main-window.c:303 msgid "Close the currently active page" msgstr "Aktuelle Seite schließen" @@ -9050,7 +9046,8 @@ msgstr "" "Anregungen, Kritik und Fragen zur Übersetzung an die\n" "deutschsprachige GnuCash-Gemeinschaft \n" "Um die Moderation zu vermeiden, empfiehlt sich die Anmeldung auf der\n" -"Liste gnucash-de" +"Liste " +"gnucash-de" #: gnucash/gnome-utils/gnc-main-window.c:4540 msgid "Visit the GnuCash website." @@ -9545,9 +9542,9 @@ msgstr "Gehalt" #: gnucash/import-export/qif-imp/qif-dialog-utils.scm:72 #: gnucash/import-export/qif-imp/qif-dialog-utils.scm:76 #: gnucash/register/ledger-core/split-register.c:2700 -#: gnucash/report/reports/standard/balance-sheet.scm:502 +#: gnucash/report/reports/standard/balance-sheet.scm:503 #: gnucash/report/reports/standard/balsheet-pnl.scm:1099 -#: gnucash/report/reports/standard/budget-balance-sheet.scm:723 +#: gnucash/report/reports/standard/budget-balance-sheet.scm:724 #: libgnucash/app-utils/gnc-ui-util.c:1017 libgnucash/engine/Account.cpp:4324 msgid "Equity" msgstr "Eigenkapital" @@ -9569,7 +9566,7 @@ msgstr "Eigenkapital" #: gnucash/report/reports/standard/price-scatter.scm:312 #: gnucash/report/reports/standard/price-scatter.scm:326 #: gnucash/report/reports/standard/register.scm:150 -#: gnucash/report/reports/standard/register.scm:422 +#: gnucash/report/reports/standard/register.scm:393 #: gnucash/report/trep-engine.scm:955 gnucash/report/trep-engine.scm:1079 #: gnucash/report/trep-engine.scm:1262 msgid "Price" @@ -9596,8 +9593,8 @@ msgid "Dist" msgstr "Ausschüttung" #: gnucash/gnome-utils/gnc-tree-util-split-reg.c:45 -#: gnucash/import-export/import-main-matcher.c:1344 -#: gnucash/report/reports/standard/register.scm:229 +#: gnucash/import-export/import-main-matcher.c:1352 +#: gnucash/report/reports/standard/register.scm:218 #: libgnucash/engine/Split.c:1592 libgnucash/engine/Split.c:1609 msgid "-- Split Transaction --" msgstr "-- Mehrteilige Buchung --" @@ -9683,7 +9680,7 @@ msgstr "_Berechnen" #: gnucash/report/reports/locale-specific/de_DE/taxtxf.scm:291 #: gnucash/report/reports/standard/general-ledger.scm:72 #: gnucash/report/reports/standard/general-ledger.scm:92 -#: gnucash/report/reports/standard/trial-balance.scm:598 +#: gnucash/report/reports/standard/trial-balance.scm:599 #: gnucash/report/trep-engine.scm:147 gnucash/report/trep-engine.scm:981 #: gnucash/report/trep-engine.scm:1074 msgid "Account Name" @@ -9945,7 +9942,7 @@ msgstr "Statusleiste" #: gnucash/gnome-utils/gnc-tree-view-split-reg.c:1247 #: gnucash/report/reports/standard/balsheet-eg.scm:386 -#: libgnucash/engine/Scrub.c:392 +#: libgnucash/engine/Scrub.c:407 msgid "Imbalance" msgstr "Ausgleichskonto" @@ -10204,7 +10201,7 @@ msgstr "" #: gnucash/gnome-utils/gnc-tree-view-sx-list.c:140 #: gnucash/gtkbuilder/dialog-sx.glade:1041 -#: gnucash/report/html-utilities.scm:268 +#: gnucash/report/html-utilities.scm:292 msgid "Enabled" msgstr "Aktiv" @@ -15125,7 +15122,7 @@ msgstr "Ha_uptkonto" #: gnucash/report/report-core.scm:77 #: gnucash/report/reports/standard/equity-statement.scm:108 #: gnucash/report/reports/standard/equity-statement.scm:112 -#: gnucash/report/reports/standard/register.scm:376 +#: gnucash/report/reports/standard/register.scm:347 #: gnucash/report/reports/standard/trial-balance.scm:185 #: gnucash/report/reports/standard/trial-balance.scm:189 #: gnucash/report/reports/standard/view-column.scm:50 @@ -19407,11 +19404,15 @@ msgstr "Nur _aktive Mandanten zeigen" msgid "Show _zero balance owners" msgstr "Mandanten mit _Nullsalden anzeigen" -#: gnucash/gtkbuilder/window-autoclear.glade:71 -msgid "Auto-Clear Information" -msgstr "Information zum automatischen Kontenabgleich" +#: gnucash/gtkbuilder/window-autoclear.glade:74 +msgid "" +"Auto-Clear Information\n" +"Use this dialog if you want GnuCash to automatically find which transactions " +"are cleared, given an ending balance. For example, said ending balance can " +"be the current balance given by your online bank." +msgstr "" -#: gnucash/gtkbuilder/window-autoclear.glade:92 +#: gnucash/gtkbuilder/window-autoclear.glade:98 #: gnucash/gtkbuilder/window-reconcile.glade:117 msgid "_Ending Balance" msgstr "_Schlusssaldo" @@ -20168,7 +20169,7 @@ msgid "Unspecified" msgstr "Nicht spezifiziert" #: gnucash/import-export/aqb/gnc-ab-utils.c:543 -#: gnucash/report/report-utilities.scm:102 libgnucash/engine/Account.cpp:4314 +#: gnucash/report/report-utilities.scm:114 libgnucash/engine/Account.cpp:4314 msgid "Bank" msgstr "Bank" @@ -21744,85 +21745,85 @@ msgstr "Jahr/Monat/Tag" msgid "y/d/m" msgstr "Jahr/Tag/Monat" -#: gnucash/import-export/import-main-matcher.c:533 -#: gnucash/import-export/import-main-matcher.c:683 +#: gnucash/import-export/import-main-matcher.c:537 +#: gnucash/import-export/import-main-matcher.c:687 msgid "Destination account for the auto-balance split." msgstr "Gegenkonto für Ausgleichsbuchung." -#: gnucash/import-export/import-main-matcher.c:874 +#: gnucash/import-export/import-main-matcher.c:878 msgid "Assign a transfer account to the selection." msgstr "Gegenkonto zu Auswahl zuweisen." -#: gnucash/import-export/import-main-matcher.c:1041 +#: gnucash/import-export/import-main-matcher.c:1045 msgctxt "Column header for 'Adding transaction'" msgid "A" msgstr "Neu" -#: gnucash/import-export/import-main-matcher.c:1044 +#: gnucash/import-export/import-main-matcher.c:1048 msgctxt "Column header for 'Updating plus Clearing transaction'" msgid "U+C" msgstr "Ü+Abgl" -#: gnucash/import-export/import-main-matcher.c:1048 +#: gnucash/import-export/import-main-matcher.c:1052 msgctxt "Column header for 'Clearing transaction'" msgid "C" msgstr "Abgl" -#: gnucash/import-export/import-main-matcher.c:1054 +#: gnucash/import-export/import-main-matcher.c:1058 msgid "Info" msgstr "Information" -#: gnucash/import-export/import-main-matcher.c:1061 +#: gnucash/import-export/import-main-matcher.c:1065 #: gnucash/report/stylesheets/head-or-tail.scm:102 msgid "Additional Comments" msgstr "Zusätzliche Kommentare" -#: gnucash/import-export/import-main-matcher.c:1427 +#: gnucash/import-export/import-main-matcher.c:1435 msgid "New, already balanced" msgstr "Neu (und ausgeglichen)" #. Translators: %1$s is the amount to be #. transferred. %2$s is the destination account. -#: gnucash/import-export/import-main-matcher.c:1453 +#: gnucash/import-export/import-main-matcher.c:1461 #, c-format msgid "New, transfer %s to (manual) \"%s\"" msgstr "Neu (%s nach »%s«, manuell gewählt)" #. Translators: %1$s is the amount to be #. transferred. %2$s is the destination account. -#: gnucash/import-export/import-main-matcher.c:1461 +#: gnucash/import-export/import-main-matcher.c:1469 #, c-format msgid "New, transfer %s to (auto) \"%s\"" msgstr "Neu (%s nach »%s«, automatisch gewählt)" #. Translators: %s is the amount to be transferred. -#: gnucash/import-export/import-main-matcher.c:1472 +#: gnucash/import-export/import-main-matcher.c:1480 #, c-format msgid "New, UNBALANCED (need acct to transfer %s)!" msgstr "Neu (verbleibende %s benötigen Konto, nicht ausgeglichen)" -#: gnucash/import-export/import-main-matcher.c:1489 +#: gnucash/import-export/import-main-matcher.c:1497 msgid "Reconcile (manual) match" msgstr "Abgleichen (manuell gewählte Zuordnung)" -#: gnucash/import-export/import-main-matcher.c:1493 +#: gnucash/import-export/import-main-matcher.c:1501 msgid "Reconcile (auto) match" msgstr "Abgleichen (automatisch gewählte Zuordnung)" -#: gnucash/import-export/import-main-matcher.c:1500 -#: gnucash/import-export/import-main-matcher.c:1526 +#: gnucash/import-export/import-main-matcher.c:1508 +#: gnucash/import-export/import-main-matcher.c:1534 msgid "Match missing!" msgstr "Zuordnung fehlt!" -#: gnucash/import-export/import-main-matcher.c:1515 +#: gnucash/import-export/import-main-matcher.c:1523 msgid "Update and reconcile (manual) match" msgstr "Abgleichen und Datenübernahme (manuell gewählte Zuordnung)" -#: gnucash/import-export/import-main-matcher.c:1519 +#: gnucash/import-export/import-main-matcher.c:1527 msgid "Update and reconcile (auto) match" msgstr "Abgleichen und Datenübernahme (automatisch gewählte Zuordnung)" -#: gnucash/import-export/import-main-matcher.c:1534 +#: gnucash/import-export/import-main-matcher.c:1542 msgid "Do not import (no action selected)" msgstr "Nicht importieren (keine Import-Aktion gewählt)" @@ -22180,7 +22181,7 @@ msgstr "Kapitalertrag (kurzfristig)" #: gnucash/import-export/qif-imp/qif-dialog-utils.scm:73 #: gnucash/import-export/qif-imp/qif-dialog-utils.scm:77 -#: gnucash/report/reports/standard/balance-sheet.scm:509 +#: gnucash/report/reports/standard/balance-sheet.scm:510 #: gnucash/report/reports/standard/balsheet-pnl.scm:1108 #: gnucash/report/reports/standard/balsheet-pnl.scm:1123 #: gnucash/report/reports/support/balsheet-eg.eguile.scm:189 @@ -22616,7 +22617,7 @@ msgstr ">" #: gnucash/register/ledger-core/gncEntryLedgerLoad.c:130 #: gnucash/register/ledger-core/gncEntryLedgerModel.c:527 #: gnucash/register/ledger-core/gncEntryLedgerModel.c:1091 -#: gnucash/report/report-utilities.scm:103 libgnucash/engine/Account.cpp:4315 +#: gnucash/report/report-utilities.scm:115 libgnucash/engine/Account.cpp:4315 msgid "Cash" msgstr "Bargeld" @@ -23136,79 +23137,79 @@ msgstr "Anpassungsbuchungen" msgid "Load" msgstr "Laden" -#: gnucash/report/html-fonts.scm:68 gnucash/report/html-fonts.scm:73 -#: gnucash/report/html-fonts.scm:78 gnucash/report/html-fonts.scm:83 -#: gnucash/report/html-fonts.scm:88 gnucash/report/html-fonts.scm:93 -#: gnucash/report/html-fonts.scm:98 gnucash/report/html-fonts.scm:104 -#: gnucash/report/html-fonts.scm:110 +#: gnucash/report/html-fonts.scm:92 gnucash/report/html-fonts.scm:97 +#: gnucash/report/html-fonts.scm:102 gnucash/report/html-fonts.scm:107 +#: gnucash/report/html-fonts.scm:112 gnucash/report/html-fonts.scm:117 +#: gnucash/report/html-fonts.scm:122 gnucash/report/html-fonts.scm:128 +#: gnucash/report/html-fonts.scm:134 msgid "Fonts" msgstr "Schriftarten" -#: gnucash/report/html-fonts.scm:69 +#: gnucash/report/html-fonts.scm:93 msgid "Font info for the report title." msgstr "Schriftart für den Berichtstitel." -#: gnucash/report/html-fonts.scm:74 +#: gnucash/report/html-fonts.scm:98 msgid "Account link" msgstr "Konto-Hyperlink" -#: gnucash/report/html-fonts.scm:74 +#: gnucash/report/html-fonts.scm:98 msgid "Font info for account name." msgstr "Schriftart für Kontonamen." -#: gnucash/report/html-fonts.scm:79 +#: gnucash/report/html-fonts.scm:103 msgid "Number cell" msgstr "Zahlenfeld" -#: gnucash/report/html-fonts.scm:79 +#: gnucash/report/html-fonts.scm:103 msgid "Font info for regular number cells." msgstr "Schriftart für Felder mit normalen Zahlen." -#: gnucash/report/html-fonts.scm:84 +#: gnucash/report/html-fonts.scm:108 msgid "Negative Values in Red" msgstr "Negative Beträge in rot anzeigen" -#: gnucash/report/html-fonts.scm:84 +#: gnucash/report/html-fonts.scm:108 msgid "Display negative values in red." msgstr "Negative Beträge in rot anzeigen." -#: gnucash/report/html-fonts.scm:89 +#: gnucash/report/html-fonts.scm:113 msgid "Number header" msgstr "Zahlenüberschrift" -#: gnucash/report/html-fonts.scm:89 +#: gnucash/report/html-fonts.scm:113 msgid "Font info for number headers." msgstr "Schriftart für Überschriften mit Zahlen." -#: gnucash/report/html-fonts.scm:94 +#: gnucash/report/html-fonts.scm:118 msgid "Text cell" msgstr "Textfeld" -#: gnucash/report/html-fonts.scm:94 +#: gnucash/report/html-fonts.scm:118 msgid "Font info for regular text cells." msgstr "Schriftart für normale Textfelder." -#: gnucash/report/html-fonts.scm:99 +#: gnucash/report/html-fonts.scm:123 msgid "Total number cell" msgstr "Summenfeld" -#: gnucash/report/html-fonts.scm:100 +#: gnucash/report/html-fonts.scm:124 msgid "Font info for number cells containing a total." msgstr "Schriftart für Zahlenfelder mit Summen." -#: gnucash/report/html-fonts.scm:105 +#: gnucash/report/html-fonts.scm:129 msgid "Total label cell" msgstr "Summenbeschriftung" -#: gnucash/report/html-fonts.scm:106 +#: gnucash/report/html-fonts.scm:130 msgid "Font info for cells containing total labels." msgstr "Schriftart für die Beschriftungsfelder von Summen." -#: gnucash/report/html-fonts.scm:111 +#: gnucash/report/html-fonts.scm:135 msgid "Centered label cell" msgstr "Zentriertes Textfeld" -#: gnucash/report/html-fonts.scm:111 +#: gnucash/report/html-fonts.scm:135 msgid "Font info for centered label cells." msgstr "Schriftart für zentrierte Textfelder." @@ -23216,44 +23217,44 @@ msgstr "Schriftart für zentrierte Textfelder." msgid "Can't save style sheet" msgstr "Stilvorlage kann nicht gespeichert werden" -#: gnucash/report/html-utilities.scm:227 +#: gnucash/report/html-utilities.scm:229 gnucash/report/html-utilities.scm:246 +#, fuzzy +#| msgid "Exchange rate" msgid "Exchange rate" -msgstr "Wechselkurs" +msgid_plural "Exchange rates" +msgstr[0] "Wechselkurs" +msgstr[1] "Wechselkurs" -#: gnucash/report/html-utilities.scm:228 -msgid "Exchange rates" -msgstr "Wechselkurse" - -#: gnucash/report/html-utilities.scm:235 +#: gnucash/report/html-utilities.scm:259 msgid "No budgets exist. You must create at least one budget." msgstr "Das Buch enthält kein Budget. Sie müssen zuerst ein Budget erstellen." -#: gnucash/report/html-utilities.scm:268 +#: gnucash/report/html-utilities.scm:292 #: gnucash/report/reports/standard/balsheet-pnl.scm:137 #: gnucash/report/reports/standard/balsheet-pnl.scm:138 #: gnucash/report/reports/standard/new-owner-report.scm:935 msgid "Disabled" msgstr "Inaktiv" -#: gnucash/report/html-utilities.scm:321 +#: gnucash/report/html-utilities.scm:345 msgid "This report requires you to specify certain report options." msgstr "Für diesen Bericht müssen einige Optionen ausgewählt werden." -#: gnucash/report/html-utilities.scm:328 +#: gnucash/report/html-utilities.scm:352 msgid "No accounts selected" msgstr "Keine Konten ausgewählt!" -#: gnucash/report/html-utilities.scm:329 +#: gnucash/report/html-utilities.scm:353 msgid "This report requires accounts to be selected in the report options." msgstr "" "Für diesen Bericht müssen Konten in den Berichtsoptionen ausgewählt werden." -#: gnucash/report/html-utilities.scm:336 +#: gnucash/report/html-utilities.scm:360 #: gnucash/report/reports/standard/price-scatter.scm:276 msgid "No data" msgstr "Keine Daten gefunden!" -#: gnucash/report/html-utilities.scm:337 +#: gnucash/report/html-utilities.scm:361 msgid "" "The selected accounts contain no data/transactions (or only zeroes) for the " "selected time period" @@ -23657,19 +23658,19 @@ msgstr "Benutzer_definiert" #: gnucash/report/reports/standard/invoice.scm:337 #: gnucash/report/reports/standard/invoice.scm:342 #: gnucash/report/reports/standard/receipt.scm:40 -#: gnucash/report/reports/standard/register.scm:382 +#: gnucash/report/reports/standard/register.scm:353 +#: gnucash/report/reports/standard/register.scm:359 +#: gnucash/report/reports/standard/register.scm:363 +#: gnucash/report/reports/standard/register.scm:368 +#: gnucash/report/reports/standard/register.scm:373 +#: gnucash/report/reports/standard/register.scm:378 +#: gnucash/report/reports/standard/register.scm:383 #: gnucash/report/reports/standard/register.scm:388 -#: gnucash/report/reports/standard/register.scm:392 -#: gnucash/report/reports/standard/register.scm:397 -#: gnucash/report/reports/standard/register.scm:402 +#: gnucash/report/reports/standard/register.scm:393 +#: gnucash/report/reports/standard/register.scm:398 #: gnucash/report/reports/standard/register.scm:407 #: gnucash/report/reports/standard/register.scm:412 #: gnucash/report/reports/standard/register.scm:417 -#: gnucash/report/reports/standard/register.scm:422 -#: gnucash/report/reports/standard/register.scm:427 -#: gnucash/report/reports/standard/register.scm:436 -#: gnucash/report/reports/standard/register.scm:441 -#: gnucash/report/reports/standard/register.scm:446 #: gnucash/report/reports/standard/taxinvoice.scm:79 msgid "Display" msgstr "Anzeige" @@ -24269,7 +24270,7 @@ msgstr "Gesamtbeträge in der Legende anzeigen?" #: gnucash/report/reports/standard/balsheet-pnl.scm:910 #: gnucash/report/reports/standard/budget.scm:513 #: gnucash/report/reports/standard/cashflow-barchart.scm:282 -#: gnucash/report/reports/standard/cash-flow.scm:188 +#: gnucash/report/reports/standard/cash-flow.scm:190 #: gnucash/report/reports/standard/category-barchart.scm:514 #: gnucash/report/reports/standard/net-charts.scm:334 #: gnucash/report/reports/standard/price-scatter.scm:212 @@ -24796,35 +24797,35 @@ msgstr "" "zugewiesen worden. Normalerweise dürfen sich nur die TXF Codes für " "Zahlungspflichtige wiederholen." -#: gnucash/report/reports/locale-specific/de_DE/taxtxf.scm:818 +#: gnucash/report/reports/locale-specific/de_DE/taxtxf.scm:817 #, scheme-format msgid "Period from ~a to ~a" msgstr "Zeitraum von ~a bis ~a" -#: gnucash/report/reports/locale-specific/de_DE/taxtxf.scm:855 +#: gnucash/report/reports/locale-specific/de_DE/taxtxf.scm:854 msgid "Tax Report & XML Export" msgstr "Steuer-Bericht & Elster Export" -#: gnucash/report/reports/locale-specific/de_DE/taxtxf.scm:857 +#: gnucash/report/reports/locale-specific/de_DE/taxtxf.scm:856 msgid "Taxable Income / Deductible Expenses / Export to .XML file" msgstr "" "Besteuerte Erträge / Absetzbare Aufwendungen / Exportieren nach Elster-XML" -#: gnucash/report/reports/locale-specific/de_DE/taxtxf.scm:861 -#: gnucash/report/reports/locale-specific/de_DE/taxtxf.scm:870 +#: gnucash/report/reports/locale-specific/de_DE/taxtxf.scm:860 +#: gnucash/report/reports/locale-specific/de_DE/taxtxf.scm:869 msgid "Taxable Income / Deductible Expenses" msgstr "Besteuerte Erträge / Absetzbare Aufwendungen" -#: gnucash/report/reports/locale-specific/de_DE/taxtxf.scm:862 +#: gnucash/report/reports/locale-specific/de_DE/taxtxf.scm:861 msgid "This report shows your Taxable Income and Deductible Expenses." msgstr "" "Diese Seite zeigt Ihnen zu versteuernde Erträge und absetzbare Aufwendungen." -#: gnucash/report/reports/locale-specific/de_DE/taxtxf.scm:867 +#: gnucash/report/reports/locale-specific/de_DE/taxtxf.scm:866 msgid "XML" msgstr "XML für Elster" -#: gnucash/report/reports/locale-specific/de_DE/taxtxf.scm:871 +#: gnucash/report/reports/locale-specific/de_DE/taxtxf.scm:870 msgid "This page shows your Taxable Income and Deductible Expenses." msgstr "" "Diese Seite zeigt Ihnen zu versteuernde Erträge und absetzbare Aufwendungen." @@ -24998,20 +24999,20 @@ msgid "Expense Accounts" msgstr "Aufwandskonten" #: gnucash/report/reports/standard/account-piecharts.scm:60 -#: gnucash/report/reports/standard/balance-sheet.scm:485 -#: gnucash/report/reports/standard/budget-balance-sheet.scm:664 +#: gnucash/report/reports/standard/balance-sheet.scm:486 +#: gnucash/report/reports/standard/budget-balance-sheet.scm:665 #: gnucash/report/reports/standard/net-charts.scm:350 #: gnucash/report/reports/standard/net-charts.scm:421 -#: gnucash/report/report-utilities.scm:105 +#: gnucash/report/report-utilities.scm:117 msgid "Assets" msgstr "Aktiva" #: gnucash/report/reports/standard/account-piecharts.scm:62 -#: gnucash/report/reports/standard/balance-sheet.scm:386 -#: gnucash/report/reports/standard/budget-balance-sheet.scm:694 +#: gnucash/report/reports/standard/balance-sheet.scm:387 +#: gnucash/report/reports/standard/budget-balance-sheet.scm:695 #: gnucash/report/reports/standard/net-charts.scm:371 #: gnucash/report/reports/standard/net-charts.scm:421 -#: gnucash/report/report-utilities.scm:106 +#: gnucash/report/report-utilities.scm:118 msgid "Liabilities" msgstr "Verbindlichkeit" @@ -25392,15 +25393,15 @@ msgstr "" "Ignorieren Konten, die in der Baumstruktur unter dem Tiefenlimit liegen." #. Translators: This is part of the report title, which is capitalzed in English, but not all other languages -#: gnucash/report/reports/standard/account-summary.scm:325 -#: gnucash/report/reports/standard/equity-statement.scm:302 +#: gnucash/report/reports/standard/account-summary.scm:326 +#: gnucash/report/reports/standard/equity-statement.scm:304 #: gnucash/report/reports/standard/income-statement.scm:407 -#: gnucash/report/reports/standard/trial-balance.scm:412 +#: gnucash/report/reports/standard/trial-balance.scm:413 #, scheme-format msgid "For Period Covering ~a to ~a" msgstr "für Periode ~a bis ~a" -#: gnucash/report/reports/standard/account-summary.scm:409 +#: gnucash/report/reports/standard/account-summary.scm:410 msgid "Account title" msgstr "Kontobezeichnung" @@ -25557,14 +25558,14 @@ msgstr "Basis" #: gnucash/report/reports/standard/advanced-portfolio.scm:1081 #: gnucash/report/reports/standard/cashflow-barchart.scm:297 #: gnucash/report/reports/standard/cashflow-barchart.scm:332 -#: gnucash/report/reports/standard/cash-flow.scm:277 +#: gnucash/report/reports/standard/cash-flow.scm:279 msgid "Money In" msgstr "Einzahlung" #: gnucash/report/reports/standard/advanced-portfolio.scm:1082 #: gnucash/report/reports/standard/cashflow-barchart.scm:303 #: gnucash/report/reports/standard/cashflow-barchart.scm:333 -#: gnucash/report/reports/standard/cash-flow.scm:298 +#: gnucash/report/reports/standard/cash-flow.scm:300 msgid "Money Out" msgstr "Auszahlung" @@ -25693,7 +25694,7 @@ msgid "Reserve" msgstr "Reserve" #: gnucash/report/reports/standard/balance-sheet.scm:72 -#: gnucash/report/reports/standard/trial-balance.scm:573 +#: gnucash/report/reports/standard/trial-balance.scm:574 msgid "Balance Sheet" msgstr "Bilanz" @@ -25809,52 +25810,52 @@ msgstr "Summe Eigenkapital anzeigen" msgid "Whether or not to include a line indicating total equity." msgstr "Zeige eine Zeile für das gesamte Eigenkapital an." -#: gnucash/report/reports/standard/balance-sheet.scm:390 -#: gnucash/report/reports/standard/budget-balance-sheet.scm:716 +#: gnucash/report/reports/standard/balance-sheet.scm:391 +#: gnucash/report/reports/standard/budget-balance-sheet.scm:717 msgid "Total Liabilities" msgstr "Gesamt Verbindlichkeiten" -#: gnucash/report/reports/standard/balance-sheet.scm:488 -#: gnucash/report/reports/standard/budget-balance-sheet.scm:685 +#: gnucash/report/reports/standard/balance-sheet.scm:489 +#: gnucash/report/reports/standard/budget-balance-sheet.scm:686 msgid "Total Assets" msgstr "Gesamt Aktiva" -#: gnucash/report/reports/standard/balance-sheet.scm:510 +#: gnucash/report/reports/standard/balance-sheet.scm:511 #: gnucash/report/reports/support/balsheet-eg.eguile.scm:188 msgid "Retained Losses" msgstr "Erwirtschafteter Verlust" -#: gnucash/report/reports/standard/balance-sheet.scm:514 +#: gnucash/report/reports/standard/balance-sheet.scm:515 msgid "Trading Gains" msgstr "Gewinne Devisenhandel" -#: gnucash/report/reports/standard/balance-sheet.scm:515 +#: gnucash/report/reports/standard/balance-sheet.scm:516 msgid "Trading Losses" msgstr "Verluste Devisenhandel" -#: gnucash/report/reports/standard/balance-sheet.scm:519 +#: gnucash/report/reports/standard/balance-sheet.scm:520 #: gnucash/report/reports/standard/balsheet-pnl.scm:1103 #: gnucash/report/reports/standard/balsheet-pnl.scm:1118 -#: gnucash/report/reports/standard/budget-balance-sheet.scm:758 -#: gnucash/report/reports/standard/equity-statement.scm:472 -#: gnucash/report/reports/standard/trial-balance.scm:734 +#: gnucash/report/reports/standard/budget-balance-sheet.scm:759 +#: gnucash/report/reports/standard/equity-statement.scm:474 +#: gnucash/report/reports/standard/trial-balance.scm:735 msgid "Unrealized Gains" msgstr "Nicht realisierter Gewinn/Verlust" -#: gnucash/report/reports/standard/balance-sheet.scm:520 -#: gnucash/report/reports/standard/budget-balance-sheet.scm:759 -#: gnucash/report/reports/standard/equity-statement.scm:473 -#: gnucash/report/reports/standard/trial-balance.scm:735 +#: gnucash/report/reports/standard/balance-sheet.scm:521 +#: gnucash/report/reports/standard/budget-balance-sheet.scm:760 +#: gnucash/report/reports/standard/equity-statement.scm:475 +#: gnucash/report/reports/standard/trial-balance.scm:736 msgid "Unrealized Losses" msgstr "Nicht realisierter Verlust" -#: gnucash/report/reports/standard/balance-sheet.scm:524 -#: gnucash/report/reports/standard/budget-balance-sheet.scm:774 +#: gnucash/report/reports/standard/balance-sheet.scm:525 +#: gnucash/report/reports/standard/budget-balance-sheet.scm:775 msgid "Total Equity" msgstr "Gesamt Eigenkapital" -#: gnucash/report/reports/standard/balance-sheet.scm:534 -#: gnucash/report/reports/standard/budget-balance-sheet.scm:780 +#: gnucash/report/reports/standard/balance-sheet.scm:535 +#: gnucash/report/reports/standard/budget-balance-sheet.scm:781 msgid "Total Liabilities & Equity" msgstr "Gesamt Passiva" @@ -26004,7 +26005,7 @@ msgstr "" "um diese Nachricht loszuwerden." #: gnucash/report/reports/standard/balsheet-eg.scm:389 -#: libgnucash/engine/Scrub.c:107 +#: libgnucash/engine/Scrub.c:117 msgid "Orphan" msgstr "Ausbuchungskonto" @@ -26214,7 +26215,7 @@ msgid " to " msgstr " bis " #: gnucash/report/reports/standard/balsheet-pnl.scm:1272 -#: gnucash/report/reports/standard/trial-balance.scm:860 +#: gnucash/report/reports/standard/trial-balance.scm:861 msgid "Net Income" msgstr "Nettoertrag" @@ -26250,55 +26251,55 @@ msgstr "" msgid "Budget to use." msgstr "Zu benutzendes Budget" -#: gnucash/report/reports/standard/budget-balance-sheet.scm:676 +#: gnucash/report/reports/standard/budget-balance-sheet.scm:677 msgid "Existing Assets" msgstr "Bestehende Aktiva" -#: gnucash/report/reports/standard/budget-balance-sheet.scm:678 +#: gnucash/report/reports/standard/budget-balance-sheet.scm:679 msgid "Allocated Assets" msgstr "Zugewiesene Aktiva" -#: gnucash/report/reports/standard/budget-balance-sheet.scm:682 +#: gnucash/report/reports/standard/budget-balance-sheet.scm:683 msgid "Unallocated Assets" msgstr "Nicht verwendete Aktiva" -#: gnucash/report/reports/standard/budget-balance-sheet.scm:708 +#: gnucash/report/reports/standard/budget-balance-sheet.scm:709 msgid "Existing Liabilities" msgstr "Bestehende Verbindlichkeiten" -#: gnucash/report/reports/standard/budget-balance-sheet.scm:713 +#: gnucash/report/reports/standard/budget-balance-sheet.scm:714 msgid "New Liabilities" msgstr "Neue Verbindlichkeiten" -#: gnucash/report/reports/standard/budget-balance-sheet.scm:739 +#: gnucash/report/reports/standard/budget-balance-sheet.scm:740 msgid "Existing Retained Earnings" msgstr "Existierende Gewinnrücklagen" -#: gnucash/report/reports/standard/budget-balance-sheet.scm:740 +#: gnucash/report/reports/standard/budget-balance-sheet.scm:741 msgid "Existing Retained Losses" msgstr "Existierende Verlustvorträge" -#: gnucash/report/reports/standard/budget-balance-sheet.scm:745 +#: gnucash/report/reports/standard/budget-balance-sheet.scm:746 msgid "New Retained Earnings" msgstr "Neue Gewinnrücklagen" -#: gnucash/report/reports/standard/budget-balance-sheet.scm:746 +#: gnucash/report/reports/standard/budget-balance-sheet.scm:747 msgid "New Retained Losses" msgstr "Neue Verlustvorträge" -#: gnucash/report/reports/standard/budget-balance-sheet.scm:751 +#: gnucash/report/reports/standard/budget-balance-sheet.scm:752 msgid "Total Retained Earnings" msgstr "Summe Gewinnrücklagen" -#: gnucash/report/reports/standard/budget-balance-sheet.scm:752 +#: gnucash/report/reports/standard/budget-balance-sheet.scm:753 msgid "Total Retained Losses" msgstr "Summ Verlustvorträge" -#: gnucash/report/reports/standard/budget-balance-sheet.scm:768 +#: gnucash/report/reports/standard/budget-balance-sheet.scm:769 msgid "Existing Equity" msgstr "Existierendes Eigenkapital" -#: gnucash/report/reports/standard/budget-balance-sheet.scm:771 +#: gnucash/report/reports/standard/budget-balance-sheet.scm:772 msgid "New Equity" msgstr "Neues Eigenkapital" @@ -26534,59 +26535,59 @@ msgstr "" "Konten in der normalen Reihenfolge anzeigen, also Erträge vor Aufwendungen. " "Andernfalls zuerst die Aufwendungen, dann die Erträge anzeigen." -#: gnucash/report/reports/standard/budget-income-statement.scm:442 +#: gnucash/report/reports/standard/budget-income-statement.scm:443 msgid "Reporting range end period cannot be less than start period." msgstr "" "Das Ende des Berichtsbereichs kann nicht kleiner als der Anfang sein ─ bitte " "umtauschen." -#: gnucash/report/reports/standard/budget-income-statement.scm:510 +#: gnucash/report/reports/standard/budget-income-statement.scm:511 #: gnucash/report/reports/standard/income-statement.scm:505 msgid "Revenues" msgstr "Ertrag" -#: gnucash/report/reports/standard/budget-income-statement.scm:513 +#: gnucash/report/reports/standard/budget-income-statement.scm:514 #: gnucash/report/reports/standard/income-statement.scm:508 msgid "Total Revenue" msgstr "Gesamt-Ertrag" -#: gnucash/report/reports/standard/budget-income-statement.scm:523 +#: gnucash/report/reports/standard/budget-income-statement.scm:524 #: gnucash/report/reports/standard/income-statement.scm:515 msgid "Total Expenses" msgstr "Gesamt-Aufwand" -#: gnucash/report/reports/standard/budget-income-statement.scm:531 +#: gnucash/report/reports/standard/budget-income-statement.scm:532 #, scheme-format msgid "for Budget ~a" msgstr "für Budget ~a" -#: gnucash/report/reports/standard/budget-income-statement.scm:533 +#: gnucash/report/reports/standard/budget-income-statement.scm:534 #, scheme-format msgid "for Budget ~a Period ~d" msgstr "für Budget ~a Periode ~d" -#: gnucash/report/reports/standard/budget-income-statement.scm:536 +#: gnucash/report/reports/standard/budget-income-statement.scm:537 #, scheme-format msgid "for Budget ~a Periods ~d - ~d" msgstr "für Budget ~a Perioden ~d - ~d" -#: gnucash/report/reports/standard/budget-income-statement.scm:564 -#: gnucash/report/reports/standard/equity-statement.scm:455 +#: gnucash/report/reports/standard/budget-income-statement.scm:565 +#: gnucash/report/reports/standard/equity-statement.scm:457 #: gnucash/report/reports/standard/income-statement.scm:525 msgid "Net income" msgstr "Netto-Ertrag" -#: gnucash/report/reports/standard/budget-income-statement.scm:565 -#: gnucash/report/reports/standard/equity-statement.scm:456 +#: gnucash/report/reports/standard/budget-income-statement.scm:566 +#: gnucash/report/reports/standard/equity-statement.scm:458 #: gnucash/report/reports/standard/income-statement.scm:526 msgid "Net loss" msgstr "Netto-Verlust" -#: gnucash/report/reports/standard/budget-income-statement.scm:605 +#: gnucash/report/reports/standard/budget-income-statement.scm:606 msgid "Budget Income Statement" msgstr "Budget Einnahmenüberschussrechnung" -#: gnucash/report/reports/standard/budget-income-statement.scm:606 +#: gnucash/report/reports/standard/budget-income-statement.scm:607 msgid "Budget Profit & Loss" msgstr "Budget Gewinn- und Verlustrechnung" @@ -26783,21 +26784,21 @@ msgid "Show full account names (including parent accounts)." msgstr "" "Zeige lange Kontenbezeichung (einschließlich übergeordneter Konten) an." -#: gnucash/report/reports/standard/cash-flow.scm:203 +#: gnucash/report/reports/standard/cash-flow.scm:205 #, scheme-format msgid "~a and subaccounts" msgstr "~a und Unterkonten" -#: gnucash/report/reports/standard/cash-flow.scm:204 +#: gnucash/report/reports/standard/cash-flow.scm:206 #, scheme-format msgid "~a and selected subaccounts" msgstr "~a und ausgewählte Unterkonten" -#: gnucash/report/reports/standard/cash-flow.scm:268 +#: gnucash/report/reports/standard/cash-flow.scm:270 msgid "Money into selected accounts comes from" msgstr "Zahlung in gewählte Konten kommen aus" -#: gnucash/report/reports/standard/cash-flow.scm:289 +#: gnucash/report/reports/standard/cash-flow.scm:291 msgid "Money out of selected accounts goes to" msgstr "Zahlung von gewählten Konten gehen nach" @@ -27073,7 +27074,7 @@ msgid "No Customer" msgstr "Kein Kunde" # Fixme: Source Accelerator missing -#: gnucash/report/reports/standard/customer-summary.scm:514 +#: gnucash/report/reports/standard/customer-summary.scm:516 msgid "Customer Summary" msgstr "Kundenüber_sicht" @@ -27125,37 +27126,37 @@ msgid "" "Causes the Closing Entries Pattern to be treated as a regular expression." msgstr "Lässt das Muster für Abschlussbuchungen ein regulärer Ausdruck sein." -#: gnucash/report/reports/standard/equity-statement.scm:423 +#: gnucash/report/reports/standard/equity-statement.scm:425 #: gnucash/report/reports/standard/income-statement.scm:481 -#: gnucash/report/reports/standard/trial-balance.scm:404 +#: gnucash/report/reports/standard/trial-balance.scm:405 msgid "for Period" msgstr "für Buchungsperiode" -#: gnucash/report/reports/standard/equity-statement.scm:450 -#: gnucash/report/reports/standard/equity-statement.scm:486 +#: gnucash/report/reports/standard/equity-statement.scm:452 +#: gnucash/report/reports/standard/equity-statement.scm:488 msgid "Capital" msgstr "Kapital" -#: gnucash/report/reports/standard/equity-statement.scm:461 +#: gnucash/report/reports/standard/equity-statement.scm:463 msgid "Investments" msgstr "Investments" -#: gnucash/report/reports/standard/equity-statement.scm:466 +#: gnucash/report/reports/standard/equity-statement.scm:468 msgid "Withdrawals" msgstr "Abhebungen" -#: gnucash/report/reports/standard/equity-statement.scm:479 +#: gnucash/report/reports/standard/equity-statement.scm:481 msgid "Increase in capital" msgstr "Kapitalerhöhung" -#: gnucash/report/reports/standard/equity-statement.scm:480 +#: gnucash/report/reports/standard/equity-statement.scm:482 msgid "Decrease in capital" msgstr "Kapitalreduzierung" #: gnucash/report/reports/standard/general-journal.scm:94 #: gnucash/report/reports/standard/general-ledger.scm:68 #: gnucash/report/reports/standard/register.scm:135 -#: gnucash/report/reports/standard/register.scm:388 +#: gnucash/report/reports/standard/register.scm:359 #: gnucash/report/trep-engine.scm:943 gnucash/report/trep-engine.scm:1071 msgid "Num/Action" msgstr "Nummer/Aktion" @@ -27163,7 +27164,7 @@ msgstr "Nummer/Aktion" #: gnucash/report/reports/standard/general-journal.scm:102 #: gnucash/report/reports/standard/general-ledger.scm:82 #: gnucash/report/reports/standard/general-ledger.scm:102 -#: gnucash/report/reports/standard/register.scm:441 +#: gnucash/report/reports/standard/register.scm:412 #: gnucash/report/trep-engine.scm:958 gnucash/report/trep-engine.scm:1092 #: gnucash/report/trep-engine.scm:1380 msgid "Running Balance" @@ -27172,7 +27173,7 @@ msgstr "Laufender Saldo" #: gnucash/report/reports/standard/general-journal.scm:103 #: gnucash/report/reports/standard/general-ledger.scm:83 #: gnucash/report/reports/standard/general-ledger.scm:103 -#: gnucash/report/reports/standard/register.scm:446 +#: gnucash/report/reports/standard/register.scm:417 #: gnucash/report/trep-engine.scm:959 msgid "Totals" msgstr "Gesamtsumme" @@ -27502,8 +27503,8 @@ msgid "" msgstr "Summenzeile für die Devisenhandel-Konten anzeigen." #: gnucash/report/reports/standard/income-statement.scm:518 -#: libgnucash/engine/Account.cpp:4328 libgnucash/engine/Scrub.c:457 -#: libgnucash/engine/Scrub.c:522 +#: libgnucash/engine/Account.cpp:4328 libgnucash/engine/Scrub.c:472 +#: libgnucash/engine/Scrub.c:537 msgid "Trading" msgstr "Devisenhandel" @@ -27512,7 +27513,7 @@ msgid "Total Trading" msgstr "Gesamt Devisenhandel" #: gnucash/report/reports/standard/income-statement.scm:572 -#: gnucash/report/reports/standard/trial-balance.scm:572 +#: gnucash/report/reports/standard/trial-balance.scm:573 msgid "Income Statement" msgstr "Ergebnisrechnung" @@ -27620,14 +27621,14 @@ msgid "Location for Picture" msgstr "Speicherort für Bild" #: gnucash/report/reports/standard/invoice.scm:213 -#: gnucash/report/reports/standard/register.scm:383 +#: gnucash/report/reports/standard/register.scm:354 #: gnucash/report/reports/standard/taxinvoice.scm:135 #: gnucash/report/trep-engine.scm:940 msgid "Display the date?" msgstr "Anzeigen des Datums?" #: gnucash/report/reports/standard/invoice.scm:218 -#: gnucash/report/reports/standard/register.scm:398 +#: gnucash/report/reports/standard/register.scm:369 #: gnucash/report/trep-engine.scm:945 msgid "Display the description?" msgstr "Anzeigen der Beschreibung?" @@ -28127,7 +28128,7 @@ msgstr "Verkauf" #: gnucash/report/reports/standard/new-owner-report.scm:56 #: gnucash/report/reports/standard/owner-report.scm:57 -#: gnucash/report/report-utilities.scm:104 +#: gnucash/report/report-utilities.scm:116 msgid "Credits" msgstr "Haben" @@ -28213,7 +28214,7 @@ msgid "Display the period credits column?" msgstr "Haben-Spalte pro Periode anzeigen?" #: gnucash/report/reports/standard/new-owner-report.scm:928 -#: gnucash/report/reports/standard/register.scm:442 +#: gnucash/report/reports/standard/register.scm:413 #: gnucash/report/trep-engine.scm:958 msgid "Display a running balance?" msgstr "Einen laufenden Saldo anzeigen." @@ -28639,7 +28640,7 @@ msgid "Reconciliation Report" msgstr "Abgleichungsbericht" #: gnucash/report/reports/standard/register.scm:148 -#: gnucash/report/reports/standard/register.scm:417 +#: gnucash/report/reports/standard/register.scm:388 #: libgnucash/engine/gnc-lot.c:779 msgid "Lot" msgstr "Posten" @@ -28652,97 +28653,97 @@ msgstr "Höhe der Belastung" msgid "Credit Value" msgstr "Höhe der Gutschrift" -#: gnucash/report/reports/standard/register.scm:377 +#: gnucash/report/reports/standard/register.scm:348 msgid "The title of the report." msgstr "Der Titel des Berichts." -#: gnucash/report/reports/standard/register.scm:389 +#: gnucash/report/reports/standard/register.scm:360 msgid "Display the check number/action?" msgstr "Anzeigen der Schecknummer/Aktion?" -#: gnucash/report/reports/standard/register.scm:393 +#: gnucash/report/reports/standard/register.scm:364 #: gnucash/report/trep-engine.scm:943 gnucash/report/trep-engine.scm:944 msgid "Display the check number?" msgstr "Anzeigen der Schecknummer?" -#: gnucash/report/reports/standard/register.scm:403 +#: gnucash/report/reports/standard/register.scm:374 #: gnucash/report/trep-engine.scm:972 msgid "Display the memo?" msgstr "Anzeigen des Buchungstexts?" -#: gnucash/report/reports/standard/register.scm:408 +#: gnucash/report/reports/standard/register.scm:379 msgid "Display the account?" msgstr "Konto anzeigen?" -#: gnucash/report/reports/standard/register.scm:413 +#: gnucash/report/reports/standard/register.scm:384 #: gnucash/report/trep-engine.scm:953 msgid "Display the number of shares?" msgstr "Anzahl von Anteilen anzeigen?" -#: gnucash/report/reports/standard/register.scm:418 +#: gnucash/report/reports/standard/register.scm:389 msgid "Display the name of lot the shares are in?" msgstr "Bezeichnung des Loses anzeigen, in dem sich die Anteile befinden?" -#: gnucash/report/reports/standard/register.scm:423 +#: gnucash/report/reports/standard/register.scm:394 #: gnucash/report/trep-engine.scm:955 msgid "Display the shares price?" msgstr "Den Anteilspreis anzeigen?" -#: gnucash/report/reports/standard/register.scm:428 +#: gnucash/report/reports/standard/register.scm:399 #: gnucash/report/trep-engine.scm:1017 msgid "Display the amount?" msgstr "Betrag anzeigen?" -#: gnucash/report/reports/standard/register.scm:431 +#: gnucash/report/reports/standard/register.scm:402 #: gnucash/report/trep-engine.scm:1007 gnucash/report/trep-engine.scm:1021 msgid "Single" msgstr "Einzel" -#: gnucash/report/reports/standard/register.scm:431 +#: gnucash/report/reports/standard/register.scm:402 #: gnucash/report/trep-engine.scm:1021 msgid "Single Column Display." msgstr "Einspaltige Anzeige." -#: gnucash/report/reports/standard/register.scm:432 +#: gnucash/report/reports/standard/register.scm:403 #: gnucash/report/trep-engine.scm:1022 msgid "Double" msgstr "Doppel" -#: gnucash/report/reports/standard/register.scm:432 +#: gnucash/report/reports/standard/register.scm:403 #: gnucash/report/trep-engine.scm:1022 msgid "Two Column Display." msgstr "Zweispaltige Anzeige." -#: gnucash/report/reports/standard/register.scm:437 +#: gnucash/report/reports/standard/register.scm:408 msgid "Display the value in transaction currency?" msgstr "Werte in Buchungswährung anzeigen?" -#: gnucash/report/reports/standard/register.scm:447 +#: gnucash/report/reports/standard/register.scm:418 #: gnucash/report/trep-engine.scm:959 msgid "Display the totals?" msgstr "Anzeigen der Gesamtsumme" -#: gnucash/report/reports/standard/register.scm:586 +#: gnucash/report/reports/standard/register.scm:557 msgid "Total Debits" msgstr "Gesamt Soll" -#: gnucash/report/reports/standard/register.scm:588 +#: gnucash/report/reports/standard/register.scm:559 msgid "Total Credits" msgstr "Gesamt Haben" -#: gnucash/report/reports/standard/register.scm:590 +#: gnucash/report/reports/standard/register.scm:561 msgid "Total Value Debits" msgstr "Gesamtwert Soll" -#: gnucash/report/reports/standard/register.scm:592 +#: gnucash/report/reports/standard/register.scm:563 msgid "Total Value Credits" msgstr "Gesamtwert Haben" -#: gnucash/report/reports/standard/register.scm:595 +#: gnucash/report/reports/standard/register.scm:566 msgid "Net Change" msgstr "Netto-Änderung" -#: gnucash/report/reports/standard/register.scm:597 +#: gnucash/report/reports/standard/register.scm:568 msgid "Value Change" msgstr "Gesamtwert Änderung" @@ -28998,7 +28999,7 @@ msgstr "" "Vorlage)" #: gnucash/report/reports/standard/trial-balance.scm:61 -#: gnucash/report/reports/standard/trial-balance.scm:569 +#: gnucash/report/reports/standard/trial-balance.scm:570 msgid "Trial Balance" msgstr "Rohbilanz" @@ -29104,15 +29105,15 @@ msgstr "Arbeitsblatt" msgid "Creates a complete end-of-period work sheet" msgstr "Erstellt ein vollständiges Arbeitsblatt zum Periodenende" -#: gnucash/report/reports/standard/trial-balance.scm:570 +#: gnucash/report/reports/standard/trial-balance.scm:571 msgid "Adjustments" msgstr "Anpassungsbuchungen" -#: gnucash/report/reports/standard/trial-balance.scm:571 +#: gnucash/report/reports/standard/trial-balance.scm:572 msgid "Adjusted Trial Balance" msgstr "Angepasste Rohbilanz" -#: gnucash/report/reports/standard/trial-balance.scm:860 +#: gnucash/report/reports/standard/trial-balance.scm:861 msgid "Net Loss" msgstr "Nettoverlust" @@ -29154,7 +29155,7 @@ msgid "Equity Accounts" msgstr "Eigenkapital" #: gnucash/report/reports/support/balsheet-eg.eguile.scm:182 -#: gnucash/report/report-utilities.scm:119 +#: gnucash/report/report-utilities.scm:131 msgid "Trading Accounts" msgstr "Devisenhandel-Konten" @@ -29203,58 +29204,58 @@ msgstr "Webseite" msgid "Invoice Date" msgstr "Rechnungsdatum" -#: gnucash/report/report-utilities.scm:107 +#: gnucash/report/report-utilities.scm:119 msgid "Stocks" msgstr "Aktienkonten" -#: gnucash/report/report-utilities.scm:108 +#: gnucash/report/report-utilities.scm:120 msgid "Mutual Funds" msgstr "Investmentfonds" -#: gnucash/report/report-utilities.scm:109 +#: gnucash/report/report-utilities.scm:121 #: libgnucash/engine/gnc-commodity.h:116 msgid "Currencies" msgstr "Währungen" -#: gnucash/report/report-utilities.scm:112 +#: gnucash/report/report-utilities.scm:124 msgid "Equities" msgstr "Eigenkapital" -#: gnucash/report/report-utilities.scm:113 +#: gnucash/report/report-utilities.scm:125 msgid "Checking" msgstr "Girokonto" -#: gnucash/report/report-utilities.scm:114 +#: gnucash/report/report-utilities.scm:126 msgid "Savings" msgstr "Sparkonten" -#: gnucash/report/report-utilities.scm:115 +#: gnucash/report/report-utilities.scm:127 msgid "Money Market" msgstr "Geldmarktfond" -#: gnucash/report/report-utilities.scm:116 +#: gnucash/report/report-utilities.scm:128 msgid "Accounts Receivable" msgstr "Forderungen Konten" -#: gnucash/report/report-utilities.scm:117 +#: gnucash/report/report-utilities.scm:129 msgid "Accounts Payable" msgstr "Verbindlichkeiten Konten" -#: gnucash/report/report-utilities.scm:118 +#: gnucash/report/report-utilities.scm:130 msgid "Credit Lines" msgstr "Kreditrahmen" -#: gnucash/report/report-utilities.scm:618 +#: gnucash/report/report-utilities.scm:630 #, scheme-format msgid "Building '~a' report ..." msgstr "Bericht »~a« berechnen..." -#: gnucash/report/report-utilities.scm:624 +#: gnucash/report/report-utilities.scm:636 #, scheme-format msgid "Rendering '~a' report ..." msgstr "Bericht »~a« darstellen..." -#: gnucash/report/report-utilities.scm:626 +#: gnucash/report/report-utilities.scm:638 msgid "Untitled" msgstr "Ohne Titel" @@ -30852,6 +30853,24 @@ msgstr "" msgid "No exchange rate available in SX [%s] for %s -> %s, value is zero." msgstr "Kein Umtauschkurs verfügbar in SX [%s] für %s -> %s, Wert ist Null." +#: libgnucash/app-utils/gnc-ui-balances.c:407 +msgid "Account is already at Auto-Clear Balance." +msgstr "" + +#: libgnucash/app-utils/gnc-ui-balances.c:451 +msgid "Too many uncleared splits" +msgstr "" + +#: libgnucash/app-utils/gnc-ui-balances.c:467 +msgid "The selected amount cannot be cleared." +msgstr "Der gewählte Betrag kann nicht automatisch abgeglichen werden." + +#: libgnucash/app-utils/gnc-ui-balances.c:473 +msgid "Cannot uniquely clear splits. Found multiple possibilities." +msgstr "" +"Automatisches Abgleichen kann nicht die Buchungsteile nicht eindeutig " +"bestimmen." + #. Translators: This and the following strings appear on #. * the account tab if the Tax Info column is displayed, #. * i.e. if the user wants to record the tax form number @@ -30977,7 +30996,7 @@ msgstr "" "der neueren ~a Optionen '~a' ist nicht verfügbar, Ausweichen auf die Option " "'~a'." -#: libgnucash/app-utils/option-util.c:1696 +#: libgnucash/app-utils/option-util.c:1663 #, c-format msgid "" "There is a problem with option %s:%s.\n" @@ -30986,7 +31005,7 @@ msgstr "" "Es gibt ein Problem mit der Einstellung %s:%s.\n" "%s" -#: libgnucash/app-utils/option-util.c:1697 +#: libgnucash/app-utils/option-util.c:1664 msgid "Invalid option value" msgstr "Ungültiger Wert einer Option" @@ -31294,7 +31313,7 @@ msgstr "%s %s" msgid "Unknown, %d-size list." msgstr "Unbekannt, Liste mit %d Einträgen." -#: libgnucash/engine/ScrubBusiness.c:547 +#: libgnucash/engine/ScrubBusiness.c:548 msgid "" "Please delete this transaction. Explanation at https://wiki.gnucash.org/wiki/" "Business_Features_Issues#Double_posting" @@ -31302,7 +31321,7 @@ msgstr "" "Bitte löschen sie diese Buchung. Die (englische) Erklärung befindet sich in " "https://wiki.gnucash.org/wiki/Business_Features_Issues#Double_posting" -#: libgnucash/engine/ScrubBusiness.c:563 +#: libgnucash/engine/ScrubBusiness.c:564 msgid "" "Please delete this transaction. Explanation at https://wiki.gnucash.org/wiki/" "Business_Features_Issues#I_can.27t_delete_a_transaction_of_type_.22I.22_from_the_AR.2FAP_account" @@ -31312,22 +31331,22 @@ msgstr "" "Business_Features_Issues#I_can.27t_delete_a_transaction_of_type_.22I.22_from_the_AR.2FAP_account" # Fixme: Bessere Lösung für die nächsten 2? -#: libgnucash/engine/ScrubBusiness.c:614 +#: libgnucash/engine/ScrubBusiness.c:615 #, c-format msgid "Checking business lots in account %s: %u of %u" msgstr "Überprüfe geschäftliche Posten im Konto %s: %u von %u" -#: libgnucash/engine/ScrubBusiness.c:664 +#: libgnucash/engine/ScrubBusiness.c:669 #, c-format msgid "Checking business splits in account %s: %u of %u" msgstr "Überprüfe geschäftliche Buchungsteile im Konto %s: %u von %u" -#: libgnucash/engine/Scrub.c:124 +#: libgnucash/engine/Scrub.c:134 #, c-format msgid "Looking for orphans in account %s: %u of %u" msgstr "Suche nach verwaisten Buchungen im Konto %s: %u von %u" -#: libgnucash/engine/Scrub.c:329 +#: libgnucash/engine/Scrub.c:344 #, c-format msgid "Looking for imbalances in account %s: %u of %u" msgstr "Suche nach unausgeglichenen Buchungen im Konto %s: %u von %u" @@ -31349,3 +31368,12 @@ msgstr "Buchung ungültig gemacht" #: libgnucash/tax/us/txf.scm:98 msgid "No help available." msgstr "Keine Hilfe verfügbar." + +#~ msgid "Searching for splits to clear ..." +#~ msgstr "Buchungsteile zum Abgleichen werden gesucht..." + +#~ msgid "Auto-Clear Information" +#~ msgstr "Information zum automatischen Kontenabgleich" + +#~ msgid "Exchange rates" +#~ msgstr "Wechselkurse" From 5ea17cb09ebeddc42935b490300dc843f1ec1d3c Mon Sep 17 00:00:00 2001 From: "Frank H. Ellenberger" Date: Mon, 2 Nov 2020 23:28:56 +0100 Subject: [PATCH 092/167] L10N:de: Anpassungen an "Wechselkurse" an aktuellen Code * PR #806 * missing space --- po/de.po | 11 +++-------- 1 file changed, 3 insertions(+), 8 deletions(-) diff --git a/po/de.po b/po/de.po index 21e7fe9723..afc1f637e2 100644 --- a/po/de.po +++ b/po/de.po @@ -25,7 +25,7 @@ msgstr "" "Report-Msgid-Bugs-To: https://bugs.gnucash.org/enter_bug.cgi?" "product=GnuCash&component=Translations\n" "POT-Creation-Date: 2020-11-02 23:00+0100\n" -"PO-Revision-Date: 2020-10-27 21:23+0100\n" +"PO-Revision-Date: 2020-11-02 23:21+0100\n" "Last-Translator: Christian Stimming \n" "Language-Team: Deutschsprachige GnuCash-Gemeinde \n" "Language: de\n" @@ -23218,12 +23218,10 @@ msgid "Can't save style sheet" msgstr "Stilvorlage kann nicht gespeichert werden" #: gnucash/report/html-utilities.scm:229 gnucash/report/html-utilities.scm:246 -#, fuzzy -#| msgid "Exchange rate" msgid "Exchange rate" msgid_plural "Exchange rates" msgstr[0] "Wechselkurs" -msgstr[1] "Wechselkurs" +msgstr[1] "Wechselkurse" #: gnucash/report/html-utilities.scm:259 msgid "No budgets exist. You must create at least one budget." @@ -29169,7 +29167,7 @@ msgstr "Ausgleichsbetrag" #: gnucash/report/reports/support/balsheet-eg.eguile.scm:275 msgid "Exchange Rates used for this report" -msgstr "Diesem Bericht zugrundeliegendeWechselkurse" +msgstr "Diesem Bericht zugrundeliegende Wechselkurse" #: gnucash/report/reports/support/receipt.eguile.scm:124 msgid "Invoice No." @@ -31374,6 +31372,3 @@ msgstr "Keine Hilfe verfügbar." #~ msgid "Auto-Clear Information" #~ msgstr "Information zum automatischen Kontenabgleich" - -#~ msgid "Exchange rates" -#~ msgstr "Wechselkurse" From 39827ce7bba8d87dd40921c33cde666446e559e6 Mon Sep 17 00:00:00 2001 From: Robert Fewell <14uBobIT@gmail.com> Date: Tue, 3 Nov 2020 13:59:14 +0000 Subject: [PATCH 093/167] Change Preference dialog account separator validation If the account separator is changed and is invalid the warning dialog may be shown many times. To fix this the validation is done on closing the preference dialog when a validation dialog will present two options, The first is to reset the separator to the original value and close the preference dialog and the second is to return to the 'Accounts' page of the preference dialog. The warning symbol is still displayed when the separator is changed giving an indication of a problem. This has stemmed from PR #766 and all this commit does is the minimum recommended there. --- gnucash/gnome-utils/dialog-preferences.c | 124 ++++++++++++++++++-- gnucash/gtkbuilder/dialog-preferences.glade | 119 ++++++++++++++++++- 2 files changed, 229 insertions(+), 14 deletions(-) diff --git a/gnucash/gnome-utils/dialog-preferences.c b/gnucash/gnome-utils/dialog-preferences.c index 5b9e1bf8b8..9b8137dccf 100644 --- a/gnucash/gnome-utils/dialog-preferences.c +++ b/gnucash/gnome-utils/dialog-preferences.c @@ -90,8 +90,10 @@ static QofLogModule log_module = GNC_MOD_PREFS; void gnc_preferences_response_cb(GtkDialog *dialog, gint response, GtkDialog *unused); void gnc_account_separator_pref_changed_cb (GtkEntry *entry, GtkWidget *dialog); -gboolean gnc_account_separator_validate_cb (GtkEntry *entry, GdkEvent *event, GtkWidget *dialog); void gnc_save_on_close_expires_cb (GtkToggleButton *button, GtkWidget *dialog); +gboolean gnc_preferences_delete_event_cb (GtkWidget *widget, + GdkEvent *event, + gpointer user_data); /** This data structure holds the information for a single addition to * the preferences dialog. */ @@ -185,23 +187,96 @@ gnc_account_separator_pref_changed_cb (GtkEntry *entry, GtkWidget *dialog) } -gboolean -gnc_account_separator_validate_cb (GtkEntry *entry, GdkEvent *event, GtkWidget *dialog) +/** Called when the 'Close' button pressed or preference dialog closes + * to check if the account separator is valid. + * Offers two choices, to reset separator to original value and exit + * or go back to the 'Accounts' page to change separator + * + * @internal + * + * @param dialog the prefs dialog. + */ +static gboolean +gnc_account_separator_validate (GtkWidget *dialog) { + GtkWidget *entry = g_object_get_data (G_OBJECT(dialog), "account-separator"); + gboolean ret = TRUE; gchar *separator; - gchar *conflict_msg = gnc_account_separator_is_valid (gtk_entry_get_text (entry), &separator); + gchar *conflict_msg = gnc_account_separator_is_valid (gtk_entry_get_text (GTK_ENTRY(entry)), &separator); /* Check if the new separator clashes with existing account names */ - if (conflict_msg) { - gnc_warning_dialog (GTK_WINDOW (dialog), "%s", conflict_msg); - g_free ( conflict_msg ); + GtkWidget *msg_dialog; + GtkBuilder *builder; + GtkWidget *msg_label; + gint response; + + builder = gtk_builder_new(); + gnc_builder_add_from_file (builder, "dialog-preferences.glade", "separator_validation_dialog"); + + msg_dialog = GTK_WIDGET(gtk_builder_get_object (builder, "separator_validation_dialog")); + + msg_label = GTK_WIDGET(gtk_builder_get_object (builder, "conflict_message")); + + gtk_label_set_text (GTK_LABEL(msg_label), conflict_msg); + + g_object_unref (G_OBJECT(builder)); + gtk_widget_show_all (msg_dialog); + + response = gtk_dialog_run (GTK_DIALOG(msg_dialog)); + if (response == GTK_RESPONSE_ACCEPT) // reset to original + { + gchar *original_sep = g_object_get_data (G_OBJECT(entry), "original_text"); + + if (original_sep != NULL) + gtk_entry_set_text (GTK_ENTRY(entry), original_sep); + } + else + ret = FALSE; + + g_free (conflict_msg); + gtk_widget_destroy (msg_dialog); } g_free (separator); - return FALSE; + return ret; } + +/** Used to select the 'Accounts' page when the user wants + * to return from the account separator validation dialog + * to the preference dialog. + * + * @internal + * + * @param user_data A pointer to the dialog. + */ +static void +gnc_preferences_select_account_page (GtkDialog *dialog) +{ + GtkWidget *notebook = g_object_get_data (G_OBJECT(dialog), NOTEBOOK); + GList *children = gtk_container_get_children (GTK_CONTAINER(notebook)); + + if (children) + { + GtkWidget *acc_page = NULL; + GList *node; + + for (node = children; node; node = node->next) + { + if (g_strcmp0 (gtk_widget_get_name (GTK_WIDGET(node->data)), "accounts_page") == 0) + acc_page = node->data; + } + + if (acc_page) + gtk_notebook_set_current_page (GTK_NOTEBOOK(notebook), + gtk_notebook_page_num (GTK_NOTEBOOK(notebook), + acc_page)); + } + g_list_free (children); +} + + /** Called when the save-on-close checkbutton is toggled. * @internal * @param button the toggle button. @@ -1096,6 +1171,15 @@ gnc_prefs_connect_date_edit (GNCDateEdit *gde , const gchar *boxname ) /* Callbacks */ /********************/ +gboolean +gnc_preferences_delete_event_cb (GtkWidget *widget, + GdkEvent *event, + gpointer user_data) +{ + /* need to block this for the account separator test */ + return TRUE; +} + /** Handle a user click on one of the buttons at the bottom of the * preference dialog. Also handles delete_window events, which have * conveniently converted to a response by GtkDialog. @@ -1118,11 +1202,17 @@ gnc_preferences_response_cb(GtkDialog *dialog, gint response, GtkDialog *unused) gnc_gnome_help(HF_HELP, HL_GLOBPREFS); break; + case GTK_RESPONSE_DELETE_EVENT: default: - gnc_save_window_size(GNC_PREFS_GROUP, GTK_WINDOW(dialog)); - gnc_unregister_gui_component_by_data(DIALOG_PREFERENCES_CM_CLASS, - dialog); - gtk_widget_destroy(GTK_WIDGET(dialog)); + if (gnc_account_separator_validate (GTK_WIDGET(dialog))) + { + gnc_save_window_size (GNC_PREFS_GROUP, GTK_WINDOW(dialog)); + gnc_unregister_gui_component_by_data (DIALOG_PREFERENCES_CM_CLASS, + dialog); + gtk_widget_destroy (GTK_WIDGET(dialog)); + } + else + gnc_preferences_select_account_page (dialog); break; } } @@ -1239,7 +1329,7 @@ static GtkWidget * gnc_preferences_dialog_create(GtkWindow *parent) { GtkBuilder *builder; - GtkWidget *dialog, *notebook, *label, *image, *spinner; + GtkWidget *dialog, *notebook, *label, *image, *spinner, *entry; GtkWidget *box, *date, *period, *currency, *fcb, *button; GHashTable *prefs_table; GDate* gdate = NULL; @@ -1304,6 +1394,9 @@ gnc_preferences_dialog_create(GtkWindow *parent) image = GTK_WIDGET(gtk_builder_get_object (builder, "separator_error")); g_object_set_data(G_OBJECT(dialog), "separator_error", image); + entry = GTK_WIDGET(gtk_builder_get_object (builder, "pref/general/account-separator")); + g_object_set_data (G_OBJECT(dialog), "account-separator", entry); + spinner = GTK_WIDGET(gtk_builder_get_object (builder, "pref/general/save-on-close-wait-time")); g_object_set_data(G_OBJECT(dialog), "save_on_close_wait_time", spinner); @@ -1417,6 +1510,11 @@ gnc_preferences_dialog_create(GtkWindow *parent) g_object_unref(G_OBJECT(builder)); + /* save the original account separator incase it changes */ + g_object_set_data_full (G_OBJECT(entry), "original_text", + g_strdup (gtk_entry_get_text (GTK_ENTRY(entry))), + g_free); + LEAVE("dialog %p", dialog); return dialog; } diff --git a/gnucash/gtkbuilder/dialog-preferences.glade b/gnucash/gtkbuilder/dialog-preferences.glade index 3233c736c0..43c5745083 100644 --- a/gnucash/gtkbuilder/dialog-preferences.glade +++ b/gnucash/gtkbuilder/dialog-preferences.glade @@ -113,6 +113,121 @@ 1 10 + + False + True + 600 + True + dialog + + + False + vertical + 2 + + + False + end + + + _Reset + True + True + True + True + + + True + True + 0 + + + + + _Close + True + True + True + True + True + True + + + True + True + 1 + + + + + False + False + 0 + + + + + True + False + vertical + 6 + + + True + False + <b>Separator Character</b> + True + + + False + True + 0 + + + + + True + False + True + + + False + True + 1 + + + + + True + False + 12 + Press 'Reset' to use the original account separator and close the preference window +Press 'Close' to return to the preference window + + + + False + True + 2 + + + + + False + True + 1 + + + + + + button1 + button2 + + + + + 1 100 @@ -126,6 +241,7 @@ 600 400 normal + @@ -449,6 +565,7 @@ + accounts_page True False 6 @@ -739,6 +856,7 @@ False start dialog-warning + 3 False @@ -758,7 +876,6 @@ False False - True From c40ac765b9cd029c8e7449f12004774933ca8cf3 Mon Sep 17 00:00:00 2001 From: Robert Fewell <14uBobIT@gmail.com> Date: Tue, 3 Nov 2020 14:00:50 +0000 Subject: [PATCH 094/167] Change source file dialog-preferences.c for space and tabs --- gnucash/gnome-utils/dialog-preferences.c | 402 +++++++++++------------ 1 file changed, 200 insertions(+), 202 deletions(-) diff --git a/gnucash/gnome-utils/dialog-preferences.c b/gnucash/gnome-utils/dialog-preferences.c index 9b8137dccf..149b51bb36 100644 --- a/gnucash/gnome-utils/dialog-preferences.c +++ b/gnucash/gnome-utils/dialog-preferences.c @@ -88,7 +88,7 @@ /** The debugging module that this .o belongs to. */ static QofLogModule log_module = GNC_MOD_PREFS; -void gnc_preferences_response_cb(GtkDialog *dialog, gint response, GtkDialog *unused); +void gnc_preferences_response_cb (GtkDialog *dialog, gint response, GtkDialog *unused); void gnc_account_separator_pref_changed_cb (GtkEntry *entry, GtkWidget *dialog); void gnc_save_on_close_expires_cb (GtkToggleButton *button, GtkWidget *dialog); gboolean gnc_preferences_delete_event_cb (GtkWidget *widget, @@ -122,7 +122,7 @@ GSList *add_ins = NULL; static gchar *gnc_account_separator_is_valid (const gchar *separator, gchar **normalized_separator) { - QofBook *book = gnc_get_current_book(); + QofBook *book = gnc_get_current_book (); GList *conflict_accts = NULL; gchar *message = NULL; @@ -133,7 +133,6 @@ static gchar *gnc_account_separator_is_valid (const gchar *separator, conflict_accts); g_list_free (conflict_accts); - return message; } @@ -156,29 +155,29 @@ gnc_account_separator_pref_changed_cb (GtkEntry *entry, GtkWidget *dialog) gchar *conflict_msg = gnc_account_separator_is_valid (gtk_entry_get_text (entry), &separator); - label = g_object_get_data(G_OBJECT(dialog), "sample_account"); - DEBUG("Sample Account pointer is %p", label ); + label = g_object_get_data (G_OBJECT(dialog), "sample_account"); + DEBUG("Sample Account pointer is %p", label); /* Translators: Both %s will be the account separator character; the resulting string is a demonstration how the account separator character will look like. You can replace these three account names with other account names that are more suitable for your language - just keep in mind to have exactly two %s in your translation. */ - sample = g_strdup_printf(_("Income%sSalary%sTaxable"), - separator, separator); + sample = g_strdup_printf (_("Income%sSalary%sTaxable"), + separator, separator); PINFO(" Label set to '%s'", sample); - gtk_label_set_text(GTK_LABEL(label), sample); - g_free(sample); + gtk_label_set_text (GTK_LABEL(label), sample); + g_free (sample); /* Check if the new separator clashes with existing account names */ - image = g_object_get_data(G_OBJECT(dialog), "separator_error"); - DEBUG("Separator Error Image pointer is %p", image ); + image = g_object_get_data (G_OBJECT(dialog), "separator_error"); + DEBUG("Separator Error Image pointer is %p", image); if (conflict_msg) { - gtk_widget_set_tooltip_text(GTK_WIDGET(image), conflict_msg); + gtk_widget_set_tooltip_text (GTK_WIDGET(image), conflict_msg); gtk_widget_show (GTK_WIDGET(image)); - g_free ( conflict_msg ); + g_free (conflict_msg); } else gtk_widget_hide (GTK_WIDGET(image)); @@ -207,12 +206,11 @@ gnc_account_separator_validate (GtkWidget *dialog) /* Check if the new separator clashes with existing account names */ if (conflict_msg) { - GtkWidget *msg_dialog; + GtkWidget *msg_dialog, *msg_label; GtkBuilder *builder; - GtkWidget *msg_label; gint response; - builder = gtk_builder_new(); + builder = gtk_builder_new (); gnc_builder_add_from_file (builder, "dialog-preferences.glade", "separator_validation_dialog"); msg_dialog = GTK_WIDGET(gtk_builder_get_object (builder, "separator_validation_dialog")); @@ -285,9 +283,9 @@ gnc_preferences_select_account_page (GtkDialog *dialog) void gnc_save_on_close_expires_cb (GtkToggleButton *button, GtkWidget *dialog) { - GtkWidget *spinner = g_object_get_data (G_OBJECT (dialog), + GtkWidget *spinner = g_object_get_data (G_OBJECT(dialog), "save_on_close_wait_time"); - gtk_widget_set_sensitive(spinner, gtk_toggle_button_get_active(button)); + gtk_widget_set_sensitive (spinner, gtk_toggle_button_get_active (button)); } /** This function compares two add-ins to see if they specify the same @@ -305,7 +303,7 @@ static gint gnc_prefs_compare_addins (addition *a, addition *b) { - return g_utf8_collate(a->tabname, b->tabname); + return g_utf8_collate (a->tabname, b->tabname); } @@ -341,30 +339,30 @@ gnc_preferences_add_page_internal (const gchar *filename, ENTER("file %s, widget %s, tab %s full page %d", filename, widgetname, tabname, full_page); - add_in = g_malloc(sizeof(addition)); + add_in = g_malloc (sizeof(addition)); if (add_in == NULL) { - g_critical("Unable to allocate memory.\n"); + g_critical ("Unable to allocate memory.\n"); LEAVE("no memory"); return; } - add_in->filename = g_strdup(filename); - add_in->widgetname = g_strdup(widgetname); - add_in->tabname = g_strdup(tabname); + add_in->filename = g_strdup (filename); + add_in->widgetname = g_strdup (widgetname); + add_in->tabname = g_strdup (tabname); add_in->full_page = full_page; if (!add_in->filename || !add_in->widgetname || !add_in->tabname) { - g_critical("Unable to allocate memory.\n"); - g_free(add_in->filename); - g_free(add_in->widgetname); - g_free(add_in->tabname); - g_free(add_in); + g_critical ("Unable to allocate memory.\n"); + g_free (add_in->filename); + g_free (add_in->widgetname); + g_free (add_in->tabname); + g_free (add_in); LEAVE("no memory"); return; } - ptr = g_slist_find_custom(add_ins, add_in, (GCompareFunc)gnc_prefs_compare_addins); + ptr = g_slist_find_custom (add_ins, add_in, (GCompareFunc)gnc_prefs_compare_addins); if (ptr) { /* problem? */ @@ -372,34 +370,34 @@ gnc_preferences_add_page_internal (const gchar *filename, if (preexisting->full_page) { - g_warning("New tab %s(%s/%s/%s) conflicts with existing tab %s(%s/%s/full)", - add_in->tabname, add_in->filename, add_in->widgetname, - add_in->full_page ? "full" : "partial", - preexisting->tabname, preexisting->filename, preexisting->widgetname); + g_warning ("New tab %s(%s/%s/%s) conflicts with existing tab %s(%s/%s/full)", + add_in->tabname, add_in->filename, add_in->widgetname, + add_in->full_page ? "full" : "partial", + preexisting->tabname, preexisting->filename, preexisting->widgetname); error = TRUE; } else if (add_in->full_page) { - g_warning("New tab %s(%s/%s/%s) conflicts with existing tab %s(%s/%s/partial)", - add_in->tabname, add_in->filename, add_in->widgetname, - add_in->full_page ? "full" : "partial", - preexisting->tabname, preexisting->filename, preexisting->widgetname); + g_warning ("New tab %s(%s/%s/%s) conflicts with existing tab %s(%s/%s/partial)", + add_in->tabname, add_in->filename, add_in->widgetname, + add_in->full_page ? "full" : "partial", + preexisting->tabname, preexisting->filename, preexisting->widgetname); error = TRUE; } } if (error) { - g_free(add_in->filename); - g_free(add_in->widgetname); - g_free(add_in->tabname); - g_free(add_in); + g_free (add_in->filename); + g_free (add_in->widgetname); + g_free (add_in->tabname); + g_free (add_in); LEAVE("err"); return; } else { - add_ins = g_slist_append(add_ins, add_in); + add_ins = g_slist_append (add_ins, add_in); } LEAVE(""); } @@ -416,7 +414,7 @@ gnc_preferences_add_page (const gchar *filename, const gchar *widgetname, const gchar *tabname) { - gnc_preferences_add_page_internal(filename, widgetname, tabname, TRUE); + gnc_preferences_add_page_internal (filename, widgetname, tabname, TRUE); } @@ -431,7 +429,7 @@ gnc_preferences_add_to_page (const gchar *filename, const gchar *widgetname, const gchar *tabname) { - gnc_preferences_add_page_internal(filename, widgetname, tabname, FALSE); + gnc_preferences_add_page_internal (filename, widgetname, tabname, FALSE); } @@ -460,23 +458,23 @@ gnc_prefs_build_widget_table (GtkBuilder *builder, const gchar *wname; GtkWidget *widget; - prefs_table = g_object_get_data(G_OBJECT(dialog), PREFS_WIDGET_HASH); + prefs_table = g_object_get_data (G_OBJECT(dialog), PREFS_WIDGET_HASH); - interesting = gtk_builder_get_objects(builder); + interesting = gtk_builder_get_objects (builder); for (runner = interesting; runner; runner = g_slist_next(runner)) { widget = runner->data; if (GTK_IS_WIDGET(widget)) { - wname = gtk_widget_get_name(widget); - name = gtk_buildable_get_name(GTK_BUILDABLE(widget)); + wname = gtk_widget_get_name (widget); + name = gtk_buildable_get_name (GTK_BUILDABLE(widget)); DEBUG("Widget type is %s and buildable get name is %s", wname, name); if (g_str_has_prefix (name, "pref")) - g_hash_table_insert(prefs_table, (gchar *)name, widget); + g_hash_table_insert (prefs_table, (gchar *)name, widget); } } - g_slist_free(interesting); + g_slist_free (interesting); } @@ -504,7 +502,7 @@ gnc_prefs_find_page (GtkNotebook *notebook, const gchar *name) GtkWidget *child; const gchar *child_name; - g_return_val_if_fail (GTK_IS_NOTEBOOK (notebook), NULL); + g_return_val_if_fail (GTK_IS_NOTEBOOK(notebook), NULL); g_return_val_if_fail (name, NULL); ENTER(""); @@ -548,12 +546,12 @@ gnc_prefs_get_grid_size (GtkWidget *child, gpointer data) struct copy_data *copydata = data; gint top, left, height, width; - gtk_container_child_get(GTK_CONTAINER(copydata->grid_to), child, - "left-attach", &left, - "top-attach", &top, - "height", &height, - "width", &width, - NULL); + gtk_container_child_get (GTK_CONTAINER(copydata->grid_to), child, + "left-attach", &left, + "top-attach", &top, + "height", &height, + "width", &width, + NULL); if (left + width >= copydata->cols) copydata->cols = left + width; @@ -586,12 +584,12 @@ gnc_prefs_move_grid_entry (GtkWidget *child, gint topm, bottomm, leftm, rightm; ENTER("child %p, copy data %p", child, data); - gtk_container_child_get(GTK_CONTAINER(copydata->grid_from), child, - "left-attach", &left, - "top-attach", &top, - "height", &height, - "width", &width, - NULL); + gtk_container_child_get (GTK_CONTAINER(copydata->grid_from), child, + "left-attach", &left, + "top-attach", &top, + "height", &height, + "width", &width, + NULL); hexpand = gtk_widget_get_hexpand (child); vexpand = gtk_widget_get_vexpand (child); halign = gtk_widget_get_halign (child); @@ -600,10 +598,10 @@ gnc_prefs_move_grid_entry (GtkWidget *child, g_object_get (child, "margin-top", &topm, "margin-bottom", &bottomm, NULL); g_object_get (child, "margin-left", &leftm, "margin-right", &rightm, NULL); - g_object_ref(child); - gtk_container_remove(GTK_CONTAINER(copydata->grid_from), child); + g_object_ref (child); + gtk_container_remove (GTK_CONTAINER(copydata->grid_from), child); - gtk_grid_attach(copydata->grid_to, child, left, copydata->rows + top , width, height); + gtk_grid_attach (copydata->grid_to, child, left, copydata->rows + top , width, height); gtk_widget_set_hexpand (child, hexpand); gtk_widget_set_vexpand (child, vexpand); @@ -613,7 +611,7 @@ gnc_prefs_move_grid_entry (GtkWidget *child, g_object_set (child, "margin-left", leftm, "margin-right", rightm, NULL); g_object_set (child, "margin-top", topm, "margin-bottom", bottomm, NULL); - g_object_unref(child); + g_object_unref (child); LEAVE(" "); } @@ -646,10 +644,10 @@ gnc_preferences_build_page (gpointer data, dialog = user_data; DEBUG("Opening %s to get %s", add_in->filename, add_in->widgetname); - builder = gtk_builder_new(); + builder = gtk_builder_new (); /* Adjustments etc... must come before dialog information */ - widgetname = g_strsplit(add_in->widgetname, ",", -1); + widgetname = g_strsplit (add_in->widgetname, ",", -1); for (i = 0; widgetname[i]; i++) { @@ -660,11 +658,11 @@ gnc_preferences_build_page (gpointer data, DEBUG("Widget Content is %s", widgetname[i - 1]); new_content = GTK_WIDGET(gtk_builder_get_object (builder, widgetname[i - 1])); - g_strfreev(widgetname); + g_strfreev (widgetname); DEBUG("done"); /* Add to the list of interesting widgets */ - gnc_prefs_build_widget_table(builder, dialog); + gnc_prefs_build_widget_table (builder, dialog); /* Connect the signals in this glade file. The dialog is passed in * so the callback can find "interesting" widgets from other @@ -672,14 +670,14 @@ gnc_preferences_build_page (gpointer data, gtk_builder_connect_signals_full (builder, gnc_builder_connect_full_func, dialog); /* Prepare for recursion */ - notebook = g_object_get_data(G_OBJECT(dialog), NOTEBOOK); + notebook = g_object_get_data (G_OBJECT(dialog), NOTEBOOK); if (add_in->full_page) { - label = gtk_label_new(add_in->tabname); - gnc_label_set_alignment(label, 0.0, 0.5); - gtk_notebook_append_page(notebook, new_content, label); - g_object_unref(G_OBJECT(builder)); + label = gtk_label_new (add_in->tabname); + gnc_label_set_alignment (label, 0.0, 0.5); + gtk_notebook_append_page (notebook, new_content, label); + g_object_unref (G_OBJECT(builder)); LEAVE("appended page"); return; } @@ -687,33 +685,33 @@ gnc_preferences_build_page (gpointer data, /* Copied grids must be grids */ if (!GTK_IS_GRID(new_content)) { - g_critical("The object name %s in file %s is not a GtkGrid. It cannot " - "be added to the preferences dialog.", - add_in->widgetname, add_in->filename); - g_object_unref(G_OBJECT(builder)); + g_critical ("The object name %s in file %s is not a GtkGrid. It cannot " + "be added to the preferences dialog.", + add_in->widgetname, add_in->filename); + g_object_unref (G_OBJECT(builder)); LEAVE(""); return; } /* Does the page exist or must we create it */ - existing_content = gnc_prefs_find_page(notebook, add_in->tabname); + existing_content = gnc_prefs_find_page (notebook, add_in->tabname); if (!existing_content) { /* No existing content with this name. Create a blank page */ - existing_content = gtk_grid_new(); - gtk_container_set_border_width(GTK_CONTAINER(existing_content), 6); - label = gtk_label_new(add_in->tabname); - gnc_label_set_alignment(label, 0.0, 0.5); - gtk_notebook_append_page(notebook, existing_content, label); - gtk_widget_show_all(existing_content); + existing_content = gtk_grid_new (); + gtk_container_set_border_width (GTK_CONTAINER(existing_content), 6); + label = gtk_label_new (add_in->tabname); + gnc_label_set_alignment (label, 0.0, 0.5); + gtk_notebook_append_page (notebook, existing_content, label); + gtk_widget_show_all (existing_content); DEBUG("created new page %s, appended it", add_in->tabname); } else { /* Lets get the size of the existing grid */ copydata.grid_to = GTK_GRID(existing_content); - gtk_container_foreach(GTK_CONTAINER(existing_content), gnc_prefs_get_grid_size, ©data); + gtk_container_foreach (GTK_CONTAINER(existing_content), gnc_prefs_get_grid_size, ©data); DEBUG("found existing page %s, grid size is %d x %d", add_in->tabname, copydata.rows, copydata.cols); } @@ -721,8 +719,8 @@ gnc_preferences_build_page (gpointer data, /* Maybe add a spacer row */ if (copydata.rows > 0) { - label = gtk_label_new(""); - gtk_widget_show(label); + label = gtk_label_new (""); + gtk_widget_show (label); gtk_grid_attach (GTK_GRID(existing_content), label, 0, copydata.rows, 1, 1); copydata.rows = copydata.rows + 1; @@ -732,10 +730,10 @@ gnc_preferences_build_page (gpointer data, /* Now copy all the entries in the grid */ copydata.grid_from = GTK_GRID(new_content); copydata.grid_to = GTK_GRID(existing_content); - gtk_container_foreach(GTK_CONTAINER(new_content), gnc_prefs_move_grid_entry, ©data); + gtk_container_foreach (GTK_CONTAINER(new_content), gnc_prefs_move_grid_entry, ©data); - g_object_ref_sink(new_content); - g_object_unref(G_OBJECT(builder)); + g_object_ref_sink (new_content); + g_object_unref (G_OBJECT(builder)); LEAVE("added content to page"); } @@ -755,7 +753,7 @@ gnc_prefs_sort_pages (GtkNotebook *notebook) gint n_pages, i; GList *tabs = NULL, *iter = NULL; - g_return_if_fail (GTK_IS_NOTEBOOK (notebook)); + g_return_if_fail (GTK_IS_NOTEBOOK(notebook)); /* gather tabs */ n_pages = gtk_notebook_get_n_pages (notebook); @@ -767,7 +765,7 @@ gnc_prefs_sort_pages (GtkNotebook *notebook) /* reorder tabs */ for (i = 0, iter = tabs; iter; i++, iter = iter->next) - gtk_notebook_reorder_child (notebook, GTK_WIDGET (iter->data), i); + gtk_notebook_reorder_child (notebook, GTK_WIDGET(iter->data), i); g_list_free (tabs); } @@ -801,15 +799,15 @@ gnc_prefs_connect_font_button (GtkFontButton *fb) { gchar *group, *pref; - g_return_if_fail(GTK_IS_FONT_BUTTON(fb)); + g_return_if_fail (GTK_IS_FONT_BUTTON(fb)); - gnc_prefs_split_widget_name (gtk_buildable_get_name(GTK_BUILDABLE(fb)), &group, &pref); + gnc_prefs_split_widget_name (gtk_buildable_get_name (GTK_BUILDABLE(fb)), &group, &pref); gnc_prefs_bind (group, pref, G_OBJECT (fb), "font-name"); g_free (group); g_free (pref); - gtk_widget_show_all(GTK_WIDGET(fb)); + gtk_widget_show_all (GTK_WIDGET(fb)); } /****************************************************************************/ @@ -844,7 +842,7 @@ file_chooser_selected_cb (GtkFileChooser *fc, gpointer user_data) PINFO("Failed to save preference at %s, %s with %s", group, pref, folder_uri); else gnc_doclink_pref_path_head_changed ( - GTK_WINDOW (gtk_widget_get_toplevel (GTK_WIDGET (fc))), + GTK_WINDOW(gtk_widget_get_toplevel (GTK_WIDGET(fc))), old_path_head_uri); g_free (old_path_head_uri); @@ -949,13 +947,13 @@ file_chooser_clear_cb (GtkButton *button, gpointer user_data) PINFO("Failed to Clear preference at %s, %s", group, pref); else gnc_doclink_pref_path_head_changed ( - GTK_WINDOW (gtk_widget_get_toplevel (GTK_WIDGET (fcb))), + GTK_WINDOW(gtk_widget_get_toplevel (GTK_WIDGET(fcb))), old_path_head_uri); gtk_widget_destroy (GTK_WIDGET(fcb)); fcb_new = gtk_file_chooser_button_new (_("Select a folder"), - GTK_FILE_CHOOSER_ACTION_SELECT_FOLDER); + GTK_FILE_CHOOSER_ACTION_SELECT_FOLDER); g_object_set_data (G_OBJECT(fcb_new), "path_head_error", image); g_object_set_data_full (G_OBJECT(fcb_new),"group", g_strdup (group), (GDestroyNotify) g_free); @@ -989,11 +987,11 @@ gnc_prefs_connect_radio_button (GtkRadioButton *button) { gchar *group, *pref; - g_return_if_fail(GTK_IS_RADIO_BUTTON(button)); + g_return_if_fail (GTK_IS_RADIO_BUTTON(button)); - gnc_prefs_split_widget_name (gtk_buildable_get_name(GTK_BUILDABLE(button)), &group, &pref); + gnc_prefs_split_widget_name (gtk_buildable_get_name (GTK_BUILDABLE(button)), &group, &pref); - gnc_prefs_bind (group, pref, G_OBJECT (button), "active"); + gnc_prefs_bind (group, pref, G_OBJECT(button), "active"); g_free (group); g_free (pref); @@ -1013,11 +1011,11 @@ gnc_prefs_connect_check_button (GtkCheckButton *button) { gchar *group, *pref; - g_return_if_fail(GTK_IS_CHECK_BUTTON(button)); + g_return_if_fail (GTK_IS_CHECK_BUTTON(button)); - gnc_prefs_split_widget_name (gtk_buildable_get_name(GTK_BUILDABLE(button)), &group, &pref); + gnc_prefs_split_widget_name (gtk_buildable_get_name (GTK_BUILDABLE(button)), &group, &pref); - gnc_prefs_bind (group, pref, G_OBJECT (button), "active"); + gnc_prefs_bind (group, pref, G_OBJECT(button), "active"); g_free (group); g_free (pref); @@ -1037,11 +1035,11 @@ gnc_prefs_connect_spin_button (GtkSpinButton *spin) { gchar *group, *pref; - g_return_if_fail(GTK_IS_SPIN_BUTTON(spin)); + g_return_if_fail (GTK_IS_SPIN_BUTTON(spin)); - gnc_prefs_split_widget_name (gtk_buildable_get_name(GTK_BUILDABLE(spin)), &group, &pref); + gnc_prefs_split_widget_name (gtk_buildable_get_name (GTK_BUILDABLE(spin)), &group, &pref); - gnc_prefs_bind (group, pref, G_OBJECT (spin), "value"); + gnc_prefs_bind (group, pref, G_OBJECT(spin), "value"); g_free (group); g_free (pref); @@ -1060,11 +1058,11 @@ gnc_prefs_connect_combo_box (GtkComboBox *box) { gchar *group, *pref; - g_return_if_fail(GTK_IS_COMBO_BOX(box)); + g_return_if_fail (GTK_IS_COMBO_BOX(box)); - gnc_prefs_split_widget_name (gtk_buildable_get_name(GTK_BUILDABLE(box)), &group, &pref); + gnc_prefs_split_widget_name (gtk_buildable_get_name (GTK_BUILDABLE(box)), &group, &pref); - gnc_prefs_bind (group, pref, G_OBJECT (box), "active"); + gnc_prefs_bind (group, pref, G_OBJECT(box), "active"); g_free (group); g_free (pref); @@ -1083,16 +1081,16 @@ gnc_prefs_connect_currency_edit (GNCCurrencyEdit *gce, const gchar *boxname ) { gchar *group, *pref; - g_return_if_fail(GNC_IS_CURRENCY_EDIT(gce)); + g_return_if_fail (GNC_IS_CURRENCY_EDIT(gce)); gnc_prefs_split_widget_name (boxname, &group, &pref); - gnc_prefs_bind (group, pref, G_OBJECT (gce), "mnemonic"); + gnc_prefs_bind (group, pref, G_OBJECT(gce), "mnemonic"); g_free (group); g_free (pref); - gtk_widget_show_all(GTK_WIDGET(gce)); + gtk_widget_show_all (GTK_WIDGET(gce)); } /****************************************************************************/ @@ -1108,11 +1106,11 @@ gnc_prefs_connect_entry (GtkEntry *entry) { gchar *group, *pref; - g_return_if_fail(GTK_IS_ENTRY(entry)); + g_return_if_fail (GTK_IS_ENTRY(entry)); - gnc_prefs_split_widget_name (gtk_buildable_get_name(GTK_BUILDABLE(entry)), &group, &pref); + gnc_prefs_split_widget_name (gtk_buildable_get_name (GTK_BUILDABLE(entry)), &group, &pref); - gnc_prefs_bind (group, pref, G_OBJECT (entry), "text"); + gnc_prefs_bind (group, pref, G_OBJECT(entry), "text"); g_free (group); g_free (pref); @@ -1131,11 +1129,11 @@ gnc_prefs_connect_period_select (GncPeriodSelect *period, const gchar *boxname ) { gchar *group, *pref; - g_return_if_fail(GNC_IS_PERIOD_SELECT(period)); + g_return_if_fail (GNC_IS_PERIOD_SELECT(period)); gnc_prefs_split_widget_name (boxname, &group, &pref); - gnc_prefs_bind (group, pref, G_OBJECT (period), "active"); + gnc_prefs_bind (group, pref, G_OBJECT(period), "active"); g_free (group); g_free (pref); @@ -1154,11 +1152,11 @@ gnc_prefs_connect_date_edit (GNCDateEdit *gde , const gchar *boxname ) { gchar *group, *pref; - g_return_if_fail(GNC_IS_DATE_EDIT(gde)); + g_return_if_fail (GNC_IS_DATE_EDIT(gde)); gnc_prefs_split_widget_name (boxname, &group, &pref); - gnc_prefs_bind (group, pref, G_OBJECT (gde), "time"); + gnc_prefs_bind (group, pref, G_OBJECT(gde), "time"); g_free (group); g_free (pref); @@ -1194,12 +1192,12 @@ gnc_preferences_delete_event_cb (GtkWidget *widget, * @param unused */ void -gnc_preferences_response_cb(GtkDialog *dialog, gint response, GtkDialog *unused) +gnc_preferences_response_cb (GtkDialog *dialog, gint response, GtkDialog *unused) { switch (response) { case GTK_RESPONSE_HELP: - gnc_gnome_help(HF_HELP, HL_GLOBPREFS); + gnc_gnome_help (HF_HELP, HL_GLOBPREFS); break; case GTK_RESPONSE_DELETE_EVENT: @@ -1244,66 +1242,66 @@ gnc_prefs_connect_one (const gchar *name, if (GTK_IS_FONT_BUTTON(widget)) { DEBUG(" %s - font button", name); - gnc_prefs_connect_font_button(GTK_FONT_BUTTON(widget)); + gnc_prefs_connect_font_button (GTK_FONT_BUTTON(widget)); } else if (GTK_IS_FILE_CHOOSER_BUTTON(widget)) { DEBUG(" %s - file chooser button", name); - gnc_prefs_connect_file_chooser_button(GTK_FILE_CHOOSER_BUTTON(widget), NULL); + gnc_prefs_connect_file_chooser_button (GTK_FILE_CHOOSER_BUTTON(widget), NULL); } else if (GTK_IS_RADIO_BUTTON(widget)) { DEBUG(" %s - radio button", name); - gnc_prefs_connect_radio_button(GTK_RADIO_BUTTON(widget)); + gnc_prefs_connect_radio_button (GTK_RADIO_BUTTON(widget)); } else if (GTK_IS_CHECK_BUTTON(widget)) { DEBUG(" %s - check button", name); - gnc_prefs_connect_check_button(GTK_CHECK_BUTTON(widget)); + gnc_prefs_connect_check_button (GTK_CHECK_BUTTON(widget)); } else if (GTK_IS_SPIN_BUTTON(widget)) { DEBUG(" %s - spin button", name); - gnc_prefs_connect_spin_button(GTK_SPIN_BUTTON(widget)); + gnc_prefs_connect_spin_button (GTK_SPIN_BUTTON(widget)); } else if (GTK_IS_COMBO_BOX(widget)) { DEBUG(" %s - combo box", name); - gnc_prefs_connect_combo_box(GTK_COMBO_BOX(widget)); + gnc_prefs_connect_combo_box (GTK_COMBO_BOX(widget)); } else if (GTK_IS_ENTRY(widget)) { DEBUG(" %s - entry", name); - gnc_prefs_connect_entry(GTK_ENTRY(widget)); + gnc_prefs_connect_entry (GTK_ENTRY(widget)); } else if (GTK_IS_BOX(widget)) { /* Test custom widgets are all children of a hbox */ GtkWidget *widget_child; - GList* child = gtk_container_get_children(GTK_CONTAINER(widget)); + GList* child = gtk_container_get_children (GTK_CONTAINER(widget)); widget_child = child->data; - g_list_free(child); + g_list_free (child); DEBUG(" %s - box", name); - DEBUG("Box widget type is %s and name is %s", gtk_widget_get_name(GTK_WIDGET(widget_child)), name); + DEBUG("Box widget type is %s and name is %s", gtk_widget_get_name (GTK_WIDGET(widget_child)), name); if (GNC_IS_CURRENCY_EDIT(widget_child)) { DEBUG(" %s - currency_edit", name); - gnc_prefs_connect_currency_edit(GNC_CURRENCY_EDIT(widget_child), name ); + gnc_prefs_connect_currency_edit (GNC_CURRENCY_EDIT(widget_child), name ); } else if (GNC_IS_PERIOD_SELECT(widget_child)) { DEBUG(" %s - period_select", name); - gnc_prefs_connect_period_select(GNC_PERIOD_SELECT(widget_child), name ); + gnc_prefs_connect_period_select (GNC_PERIOD_SELECT(widget_child), name ); } else if (GNC_IS_DATE_EDIT(widget_child)) { DEBUG(" %s - date_edit", name); - gnc_prefs_connect_date_edit(GNC_DATE_EDIT(widget_child), name ); + gnc_prefs_connect_date_edit (GNC_DATE_EDIT(widget_child), name ); } else if (GTK_FILE_CHOOSER_BUTTON(widget_child)) { DEBUG(" %s - file chooser button", name); - gnc_prefs_connect_file_chooser_button(GTK_FILE_CHOOSER_BUTTON(widget_child), name ); + gnc_prefs_connect_file_chooser_button (GTK_FILE_CHOOSER_BUTTON(widget_child), name ); } } else @@ -1326,7 +1324,7 @@ gnc_prefs_connect_one (const gchar *name, * @return A pointer to the newly created dialog. */ static GtkWidget * -gnc_preferences_dialog_create(GtkWindow *parent) +gnc_preferences_dialog_create (GtkWindow *parent) { GtkBuilder *builder; GtkWidget *dialog, *notebook, *label, *image, *spinner, *entry; @@ -1345,7 +1343,7 @@ gnc_preferences_dialog_create(GtkWindow *parent) ENTER(""); DEBUG("Opening dialog-preferences.glade:"); - builder = gtk_builder_new(); + builder = gtk_builder_new (); gnc_builder_add_from_file (builder, "dialog-preferences.glade", "auto_decimal_places_adj"); gnc_builder_add_from_file (builder, "dialog-preferences.glade", "autosave_interval_minutes_adj"); @@ -1374,31 +1372,31 @@ gnc_preferences_dialog_create(GtkWindow *parent) #ifndef REGISTER2_ENABLED /* Hide preferences that are related to register2 */ - box = GTK_WIDGET (gtk_builder_get_object (builder, "label14")); + box = GTK_WIDGET(gtk_builder_get_object (builder, "label14")); gtk_widget_hide (box); - box = GTK_WIDGET (gtk_builder_get_object (builder, "pref/general.register/key-length")); + box = GTK_WIDGET(gtk_builder_get_object (builder, "pref/general.register/key-length")); gtk_widget_hide (box); - box = GTK_WIDGET (gtk_builder_get_object (builder, "pref/general.register/show-extra-dates")); + box = GTK_WIDGET(gtk_builder_get_object (builder, "pref/general.register/show-extra-dates")); gtk_widget_hide (box); - box = GTK_WIDGET (gtk_builder_get_object (builder, "pref/general.register/show-calendar-buttons")); + box = GTK_WIDGET(gtk_builder_get_object (builder, "pref/general.register/show-calendar-buttons")); gtk_widget_hide (box); - box = GTK_WIDGET (gtk_builder_get_object (builder, "pref/general.register/selection-to-blank-on-expand")); + box = GTK_WIDGET(gtk_builder_get_object (builder, "pref/general.register/selection-to-blank-on-expand")); gtk_widget_hide (box); - box = GTK_WIDGET (gtk_builder_get_object (builder, "pref/general.register/show-extra-dates-on-selection")); + box = GTK_WIDGET(gtk_builder_get_object (builder, "pref/general.register/show-extra-dates-on-selection")); gtk_widget_hide (box); #endif label = GTK_WIDGET(gtk_builder_get_object (builder, "sample_account")); - g_object_set_data(G_OBJECT(dialog), "sample_account", label); + g_object_set_data (G_OBJECT(dialog), "sample_account", label); image = GTK_WIDGET(gtk_builder_get_object (builder, "separator_error")); - g_object_set_data(G_OBJECT(dialog), "separator_error", image); + g_object_set_data (G_OBJECT(dialog), "separator_error", image); entry = GTK_WIDGET(gtk_builder_get_object (builder, "pref/general/account-separator")); g_object_set_data (G_OBJECT(dialog), "account-separator", entry); spinner = GTK_WIDGET(gtk_builder_get_object (builder, "pref/general/save-on-close-wait-time")); - g_object_set_data(G_OBJECT(dialog), "save_on_close_wait_time", spinner); + g_object_set_data (G_OBJECT(dialog), "save_on_close_wait_time", spinner); DEBUG("autoconnect"); gtk_builder_connect_signals_full (builder, gnc_builder_connect_full_func, dialog); @@ -1406,109 +1404,109 @@ gnc_preferences_dialog_create(GtkWindow *parent) DEBUG("done"); notebook = GTK_WIDGET(gtk_builder_get_object (builder, "notebook1")); - prefs_table = g_hash_table_new(g_str_hash, g_str_equal); - g_object_set_data(G_OBJECT(dialog), NOTEBOOK, notebook); - g_object_set_data_full(G_OBJECT(dialog), PREFS_WIDGET_HASH, - prefs_table, (GDestroyNotify)g_hash_table_destroy); + prefs_table = g_hash_table_new (g_str_hash, g_str_equal); + g_object_set_data (G_OBJECT(dialog), NOTEBOOK, notebook); + g_object_set_data_full (G_OBJECT(dialog), PREFS_WIDGET_HASH, + prefs_table, (GDestroyNotify)g_hash_table_destroy); - book = gnc_get_current_book(); + book = gnc_get_current_book (); g_date_clear (&fy_end, 1); - qof_instance_get (QOF_INSTANCE (book), - "fy-end", &fy_end, - NULL); + qof_instance_get (QOF_INSTANCE(book), + "fy-end", &fy_end, + NULL); box = GTK_WIDGET(gtk_builder_get_object (builder, "pref/" GNC_PREFS_GROUP_ACCT_SUMMARY "/" GNC_PREF_START_PERIOD)); - period = gnc_period_select_new(TRUE); + period = gnc_period_select_new (TRUE); gtk_widget_show (period); - gtk_box_pack_start (GTK_BOX (box), period, TRUE, TRUE, 0); + gtk_box_pack_start (GTK_BOX(box), period, TRUE, TRUE, 0); if (date_is_valid) - gnc_period_select_set_fy_end(GNC_PERIOD_SELECT (period), &fy_end); + gnc_period_select_set_fy_end (GNC_PERIOD_SELECT(period), &fy_end); box = GTK_WIDGET(gtk_builder_get_object (builder, "pref/" GNC_PREFS_GROUP_ACCT_SUMMARY "/" GNC_PREF_END_PERIOD)); - period = gnc_period_select_new(FALSE); + period = gnc_period_select_new (FALSE); gtk_widget_show (period); - gtk_box_pack_start (GTK_BOX (box), period, TRUE, TRUE, 0); + gtk_box_pack_start (GTK_BOX(box), period, TRUE, TRUE, 0); if (date_is_valid) - gnc_period_select_set_fy_end(GNC_PERIOD_SELECT (period), &fy_end); + gnc_period_select_set_fy_end (GNC_PERIOD_SELECT(period), &fy_end); box = GTK_WIDGET(gtk_builder_get_object (builder, "pref/" GNC_PREFS_GROUP_ACCT_SUMMARY "/" GNC_PREF_START_DATE)); - date = gnc_date_edit_new(gnc_time (NULL), FALSE, FALSE); + date = gnc_date_edit_new (gnc_time (NULL), FALSE, FALSE); gtk_widget_show (date); - gtk_box_pack_start (GTK_BOX (box), date, TRUE, TRUE, 0); + gtk_box_pack_start (GTK_BOX(box), date, TRUE, TRUE, 0); box = GTK_WIDGET(gtk_builder_get_object (builder, "pref/" GNC_PREFS_GROUP_ACCT_SUMMARY "/" GNC_PREF_END_DATE)); - date = gnc_date_edit_new(gnc_time (NULL), FALSE, FALSE); + date = gnc_date_edit_new (gnc_time (NULL), FALSE, FALSE); gtk_widget_show (date); - gtk_box_pack_start (GTK_BOX (box), date, TRUE, TRUE, 0); + gtk_box_pack_start (GTK_BOX(box), date, TRUE, TRUE, 0); box = GTK_WIDGET(gtk_builder_get_object (builder, "pref/" GNC_PREFS_GROUP_GENERAL "/" GNC_PREF_CURRENCY_OTHER)); - currency = gnc_currency_edit_new(); + currency = gnc_currency_edit_new (); gnc_currency_edit_set_currency (GNC_CURRENCY_EDIT(currency), gnc_default_currency()); gtk_widget_show (currency); - gtk_box_pack_start(GTK_BOX (box), currency, TRUE, TRUE, 0); + gtk_box_pack_start (GTK_BOX(box), currency, TRUE, TRUE, 0); box = GTK_WIDGET(gtk_builder_get_object (builder, "pref/" GNC_PREFS_GROUP_GENERAL_REPORT "/" GNC_PREF_CURRENCY_OTHER)); - currency = gnc_currency_edit_new(); + currency = gnc_currency_edit_new (); gnc_currency_edit_set_currency (GNC_CURRENCY_EDIT(currency), gnc_default_currency()); gtk_widget_show (currency); - gtk_box_pack_start(GTK_BOX (box), currency, TRUE, TRUE, 0); + gtk_box_pack_start (GTK_BOX(box), currency, TRUE, TRUE, 0); box = GTK_WIDGET(gtk_builder_get_object (builder, "pref/" GNC_PREFS_GROUP_GENERAL "/" GNC_DOC_LINK_PATH_HEAD)); fcb = gtk_file_chooser_button_new (_("Select a folder"), - GTK_FILE_CHOOSER_ACTION_SELECT_FOLDER); - gtk_box_pack_start (GTK_BOX (box), fcb, TRUE, TRUE, 0); + GTK_FILE_CHOOSER_ACTION_SELECT_FOLDER); + gtk_box_pack_start (GTK_BOX(box), fcb, TRUE, TRUE, 0); button = gtk_button_new_with_label (_("Clear")); - gtk_box_pack_start (GTK_BOX (box), button, TRUE, TRUE, 0); + gtk_box_pack_start (GTK_BOX(box), button, TRUE, TRUE, 0); gtk_widget_show (button); g_signal_connect (GTK_BUTTON(button), "clicked", G_CALLBACK(file_chooser_clear_cb), fcb); image = GTK_WIDGET(gtk_builder_get_object (builder, "path_head_error")); - g_object_set_data(G_OBJECT(fcb), "path_head_error", image); + g_object_set_data (G_OBJECT(fcb), "path_head_error", image); /* Add to the list of interesting widgets */ - gnc_prefs_build_widget_table(builder, dialog); + gnc_prefs_build_widget_table (builder, dialog); - g_slist_foreach(add_ins, gnc_preferences_build_page, dialog); + g_slist_foreach (add_ins, gnc_preferences_build_page, dialog); /* Sort tabs alphabetically */ - gnc_prefs_sort_pages(GTK_NOTEBOOK(notebook)); - gtk_notebook_set_current_page(GTK_NOTEBOOK(notebook), 0); + gnc_prefs_sort_pages (GTK_NOTEBOOK(notebook)); + gtk_notebook_set_current_page (GTK_NOTEBOOK(notebook), 0); DEBUG("We have the following interesting widgets:"); - gnc_prefs_block_all(); // Block All Registered callbacks - g_hash_table_foreach(prefs_table, (GHFunc)gnc_prefs_connect_one, dialog); - gnc_prefs_unblock_all(); // UnBlock All Registered callbacks + gnc_prefs_block_all (); // Block All Registered callbacks + g_hash_table_foreach (prefs_table, (GHFunc)gnc_prefs_connect_one, dialog); + gnc_prefs_unblock_all (); // UnBlock All Registered callbacks DEBUG("Done with interesting widgets."); /* Other stuff */ - gdate = g_date_new_dmy(31, G_DATE_JULY, 2013); - g_date_strftime(buf, sizeof(buf), "%x", gdate); + gdate = g_date_new_dmy (31, G_DATE_JULY, 2013); + g_date_strftime (buf, sizeof(buf), "%x", gdate); store = GTK_LIST_STORE(gtk_builder_get_object (builder, "date_formats")); path = gtk_tree_path_new_from_indices (QOF_DATE_FORMAT_LOCALE, -1); - if (gtk_tree_model_get_iter (GTK_TREE_MODEL (store), &iter, path)) - gtk_list_store_set (store, &iter, 1, buf, -1); - g_date_free(gdate); + if (gtk_tree_model_get_iter (GTK_TREE_MODEL(store), &iter, path)) + gtk_list_store_set (store, &iter, 1, buf, -1); + g_date_free (gdate); gtk_tree_path_free (path); locale_currency = gnc_locale_default_currency (); - currency_name = gnc_commodity_get_printname(locale_currency); + currency_name = gnc_commodity_get_printname (locale_currency); label = GTK_WIDGET(gtk_builder_get_object (builder, "locale_currency")); - gtk_label_set_label(GTK_LABEL(label), currency_name); + gtk_label_set_label (GTK_LABEL(label), currency_name); label = GTK_WIDGET(gtk_builder_get_object (builder, "locale_currency2")); - gtk_label_set_label(GTK_LABEL(label), currency_name); + gtk_label_set_label (GTK_LABEL(label), currency_name); button = GTK_WIDGET(gtk_builder_get_object (builder, "pref/general/save-on-close-expires")); gnc_save_on_close_expires_cb (GTK_TOGGLE_BUTTON(button), dialog); - g_object_unref(G_OBJECT(builder)); + g_object_unref (G_OBJECT(builder)); /* save the original account separator incase it changes */ g_object_set_data_full (G_OBJECT(entry), "original_text", @@ -1548,7 +1546,7 @@ show_handler (const char *class_name, gint component_id, ENTER(" "); dialog = GTK_WIDGET(user_data); - gtk_window_present(GTK_WINDOW(dialog)); + gtk_window_present (GTK_WINDOW(dialog)); LEAVE(" "); return(TRUE); } @@ -1567,8 +1565,8 @@ close_handler (gpointer user_data) ENTER(" "); dialog = GTK_WIDGET(user_data); - gnc_unregister_gui_component_by_data(DIALOG_PREFERENCES_CM_CLASS, dialog); - gtk_widget_destroy(dialog); + gnc_unregister_gui_component_by_data (DIALOG_PREFERENCES_CM_CLASS, dialog); + gtk_widget_destroy (dialog); LEAVE(" "); } @@ -1583,8 +1581,8 @@ gnc_preferences_dialog (GtkWindow *parent) GtkWidget *dialog; ENTER(""); - if (gnc_forall_gui_components(DIALOG_PREFERENCES_CM_CLASS, - show_handler, NULL)) + if (gnc_forall_gui_components (DIALOG_PREFERENCES_CM_CLASS, + show_handler, NULL)) { LEAVE("existing window"); return; @@ -1592,11 +1590,11 @@ gnc_preferences_dialog (GtkWindow *parent) dialog = gnc_preferences_dialog_create(parent); - gnc_restore_window_size(GNC_PREFS_GROUP, GTK_WINDOW(dialog), parent); - gtk_widget_show(dialog); + gnc_restore_window_size (GNC_PREFS_GROUP, GTK_WINDOW(dialog), parent); + gtk_widget_show (dialog); - gnc_register_gui_component(DIALOG_PREFERENCES_CM_CLASS, - NULL, close_handler, dialog); + gnc_register_gui_component (DIALOG_PREFERENCES_CM_CLASS, + NULL, close_handler, dialog); LEAVE(" "); } From 504ca731e25512a546226560f62601bc8c2b4bc7 Mon Sep 17 00:00:00 2001 From: Robert Fewell <14uBobIT@gmail.com> Date: Tue, 3 Nov 2020 14:01:27 +0000 Subject: [PATCH 095/167] Import matcher tooltip for columns update If there is no text to be displayed, do not show tooltip. --- gnucash/import-export/import-main-matcher.c | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/gnucash/import-export/import-main-matcher.c b/gnucash/import-export/import-main-matcher.c index 58888b0aac..5157889c91 100644 --- a/gnucash/import-export/import-main-matcher.c +++ b/gnucash/import-export/import-main-matcher.c @@ -1841,7 +1841,6 @@ gboolean query_tooltip_tree_view_cb (GtkWidget *widget, gint x, gint y, { GtkTreeView *tree_view = GTK_TREE_VIEW(widget); GtkTreeModel *model = gtk_tree_view_get_model(tree_view); - //GNCImportMainMatcher *info = user_data; GtkTreePath *path = NULL; GtkTreeViewColumn *column = NULL; GtkTreeIter iter; @@ -1872,7 +1871,7 @@ gboolean query_tooltip_tree_view_cb (GtkWidget *widget, gint x, gint y, } // Did we select any text? If yes, display the tooltip - if (tooltip_text) + if (tooltip_text && *tooltip_text) { show_tooltip = TRUE; gtk_tooltip_set_text (tooltip, tooltip_text); From 761797eb3d60bc6ee4c654cc07573157ba5a1621 Mon Sep 17 00:00:00 2001 From: Robert Fewell <14uBobIT@gmail.com> Date: Tue, 3 Nov 2020 14:02:13 +0000 Subject: [PATCH 096/167] Fix GdkDisplay error in trace file When OFX import is first used and the file chosen, an account select dialog will be shown but the parent was being obtained from a hidden import-main-matcher dialog. This fails so get the parent from the transient parent of the import-main-matcher dialog. --- gnucash/import-export/ofx/gnc-ofx-import.c | 20 ++++++++++++++++---- 1 file changed, 16 insertions(+), 4 deletions(-) diff --git a/gnucash/import-export/ofx/gnc-ofx-import.c b/gnucash/import-export/ofx/gnc-ofx-import.c index 405d069caf..442ecc9f8d 100644 --- a/gnucash/import-export/ofx/gnc-ofx-import.c +++ b/gnucash/import-export/ofx/gnc-ofx-import.c @@ -926,6 +926,8 @@ int ofx_proc_account_cb(struct OfxAccountData data, void * account_user_data) gnc_commodity * default_commodity; GNCAccountType default_type = ACCT_TYPE_NONE; gchar * account_description; + GtkWidget * main_widget; + GtkWidget * parent; /* In order to trigger a book options display on the creation of a new book, * we need to detect when we are dealing with a new book. */ gboolean new_book = gnc_is_new_book(); @@ -1006,7 +1008,17 @@ int ofx_proc_account_cb(struct OfxAccountData data, void * account_user_data) "%s \"%s\"", account_type_name, data.account_name); - account = gnc_import_select_account (gnc_gen_trans_list_widget(info->gnc_ofx_importer_gui), + + main_widget = gnc_gen_trans_list_widget (info->gnc_ofx_importer_gui); + + /* On first use, the import-main-matcher is hidden / not realized so to + * get a parent use the transient parent of the matcher */ + if (gtk_widget_get_realized (main_widget)) + parent = main_widget; + else + parent = GTK_WIDGET(gtk_window_get_transient_for (GTK_WINDOW(main_widget))); + + account = gnc_import_select_account (parent, data.account_id, 1, account_description, default_commodity, default_type, NULL, NULL); @@ -1151,7 +1163,7 @@ gnc_file_ofx_import_process_file (ofx_info* info) // Create the match dialog, and run the ofx file through the importer. info->gnc_ofx_importer_gui = gnc_gen_trans_list_new (GTK_WIDGET(parent), NULL, TRUE, 42, FALSE); libofx_proc_file (libofx_context, selected_filename, AUTODETECT); - + // Free the libofx context before recursing to process the next file libofx_free_context(libofx_context); @@ -1173,7 +1185,7 @@ gnc_file_ofx_import_process_file (ofx_info* info) G_CALLBACK (gnc_ofx_match_done), info); gnc_gen_trans_list_show_all (info->gnc_ofx_importer_gui); - + // Show or hide the check box for reconciling after match, depending on whether a statement was received. gnc_gen_trans_list_show_reconcile_after_close_button (info->gnc_ofx_importer_gui, info->statement != NULL, info->run_reconcile); @@ -1199,7 +1211,7 @@ void gnc_file_ofx_import (GtkWindow *parent) GSList* iter = NULL; ofx_info* info = NULL; GtkFileFilter* filter = gtk_file_filter_new (); - + ofx_PARSER_msg = false; ofx_DEBUG_msg = false; From aa71e46901120c80a5412c539cb59a7c2eb9ed26 Mon Sep 17 00:00:00 2001 From: Robert Fewell <14uBobIT@gmail.com> Date: Tue, 3 Nov 2020 14:03:32 +0000 Subject: [PATCH 097/167] Fix for OFX import Pressing help button causes main-import-matcher to disappear --- gnucash/import-export/ofx/gnc-ofx-import.c | 2 ++ 1 file changed, 2 insertions(+) diff --git a/gnucash/import-export/ofx/gnc-ofx-import.c b/gnucash/import-export/ofx/gnc-ofx-import.c index 442ecc9f8d..4f887b2dcd 100644 --- a/gnucash/import-export/ofx/gnc-ofx-import.c +++ b/gnucash/import-export/ofx/gnc-ofx-import.c @@ -1111,6 +1111,8 @@ gnc_ofx_match_done (GtkDialog *dialog, gint response_id, gpointer user_data) G_CALLBACK(gnc_ofx_process_next_file), info); } } + else if (response_id == GTK_RESPONSE_HELP) + return; else { gtk_widget_hide (GTK_WIDGET(dialog)); From bf483696de01ebb6f336b4d03a33c4d763b95542 Mon Sep 17 00:00:00 2001 From: Robert Fewell <14uBobIT@gmail.com> Date: Tue, 3 Nov 2020 14:04:38 +0000 Subject: [PATCH 098/167] Factor out the common code for import-main-matcher There are two functions used for starting the import-main-matcher, one using dialogs and one for it being embedded in an assistant. These two functions gnc_gen_trans_list_new and gnc_gen_trans_assist_new share some common code so factor out that part to ease maintenance. --- gnucash/import-export/import-main-matcher.c | 144 +++++++++----------- 1 file changed, 61 insertions(+), 83 deletions(-) diff --git a/gnucash/import-export/import-main-matcher.c b/gnucash/import-export/import-main-matcher.c index 5157889c91..26ffa744a8 100644 --- a/gnucash/import-export/import-main-matcher.c +++ b/gnucash/import-export/import-main-matcher.c @@ -1113,23 +1113,20 @@ show_matched_info_toggled_cb (GtkToggleButton *togglebutton, } } -GNCImportMainMatcher *gnc_gen_trans_list_new (GtkWidget *parent, - const gchar* heading, - gboolean all_from_same_account, - gint match_date_hardlimit, - gboolean show_all) +static void +gnc_gen_trans_common_setup (GNCImportMainMatcher *info, + GtkWidget *parent, + GtkBuilder *builder, + const gchar* heading, + gboolean all_from_same_account, + gint match_date_hardlimit) { - GNCImportMainMatcher *info; - GtkBuilder *builder; - GtkWidget *heading_label; - GtkWidget *box, *pbox; - gboolean show_update; GtkStyleContext *stylectxt; GdkRGBA color; - GtkWidget *button; + GtkWidget *heading_label; + gboolean show_update; - info = g_new0 (GNCImportMainMatcher, 1); - info->pending_matches = gnc_import_PendingMatches_new(); + info->pending_matches = gnc_import_PendingMatches_new (); /* Initialize user Settings. */ info->user_settings = gnc_import_Settings_new (); @@ -1139,18 +1136,6 @@ GNCImportMainMatcher *gnc_gen_trans_list_new (GtkWidget *parent, gtk_style_context_get_color (stylectxt, GTK_STATE_FLAG_NORMAL, &color); info->dark_theme = gnc_is_dark_theme (&color); - /* Initialize the GtkDialog. */ - builder = gtk_builder_new(); - gnc_builder_add_from_file (builder, "dialog-import.glade", "transaction_matcher_dialog"); - gnc_builder_add_from_file (builder, "dialog-import.glade", "transaction_matcher_content"); - info->main_widget = GTK_WIDGET(gtk_builder_get_object (builder, "transaction_matcher_dialog")); - g_assert (info->main_widget != NULL); - - /* Pack the content into the dialog vbox */ - pbox = GTK_WIDGET(gtk_builder_get_object (builder, "transaction_matcher_vbox")); - box = GTK_WIDGET(gtk_builder_get_object (builder, "transaction_matcher_content")); - gtk_box_pack_start (GTK_BOX(pbox), box, TRUE, TRUE, 0); - /* Get the view */ info->view = GTK_TREE_VIEW(gtk_builder_get_object (builder, "downloaded_view")); g_assert (info->view != NULL); @@ -1172,15 +1157,7 @@ GNCImportMainMatcher *gnc_gen_trans_list_new (GtkWidget *parent, heading_label = GTK_WIDGET(gtk_builder_get_object (builder, "heading_label")); g_assert (heading_label != NULL); - if (parent) - gtk_window_set_transient_for (GTK_WINDOW (info->main_widget), GTK_WINDOW (parent)); - if (heading) - gtk_label_set_text (GTK_LABEL (heading_label), heading); - - gnc_restore_window_size (GNC_PREFS_GROUP, GTK_WINDOW(info->main_widget), GTK_WINDOW (parent)); - if(show_all) - gtk_widget_show_all (GTK_WIDGET (info->main_widget)); info->transaction_processed_cb = NULL; @@ -1188,6 +1165,46 @@ GNCImportMainMatcher *gnc_gen_trans_list_new (GtkWidget *parent, gtk_builder_connect_signals_full (builder, gnc_builder_connect_full_func, info); g_object_unref (G_OBJECT(builder)); +} + + +GNCImportMainMatcher * +gnc_gen_trans_list_new (GtkWidget *parent, + const gchar* heading, + gboolean all_from_same_account, + gint match_date_hardlimit, + gboolean show_all) +{ + GNCImportMainMatcher *info; + GtkBuilder *builder; + GtkWidget *box, *pbox; + + info = g_new0 (GNCImportMainMatcher, 1); + + /* Initialize the GtkDialog. */ + builder = gtk_builder_new(); + gnc_builder_add_from_file (builder, "dialog-import.glade", "transaction_matcher_dialog"); + gnc_builder_add_from_file (builder, "dialog-import.glade", "transaction_matcher_content"); + + info->main_widget = GTK_WIDGET(gtk_builder_get_object (builder, "transaction_matcher_dialog")); + g_assert (info->main_widget != NULL); + + /* Pack the content into the dialog vbox */ + pbox = GTK_WIDGET(gtk_builder_get_object (builder, "transaction_matcher_vbox")); + box = GTK_WIDGET(gtk_builder_get_object (builder, "transaction_matcher_content")); + gtk_box_pack_start (GTK_BOX(pbox), box, TRUE, TRUE, 0); + + /* setup the common parts */ + gnc_gen_trans_common_setup (info, parent, builder, heading, + all_from_same_account, match_date_hardlimit); + + if (parent) + gtk_window_set_transient_for (GTK_WINDOW(info->main_widget), GTK_WINDOW(parent)); + + gnc_restore_window_size (GNC_PREFS_GROUP, GTK_WINDOW(info->main_widget), GTK_WINDOW(parent)); + + if (show_all) + gtk_widget_show_all (GTK_WIDGET(info->main_widget)); // Register this UI, it needs to be closed when the session is closed. info->id = gnc_register_gui_component (IMPORT_MAIN_MATCHER_CM_CLASS, @@ -1203,71 +1220,32 @@ GNCImportMainMatcher *gnc_gen_trans_list_new (GtkWidget *parent, * Assistant routines Start * *****************************************************************/ -GNCImportMainMatcher * gnc_gen_trans_assist_new (GtkWidget *parent, - GtkWidget *assistant_page, const gchar* heading, - gboolean all_from_same_account, gint match_date_hardlimit) +GNCImportMainMatcher * +gnc_gen_trans_assist_new (GtkWidget *parent, + GtkWidget *assistant_page, + const gchar* heading, + gboolean all_from_same_account, + gint match_date_hardlimit) { GNCImportMainMatcher *info; GtkBuilder *builder; - GtkWidget *heading_label; GtkWidget *box; - gboolean show_update; - GtkStyleContext *stylectxt; - GdkRGBA color; info = g_new0 (GNCImportMainMatcher, 1); - info->pending_matches = gnc_import_PendingMatches_new(); info->main_widget = GTK_WIDGET(parent); - /* Initialize user Settings. */ - info->user_settings = gnc_import_Settings_new (); - gnc_import_Settings_set_match_date_hardlimit (info->user_settings, match_date_hardlimit); - - stylectxt = gtk_widget_get_style_context (GTK_WIDGET(parent)); - gtk_style_context_get_color (stylectxt, GTK_STATE_FLAG_NORMAL, &color); - info->dark_theme = gnc_is_dark_theme (&color); - /* load the interface */ builder = gtk_builder_new(); gnc_builder_add_from_file (builder, "dialog-import.glade", "transaction_matcher_content"); - if (builder == NULL) - { - PERR("Error opening the glade builder interface"); - } + /* Pack content into Assistant page widget */ box = GTK_WIDGET(gtk_builder_get_object (builder, "transaction_matcher_content")); + g_assert (box != NULL); gtk_box_pack_start (GTK_BOX(assistant_page), box, TRUE, TRUE, 6); - /* Get the view */ - info->view = GTK_TREE_VIEW(gtk_builder_get_object (builder, "downloaded_view")); - g_assert (info->view != NULL); - - info->show_account_column = GTK_WIDGET(gtk_builder_get_object (builder, "show_source_account_button")); - gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON(info->show_account_column), all_from_same_account); - g_signal_connect (G_OBJECT(info->show_account_column), "toggled", - G_CALLBACK(show_account_column_toggled_cb), info); - - info->show_matched_info = GTK_WIDGET(gtk_builder_get_object (builder, "show_matched_info_button")); - g_signal_connect (G_OBJECT(info->show_matched_info), "toggled", - G_CALLBACK(show_matched_info_toggled_cb), info); - - // Create the checkbox, but do not show it by default. - info->reconcile_after_close = GTK_WIDGET(gtk_builder_get_object (builder, "reconcile_after_close_button")); - - show_update = gnc_import_Settings_get_action_update_enabled (info->user_settings); - gnc_gen_trans_init_view (info, all_from_same_account, show_update); - heading_label = GTK_WIDGET(gtk_builder_get_object (builder, "heading_label")); - g_assert (heading_label != NULL); - - if (heading) - gtk_label_set_text (GTK_LABEL (heading_label), heading); - - info->transaction_processed_cb = NULL; - - /* Connect the signals */ - gtk_builder_connect_signals_full (builder, gnc_builder_connect_full_func, info); - - g_object_unref (G_OBJECT(builder)); + /* setup the common parts */ + gnc_gen_trans_common_setup (info, parent, builder, heading, + all_from_same_account, match_date_hardlimit); return info; } From 48fe2ea60b8549249c4811069dd9cc71cc2f259a Mon Sep 17 00:00:00 2001 From: Robert Fewell <14uBobIT@gmail.com> Date: Tue, 3 Nov 2020 14:05:38 +0000 Subject: [PATCH 099/167] Add option to hide memo column on import-main-matcher This has stemmed from cstim's PR #810 which I have added here after refactoring the gnc_gen_trans_list_new function in previous commit. --- gnucash/gtkbuilder/dialog-import.glade | 22 ++++++++++++++++++--- gnucash/import-export/import-main-matcher.c | 20 +++++++++++++++++-- 2 files changed, 37 insertions(+), 5 deletions(-) diff --git a/gnucash/gtkbuilder/dialog-import.glade b/gnucash/gtkbuilder/dialog-import.glade index 71f7dac7b5..76d6a6e497 100644 --- a/gnucash/gtkbuilder/dialog-import.glade +++ b/gnucash/gtkbuilder/dialog-import.glade @@ -926,7 +926,7 @@ center - Show the _Account column + Show _Account column True True False @@ -940,6 +940,22 @@ 0 + + + Show _Memo column + True + True + False + center + True + True + + + False + True + 1 + + Show _matched information @@ -952,7 +968,7 @@ False True - 1 + 2 @@ -967,7 +983,7 @@ False True - 2 + 3 diff --git a/gnucash/import-export/import-main-matcher.c b/gnucash/import-export/import-main-matcher.c index 26ffa744a8..d30c9b3dd0 100644 --- a/gnucash/import-export/import-main-matcher.c +++ b/gnucash/import-export/import-main-matcher.c @@ -69,6 +69,7 @@ struct _main_matcher_info gpointer user_data; GNCImportPendingMatches *pending_matches; GtkTreeViewColumn *account_column; + GtkTreeViewColumn *memo_column; GtkWidget *show_account_column; GtkWidget *show_matched_info; GtkWidget *reconcile_after_close; @@ -1040,7 +1041,7 @@ gnc_gen_trans_init_view (GNCImportMainMatcher *info, gtk_tree_view_column_set_visible (info->account_column, show_account); add_text_column (view, _("Amount"), DOWNLOADED_COL_AMOUNT, FALSE); add_text_column (view, _("Description"), DOWNLOADED_COL_DESCRIPTION, FALSE); - add_text_column (view, _("Memo"), DOWNLOADED_COL_MEMO, TRUE); + info->memo_column = add_text_column (view, _("Memo"), DOWNLOADED_COL_MEMO, TRUE); add_toggle_column (view, C_("Column header for 'Adding transaction'", "A"), DOWNLOADED_COL_ACTION_ADD, G_CALLBACK(gnc_gen_trans_add_toggled_cb), info); @@ -1096,6 +1097,14 @@ show_account_column_toggled_cb (GtkToggleButton *togglebutton, gtk_toggle_button_get_active (togglebutton)); } +static void +show_memo_column_toggled_cb (GtkToggleButton *togglebutton, + GNCImportMainMatcher *info) +{ + gtk_tree_view_column_set_visible (info->memo_column, + gtk_toggle_button_get_active (togglebutton)); +} + static void show_matched_info_toggled_cb (GtkToggleButton *togglebutton, GNCImportMainMatcher *info) @@ -1123,7 +1132,7 @@ gnc_gen_trans_common_setup (GNCImportMainMatcher *info, { GtkStyleContext *stylectxt; GdkRGBA color; - GtkWidget *heading_label; + GtkWidget *heading_label, *button; gboolean show_update; info->pending_matches = gnc_import_PendingMatches_new (); @@ -1145,6 +1154,11 @@ gnc_gen_trans_common_setup (GNCImportMainMatcher *info, g_signal_connect (G_OBJECT(info->show_account_column), "toggled", G_CALLBACK(show_account_column_toggled_cb), info); + button = GTK_WIDGET(gtk_builder_get_object (builder, "show_memo_column_button")); + gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON(button), TRUE); + g_signal_connect (G_OBJECT(button), "toggled", + G_CALLBACK(show_memo_column_toggled_cb), info); + info->show_matched_info = GTK_WIDGET(gtk_builder_get_object (builder, "show_matched_info_button")); g_signal_connect (G_OBJECT(info->show_matched_info), "toggled", G_CALLBACK(show_matched_info_toggled_cb), info); @@ -1158,6 +1172,7 @@ gnc_gen_trans_common_setup (GNCImportMainMatcher *info, g_assert (heading_label != NULL); if (heading) + gtk_label_set_text (GTK_LABEL(heading_label), heading); info->transaction_processed_cb = NULL; @@ -1596,6 +1611,7 @@ refresh_model_row (GNCImportMainMatcher *gui, GtkTreePath *path = gtk_tree_model_get_path (model, iter); gtk_tree_view_column_set_visible (gui->account_column, TRUE); + gtk_tree_view_column_set_visible (gui->memo_column, TRUE); gtk_tree_view_expand_row (GTK_TREE_VIEW(gui->view), path, TRUE); gtk_tree_path_free (path); From 0382859e0ae686d42d5cadba400df4ba5aabee89 Mon Sep 17 00:00:00 2001 From: Robert Fewell <14uBobIT@gmail.com> Date: Tue, 3 Nov 2020 14:06:49 +0000 Subject: [PATCH 100/167] Change source files import-main-matcher.* for space and tabs --- gnucash/import-export/import-main-matcher.c | 269 ++++++++++---------- gnucash/import-export/import-main-matcher.h | 34 +-- 2 files changed, 152 insertions(+), 151 deletions(-) diff --git a/gnucash/import-export/import-main-matcher.c b/gnucash/import-export/import-main-matcher.c index d30c9b3dd0..82ad17f176 100644 --- a/gnucash/import-export/import-main-matcher.c +++ b/gnucash/import-export/import-main-matcher.c @@ -68,16 +68,16 @@ struct _main_matcher_info GNCTransactionProcessedCB transaction_processed_cb; gpointer user_data; GNCImportPendingMatches *pending_matches; - GtkTreeViewColumn *account_column; - GtkTreeViewColumn *memo_column; - GtkWidget *show_account_column; - GtkWidget *show_matched_info; - GtkWidget *reconcile_after_close; - gboolean add_toggled; // flag to indicate that add has been toggled to stop selection + GtkTreeViewColumn *account_column; + GtkTreeViewColumn *memo_column; + GtkWidget *show_account_column; + GtkWidget *show_matched_info; + GtkWidget *reconcile_after_close; + gboolean add_toggled; // flag to indicate that add has been toggled to stop selection gint id; - GSList* temp_trans_list; // Temporary list of imported transactions - GHashTable* acct_id_hash; // Hash table, per account, of list of transaction IDs. - GSList* edited_accounts; // List of accounts currently edited. + GSList* temp_trans_list; // Temporary list of imported transactions + GHashTable* acct_id_hash; // Hash table, per account, of list of transaction IDs. + GSList* edited_accounts; // List of accounts currently edited. }; enum downloaded_cols @@ -118,41 +118,36 @@ void on_matcher_help_close_clicked (GtkButton *button, gpointer user_data); static void gnc_gen_trans_list_create_matches (GNCImportMainMatcher *gui); /* Local prototypes */ -static void gnc_gen_trans_assign_transfer_account ( - GtkTreeView *treeview, - gboolean *first, - gboolean is_selection, - GtkTreePath *path, - Account **new_acc, - GNCImportMainMatcher *info); -static void gnc_gen_trans_assign_transfer_account_to_selection_cb ( - GtkMenuItem *menuitem, - GNCImportMainMatcher *info); -static void gnc_gen_trans_view_popup_menu ( - GtkTreeView *treeview, - GdkEvent *event, - GNCImportMainMatcher *info); -static gboolean gnc_gen_trans_onButtonPressed_cb ( - GtkTreeView *treeview, - GdkEvent *event, - GNCImportMainMatcher *info); -static gboolean gnc_gen_trans_onPopupMenu_cb ( - GtkTreeView *treeview, - GNCImportMainMatcher *info); -static void refresh_model_row ( - GNCImportMainMatcher *gui, - GtkTreeModel *model, - GtkTreeIter *iter, - GNCImportTransInfo *info); +static void gnc_gen_trans_assign_transfer_account (GtkTreeView *treeview, + gboolean *first, + gboolean is_selection, + GtkTreePath *path, + Account **new_acc, + GNCImportMainMatcher *info); +static void gnc_gen_trans_assign_transfer_account_to_selection_cb (GtkMenuItem *menuitem, + GNCImportMainMatcher *info); +static void gnc_gen_trans_view_popup_menu (GtkTreeView *treeview, + GdkEvent *event, + GNCImportMainMatcher *info); +static gboolean gnc_gen_trans_onButtonPressed_cb (GtkTreeView *treeview, + GdkEvent *event, + GNCImportMainMatcher *info); +static gboolean gnc_gen_trans_onPopupMenu_cb (GtkTreeView *treeview, + GNCImportMainMatcher *info); +static void refresh_model_row (GNCImportMainMatcher *gui, + GtkTreeModel *model, + GtkTreeIter *iter, + GNCImportTransInfo *info); static gboolean query_tooltip_tree_view_cb (GtkWidget *widget, gint x, gint y, gboolean keyboard_tip, GtkTooltip *tooltip, gpointer user_data); /* end local prototypes */ -static gboolean delete_hash (gpointer key, gpointer value, gpointer user_data) +static +gboolean delete_hash (gpointer key, gpointer value, gpointer user_data) { - // Value is a hash table that needs to be destroyed. + // Value is a hash table that needs to be destroyed. g_hash_table_destroy (value); return TRUE; } @@ -162,8 +157,8 @@ update_all_balances (GNCImportMainMatcher *info) { for (GSList* iter = info->edited_accounts; iter; iter=iter->next) { - gnc_account_set_defer_bal_computation(iter->data,FALSE); - xaccAccountRecomputeBalance(iter->data); + gnc_account_set_defer_bal_computation (iter->data,FALSE); + xaccAccountRecomputeBalance (iter->data); } g_slist_free (info->edited_accounts); info->edited_accounts = NULL; @@ -172,14 +167,15 @@ update_all_balances (GNCImportMainMatcher *info) static void defer_bal_computation (GNCImportMainMatcher *info, Account* acc) { - if (!gnc_account_get_defer_bal_computation(acc)) + if (!gnc_account_get_defer_bal_computation (acc)) { gnc_account_set_defer_bal_computation (acc, TRUE); info->edited_accounts = g_slist_prepend (info->edited_accounts, acc); } } -void gnc_gen_trans_list_delete (GNCImportMainMatcher *info) +void +gnc_gen_trans_list_delete (GNCImportMainMatcher *info) { GtkTreeModel *model; GtkTreeIter iter; @@ -211,23 +207,24 @@ void gnc_gen_trans_list_delete (GNCImportMainMatcher *info) gnc_save_window_size (GNC_PREFS_GROUP, GTK_WINDOW(info->main_widget)); gnc_import_Settings_delete (info->user_settings); gnc_unregister_gui_component (info->id); - gtk_widget_destroy (GTK_WIDGET (info->main_widget)); + gtk_widget_destroy (GTK_WIDGET(info->main_widget)); } else gnc_import_Settings_delete (info->user_settings); - g_slist_free_full (info->temp_trans_list,(GDestroyNotify) gnc_import_TransInfo_delete); + g_slist_free_full (info->temp_trans_list, (GDestroyNotify) gnc_import_TransInfo_delete); info->temp_trans_list = NULL; - + // We've deferred balance computations on many accounts. Let's do it now that we're done. update_all_balances (info); - + g_hash_table_foreach_remove (info->acct_id_hash, delete_hash, NULL); info->acct_id_hash = NULL; g_free (info); } -gboolean gnc_gen_trans_list_empty(GNCImportMainMatcher *info) +gboolean +gnc_gen_trans_list_empty (GNCImportMainMatcher *info) { GtkTreeModel *model; GtkTreeIter iter; @@ -247,12 +244,12 @@ get_top_trans_match_id (GList* match_list) if (!match_list || !match_list->data) return NULL; match_info = match_list->data; trans = match_info->trans; - return xaccTransGetGUID(trans); + return xaccTransGetGUID (trans); } // This returns the transaction score of the first match candidate in match_list static gint -get_top_trans_match_score(GList* match_list) +get_top_trans_match_score (GList* match_list) { GNCImportMatchInfo* match_info; if (!match_list || !match_list->data) return 0; @@ -271,7 +268,7 @@ get_trans_match_list (GtkTreeModel* model, GtkTreeIter* iter) } static GNCImportTransInfo* -get_trans_info(GtkTreeModel* model, GtkTreeIter* iter) +get_trans_info (GtkTreeModel* model, GtkTreeIter* iter) { GNCImportTransInfo* transaction_info; gtk_tree_model_get (model, iter, @@ -342,7 +339,7 @@ static void resolve_conflicts (GNCImportMainMatcher *info) { GtkTreeModel* model = gtk_tree_view_get_model (info->view); - GtkListStore* store = GTK_LIST_STORE (model); + GtkListStore* store = GTK_LIST_STORE(model); GtkTreeIter import_iter, best_import; gint best_match = 0; @@ -391,12 +388,13 @@ resolve_conflicts (GNCImportMainMatcher *info) } } -void gnc_gen_trans_list_show_all(GNCImportMainMatcher *info) +void +gnc_gen_trans_list_show_all (GNCImportMainMatcher *info) { g_assert (info); gnc_gen_trans_list_create_matches (info); resolve_conflicts (info); - gtk_widget_show_all (GTK_WIDGET (info->main_widget)); + gtk_widget_show_all (GTK_WIDGET(info->main_widget)); } void @@ -420,7 +418,7 @@ on_matcher_ok_clicked (GtkButton *button, GNCImportMainMatcher *info) /* Don't run any queries and/or split sorts while processing the matcher results. */ - gnc_suspend_gui_refresh(); + gnc_suspend_gui_refresh (); do { gtk_tree_model_get (model, &iter, @@ -440,11 +438,11 @@ on_matcher_ok_clicked (GtkButton *button, GNCImportMainMatcher *info) } } while (gtk_tree_model_iter_next (model, &iter)); - + gnc_gen_trans_list_delete (info); /* Allow GUI refresh again. */ - gnc_resume_gui_refresh(); + gnc_resume_gui_refresh (); /* DEBUG ("End") */ } @@ -481,7 +479,7 @@ on_matcher_help_clicked (GtkButton *button, gpointer user_data) gchar *int_required_class, *int_prob_required_class, *int_not_required_class; gchar *class_extension = NULL; - builder = gtk_builder_new(); + builder = gtk_builder_new (); gnc_builder_add_from_file (builder, "dialog-import.glade", "textbuffer2"); gnc_builder_add_from_file (builder, "dialog-import.glade", "textbuffer3"); gnc_builder_add_from_file (builder, "dialog-import.glade", "textbuffer4"); @@ -532,7 +530,7 @@ run_account_picker_dialog (GNCImportMainMatcher *info, old_acc = gnc_import_TransInfo_get_destacc (trans_info); new_acc = gnc_import_select_account ( - info->main_widget, + info->main_widget, NULL, TRUE, _("Destination account for the auto-balance split."), @@ -719,9 +717,8 @@ gnc_gen_trans_assign_transfer_account (GtkTreeView *treeview, } static void -gnc_gen_trans_assign_transfer_account_to_selection_cb ( - GtkMenuItem *menuitem, - GNCImportMainMatcher *info) +gnc_gen_trans_assign_transfer_account_to_selection_cb (GtkMenuItem *menuitem, + GNCImportMainMatcher *info) { GtkTreeView *treeview; GtkTreeSelection *selection; @@ -753,16 +750,15 @@ gnc_gen_trans_assign_transfer_account_to_selection_cb ( gchar *path_str = gtk_tree_path_to_string (l->data); GtkTreeRowReference *ref = gtk_tree_row_reference_new (model, l->data); DEBUG("passing first = %s", first ? "true" : "false"); - DEBUG("passing is_selection = %s", - is_selection ? "true" : "false"); + DEBUG("passing is_selection = %s", is_selection ? "true" : "false"); DEBUG("passing path = %s", path_str); g_free (path_str); refs = g_list_prepend (refs, ref); DEBUG("passing account value = %s", gnc_account_get_full_name (assigned_account)); gnc_gen_trans_assign_transfer_account (treeview, - &first, is_selection, l->data, - &assigned_account, info); + &first, is_selection, l->data, + &assigned_account, info); DEBUG("returned value of account = %s", gnc_account_get_full_name (assigned_account)); DEBUG("returned value of first = %s", first ? "true" : "false"); @@ -771,7 +767,7 @@ gnc_gen_trans_assign_transfer_account_to_selection_cb ( } } - g_list_free_full (selected_rows, (GDestroyNotify) gtk_tree_path_free); + g_list_free_full (selected_rows, (GDestroyNotify)gtk_tree_path_free); // now reselect the transaction rows. This is very slow if there are lots of transactions. for (l = refs; l != NULL; l = l->next) @@ -802,8 +798,8 @@ gnc_gen_trans_row_activated_cb (GtkTreeView *treeview, first = TRUE; is_selection = FALSE; gnc_gen_trans_assign_transfer_account (treeview, - &first, is_selection, path, - &assigned_account, info); + &first, is_selection, path, + &assigned_account, info); gtk_tree_selection_select_path (gtk_tree_view_get_selection (treeview), path); @@ -840,9 +836,9 @@ gnc_gen_trans_row_changed_cb (GtkTreeSelection *selection, if (get_action_for_path (list->data, model) != GNCImport_ADD) gtk_tree_selection_unselect_path (selection, list->data); } - g_list_free_full (list, (GDestroyNotify) gtk_tree_path_free); + g_list_free_full (list, (GDestroyNotify)gtk_tree_path_free); } - + switch (mode) { case GTK_SELECTION_MULTIPLE: @@ -876,7 +872,7 @@ gnc_gen_trans_view_popup_menu (GtkTreeView *treeview, ENTER (""); menu = gtk_menu_new(); menuitem = gtk_menu_item_new_with_label ( - _("Assign a transfer account to the selection.")); + _("Assign a transfer account to the selection.")); g_signal_connect (menuitem, "activate", G_CALLBACK( gnc_gen_trans_assign_transfer_account_to_selection_cb), @@ -923,7 +919,7 @@ gnc_gen_trans_onButtonPressed_cb (GtkTreeView *treeview, get_action_for_path (selected->data, model); if (get_action_for_path (selected->data, model) == GNCImport_ADD) gnc_gen_trans_view_popup_menu (treeview, event, info); - g_list_free_full (selected, (GDestroyNotify) gtk_tree_path_free); + g_list_free_full (selected, (GDestroyNotify)gtk_tree_path_free); } LEAVE("return TRUE"); return TRUE; @@ -952,17 +948,17 @@ gnc_gen_trans_onPopupMenu_cb (GtkTreeView *treeview, } static GtkTreeViewColumn * -add_text_column(GtkTreeView *view, const gchar *title, int col_num, gboolean ellipsize) +add_text_column (GtkTreeView *view, const gchar *title, int col_num, gboolean ellipsize) { GtkCellRenderer *renderer; GtkTreeViewColumn *column; - renderer = gtk_cell_renderer_text_new(); - column = gtk_tree_view_column_new_with_attributes - (title, renderer, - "text", col_num, - "background", DOWNLOADED_COL_COLOR, - NULL); + renderer = gtk_cell_renderer_text_new (); + column = gtk_tree_view_column_new_with_attributes (title, + renderer, + "text", col_num, + "background", DOWNLOADED_COL_COLOR, + NULL); if (ellipsize) g_object_set (renderer, "ellipsize", PANGO_ELLIPSIZE_END, NULL); @@ -994,18 +990,15 @@ add_toggle_column (GtkTreeView *view, const gchar *title, int col_num, GtkCellRenderer *renderer; GtkTreeViewColumn *column; - renderer = gtk_cell_renderer_toggle_new(); - column = gtk_tree_view_column_new_with_attributes - (title, renderer, - "active", col_num, - "cell-background", DOWNLOADED_COL_COLOR, - "activatable", DOWNLOADED_COL_ENABLE, - "visible", DOWNLOADED_COL_ENABLE, - NULL); + renderer = gtk_cell_renderer_toggle_new (); + column = gtk_tree_view_column_new_with_attributes (title, renderer, + "active", col_num, + "cell-background", DOWNLOADED_COL_COLOR, + "activatable", DOWNLOADED_COL_ENABLE, + "visible", DOWNLOADED_COL_ENABLE, + NULL); gtk_tree_view_column_set_sort_column_id (column, col_num); - g_object_set (G_OBJECT(column), - "reorderable", TRUE, - NULL); + g_object_set (G_OBJECT(column), "reorderable", TRUE, NULL); g_signal_connect (renderer, "toggled", cb_fn, cb_arg); gtk_tree_view_append_column (view, column); return column; @@ -1042,24 +1035,24 @@ gnc_gen_trans_init_view (GNCImportMainMatcher *info, add_text_column (view, _("Amount"), DOWNLOADED_COL_AMOUNT, FALSE); add_text_column (view, _("Description"), DOWNLOADED_COL_DESCRIPTION, FALSE); info->memo_column = add_text_column (view, _("Memo"), DOWNLOADED_COL_MEMO, TRUE); - add_toggle_column (view, - C_("Column header for 'Adding transaction'", "A"), DOWNLOADED_COL_ACTION_ADD, + add_toggle_column (view, C_("Column header for 'Adding transaction'", "A"), + DOWNLOADED_COL_ACTION_ADD, G_CALLBACK(gnc_gen_trans_add_toggled_cb), info); - column = add_toggle_column (view, - C_("Column header for 'Updating plus Clearing transaction'", "U+C"), DOWNLOADED_COL_ACTION_UPDATE, - G_CALLBACK(gnc_gen_trans_update_toggled_cb), info); + column = add_toggle_column (view, C_("Column header for 'Updating plus Clearing transaction'", "U+C"), + DOWNLOADED_COL_ACTION_UPDATE, + G_CALLBACK(gnc_gen_trans_update_toggled_cb), info); gtk_tree_view_column_set_visible (column, show_update); - add_toggle_column (view, - C_("Column header for 'Clearing transaction'", "C"), DOWNLOADED_COL_ACTION_CLEAR, - G_CALLBACK(gnc_gen_trans_clear_toggled_cb), info); + add_toggle_column (view, C_("Column header for 'Clearing transaction'", "C"), + DOWNLOADED_COL_ACTION_CLEAR, + G_CALLBACK(gnc_gen_trans_clear_toggled_cb), info); /* The last column has multiple renderers */ - renderer = gtk_cell_renderer_pixbuf_new(); + renderer = gtk_cell_renderer_pixbuf_new (); g_object_set (renderer, "xalign", 0.0, NULL); column = gtk_tree_view_column_new_with_attributes (_("Info"), renderer, - "pixbuf", DOWNLOADED_COL_ACTION_PIXBUF, - "cell-background", DOWNLOADED_COL_COLOR, - NULL); + "pixbuf", DOWNLOADED_COL_ACTION_PIXBUF, + "cell-background", DOWNLOADED_COL_COLOR, + NULL); gtk_tree_view_append_column (info->view, column); @@ -1073,19 +1066,18 @@ gnc_gen_trans_init_view (GNCImportMainMatcher *info, selection = gtk_tree_view_get_selection (info->view); g_object_set (info->view, "has-tooltip", TRUE, NULL); + g_signal_connect (G_OBJECT(info->view), "query-tooltip", G_CALLBACK(query_tooltip_tree_view_cb), info); - g_signal_connect (info->view, "row-activated", G_CALLBACK(gnc_gen_trans_row_activated_cb), info); g_signal_connect (selection, "changed", G_CALLBACK(gnc_gen_trans_row_changed_cb), info); - g_signal_connect (view, "button-press-event", G_CALLBACK(gnc_gen_trans_onButtonPressed_cb), info); g_signal_connect (view, "popup-menu", G_CALLBACK(gnc_gen_trans_onPopupMenu_cb), info); - + info->acct_id_hash = g_hash_table_new (g_direct_hash, g_direct_equal); } @@ -1107,7 +1099,7 @@ show_memo_column_toggled_cb (GtkToggleButton *togglebutton, static void show_matched_info_toggled_cb (GtkToggleButton *togglebutton, - GNCImportMainMatcher *info) + GNCImportMainMatcher *info) { if (gtk_toggle_button_get_active (togglebutton)) { @@ -1197,7 +1189,7 @@ gnc_gen_trans_list_new (GtkWidget *parent, info = g_new0 (GNCImportMainMatcher, 1); /* Initialize the GtkDialog. */ - builder = gtk_builder_new(); + builder = gtk_builder_new (); gnc_builder_add_from_file (builder, "dialog-import.glade", "transaction_matcher_dialog"); gnc_builder_add_from_file (builder, "dialog-import.glade", "transaction_matcher_content"); @@ -1250,7 +1242,7 @@ gnc_gen_trans_assist_new (GtkWidget *parent, info->main_widget = GTK_WIDGET(parent); /* load the interface */ - builder = gtk_builder_new(); + builder = gtk_builder_new (); gnc_builder_add_from_file (builder, "dialog-import.glade", "transaction_matcher_content"); /* Pack content into Assistant page widget */ @@ -1265,7 +1257,8 @@ gnc_gen_trans_assist_new (GtkWidget *parent, return info; } -void gnc_gen_trans_assist_start (GNCImportMainMatcher *info) +void +gnc_gen_trans_assist_start (GNCImportMainMatcher *info) { on_matcher_ok_clicked (NULL, info); } @@ -1274,15 +1267,17 @@ void gnc_gen_trans_assist_start (GNCImportMainMatcher *info) * Assistant routines End * *****************************************************************/ -void gnc_gen_trans_list_add_tp_cb (GNCImportMainMatcher *info, - GNCTransactionProcessedCB trans_processed_cb, - gpointer user_data) +void +gnc_gen_trans_list_add_tp_cb (GNCImportMainMatcher *info, + GNCTransactionProcessedCB trans_processed_cb, + gpointer user_data) { info->user_data = user_data; info->transaction_processed_cb = trans_processed_cb; } -gboolean gnc_gen_trans_list_run (GNCImportMainMatcher *info) +gboolean +gnc_gen_trans_list_run (GNCImportMainMatcher *info) { gboolean result; @@ -1338,7 +1333,7 @@ update_child_row (GNCImportMatchInfo *sel_match, GtkTreeModel *model, GtkTreeIte gtk_tree_store_set (store, &child, DOWNLOADED_COL_DATE_TXT, text, -1); - if (xaccTransCountSplits(sel_match->trans) == 2) + if (xaccTransCountSplits (sel_match->trans) == 2) gtk_tree_store_set (store, &child, DOWNLOADED_COL_ACCOUNT, xaccAccountGetName ( xaccSplitGetAccount (xaccSplitGetOtherSplit (sel_match->split))), -1); else @@ -1621,16 +1616,17 @@ refresh_model_row (GNCImportMainMatcher *gui, gtk_tree_selection_unselect_all (selection); } -void gnc_gen_trans_list_add_trans (GNCImportMainMatcher *gui, Transaction *trans) +void +gnc_gen_trans_list_add_trans (GNCImportMainMatcher *gui, Transaction *trans) { Account* acc = NULL; Split* split = NULL; int i=0; - + split = xaccTransGetSplit (trans, 0); acc = xaccSplitGetAccount (split); defer_bal_computation (gui, acc); - + gnc_gen_trans_list_add_trans_with_ref_id (gui, trans, 0); return; }/* end gnc_import_add_trans() */ @@ -1650,14 +1646,15 @@ gnc_gen_trans_list_get_reconcile_after_close_button (GNCImportMainMatcher *info) return info->reconcile_after_close; } -void gnc_gen_trans_list_add_trans_with_ref_id (GNCImportMainMatcher *gui, Transaction *trans, guint32 ref_id) +void +gnc_gen_trans_list_add_trans_with_ref_id (GNCImportMainMatcher *gui, Transaction *trans, guint32 ref_id) { GNCImportTransInfo * transaction_info = NULL; GtkTreeModel *model; GtkTreeIter iter; g_assert (gui); g_assert (trans); - + if (gnc_import_exists_online_id (trans, gui->acct_id_hash)) return; else @@ -1671,7 +1668,6 @@ void gnc_gen_trans_list_add_trans_with_ref_id (GNCImportMainMatcher *gui, Transa return; } - /* Query the accounts used by the imported transactions to find a list of * candidate matching transactions. */ @@ -1700,12 +1696,12 @@ query_imported_transaction_accounts (GNCImportMainMatcher *gui) time64 txn_time = xaccTransGetDate (gnc_import_TransInfo_get_trans (txn_info)); all_accounts = g_list_prepend (all_accounts, txn_account); - min_time = MIN (min_time, txn_time); - max_time = MAX (max_time, txn_time); + min_time = MIN(min_time, txn_time); + max_time = MAX(max_time, txn_time); } // Make a query to find splits with the right accounts and dates. - qof_query_set_book (query, gnc_get_current_book()); + qof_query_set_book (query, gnc_get_current_book ()); xaccQueryAddAccountMatch (query, all_accounts, QOF_GUID_MATCH_ANY, QOF_QUERY_AND); xaccQueryAddDateMatchTT (query, @@ -1808,7 +1804,7 @@ void gnc_gen_trans_list_create_matches (GNCImportMainMatcher *gui) { GHashTable* account_hash = - g_hash_table_new_full(g_direct_hash, g_direct_equal, NULL, + g_hash_table_new_full (g_direct_hash, g_direct_equal, NULL, (GDestroyNotify)g_slist_free); GList *candidate_txns; g_assert (gui); @@ -1822,19 +1818,21 @@ gnc_gen_trans_list_create_matches (GNCImportMainMatcher *gui) return; } -GtkWidget *gnc_gen_trans_list_widget (GNCImportMainMatcher *info) +GtkWidget * +gnc_gen_trans_list_widget (GNCImportMainMatcher *info) { g_assert (info); return info->main_widget; } -gboolean query_tooltip_tree_view_cb (GtkWidget *widget, gint x, gint y, - gboolean keyboard_tip, - GtkTooltip *tooltip, - gpointer user_data) +gboolean +query_tooltip_tree_view_cb (GtkWidget *widget, gint x, gint y, + gboolean keyboard_tip, + GtkTooltip *tooltip, + gpointer user_data) { GtkTreeView *tree_view = GTK_TREE_VIEW(widget); - GtkTreeModel *model = gtk_tree_view_get_model(tree_view); + GtkTreeModel *model = gtk_tree_view_get_model (tree_view); GtkTreePath *path = NULL; GtkTreeViewColumn *column = NULL; GtkTreeIter iter; @@ -1846,19 +1844,19 @@ gboolean query_tooltip_tree_view_cb (GtkWidget *widget, gint x, gint y, return FALSE; // Get the iter pointing to our current column - if (gtk_tree_model_get_iter(model, &iter, path) - && column) + if (gtk_tree_model_get_iter(model, &iter, path) && column) { const gchar *tooltip_text = NULL; // Select text based on column - gint num_col = gtk_tree_view_column_get_sort_column_id(column); - switch (num_col) { + gint num_col = gtk_tree_view_column_get_sort_column_id (column); + switch (num_col) + { case DOWNLOADED_COL_DESCRIPTION: - gtk_tree_model_get(model, &iter, DOWNLOADED_COL_DESCRIPTION, &tooltip_text, -1); + gtk_tree_model_get (model, &iter, DOWNLOADED_COL_DESCRIPTION, &tooltip_text, -1); break; case DOWNLOADED_COL_MEMO: - gtk_tree_model_get(model, &iter, DOWNLOADED_COL_MEMO, &tooltip_text, -1); + gtk_tree_model_get (model, &iter, DOWNLOADED_COL_MEMO, &tooltip_text, -1); break; default: break; @@ -1872,7 +1870,6 @@ gboolean query_tooltip_tree_view_cb (GtkWidget *widget, gint x, gint y, gtk_tree_view_set_tooltip_cell (tree_view, tooltip, path, column, NULL); } } - // Clean up the object gtk_tree_path_free (path); return show_tooltip; diff --git a/gnucash/import-export/import-main-matcher.h b/gnucash/import-export/import-main-matcher.h index 06b98cf41d..6b20c3d4f3 100644 --- a/gnucash/import-export/import-main-matcher.h +++ b/gnucash/import-export/import-main-matcher.h @@ -39,8 +39,8 @@ typedef struct _main_matcher_info GNCImportMainMatcher; typedef void (*GNCTransactionProcessedCB) (GNCImportTransInfo *trans_info, - gboolean imported, gpointer user_data); - + gboolean imported, + gpointer user_data); /** Create a new generic transaction dialog window and return it. * @@ -67,10 +67,10 @@ typedef void (*GNCTransactionProcessedCB) (GNCImportTransInfo *trans_info, * @return A pointer to the GNCImportMainMatcher which has been setup. */ GNCImportMainMatcher *gnc_gen_trans_list_new (GtkWidget *parent, - const gchar* heading, - gboolean all_from_same_account, - gint match_date_hardlimit, - gboolean show_all); + const gchar* heading, + gboolean all_from_same_account, + gint match_date_hardlimit, + gboolean show_all); @@ -103,8 +103,10 @@ GNCImportMainMatcher *gnc_gen_trans_list_new (GtkWidget *parent, * @return A pointer to the GNCImportMainMatcher which has been setup. */ GNCImportMainMatcher * gnc_gen_trans_assist_new (GtkWidget *parent, - GtkWidget *assistant_page, const gchar* heading, - gboolean all_from_same_account, gint match_date_hardlimit); + GtkWidget *assistant_page, + const gchar* heading, + gboolean all_from_same_account, + gint match_date_hardlimit); /** This starts the import process for transaction from an assistant. @@ -131,9 +133,9 @@ void on_matcher_help_clicked (GtkButton *button, gpointer user_data); * * @param trans_processed_cb The callback function. */ -void gnc_gen_trans_list_add_tp_cb(GNCImportMainMatcher *info, - GNCTransactionProcessedCB trans_processed_cb, - gpointer user_data); +void gnc_gen_trans_list_add_tp_cb (GNCImportMainMatcher *info, + GNCTransactionProcessedCB trans_processed_cb, + gpointer user_data); /** Deletes the given object. */ @@ -150,7 +152,7 @@ void gnc_gen_trans_list_delete (GNCImportMainMatcher *info); * must NOT be committed. The Importer takes over ownership of the * passed transaction. */ -void gnc_gen_trans_list_add_trans(GNCImportMainMatcher *gui, Transaction *trans); +void gnc_gen_trans_list_add_trans (GNCImportMainMatcher *gui, Transaction *trans); /** Add a newly imported Transaction to the Transaction Importer and provide an @@ -167,7 +169,9 @@ void gnc_gen_trans_list_add_trans(GNCImportMainMatcher *gui, Transaction *trans) * * @param ref_id Reference id which links an external object to the transaction. */ -void gnc_gen_trans_list_add_trans_with_ref_id(GNCImportMainMatcher *gui, Transaction *trans, guint32 ref_id); +void gnc_gen_trans_list_add_trans_with_ref_id (GNCImportMainMatcher *gui, + Transaction *trans, + guint32 ref_id); /** Run this dialog and return only after the user pressed Ok, Cancel, @@ -189,12 +193,12 @@ GtkWidget *gnc_gen_trans_list_widget (GNCImportMainMatcher *info); * @param info A pointer to a the GNCImportMainMatcher structure. * @return A boolean indicating whether the transaction list is empty. */ -gboolean gnc_gen_trans_list_empty(GNCImportMainMatcher *info); +gboolean gnc_gen_trans_list_empty (GNCImportMainMatcher *info); /** Shows widgets. * @param info A pointer to a the GNCImportMainMatcher structure. */ -void gnc_gen_trans_list_show_all(GNCImportMainMatcher *info); +void gnc_gen_trans_list_show_all (GNCImportMainMatcher *info); /** Show and set the reconcile after close check button. * @param info A pointer to a the GNCImportMainMatcher structure. From d867a9d50d2ca0796f38486803814c5ce70661fb Mon Sep 17 00:00:00 2001 From: Robert Fewell <14uBobIT@gmail.com> Date: Tue, 3 Nov 2020 14:07:52 +0000 Subject: [PATCH 101/167] Set the visibility of the account column in import-main-matcher After the import-main-matcher is shown, set the visibility of the account column based on the number of accounts being displayed. --- gnucash/import-export/import-main-matcher.c | 55 +++++++++++++++++++++ gnucash/import-export/ofx/gnc-ofx-import.c | 2 +- 2 files changed, 56 insertions(+), 1 deletion(-) diff --git a/gnucash/import-export/import-main-matcher.c b/gnucash/import-export/import-main-matcher.c index 82ad17f176..92d3f7b08f 100644 --- a/gnucash/import-export/import-main-matcher.c +++ b/gnucash/import-export/import-main-matcher.c @@ -235,6 +235,60 @@ gnc_gen_trans_list_empty (GNCImportMainMatcher *info) return !gtk_tree_model_get_iter_first (model, &iter) && !info->temp_trans_list; } +static void +gnc_gen_trans_list_show_accounts_column (GNCImportMainMatcher *info) +{ + GtkTreeModel *model; + GtkTreeIter iter; + GNCImportTransInfo *trans_info; + gboolean multiple_accounts = FALSE; + gboolean valid; + + g_assert (info); + + model = gtk_tree_view_get_model (info->view); + + if (gtk_tree_model_iter_n_children (model, NULL) > 1) + { + /* Get first row in list store */ + valid = gtk_tree_model_get_iter_first (model, &iter); + if (valid) + { + gchar *account_name; + gtk_tree_model_get (model, &iter, DOWNLOADED_COL_ACCOUNT, &account_name, -1); + + valid = gtk_tree_model_iter_next (model, &iter); + + while (valid) + { + gchar *test_account_name; + + gtk_tree_model_get (model, &iter, DOWNLOADED_COL_ACCOUNT, &test_account_name, -1); + if (g_strcmp0 (account_name, test_account_name) != 0) + { + multiple_accounts = TRUE; + g_free (test_account_name); + break; + } + valid = gtk_tree_model_iter_next (model, &iter); + g_free (test_account_name); + } + g_free (account_name); + } + // now toggle the column + if (multiple_accounts) + { + gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON(info->show_account_column), TRUE); + gtk_tree_view_expand_all (info->view); + } + else + { + gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON(info->show_account_column), FALSE); + gtk_tree_view_collapse_all (info->view); + } + } +} + // This returns the transaction ID of the first match candidate in match_list static const GncGUID* get_top_trans_match_id (GList* match_list) @@ -395,6 +449,7 @@ gnc_gen_trans_list_show_all (GNCImportMainMatcher *info) gnc_gen_trans_list_create_matches (info); resolve_conflicts (info); gtk_widget_show_all (GTK_WIDGET(info->main_widget)); + gnc_gen_trans_list_show_accounts_column (info); } void diff --git a/gnucash/import-export/ofx/gnc-ofx-import.c b/gnucash/import-export/ofx/gnc-ofx-import.c index 4f887b2dcd..cfd67dbef2 100644 --- a/gnucash/import-export/ofx/gnc-ofx-import.c +++ b/gnucash/import-export/ofx/gnc-ofx-import.c @@ -1163,7 +1163,7 @@ gnc_file_ofx_import_process_file (ofx_info* info) /*ofx_set_status_cb(libofx_context, ofx_proc_status_cb, 0);*/ // Create the match dialog, and run the ofx file through the importer. - info->gnc_ofx_importer_gui = gnc_gen_trans_list_new (GTK_WIDGET(parent), NULL, TRUE, 42, FALSE); + info->gnc_ofx_importer_gui = gnc_gen_trans_list_new (GTK_WIDGET(parent), NULL, FALSE, 42, FALSE); libofx_proc_file (libofx_context, selected_filename, AUTODETECT); // Free the libofx context before recursing to process the next file From 54f614feedf58886896fe6c8a4fcbaea7254b199 Mon Sep 17 00:00:00 2001 From: Christopher Lam Date: Tue, 3 Nov 2020 11:19:16 +0800 Subject: [PATCH 102/167] [html-text] compact gnc:html-markup-img --- gnucash/report/html-text.scm | 14 +++++--------- 1 file changed, 5 insertions(+), 9 deletions(-) diff --git a/gnucash/report/html-text.scm b/gnucash/report/html-text.scm index 94a04d4205..7fb0da9c51 100644 --- a/gnucash/report/html-text.scm +++ b/gnucash/report/html-text.scm @@ -22,6 +22,7 @@ ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; (use-modules (srfi srfi-9)) +(use-modules (ice-9 match)) ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;; class @@ -184,15 +185,10 @@ rest)) (define (gnc:html-markup-img src . rest) - (gnc:html-markup/attr/no-end - "img" - (with-output-to-string - (lambda () - (for-each - (lambda (kvp) - (format #t "~a=~s " (car kvp) (cadr kvp))) - (cons (list 'src src) - rest)))))) + (let lp ((tags (cons (list 'src src) rest)) (acc '())) + (match tags + (() (gnc:html-markup/attr/no-end "img" (string-concatenate-reverse acc))) + (((attr val) . tail) (lp tail (cons (format #f "~a=~s " attr val) acc)))))) (define (gnc:html-text-render p doc) (let* ((retval '()) From d1d464738fb021a2c7bee1b9ed51531d556ef20d Mon Sep 17 00:00:00 2001 From: Christopher Lam Date: Wed, 4 Nov 2020 11:18:36 +0800 Subject: [PATCH 103/167] [autoclear] show cleared splits is optional --- gnucash/gnome/window-autoclear.c | 10 +++++++++- gnucash/gtkbuilder/window-autoclear.glade | 16 ++++++++++++++++ 2 files changed, 25 insertions(+), 1 deletion(-) diff --git a/gnucash/gnome/window-autoclear.c b/gnucash/gnome/window-autoclear.c index 31d2c40c60..f5270be82a 100644 --- a/gnucash/gnome/window-autoclear.c +++ b/gnucash/gnome/window-autoclear.c @@ -50,6 +50,7 @@ struct _AutoClearWindow GNCAmountEdit *end_value;/* The ending value */ GtkWidget *ok_button; GtkWidget *cancel_button; + GtkWidget *show_cleared_splits_button; GtkLabel *status_label; }; @@ -151,7 +152,11 @@ gnc_autoclear_window_ok_cb (GtkWidget *widget, for (GList *node = toclear_list; node; node = node->next) xaccSplitSetReconcile (node->data, CREC); xaccAccountCommitEdit (data->account); - show_cleared_splits (toclear_list); + + if (gtk_toggle_button_get_active + (GTK_TOGGLE_BUTTON (data->show_cleared_splits_button))) + show_cleared_splits (toclear_list); + g_list_free (toclear_list); /* Close window */ @@ -207,6 +212,9 @@ autoClearWindow (GtkWidget *parent, Account *account) // Set the name for this dialog so it can be easily manipulated with css gtk_widget_set_name (GTK_WIDGET(data->window), "gnc-id-auto-clear"); + data->show_cleared_splits_button = + GTK_WIDGET (gtk_builder_get_object (builder, "show_cleared_splits_button")); + /* Add amount edit box */ data->end_value = GNC_AMOUNT_EDIT(gnc_amount_edit_new()); g_signal_connect(GTK_WIDGET(data->end_value), "activate", diff --git a/gnucash/gtkbuilder/window-autoclear.glade b/gnucash/gtkbuilder/window-autoclear.glade index 7486f9f76c..25730a6ffd 100644 --- a/gnucash/gtkbuilder/window-autoclear.glade +++ b/gnucash/gtkbuilder/window-autoclear.glade @@ -135,6 +135,22 @@ Use this dialog if you want GnuCash to automatically find which transactions are 1 + + + _Review cleared splits + True + True + False + Select this option to open a register tab with newly cleared splits. + True + True + + + False + True + 2 + + False From 7e4f120f97335f98457e41be0674c45248624631 Mon Sep 17 00:00:00 2001 From: Cristian Klein Date: Wed, 28 Oct 2020 22:36:11 +0100 Subject: [PATCH 104/167] Add auto-clear to register page --- gnucash/ui/gnc-plugin-page-register-ui.xml | 1 + gnucash/ui/gnc-plugin-page-register2-ui.xml | 1 + 2 files changed, 2 insertions(+) diff --git a/gnucash/ui/gnc-plugin-page-register-ui.xml b/gnucash/ui/gnc-plugin-page-register-ui.xml index a32b3bd5ab..5a240a5b22 100644 --- a/gnucash/ui/gnc-plugin-page-register-ui.xml +++ b/gnucash/ui/gnc-plugin-page-register-ui.xml @@ -44,6 +44,7 @@ + diff --git a/gnucash/ui/gnc-plugin-page-register2-ui.xml b/gnucash/ui/gnc-plugin-page-register2-ui.xml index 3d903d9acf..8c4c4afaba 100644 --- a/gnucash/ui/gnc-plugin-page-register2-ui.xml +++ b/gnucash/ui/gnc-plugin-page-register2-ui.xml @@ -43,6 +43,7 @@ + From afcf1765f6c56931d5b4545613d32b8d60c4e7bc Mon Sep 17 00:00:00 2001 From: Christopher Lam Date: Sun, 1 Nov 2020 11:39:12 +0800 Subject: [PATCH 105/167] [auto-clear] provide live feedback when a valid end_amount is input --- gnucash/gnome/window-autoclear.c | 147 ++++++++++++++++++++++++------- 1 file changed, 113 insertions(+), 34 deletions(-) diff --git a/gnucash/gnome/window-autoclear.c b/gnucash/gnome/window-autoclear.c index f5270be82a..d7dec2eab2 100644 --- a/gnucash/gnome/window-autoclear.c +++ b/gnucash/gnome/window-autoclear.c @@ -52,6 +52,7 @@ struct _AutoClearWindow GtkWidget *cancel_button; GtkWidget *show_cleared_splits_button; GtkLabel *status_label; + GList *toclear_list; }; /** Callback prototypes************************************************/ @@ -122,47 +123,44 @@ void gnc_autoclear_window_ok_cb (GtkWidget *widget, AutoClearWindow *data) { - GList *toclear_list; gnc_numeric toclear_value; gchar *errmsg = NULL; g_return_if_fail (widget && data); - toclear_value = gnc_amount_edit_get_amount(data->end_value); + /* sanity check: if toclear_list is null, bail out. but this + should not happen because the OK button is disabled if there is + autoclear error, and toclear_list is null */ + g_return_if_fail (data->toclear_list); - if (gnc_reverse_balance(data->account)) - toclear_value = gnc_numeric_neg (toclear_value); + xaccAccountBeginEdit (data->account); + for (GList *node = data->toclear_list; node; node = node->next) + xaccSplitSetReconcile (node->data, CREC); + xaccAccountCommitEdit (data->account); - toclear_value = gnc_numeric_convert - (toclear_value, xaccAccountGetCommoditySCU(data->account), GNC_HOW_RND_ROUND); + if (gtk_toggle_button_get_active + (GTK_TOGGLE_BUTTON (data->show_cleared_splits_button))) + show_cleared_splits (data->toclear_list); - toclear_list = gnc_account_get_autoclear_splits - (data->account, toclear_value, &errmsg); + /* Close window */ + gnc_autoclear_window_cancel_cb (widget, data); +} - if (errmsg) - { - gtk_label_set_text (data->status_label, errmsg); - gnc_amount_edit_set_amount (data->end_value, toclear_value); - gtk_editable_select_region (GTK_EDITABLE (data->end_value), 0, -1); - g_free (errmsg); - } - else - { - xaccAccountBeginEdit (data->account); - for (GList *node = toclear_list; node; node = node->next) - xaccSplitSetReconcile (node->data, CREC); - xaccAccountCommitEdit (data->account); +static gboolean +gnc_autoclear_window_delete_cb (GtkWidget *widget, GdkEvent *event, + AutoClearWindow *data) +{ + if (data->toclear_list) + g_list_free (data->toclear_list); + g_free(data); + return FALSE; +} - if (gtk_toggle_button_get_active - (GTK_TOGGLE_BUTTON (data->show_cleared_splits_button))) - show_cleared_splits (toclear_list); - - g_list_free (toclear_list); - - /* Close window */ - gtk_widget_destroy (data->window); - g_free (data); - } +static void +gnc_autoclear_end_value_activate_cb (GtkWidget *widget, AutoClearWindow *data) +{ + if (data->toclear_list) + gnc_autoclear_window_ok_cb (widget, data); } void @@ -171,12 +169,80 @@ gnc_autoclear_window_cancel_cb (GtkWidget *widget, { /* Close window */ gtk_widget_destroy(data->window); + if (data->toclear_list) + g_list_free (data->toclear_list); g_free(data); } -static void clear_status_label_cb (GtkEditable *editable, AutoClearWindow *data) +#define MAX_LENGTH 50 + +static void end_value_changed_cb (GtkEditable *editable, AutoClearWindow *data) { - gtk_label_set_text (data->status_label, ""); + gnc_numeric toclear_value; + gchar *errmsg = NULL; + + if (gnc_amount_edit_expr_is_valid (data->end_value, &toclear_value, TRUE)) + { + gtk_widget_set_sensitive (data->ok_button, FALSE); + gtk_label_set_text (data->status_label, ""); + return; + } + + if (gnc_reverse_balance (data->account)) + toclear_value = gnc_numeric_neg (toclear_value); + + toclear_value = gnc_numeric_convert + (toclear_value, xaccAccountGetCommoditySCU(data->account), GNC_HOW_RND_ROUND); + + if (data->toclear_list) + g_list_free (data->toclear_list); + + data->toclear_list = gnc_account_get_autoclear_splits + (data->account, toclear_value, &errmsg); + + gtk_widget_set_sensitive (data->ok_button, errmsg == NULL); + + if (errmsg) + { + gtk_widget_set_sensitive (data->ok_button, FALSE); + gtk_label_set_text (data->status_label, errmsg); + g_free (errmsg); + } + else + { + gchar *status = g_strdup (_("The following splits will be cleared:")); + GNCPrintAmountInfo p_info = gnc_account_print_info (data->account, TRUE); + gboolean reverse = gnc_reverse_balance (data->account); + for (GList *node = data->toclear_list; node; node = node->next) + { + Transaction *trans = xaccSplitGetParent (node->data); + gnc_numeric amount = xaccSplitGetAmount (node->data); + const gchar *desc = xaccTransGetDescription (trans); + gchar *datestr = qof_print_date (xaccTransGetDate (trans)); + gchar *newdesc, *newstatus; + + if (g_utf8_strlen (desc, -1) > MAX_LENGTH) + { + gchar *trunc = g_utf8_substring (desc, 0, MAX_LENGTH); + newdesc = g_strdup_printf ("%s...", trunc); + g_free (trunc); + } + else + newdesc = g_strdup (desc); + + if (reverse) + amount = gnc_numeric_neg (amount); + + newstatus = g_strdup_printf ("%s\n%s %s %s", status, datestr, + newdesc, xaccPrintAmount (amount, p_info)); + g_free (status); + g_free (datestr); + g_free (newdesc); + status = newstatus; + } + gtk_label_set_text (data->status_label, status); + g_free (status); + } } @@ -212,13 +278,23 @@ autoClearWindow (GtkWidget *parent, Account *account) // Set the name for this dialog so it can be easily manipulated with css gtk_widget_set_name (GTK_WIDGET(data->window), "gnc-id-auto-clear"); + data->ok_button = GTK_WIDGET (gtk_builder_get_object (builder, "ok_button")); + gtk_widget_set_sensitive (data->ok_button, FALSE); + + data->cancel_button = GTK_WIDGET (gtk_builder_get_object + (builder, "cancel_button")); + data->show_cleared_splits_button = GTK_WIDGET (gtk_builder_get_object (builder, "show_cleared_splits_button")); /* Add amount edit box */ data->end_value = GNC_AMOUNT_EDIT(gnc_amount_edit_new()); g_signal_connect(GTK_WIDGET(data->end_value), "activate", + G_CALLBACK(gnc_autoclear_end_value_activate_cb), data); + g_signal_connect(GTK_WIDGET(data->ok_button), "activate", G_CALLBACK(gnc_autoclear_window_ok_cb), data); + g_signal_connect(GTK_WIDGET(data->cancel_button), "activate", + G_CALLBACK(gnc_autoclear_window_cancel_cb), data); box = GTK_BOX(gtk_builder_get_object (builder, "end_value_box")); gtk_box_pack_start(box, GTK_WIDGET(data->end_value), TRUE, TRUE, 0); @@ -237,7 +313,10 @@ autoClearWindow (GtkWidget *parent, Account *account) data->status_label = GTK_LABEL(gtk_builder_get_object (builder, "status_label")); g_signal_connect (GTK_WIDGET(data->end_value), "changed", - G_CALLBACK(clear_status_label_cb), data); + G_CALLBACK(end_value_changed_cb), data); + + g_signal_connect (data->window, "delete-event", + G_CALLBACK (gnc_autoclear_window_delete_cb), data); if (parent != NULL) gtk_window_set_transient_for (GTK_WINDOW (data->window), GTK_WINDOW (parent)); From 65b7b8c4a2d1be21685e293258463591725e91fa Mon Sep 17 00:00:00 2001 From: Robert Fewell <14uBobIT@gmail.com> Date: Fri, 6 Nov 2020 13:05:42 +0000 Subject: [PATCH 106/167] Section help on windows not working Key and group names are case sensitive and in the gnucash-help.hhmap file the section name is [MAP] so change gnc-help-utils.c to match --- libgnucash/app-utils/gnc-help-utils.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/libgnucash/app-utils/gnc-help-utils.c b/libgnucash/app-utils/gnc-help-utils.c index 0c6612b38d..ad5530b377 100644 --- a/libgnucash/app-utils/gnc-help-utils.c +++ b/libgnucash/app-utils/gnc-help-utils.c @@ -57,13 +57,13 @@ parse_hhmap_file(const gchar *chmfile) if (!g_key_file_load_from_file(keyfile, mapfile, G_KEY_FILE_NONE, &error)) goto cleanup_parse; - if (NULL == (keys = g_key_file_get_keys(keyfile, "Map", NULL, &error))) + if (NULL == (keys = g_key_file_get_keys(keyfile, "MAP", NULL, &error))) goto cleanup_parse; ctxtmap = g_hash_table_new_full(g_str_hash, g_str_equal, g_free, NULL); for (key = keys; *key; key++) { - value = g_key_file_get_integer(keyfile, "Map", *key, &error); + value = g_key_file_get_integer(keyfile, "MAP", *key, &error); if (error) goto cleanup_parse; else From 17ced7eb2867b3cace0d67c5f0c364fbd9b32fa0 Mon Sep 17 00:00:00 2001 From: Robert Fewell <14uBobIT@gmail.com> Date: Fri, 6 Nov 2020 13:10:19 +0000 Subject: [PATCH 107/167] Fix some incorrect links to the help file --- gnucash/gnome-utils/gnc-ui.h | 11 +++++++---- gnucash/gnome/dialog-invoice.c | 16 +++++++++++++++- gnucash/gnome/dialog-job.c | 2 +- .../bi-import/dialog-bi-import-gui.c | 2 +- .../customer-import/dialog-customer-import-gui.c | 2 +- 5 files changed, 25 insertions(+), 8 deletions(-) diff --git a/gnucash/gnome-utils/gnc-ui.h b/gnucash/gnome-utils/gnc-ui.h index a5049ddeaf..fb102c654b 100644 --- a/gnucash/gnome-utils/gnc-ui.h +++ b/gnucash/gnome-utils/gnc-ui.h @@ -51,13 +51,14 @@ #endif /** Links in the Help Files *****************************************/ -#define HL_USAGE "usage" -#define HL_USAGE_BSNSS "chapter_busnss" +#define HL_USAGE_BSNSS "busnss-ar-setup1" #define HL_USAGE_INVOICE "busnss-ar-invoices1" +#define HL_USAGE_VOUCHER "busnss-emply-newvchr" #define HL_USAGE_BILL "busnss-ap-bills1" #define HL_USAGE_CUSTOMER "busnss-ar-customers1" #define HL_USAGE_VENDOR "busnss-ap-vendors1" #define HL_USAGE_EMPLOYEE "busnss-emply" +#define HL_USAGE_JOB "busnss-ar-jobs1" #define HL_ACC "acct-create" #define HL_ACCEDIT "acct-edit" #define HL_COMMODITY "tool-commodity" @@ -65,10 +66,12 @@ #define HL_GLOBPREFS "set-prefs" #define HL_PRINTCHECK "print-check" #define HL_RECNWIN "acct-reconcile" -#define HL_SXEDITOR "tool-sched" +#define HL_SXEDITOR "trans-sched" #define HL_BOOK_OPTIONS "book-options" #define HL_CLOSE_BOOK "tool-close-book" -#define HL_USAGE_CUSTOMREP "report-custom" +#define HL_USAGE_CUSTOMREP "report-saving" +#define HL_IMPORT_BC "busnss-imp-bills-invoices" +#define HL_IMPORT_CUST "busnss-imp-customer-vendor" /* GTK Windows - Common Response Codes */ diff --git a/gnucash/gnome/dialog-invoice.c b/gnucash/gnome/dialog-invoice.c index ff309db53c..81a82e6aa8 100644 --- a/gnucash/gnome/dialog-invoice.c +++ b/gnucash/gnome/dialog-invoice.c @@ -538,7 +538,21 @@ gnc_invoice_window_cancel_cb (GtkWidget *widget, gpointer data) void gnc_invoice_window_help_cb (GtkWidget *widget, gpointer data) { - gnc_gnome_help(HF_HELP, HL_USAGE_INVOICE); + InvoiceWindow *iw = data; + GncOwnerType owner_type = gncOwnerGetType (&iw->owner); + + switch(owner_type) + { + case GNC_OWNER_CUSTOMER: + gnc_gnome_help (HF_HELP, HL_USAGE_INVOICE); + break; + case GNC_OWNER_VENDOR: + gnc_gnome_help (HF_HELP, HL_USAGE_BILL); + break; + default: + gnc_gnome_help (HF_HELP, HL_USAGE_VOUCHER); + break; + } } static const gchar * diff --git a/gnucash/gnome/dialog-job.c b/gnucash/gnome/dialog-job.c index d59a3beb41..e698261bb8 100644 --- a/gnucash/gnome/dialog-job.c +++ b/gnucash/gnome/dialog-job.c @@ -202,7 +202,7 @@ gnc_job_window_cancel_cb (GtkWidget *widget, gpointer data) void gnc_job_window_help_cb (GtkWidget *widget, gpointer data) { - gnc_gnome_help(HF_HELP, HL_USAGE_BSNSS); + gnc_gnome_help (HF_HELP, HL_USAGE_JOB); } diff --git a/gnucash/import-export/bi-import/dialog-bi-import-gui.c b/gnucash/import-export/bi-import/dialog-bi-import-gui.c index 068fe9f8f5..c0cf435bc7 100644 --- a/gnucash/import-export/bi-import/dialog-bi-import-gui.c +++ b/gnucash/import-export/bi-import/dialog-bi-import-gui.c @@ -252,7 +252,7 @@ gnc_bi_import_gui_cancel_cb (GtkWidget *widget, gpointer data) void gnc_bi_import_gui_help_cb (GtkWidget *widget, gpointer data) { - gnc_gnome_help(HF_HELP, HL_USAGE_BSNSS); + gnc_gnome_help (HF_GUIDE, HL_IMPORT_BC); } static void diff --git a/gnucash/import-export/customer-import/dialog-customer-import-gui.c b/gnucash/import-export/customer-import/dialog-customer-import-gui.c index 92b343d71d..b34d9fac3f 100644 --- a/gnucash/import-export/customer-import/dialog-customer-import-gui.c +++ b/gnucash/import-export/customer-import/dialog-customer-import-gui.c @@ -228,7 +228,7 @@ gnc_customer_import_gui_cancel_cb (GtkWidget *widget, gpointer data) void gnc_customer_import_gui_help_cb (GtkWidget *widget, gpointer data) { - gnc_gnome_help(HF_HELP, HL_USAGE_BSNSS); + gnc_gnome_help (HF_GUIDE, HL_IMPORT_CUST); } static void From 4b5202f55dcf0f0928bb47abde65c4d90fbbd7c2 Mon Sep 17 00:00:00 2001 From: Robert Fewell <14uBobIT@gmail.com> Date: Fri, 6 Nov 2020 13:14:31 +0000 Subject: [PATCH 108/167] Bug 688917 - Edit style sheet help button not working Setup the connection between the help button and the edit style sheet section in the help. --- gnucash/gnome-utils/gnc-gnome-utils.c | 14 ++++++++++++++ gnucash/gnome-utils/gnc-gnome-utils.h | 5 +++++ gnucash/gnome-utils/gnc-ui.h | 1 + gnucash/gnome/dialog-report-style-sheet.c | 4 ++++ 4 files changed, 24 insertions(+) diff --git a/gnucash/gnome-utils/gnc-gnome-utils.c b/gnucash/gnome-utils/gnc-gnome-utils.c index c2c186b32c..b750a011fa 100644 --- a/gnucash/gnome-utils/gnc-gnome-utils.c +++ b/gnucash/gnome-utils/gnc-gnome-utils.c @@ -130,6 +130,20 @@ gnc_options_dialog_set_new_book_option_values (GNCOptionDB *odb) } } +static void +gnc_style_sheet_options_help_cb (GNCOptionWin *win, gpointer dat) +{ + gnc_gnome_help (HF_HELP, HL_STYLE_SHEET); +} + +void +gnc_options_dialog_set_style_sheet_options_help_cb (GNCOptionWin *win) +{ + gnc_options_dialog_set_help_cb (win, + (GNCOptionWinCallback)gnc_style_sheet_options_help_cb, + NULL); +} + static void gnc_commodity_help_cb (void) { diff --git a/gnucash/gnome-utils/gnc-gnome-utils.h b/gnucash/gnome-utils/gnc-gnome-utils.h index 721b3ff6b3..6c10f991d1 100644 --- a/gnucash/gnome-utils/gnc-gnome-utils.h +++ b/gnucash/gnome-utils/gnc-gnome-utils.h @@ -73,6 +73,11 @@ void gnc_options_dialog_set_book_options_help_cb (GNCOptionWin *win); */ void gnc_options_dialog_set_new_book_option_values (GNCOptionDB *odb); +/** Set the help callback to 'gnc_style_sheet_options_help_cb' to open a help browser + * and point it to the Style Sheet link in the Help file. + */ +void gnc_options_dialog_set_style_sheet_options_help_cb (GNCOptionWin *win); + /** Given a file name, find and load the requested pixmap. This * routine will display an error message if it can't find the file or * load the pixmap. diff --git a/gnucash/gnome-utils/gnc-ui.h b/gnucash/gnome-utils/gnc-ui.h index fb102c654b..c8263abacf 100644 --- a/gnucash/gnome-utils/gnc-ui.h +++ b/gnucash/gnome-utils/gnc-ui.h @@ -68,6 +68,7 @@ #define HL_RECNWIN "acct-reconcile" #define HL_SXEDITOR "trans-sched" #define HL_BOOK_OPTIONS "book-options" +#define HL_STYLE_SHEET "change-style" #define HL_CLOSE_BOOK "tool-close-book" #define HL_USAGE_CUSTOMREP "report-saving" #define HL_IMPORT_BC "busnss-imp-bills-invoices" diff --git a/gnucash/gnome/dialog-report-style-sheet.c b/gnucash/gnome/dialog-report-style-sheet.c index 52de56c767..1df072a859 100644 --- a/gnucash/gnome/dialog-report-style-sheet.c +++ b/gnucash/gnome/dialog-report-style-sheet.c @@ -33,6 +33,7 @@ #include "gnc-component-manager.h" #include "gnc-session.h" #include "gnc-gtk-utils.h" +#include "gnc-gnome-utils.h" #include "gnc-guile-utils.h" #include "gnc-report.h" #include "gnc-ui.h" @@ -180,6 +181,9 @@ gnc_style_sheet_dialog_create (StyleSheetDialog * ss, gnc_options_dialog_build_contents (ssinfo->odialog, ssinfo->odb); + + gnc_options_dialog_set_style_sheet_options_help_cb (ssinfo->odialog); + gnc_options_dialog_set_apply_cb (ssinfo->odialog, gnc_style_sheet_options_apply_cb, ssinfo); From bf9b267266ca86fb86bead74d1febcf1a1408f5a Mon Sep 17 00:00:00 2001 From: Robert Fewell <14uBobIT@gmail.com> Date: Fri, 6 Nov 2020 13:22:39 +0000 Subject: [PATCH 109/167] Change down arrow to align more with existing widgets Instead of using the icon name 'go-down' use 'pan-down-symbolic' --- borrowed/goffice/go-optionmenu.c | 2 +- .../gnc-cell-renderer-popup-entry.c | 24 ++++++++++++++----- gnucash/gnome-utils/gnc-combott.c | 12 ++++++---- gnucash/gnome-utils/gnc-date-edit.c | 5 +--- gnucash/gnome-utils/gnc-tree-view.c | 5 +--- gnucash/gnome/gnc-plugin-page-invoice.c | 4 ++-- gnucash/gnome/gnc-plugin-page-register2.c | 4 ++-- 7 files changed, 33 insertions(+), 23 deletions(-) diff --git a/borrowed/goffice/go-optionmenu.c b/borrowed/goffice/go-optionmenu.c index 4e0ba1b656..a145e2d38f 100644 --- a/borrowed/goffice/go-optionmenu.c +++ b/borrowed/goffice/go-optionmenu.c @@ -354,7 +354,7 @@ static void go_option_menu_init(GOOptionMenu *option_menu) option_menu->button_label = GTK_LABEL(gtk_label_new("")); gtk_box_pack_start(GTK_BOX(box), GTK_WIDGET(option_menu->button_label), FALSE, TRUE, 0); - arrow = gtk_image_new_from_icon_name ("go-down", GTK_ICON_SIZE_BUTTON); + arrow = gtk_image_new_from_icon_name ("pan-down-symbolic", GTK_ICON_SIZE_BUTTON); gtk_widget_set_margin_start (GTK_WIDGET(arrow), 5); gtk_box_pack_end(GTK_BOX(box), arrow, FALSE, FALSE, 0); diff --git a/gnucash/gnome-utils/gnc-cell-renderer-popup-entry.c b/gnucash/gnome-utils/gnc-cell-renderer-popup-entry.c index 7d7f15e4f1..84e3852309 100644 --- a/gnucash/gnome-utils/gnc-cell-renderer-popup-entry.c +++ b/gnucash/gnome-utils/gnc-cell-renderer-popup-entry.c @@ -112,6 +112,7 @@ static void gnc_popup_entry_init (GncPopupEntry *widget) { GtkWidget *arrow; + GtkStyleContext *context; widget->editing_canceled = FALSE; @@ -123,14 +124,17 @@ gnc_popup_entry_init (GncPopupEntry *widget) gtk_entry_set_visibility (GTK_ENTRY(widget->entry), TRUE); gtk_widget_show (widget->entry); + context = gtk_widget_get_style_context (widget->entry); + gtk_style_context_add_class (context, "combo"); + widget->button = gtk_button_new (); gtk_widget_show (widget->button); - arrow = gtk_image_new_from_icon_name ("go-down", GTK_ICON_SIZE_BUTTON); - gtk_widget_show (arrow); + context = gtk_widget_get_style_context (widget->button); + gtk_style_context_add_class (context, "combo"); - g_signal_connect (G_OBJECT(arrow), "draw", - G_CALLBACK(gnc_draw_arrow_cb), GINT_TO_POINTER(1)); + arrow = gtk_image_new_from_icon_name ("pan-down-symbolic", GTK_ICON_SIZE_BUTTON); + gtk_widget_show (arrow); gtk_container_add (GTK_CONTAINER(widget->button), arrow); @@ -144,6 +148,13 @@ gnc_popup_entry_init (GncPopupEntry *widget) gtk_widget_add_events (GTK_WIDGET(widget), GDK_KEY_RELEASE_MASK); } +static void +gpw_grab_focus (GtkWidget *box) +{ + GncPopupEntry *widget = GNC_POPUP_ENTRY(box); + gtk_widget_grab_focus (widget->entry); +} + static void gnc_popup_entry_class_init (GncPopupEntryClass *klass) { @@ -151,6 +162,7 @@ gnc_popup_entry_class_init (GncPopupEntryClass *klass) GObjectClass *gobject_class = G_OBJECT_CLASS(klass); widget_class->key_press_event = gpw_key_press_event; + widget_class->grab_focus = gpw_grab_focus; gobject_class->set_property = gpw_set_property; gobject_class->get_property = gpw_get_property; @@ -249,7 +261,7 @@ gtk_cell_editable_key_press_event (GtkEntry *entry, if (qof_scan_date (date_string, &day, &month, &year)) { when.tm_year = year - 1900; - when.tm_mon = month - 1 ; + when.tm_mon = month - 1; when.tm_mday = day; if (!gnc_handle_date_accelerator (key_event, &when, date_string)) @@ -363,7 +375,7 @@ gnc_popup_get_button_width (void) gtk_widget_show (button); gtk_container_add (GTK_CONTAINER(window), button); - arrow = gtk_image_new_from_icon_name ("go-down", GTK_ICON_SIZE_BUTTON); + arrow = gtk_image_new_from_icon_name ("pan-down-symbolic", GTK_ICON_SIZE_BUTTON); gtk_widget_show (arrow); gtk_container_add (GTK_CONTAINER(button), arrow); diff --git a/gnucash/gnome-utils/gnc-combott.c b/gnucash/gnome-utils/gnc-combott.c index 2be7adc972..b4187ad0a2 100644 --- a/gnucash/gnome-utils/gnc-combott.c +++ b/gnucash/gnome-utils/gnc-combott.c @@ -177,6 +177,7 @@ gnc_combott_init (GncCombott *combott) GtkWidget *arrow; GtkWidget *button; GtkWidget *sep; + GtkStyleContext *context; GncCombottPrivate *priv = GNC_COMBOTT_GET_PRIVATE (combott); @@ -192,10 +193,7 @@ gnc_combott_init (GncCombott *combott) hbox = gtk_box_new (GTK_ORIENTATION_HORIZONTAL, 0); gtk_box_set_homogeneous (GTK_BOX(hbox), FALSE); - arrow = gtk_image_new_from_icon_name ("go-down", GTK_ICON_SIZE_BUTTON); - - g_signal_connect (G_OBJECT (arrow), "draw", - G_CALLBACK (gnc_draw_arrow_cb), GINT_TO_POINTER(1)); + arrow = gtk_image_new_from_icon_name ("pan-down-symbolic", GTK_ICON_SIZE_BUTTON); gtk_widget_set_margin_start (GTK_WIDGET(arrow), 5); gtk_box_pack_end (GTK_BOX (hbox), arrow, FALSE, FALSE, 0); @@ -207,10 +205,16 @@ gnc_combott_init (GncCombott *combott) gtk_box_pack_start (GTK_BOX (hbox), label, FALSE, FALSE, 0); priv->label = label; + context = gtk_widget_get_style_context (priv->label); + gtk_style_context_add_class (context, "combo"); + button = gtk_button_new(); gtk_container_add(GTK_CONTAINER(button), GTK_WIDGET(hbox)); priv->button = button; + context = gtk_widget_get_style_context (priv->button); + gtk_style_context_add_class (context, "combo"); + gtk_container_add(GTK_CONTAINER(combott), GTK_WIDGET(button)); g_signal_connect (button, "event", diff --git a/gnucash/gnome-utils/gnc-date-edit.c b/gnucash/gnome-utils/gnc-date-edit.c index 40758a5af2..7f4181fbb3 100644 --- a/gnucash/gnome-utils/gnc-date-edit.c +++ b/gnucash/gnome-utils/gnc-date-edit.c @@ -892,10 +892,7 @@ create_children (GNCDateEdit *gde) gtk_widget_show (GTK_WIDGET(gde->cal_label)); /* Graphic for the popup button. */ - arrow = gtk_image_new_from_icon_name ("go-down", GTK_ICON_SIZE_BUTTON); - - g_signal_connect (G_OBJECT (arrow), "draw", - G_CALLBACK (gnc_draw_arrow_cb), GINT_TO_POINTER(1)); + arrow = gtk_image_new_from_icon_name ("pan-down-symbolic", GTK_ICON_SIZE_BUTTON); gtk_box_pack_start (GTK_BOX (hbox), arrow, TRUE, FALSE, 0); gtk_widget_show (GTK_WIDGET(arrow)); diff --git a/gnucash/gnome-utils/gnc-tree-view.c b/gnucash/gnome-utils/gnc-tree-view.c index 27a765dc95..025b1d69c4 100644 --- a/gnucash/gnome-utils/gnc-tree-view.c +++ b/gnucash/gnome-utils/gnc-tree-view.c @@ -274,7 +274,7 @@ gnc_tree_view_init (GncTreeView *view, void *data) /* Create the last column which contains the column selection * widget. gnc_tree_view_add_text_column will do most of the * work. */ - icon = gtk_image_new_from_icon_name ("go-down", GTK_ICON_SIZE_SMALL_TOOLBAR); + icon = gtk_image_new_from_icon_name ("pan-down-symbolic", GTK_ICON_SIZE_SMALL_TOOLBAR); priv->column_menu_icon_box = gtk_box_new (GTK_ORIENTATION_HORIZONTAL, 0); gtk_box_set_homogeneous (GTK_BOX(priv->column_menu_icon_box), FALSE); @@ -288,9 +288,6 @@ gnc_tree_view_init (GncTreeView *view, void *data) gtk_widget_show_all (priv->column_menu_icon_box); - g_signal_connect (G_OBJECT(icon), "draw", - G_CALLBACK(gnc_draw_arrow_cb), GINT_TO_POINTER(1)); - column = gnc_tree_view_add_text_column (view, NULL, NULL, NULL, NULL, -1, -1, NULL); g_object_set (G_OBJECT(column), diff --git a/gnucash/gnome/gnc-plugin-page-invoice.c b/gnucash/gnome/gnc-plugin-page-invoice.c index c47cde0db1..09254df3ad 100644 --- a/gnucash/gnome/gnc-plugin-page-invoice.c +++ b/gnucash/gnome/gnc-plugin-page-invoice.c @@ -201,12 +201,12 @@ static GtkActionEntry gnc_plugin_page_invoice_actions [] = G_CALLBACK (gnc_plugin_page_invoice_cmd_duplicateEntry) }, { - "EntryUpAction", "go-up", N_("Move Entry _Up"), NULL, + "EntryUpAction", "pan-up-symbolic", N_("Move Entry _Up"), NULL, N_("Move the current entry one row upwards"), G_CALLBACK (gnc_plugin_page_invoice_cmd_entryUp) }, { - "EntryDownAction", "go-down", N_("Move Entry Do_wn"), NULL, + "EntryDownAction", "pan-down-symbolic", N_("Move Entry Do_wn"), NULL, N_("Move the current entry one row downwards"), G_CALLBACK (gnc_plugin_page_invoice_cmd_entryDown) }, diff --git a/gnucash/gnome/gnc-plugin-page-register2.c b/gnucash/gnome/gnc-plugin-page-register2.c index 5151b4a52e..1082ab929d 100644 --- a/gnucash/gnome/gnc-plugin-page-register2.c +++ b/gnucash/gnome/gnc-plugin-page-register2.c @@ -324,12 +324,12 @@ static GtkActionEntry gnc_plugin_page_register2_actions [] = G_CALLBACK (gnc_plugin_page_register2_cmd_reverse_transaction) }, { - TRANSACTION_UP_ACTION, "go-up", N_("Move Transaction _Up"), NULL, + TRANSACTION_UP_ACTION, "pan-up-symbolic", N_("Move Transaction _Up"), NULL, N_("Move the current transaction one row upwards. Only available if the date and number of both rows are identical and the register window is sorted by date."), G_CALLBACK (gnc_plugin_page_register2_cmd_entryUp) }, { - TRANSACTION_DOWN_ACTION, "go-down", N_("Move Transaction Do_wn"), NULL, + TRANSACTION_DOWN_ACTION, "pan-down-symbolic", N_("Move Transaction Do_wn"), NULL, N_("Move the current transaction one row downwards. Only available if the date and number of both rows are identical and the register window is sorted by date."), G_CALLBACK (gnc_plugin_page_register2_cmd_entryDown) }, From b51a70675f75470185e44d245853be185c4d5c20 Mon Sep 17 00:00:00 2001 From: Robert Fewell <14uBobIT@gmail.com> Date: Mon, 26 Oct 2020 10:17:07 +0000 Subject: [PATCH 110/167] Bug 797944 - Crash when opening new file from existing one If you have report pages that are left open when the current book is 'Saved' and then use the 'File->Open' to open a new book Gnucash may crash. This was traced to the use of a g_idle_add to delay loading the reports in the pages that was not being cleared when the first book was closed. To fix this the g_idle_add has been removed and the loading of the report has been moved to the page focus function. By using a flag to indicate when pages are being restored, the report loading is delayed until the page is focused which has also decreased book loading time especially if no report pages were the current page when the book was closed. --- gnucash/gnome-utils/gnc-main-window.c | 19 ++++++++++-- gnucash/gnome-utils/gnc-main-window.h | 10 ++++++ gnucash/gnome/gnc-plugin-page-report.c | 43 ++++++++++++-------------- 3 files changed, 46 insertions(+), 26 deletions(-) diff --git a/gnucash/gnome-utils/gnc-main-window.c b/gnucash/gnome-utils/gnc-main-window.c index 8735eecfc5..46e281cbdd 100644 --- a/gnucash/gnome-utils/gnc-main-window.c +++ b/gnucash/gnome-utils/gnc-main-window.c @@ -231,6 +231,8 @@ typedef struct GncMainWindowPrivate * group, the values are structures of type * MergedActionEntry. */ GHashTable *merged_actions_table; + /** Set when restoring plugin pages */ + gboolean restoring_pages; } GncMainWindowPrivate; GNC_DEFINE_TYPE_WITH_CODE(GncMainWindow, gnc_main_window, GTK_TYPE_WINDOW, @@ -529,6 +531,14 @@ typedef struct } GncMainWindowSaveData; +gboolean +gnc_main_window_is_restoring_pages (GncMainWindow *window) +{ + GncMainWindowPrivate *priv = GNC_MAIN_WINDOW_GET_PRIVATE(window); + return priv->restoring_pages; +} + + /* Iterator function to walk all pages in all windows, calling the * specified function for each page. */ void @@ -853,7 +863,7 @@ gnc_main_window_restore_window (GncMainWindow *window, GncMainWindowSaveData *da { gtk_toggle_action_set_active(GTK_TOGGLE_ACTION(action), desired_visibility); } - + priv->restoring_pages = TRUE; /* Now populate the window with pages. */ for (i = 0; i < page_count; i++) { @@ -865,7 +875,7 @@ gnc_main_window_restore_window (GncMainWindow *window, GncMainWindowSaveData *da while (gtk_events_pending ()) gtk_main_iteration (); } - + priv->restoring_pages = FALSE; /* Restore page ordering within the notebook. Use +1 notation so the * numbers in the page order match the page sections, at least for * the one window case. */ @@ -899,6 +909,9 @@ gnc_main_window_restore_window (GncMainWindow *window, GncMainWindowSaveData *da } gtk_notebook_set_current_page (GTK_NOTEBOOK(priv->notebook), order[0] - 1); + + g_signal_emit_by_name (window, "page_changed", + g_list_nth_data (priv->usage_order, 0)); } if (order) { @@ -2581,6 +2594,8 @@ gnc_main_window_init (GncMainWindow *window, void *data) priv->event_handler_id = qof_event_register_handler(gnc_main_window_event_handler, window); + priv->restoring_pages = FALSE; + /* Get the show_color_tabs value preference */ priv->show_color_tabs = gnc_prefs_get_bool(GNC_PREFS_GROUP_GENERAL, GNC_PREF_TAB_COLOR); diff --git a/gnucash/gnome-utils/gnc-main-window.h b/gnucash/gnome-utils/gnc-main-window.h index 568607951c..ad0903b590 100644 --- a/gnucash/gnome-utils/gnc-main-window.h +++ b/gnucash/gnome-utils/gnc-main-window.h @@ -348,6 +348,16 @@ gboolean gnc_main_window_popup_menu_cb (GtkWidget *widget, */ void gnc_main_window_restore_all_windows(const GKeyFile *keyfile); +/** Check if the main window is restoring the plugin pages. This is + * used on report pages to delay the creation of the report till the + * page is focused. + * + * @param window When window whose pages should be checked. + * + * @return TRUE if pages are being restored + */ +gboolean gnc_main_window_is_restoring_pages (GncMainWindow *window); + /** Save the persistent state of all windows. * * @param keyfile The GKeyFile to contain persistent window state. diff --git a/gnucash/gnome/gnc-plugin-page-report.c b/gnucash/gnome/gnc-plugin-page-report.c index 960d63e61b..d77aa5e9d4 100644 --- a/gnucash/gnome/gnc-plugin-page-report.c +++ b/gnucash/gnome/gnc-plugin-page-report.c @@ -153,6 +153,7 @@ static GncPluginPage *gnc_plugin_page_report_recreate_page (GtkWidget *window, G static void gnc_plugin_page_report_name_changed (GncPluginPage *page, const gchar *name); static void gnc_plugin_page_report_update_edit_menu (GncPluginPage *page, gboolean hide); static gboolean gnc_plugin_page_report_finish_pending (GncPluginPage *page); +static void gnc_plugin_page_report_load_uri (GncPluginPage *page); static int gnc_plugin_page_report_check_urltype(URLType t); //static void gnc_plugin_page_report_load_cb(gnc_html * html, URLType type, @@ -243,12 +244,24 @@ gnc_plugin_page_report_focus_widget (GncPluginPage *report_plugin_page) if (GNC_IS_PLUGIN_PAGE_REPORT(report_plugin_page)) { GncPluginPageReportPrivate *priv = GNC_PLUGIN_PAGE_REPORT_GET_PRIVATE(report_plugin_page); - GtkWidget *widget = gnc_html_get_widget (priv->html); + GtkWidget *window; - if (GTK_IS_WIDGET(widget)) + if (!priv) + return FALSE; + + window = gnc_plugin_page_get_window (report_plugin_page); + + if (window && !gnc_main_window_is_restoring_pages (GNC_MAIN_WINDOW(window))) { - if (!gtk_widget_is_focus (GTK_WIDGET(widget))) - gtk_widget_grab_focus (GTK_WIDGET(widget)); + GtkWidget * widget = gnc_html_get_widget (priv->html); + + gnc_plugin_page_report_load_uri (report_plugin_page); + + if (GTK_IS_WIDGET(widget)) + { + if (!gtk_widget_is_focus (GTK_WIDGET(widget))) + gtk_widget_grab_focus (GTK_WIDGET(widget)); + } } } return FALSE; @@ -332,7 +345,7 @@ gnc_plugin_page_report_set_progressbar (GncPluginPage *page, gboolean set) gtk_widget_set_size_request (GTK_WIDGET(progressbar), -1, -1); //reset } -static gboolean +static void gnc_plugin_page_report_load_uri (GncPluginPage *page) { GncPluginPageReport *report; @@ -346,7 +359,7 @@ gnc_plugin_page_report_load_uri (GncPluginPage *page) report = GNC_PLUGIN_PAGE_REPORT(page); priv = GNC_PLUGIN_PAGE_REPORT_GET_PRIVATE(report); if (!priv) - return FALSE; // No priv means the page doesn't exist anymore. + return; // No priv means the page doesn't exist anymore. DEBUG( "Load uri id=%d", priv->reportId ); id_name = g_strdup_printf("id=%d", priv->reportId ); @@ -375,20 +388,6 @@ gnc_plugin_page_report_load_uri (GncPluginPage *page) // this resets the window for the progressbar to NULL gnc_window_set_progressbar_window( NULL ); - - return FALSE; -} - -static void -gnc_plugin_page_report_realize_uri (GtkWidget *widget, GncPluginPage *page) -{ - GtkAllocation allocation; - - gtk_widget_get_allocation (widget, &allocation); - PINFO("Realized Container size is %dw x %dh", allocation.width, allocation.height); - - /* load uri when view idle */ - g_idle_add ((GSourceFunc)gnc_plugin_page_report_load_uri, page); } static @@ -457,10 +456,6 @@ gnc_plugin_page_report_create_widget( GncPluginPage *page ) // FIXME. This is f^-1(f(x)), isn't it? DEBUG( "id=%d", priv->reportId ); - /* load uri when view is realized */ - g_signal_connect (G_OBJECT(GTK_WIDGET(priv->container)), "realize", - G_CALLBACK(gnc_plugin_page_report_realize_uri), page); - g_signal_connect (G_OBJECT(page), "inserted", G_CALLBACK(gnc_plugin_page_inserted_cb), NULL); From 5c48244e8d8dfb781aceecfdb52157af55d42225 Mon Sep 17 00:00:00 2001 From: Robert Fewell <14uBobIT@gmail.com> Date: Mon, 26 Oct 2020 11:05:02 +0000 Subject: [PATCH 111/167] Fix report page focus Currently the setting of keyboard focus is to the scroll window but should be to the Webkit webview so correct this. --- gnucash/gnome/gnc-plugin-page-report.c | 5 +--- gnucash/html/gnc-html.c | 33 ++++++++++++++++++++++++++ gnucash/html/gnc-html.h | 9 +++++++ 3 files changed, 43 insertions(+), 4 deletions(-) diff --git a/gnucash/gnome/gnc-plugin-page-report.c b/gnucash/gnome/gnc-plugin-page-report.c index d77aa5e9d4..ece19892ce 100644 --- a/gnucash/gnome/gnc-plugin-page-report.c +++ b/gnucash/gnome/gnc-plugin-page-report.c @@ -253,7 +253,7 @@ gnc_plugin_page_report_focus_widget (GncPluginPage *report_plugin_page) if (window && !gnc_main_window_is_restoring_pages (GNC_MAIN_WINDOW(window))) { - GtkWidget * widget = gnc_html_get_widget (priv->html); + GtkWidget *widget = gnc_html_get_webview (priv->html); gnc_plugin_page_report_load_uri (report_plugin_page); @@ -752,15 +752,12 @@ static void gnc_plugin_page_report_destroy_widget(GncPluginPage *plugin_page) { GncPluginPageReportPrivate *priv; - GtkWidget *widget; // FIXME: cleanup other resources. PINFO("destroy widget"); priv = GNC_PLUGIN_PAGE_REPORT_GET_PRIVATE(plugin_page); - widget = gnc_html_get_widget(priv->html); - // Remove the page_changed signal callback gnc_plugin_page_disconnect_page_changed (GNC_PLUGIN_PAGE(plugin_page)); diff --git a/gnucash/html/gnc-html.c b/gnucash/html/gnc-html.c index 3b97ec22d2..4565bdaad2 100644 --- a/gnucash/html/gnc-html.c +++ b/gnucash/html/gnc-html.c @@ -574,6 +574,39 @@ gnc_html_get_widget( GncHtml* self ) return GNC_HTML_GET_PRIVATE(self)->container; } + +GtkWidget * +gnc_html_get_webview( GncHtml* self ) +{ + GncHtmlPrivate* priv; + GList *sw_list = NULL; + GtkWidget *webview = NULL; + + g_return_val_if_fail (self != NULL, NULL); + g_return_val_if_fail (GNC_IS_HTML(self), NULL); + + priv = GNC_HTML_GET_PRIVATE(self); + sw_list = gtk_container_get_children (GTK_CONTAINER(priv->container)); + + if (sw_list) // the scroll window has only one child + { +#ifdef WEBKIT1 + webview = sw_list->data; +#else + GList *vp_list = gtk_container_get_children (GTK_CONTAINER(sw_list->data)); + + if (vp_list) // the viewport has only one child + { + webview = vp_list->data; + g_list_free (vp_list); + } +#endif + } + g_list_free (sw_list); + return webview; +} + + void gnc_html_set_parent( GncHtml* self, GtkWindow* parent ) { diff --git a/gnucash/html/gnc-html.h b/gnucash/html/gnc-html.h index 67eaf73734..70b4352c9a 100644 --- a/gnucash/html/gnc-html.h +++ b/gnucash/html/gnc-html.h @@ -256,6 +256,15 @@ gnc_html_history* gnc_html_get_history( GncHtml* html ); */ GtkWidget* gnc_html_get_widget( GncHtml* html ); +/** + * Returns the webview widget for this html engine + * + * @param html GncHtml object + * @return webview widget + */ +GtkWidget* gnc_html_get_webview( GncHtml* html ); + + /** * Sets the parent window for this html engine. The engine will be embedded in this parent. * From c0e1341139d93d8b4756ec08c19dc77030fcefeb Mon Sep 17 00:00:00 2001 From: Robert Fewell <14uBobIT@gmail.com> Date: Mon, 26 Oct 2020 11:22:12 +0000 Subject: [PATCH 112/167] Intercept the Ctrl+Alt+PgUp/Down for a report page With the focus on the webkit webview, this key sequence can be used to scroll the view. For the key sequence to work for tab page switching a callback is connected to the 'key-press-event' for the webkit view and checked for the sequence and passed to the notebook if required. --- gnucash/gnome/gnc-plugin-page-report.c | 52 ++++++++++++++++++++++++++ 1 file changed, 52 insertions(+) diff --git a/gnucash/gnome/gnc-plugin-page-report.c b/gnucash/gnome/gnc-plugin-page-report.c index ece19892ce..e7f260e576 100644 --- a/gnucash/gnome/gnc-plugin-page-report.c +++ b/gnucash/gnome/gnc-plugin-page-report.c @@ -390,6 +390,45 @@ gnc_plugin_page_report_load_uri (GncPluginPage *page) gnc_window_set_progressbar_window( NULL ); } +/* used to capture Ctrl+Alt+PgUp/Down for tab selection */ +static gboolean +webkit_key_press_event_cb (GtkWidget *widget, GdkEventKey *event, gpointer user_data) +{ + GncPluginPageReport *report = GNC_PLUGIN_PAGE_REPORT(user_data); + GncPluginPageReportPrivate *priv = GNC_PLUGIN_PAGE_REPORT_GET_PRIVATE(report); + GdkModifierType modifiers = gtk_accelerator_get_default_mod_mask (); + GtkWidget *window = gnc_plugin_page_get_window (GNC_PLUGIN_PAGE(report)); + + if (GNC_PLUGIN_PAGE(report) != gnc_main_window_get_current_page (GNC_MAIN_WINDOW(window))) + return FALSE; + + if ((event->keyval == GDK_KEY_Page_Up || event->keyval == GDK_KEY_Page_Down || + event->keyval == GDK_KEY_KP_Page_Up || event->keyval == GDK_KEY_KP_Page_Down) + && (event->state & modifiers) == (GDK_CONTROL_MASK | GDK_MOD1_MASK)) + { + GtkNotebook *notebook = GTK_NOTEBOOK(gtk_widget_get_parent (GTK_WIDGET(priv->container))); + gint pages = gtk_notebook_get_n_pages (notebook); + gint current_page = gtk_notebook_get_current_page (notebook); + + if (event->keyval == GDK_KEY_Page_Up || event->keyval == GDK_KEY_KP_Page_Up) + { + if (current_page == 0) + gtk_notebook_set_current_page (notebook, pages - 1); + else + gtk_notebook_prev_page (notebook); + } + else + { + if (pages == current_page + 1) + gtk_notebook_set_current_page (notebook, 0); + else + gtk_notebook_next_page (notebook); + } + return TRUE; + } + return FALSE; +} + static GtkWidget* gnc_plugin_page_report_create_widget( GncPluginPage *page ) @@ -398,6 +437,7 @@ gnc_plugin_page_report_create_widget( GncPluginPage *page ) GncPluginPageReportPrivate *priv; GtkWindow *topLvl; GtkAction *action; + GtkWidget *webview; URLType type; char * id_name; char * child_name; @@ -460,6 +500,18 @@ gnc_plugin_page_report_create_widget( GncPluginPage *page ) G_CALLBACK(gnc_plugin_page_inserted_cb), NULL); + // used to capture Ctrl+Alt+PgUp/Down for tab selection + webview = gnc_html_get_webview (priv->html); + if (webview) + { + gtk_widget_add_events (webview, gtk_widget_get_events (webview) | + GDK_KEY_PRESS_MASK); + + g_signal_connect (webview, "key-press-event", + G_CALLBACK(webkit_key_press_event_cb), + page); + } + gtk_widget_show_all( GTK_WIDGET(priv->container) ); LEAVE("container %p", priv->container); return GTK_WIDGET( priv->container ); From 39ad1e9ebb0ab2b35da278f058394130dd9e2329 Mon Sep 17 00:00:00 2001 From: Robert Fewell <14uBobIT@gmail.com> Date: Tue, 27 Oct 2020 14:47:58 +0000 Subject: [PATCH 113/167] Add two key combinations to the main notebook Add ability to do key combination Ctrl+Alt+Menu to bring up the main notebook menu so pages can be selected. Also add Ctrl+Alt+a to jump to the Accounts page with the 'a' being translatable. --- gnucash/gnome-utils/gnc-main-window.c | 57 +++++++++++++++++++++++++++ 1 file changed, 57 insertions(+) diff --git a/gnucash/gnome-utils/gnc-main-window.c b/gnucash/gnome-utils/gnc-main-window.c index 46e281cbdd..354ce3c80c 100644 --- a/gnucash/gnome-utils/gnc-main-window.c +++ b/gnucash/gnome-utils/gnc-main-window.c @@ -2743,6 +2743,58 @@ gnc_main_window_destroy (GtkWidget *widget) } +static gboolean +gnc_main_window_key_press_event (GtkWidget *widget, GdkEventKey *event, gpointer user_data) +{ + GncMainWindowPrivate *priv; + GdkModifierType modifiers; + + g_return_val_if_fail (GNC_IS_MAIN_WINDOW(widget), FALSE); + + priv = GNC_MAIN_WINDOW_GET_PRIVATE(widget); + + modifiers = gtk_accelerator_get_default_mod_mask (); + + if ((event->state & modifiers) == (GDK_CONTROL_MASK | GDK_MOD1_MASK)) // Ctrl+Alt+ + { + const gchar *account_key = C_ ("lower case key for short cut to 'Accounts'", "a"); + guint account_keyval = gdk_keyval_from_name (account_key); + + if ((account_keyval == event->keyval) || (account_keyval == gdk_keyval_to_lower (event->keyval))) + { + gint page = 0; + + for (GList *item = priv->installed_pages; item; item = g_list_next (item)) + { + const gchar *pname = gnc_plugin_page_get_plugin_name (GNC_PLUGIN_PAGE(item->data)); + + if (g_strcmp0 (pname, "GncPluginPageAccountTree") == 0) + { + gtk_notebook_set_current_page (GTK_NOTEBOOK(priv->notebook), page); + return TRUE; + } + page++; + } + } + else if ((GDK_KEY_Menu == event->keyval) || (GDK_KEY_space == event->keyval)) + { + GList *menu = gtk_menu_get_for_attach_widget (GTK_WIDGET(priv->notebook)); + + if (menu) + { + gtk_menu_popup_at_widget (GTK_MENU(menu->data), + GTK_WIDGET(priv->notebook), + GDK_GRAVITY_SOUTH, + GDK_GRAVITY_SOUTH, + NULL); + return TRUE; + } + } + } + return FALSE; +} + + /* Create a new gnc main window plugin. */ GncMainWindow * @@ -2777,6 +2829,11 @@ gnc_main_window_new (void) #endif gnc_engine_add_commit_error_callback( gnc_main_window_engine_commit_error_callback, window ); + // set up a callback for noteboook navigation + g_signal_connect (G_OBJECT(window), "key-press-event", + G_CALLBACK(gnc_main_window_key_press_event), + NULL); + return window; } From b6c0a62bbd33f63462e10bd8fcbaacd85ca8e7ec Mon Sep 17 00:00:00 2001 From: Robert Fewell <14uBobIT@gmail.com> Date: Wed, 28 Oct 2020 13:56:07 +0000 Subject: [PATCH 114/167] Add confirmation of Main Window close when more than one If you have more than one Gnucash window open is is very easy to close the wrong window with the 'x' and in doing so change your saved pages. The way to save the configuration of all windows and pages is to use 'File->Quit'. --- gnucash/gnome-utils/gnc-main-window.c | 27 +++++++++++++++++++ .../org.gnucash.warnings.gschema.xml.in | 10 +++++++ 2 files changed, 37 insertions(+) diff --git a/gnucash/gnome-utils/gnc-main-window.c b/gnucash/gnome-utils/gnc-main-window.c index 354ce3c80c..d416a3e362 100644 --- a/gnucash/gnome-utils/gnc-main-window.c +++ b/gnucash/gnome-utils/gnc-main-window.c @@ -67,6 +67,7 @@ #include "gnc-ui-util.h" #include "gnc-uri-utils.h" #include "gnc-version.h" +#include "gnc-warnings.h" #include "gnc-window.h" #include "gnc-prefs.h" #include "option-util.h" @@ -1423,6 +1424,32 @@ gnc_main_window_delete_event (GtkWidget *window, if (already_dead) return TRUE; + if (g_list_length (active_windows) > 1) + { + gint response; + GtkWidget *dialog; + gchar *message = _("This window is closing and will not be restored."); + + dialog = gtk_message_dialog_new (GTK_WINDOW (window), + GTK_DIALOG_DESTROY_WITH_PARENT, + GTK_MESSAGE_QUESTION, + GTK_BUTTONS_NONE, + "%s", _("Close Window?")); + gtk_message_dialog_format_secondary_text (GTK_MESSAGE_DIALOG(dialog), + "%s", message); + + gtk_dialog_add_buttons (GTK_DIALOG(dialog), + _("_Cancel"), GTK_RESPONSE_CANCEL, + _("_OK"), GTK_RESPONSE_YES, + (gchar *)NULL); + gtk_dialog_set_default_response (GTK_DIALOG(dialog), GTK_RESPONSE_YES); + response = gnc_dialog_run (GTK_DIALOG(dialog), GNC_PREF_WARN_CLOSING_WINDOW_QUESTION); + gtk_widget_destroy (dialog); + + if (response == GTK_RESPONSE_CANCEL) + return TRUE; + } + if (!gnc_main_window_finish_pending(GNC_MAIN_WINDOW(window))) { /* Don't close the window. */ diff --git a/gnucash/gschemas/org.gnucash.warnings.gschema.xml.in b/gnucash/gschemas/org.gnucash.warnings.gschema.xml.in index fd404c18f3..cc85417a40 100644 --- a/gnucash/gschemas/org.gnucash.warnings.gschema.xml.in +++ b/gnucash/gschemas/org.gnucash.warnings.gschema.xml.in @@ -9,6 +9,11 @@ Print checks from multiple accounts This dialog is presented if you try to print checks from multiple accounts at the same time. + + 0 + Confirm Window Close + This dialog is presented when there is more than one window. + 0 Commit changes to a invoice entry @@ -107,6 +112,11 @@ Print checks from multiple accounts This dialog is presented if you try to print checks from multiple accounts at the same time. + + 0 + Confirm Window Close + This dialog is presented when there is more than one window. + 0 Commit changes to a invoice entry From 3bcf57e7f21033a73102ad986bcf669644fa9979 Mon Sep 17 00:00:00 2001 From: John Ralls Date: Fri, 6 Nov 2020 16:54:22 -0800 Subject: [PATCH 115/167] Fix timezone transition times. This is responsible for test failures on DST transition days. See the comments in gnc-timezone.cpp for an explanation of why this is correct. The rubric was tested on macOS, Arch Linux, Debian Unstable, Fedora 33, and Ubuntu 18.04 to confirm universal applicability. --- libgnucash/engine/gnc-timezone.cpp | 32 ++++++++++-- libgnucash/engine/test/gtest-gnc-datetime.cpp | 51 +++++++++++++++++++ 2 files changed, 79 insertions(+), 4 deletions(-) diff --git a/libgnucash/engine/gnc-timezone.cpp b/libgnucash/engine/gnc-timezone.cpp index 3bb157b5a0..6c03481d42 100644 --- a/libgnucash/engine/gnc-timezone.cpp +++ b/libgnucash/engine/gnc-timezone.cpp @@ -549,10 +549,34 @@ namespace DSTRule std::swap(to_std_time, to_dst_time); std::swap(std_info, dst_info); } - if (dst_info->isgmt) - to_dst_time += boost::posix_time::seconds(dst_info->info.gmtoff); - if (std_info->isgmt) - to_std_time += boost::posix_time::seconds(std_info->info.gmtoff); + + /* Documentation notwithstanding, the date-time rules are + * looking for local time (wall clock to use the RFC 8538 + * definition) values. + * + * The TZ Info contains two fields, isstd and isgmt (renamed + * to isut in newer versions of tzinfo). In theory if both are + * 0 the transition times represent wall-clock times, + * i.e. time stamps in the respective time zone's local time + * at the moment of the transition. If isstd is 1 then the + * representation is always in standard time instead of + * daylight time; this is significant for dst->std + * transitions. If isgmt/isut is one then isstd must also be + * set and the transition time is in UTC. + * + * In practice it seems that the timestamps are always in UTC + * so the isgmt/isut flag isn't meaningful. The times always + * need to have the utc offset added to them to make the + * transition occur at the right time; the isstd flag + * determines whether that should be the standard offset or + * the daylight offset for the daylight->standard transition. + */ + + to_dst_time += boost::posix_time::seconds(std_info->info.gmtoff); + if (std_info->isstd) //if isstd always use standard time + to_std_time += boost::posix_time::seconds(std_info->info.gmtoff); + else + to_std_time += boost::posix_time::seconds(dst_info->info.gmtoff); } diff --git a/libgnucash/engine/test/gtest-gnc-datetime.cpp b/libgnucash/engine/test/gtest-gnc-datetime.cpp index 3fcbb6d20a..446f810e89 100644 --- a/libgnucash/engine/test/gtest-gnc-datetime.cpp +++ b/libgnucash/engine/test/gtest-gnc-datetime.cpp @@ -381,6 +381,57 @@ TEST(gnc_datetime_constructors, test_gncdate_end_constructor) EXPECT_EQ(atime.format("%d-%m-%Y %H:%M:%S"), "06-11-2046 23:59:59"); } +static ::testing::AssertionResult +test_offset(time64 start_time, int hour, int offset1, int offset2, + const char* zone) +{ + GncDateTime gdt{start_time + hour * 3600}; + if ((hour < 2 && gdt.offset() == offset1) || + (hour >= 2 && gdt.offset() == offset2)) + return ::testing::AssertionSuccess(); + else + return ::testing::AssertionFailure() << zone << ": " << gdt.format("%D %T %z %q") << " hour " << hour; +} + +TEST(gnc_datetime_constructors, test_DST_start_transition_time) +{ +#ifdef __MINGW32__ + TimeZoneProvider tzp_can{"A.U.S Eastern Standard Time"}; + TimeZoneProvider tzp_la{"Pacific Standard Time"}; +#else + TimeZoneProvider tzp_can("Australia/Canberra"); + TimeZoneProvider tzp_la("America/Los_Angeles"); +#endif + _set_tzp(tzp_la); + for (auto hours = 0; hours < 23; ++hours) + EXPECT_TRUE(test_offset(1583657940, hours, -28800, -25200, "Los Angeles")); + + _reset_tzp(); + _set_tzp(tzp_can); + for (auto hours = 0; hours < 23; ++hours) + EXPECT_TRUE(test_offset(1601737140, hours, 36000, 39600, "Canberra")); + _reset_tzp(); +} + +TEST(gnc_datetime_constructors, test_DST_end_transition_time) +{ +#ifdef __MINGW32__ + TimeZoneProvider tzp_can{"A.U.S Eastern Standard Time"}; + TimeZoneProvider tzp_la{"Pacific Standard Time"}; +#else + TimeZoneProvider tzp_can("Australia/Canberra"); + TimeZoneProvider tzp_la("America/Los_Angeles"); +#endif + _set_tzp(tzp_la); + for (auto hours = 0; hours < 23; ++hours) + EXPECT_TRUE(test_offset(1604217540, hours, -25200, -28800, "Los Angeles")); + _reset_tzp(); + _set_tzp(tzp_can); + for (auto hours = 0; hours < 23; ++hours) + EXPECT_TRUE(test_offset(1586008740, hours, 39600, 36000, "Canberra")); + _reset_tzp(); +} + TEST(gnc_datetime_constructors, test_gncdate_neutral_constructor) { const ymd aymd = { 2017, 04, 20 }; From d03dc07b8d2bc701a5a9cdfc6928725b32aefd45 Mon Sep 17 00:00:00 2001 From: John Ralls Date: Sat, 7 Nov 2020 13:20:22 -0800 Subject: [PATCH 116/167] Remove redundant and incorrectly named constant. --- libgnucash/engine/gnc-timezone.cpp | 6 ++---- 1 file changed, 2 insertions(+), 4 deletions(-) diff --git a/libgnucash/engine/gnc-timezone.cpp b/libgnucash/engine/gnc-timezone.cpp index 6c03481d42..33f0609ec5 100644 --- a/libgnucash/engine/gnc-timezone.cpp +++ b/libgnucash/engine/gnc-timezone.cpp @@ -460,14 +460,12 @@ namespace IANAParser //Add in the tzinfo indexes consumed in the previous loop start_index = info_index_zero + time_count; - //Can't use sizeof(TZInfo) because it's padded out to 8 bytes. - static const size_t tzinfo_size = 6; - auto abbrev = start_index + type_count * tzinfo_size; + auto abbrev = start_index + type_count * ttinfo_size; auto std_dist = abbrev + char_count; auto gmt_dist = std_dist + type_count; for(uint32_t index = 0; index < type_count; ++index) { - fb_index = start_index + index * tzinfo_size; + fb_index = start_index + index * ttinfo_size; /* Use memcpy instead of static_cast to avoid memory alignment issues with chars */ TTInfo info{}; memcpy(&info, &fileblock[fb_index], ttinfo_size); From 2290fa7c22d5c4f45b58968a58c4f0b8b21179ec Mon Sep 17 00:00:00 2001 From: John Ralls Date: Sat, 7 Nov 2020 16:22:18 -0800 Subject: [PATCH 117/167] Fix exception when converting to decimal values that reduce to N/1. Before this the loop wouldn't terminate until the denominator had been reduced to 0 and trying to create a GncRational with a 0 denominator throws. --- libgnucash/engine/gnc-numeric.cpp | 2 +- libgnucash/engine/test/gtest-gnc-numeric.cpp | 12 ++++++++++++ 2 files changed, 13 insertions(+), 1 deletion(-) diff --git a/libgnucash/engine/gnc-numeric.cpp b/libgnucash/engine/gnc-numeric.cpp index f9af38878c..5e6773847c 100644 --- a/libgnucash/engine/gnc-numeric.cpp +++ b/libgnucash/engine/gnc-numeric.cpp @@ -368,7 +368,7 @@ GncNumeric::to_decimal(unsigned int max_places) const rr_num *= factor; rr_den *= factor; } - while (!rr_num.isZero() && rr_num % 10 == 0) + while (!rr_num.isZero() && rr_num > 9 && rr_den > 9 && rr_num % 10 == 0) { rr_num /= 10; rr_den /= 10; diff --git a/libgnucash/engine/test/gtest-gnc-numeric.cpp b/libgnucash/engine/test/gtest-gnc-numeric.cpp index 5cbe5c724a..e194367bbf 100644 --- a/libgnucash/engine/test/gtest-gnc-numeric.cpp +++ b/libgnucash/engine/test/gtest-gnc-numeric.cpp @@ -548,4 +548,16 @@ TEST(gnc_numeric_functions, test_conversion_to_decimal) EXPECT_NO_THROW(r = c.to_decimal()); EXPECT_EQ(27434842, r.num()); EXPECT_EQ(100, r.denom()); + GncNumeric d(11900000000, 85000000); + EXPECT_NO_THROW(r = d.to_decimal()); + EXPECT_EQ(140, r.num()); + EXPECT_EQ(1, r.denom()); + GncNumeric e(11050000000, 65000000); + EXPECT_NO_THROW(r = e.to_decimal()); + EXPECT_EQ(170, r.num()); + EXPECT_EQ(1, r.denom()); + GncNumeric f(5000000000, 50000000 ); + EXPECT_NO_THROW(r = f.to_decimal()); + EXPECT_EQ(100, r.num()); + EXPECT_EQ(1, r.denom()); } From f26215feae0516f04670566dfe247018c0c3bcea Mon Sep 17 00:00:00 2001 From: Cristian Klein Date: Sun, 8 Nov 2020 09:58:17 +0100 Subject: [PATCH 118/167] [auto-tests] Fix misspelling --- libgnucash/app-utils/test/test-autoclear.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/libgnucash/app-utils/test/test-autoclear.cpp b/libgnucash/app-utils/test/test-autoclear.cpp index b99b5d655e..4157458de2 100644 --- a/libgnucash/app-utils/test/test-autoclear.cpp +++ b/libgnucash/app-utils/test/test-autoclear.cpp @@ -31,7 +31,7 @@ extern "C" { #include #include -static const int64_t DENOM = 100; //< Denomerator is always 100 for simplicity. +static const int64_t DENOM = 100; //< Denominator is always 100 for simplicity. struct SplitDatum { const char *memo; From 69789b2b93253b1e41c10aab6a22dcc5c84043cd Mon Sep 17 00:00:00 2001 From: Cristian Klein Date: Sun, 8 Nov 2020 09:58:57 +0100 Subject: [PATCH 119/167] [auto-tests] Stick to CodingStandard for member variables --- libgnucash/app-utils/test/test-autoclear.cpp | 32 ++++++++++---------- 1 file changed, 16 insertions(+), 16 deletions(-) diff --git a/libgnucash/app-utils/test/test-autoclear.cpp b/libgnucash/app-utils/test/test-autoclear.cpp index 4157458de2..abb84e1c56 100644 --- a/libgnucash/app-utils/test/test-autoclear.cpp +++ b/libgnucash/app-utils/test/test-autoclear.cpp @@ -109,37 +109,37 @@ TestCase ambiguousTestCase = { class AutoClearTest : public ::testing::TestWithParam { protected: - std::shared_ptr book_; - Account *account_; // owned by book_ - TestCase &testCase_; + std::shared_ptr m_book; + Account *m_account; // owned by m_book + TestCase &m_testCase; public: AutoClearTest() : - book_(qof_book_new(), qof_book_destroy), - account_(xaccMallocAccount(book_.get())), - testCase_(*GetParam()) + m_book(qof_book_new(), qof_book_destroy), + m_account(xaccMallocAccount(m_book.get())), + m_testCase(*GetParam()) { - xaccAccountSetName(account_, "Test Account"); - xaccAccountBeginEdit(account_); - for (auto &d : testCase_.splits) { - Split *split = xaccMallocSplit(book_.get()); + xaccAccountSetName(m_account, "Test Account"); + xaccAccountBeginEdit(m_account); + for (auto &d : m_testCase.splits) { + Split *split = xaccMallocSplit(m_book.get()); xaccSplitSetMemo(split, d.memo); xaccSplitSetAmount(split, gnc_numeric_create(d.amount, DENOM)); xaccSplitSetReconcile(split, d.cleared ? CREC : NREC); - xaccSplitSetAccount(split, account_); + xaccSplitSetAccount(split, m_account); - gnc_account_insert_split(account_, split); + gnc_account_insert_split(m_account, split); } - xaccAccountCommitEdit(account_); + xaccAccountCommitEdit(m_account); } }; TEST_P(AutoClearTest, DoesAutoClear) { - for (auto &t : testCase_.tests) { + for (auto &t : m_testCase.tests) { gnc_numeric amount_to_clear = gnc_numeric_create(t.amount, DENOM); char *err; - GList *splits_to_clear = gnc_account_get_autoclear_splits(account_, amount_to_clear, &err); + GList *splits_to_clear = gnc_account_get_autoclear_splits(m_account, amount_to_clear, &err); // Actually clear splits for (GList *node = splits_to_clear; node; node = node->next) { @@ -149,7 +149,7 @@ TEST_P(AutoClearTest, DoesAutoClear) { ASSERT_STREQ(err, t.expectedErr); if (t.expectedErr == NULL) { - gnc_numeric c = xaccAccountGetClearedBalance(account_); + gnc_numeric c = xaccAccountGetClearedBalance(m_account); ASSERT_EQ(c.num, t.amount); ASSERT_EQ(c.denom, DENOM); } From 4c2df4c2addde5faa72b625d3b58c83b2e6fee61 Mon Sep 17 00:00:00 2001 From: Robert Fewell <14uBobIT@gmail.com> Date: Sun, 8 Nov 2020 11:40:35 +0000 Subject: [PATCH 120/167] Bug 645379 - Problem with Number field when duplicating a transaction When you duplicate a transaction, the dialog presented has a GtkSpinbutton for the number field and non-numeric values are being discarded. The register and transfer dialog have a GtkEntry for this field so change this dialog to using them also. --- gnucash/gnome-utils/dialog-dup-trans.c | 111 +++-- .../gtkbuilder/gnc-plugin-page-register.glade | 422 +++++++++--------- .../gnc-plugin-page-register2.glade | 109 +++-- gnucash/register/ledger-core/split-register.c | 22 +- 4 files changed, 371 insertions(+), 293 deletions(-) diff --git a/gnucash/gnome-utils/dialog-dup-trans.c b/gnucash/gnome-utils/dialog-dup-trans.c index 87d040923e..f2542a8fb8 100644 --- a/gnucash/gnome-utils/dialog-dup-trans.c +++ b/gnucash/gnome-utils/dialog-dup-trans.c @@ -81,17 +81,61 @@ parse_num (const char *string, long int *num) } static gboolean -gnc_dup_trans_output_cb(GtkSpinButton *spinbutton, - gpointer user_data) +gnc_dup_inc_dec (GtkWidget *widget, const gchar *text, gint inc_dec) { - gboolean is_number; long int num; - gchar *txt = gtk_editable_get_chars(GTK_EDITABLE(spinbutton), 0, -1); - is_number = parse_num(txt, &num); - g_free(txt); - if (!is_number) - gtk_entry_set_text(GTK_ENTRY(spinbutton), ""); - return !is_number; + + if (parse_num (text, &num)) + { + gchar *format; + gchar *out; + num = num + inc_dec; + + if (num == -1) + num = 0; + + if (g_str_has_prefix (text, "0")) + format = g_strdup_printf ("%s%ld%s", "%0", strlen (text), "d"); + else + format = g_strdup_printf ("%s", "%ld"); + + out = g_strdup_printf (format, num); + + gtk_entry_set_text (GTK_ENTRY(widget), out); + g_free (format); + g_free (out); + return TRUE; + } + return FALSE; +} + +static gboolean +gnc_dup_key_press_event_cb (GtkWidget *widget, GdkEventKey *event, gpointer user_data) +{ + const gchar *text = gtk_entry_get_text (GTK_ENTRY(widget)); + + if (gnc_strisnum (text)) + { + GdkModifierType modifiers = gtk_accelerator_get_default_mod_mask (); + gint increment; + long int num; + + if ((event->state & modifiers) == GDK_CONTROL_MASK || + (event->state & modifiers) == GDK_MOD1_MASK) + return FALSE; + + if (event->keyval == GDK_KEY_plus || event->keyval == GDK_KEY_KP_Add) + increment = 1; + else if (event->keyval == GDK_KEY_minus || event->keyval == GDK_KEY_KP_Subtract) + increment = -1; + else + return FALSE; + + return gnc_dup_inc_dec (widget, text, increment); + + } + else + return FALSE; } static void @@ -101,6 +145,7 @@ gnc_dup_trans_dialog_create (GtkWidget * parent, DupTransDialog *dt_dialog, { GtkWidget *dialog; GtkBuilder *builder; + const gchar *tt = _("Use +- keys to increment/decrement number"); builder = gtk_builder_new(); gnc_builder_add_from_file (builder, "gnc-plugin-page-register.glade", "num_adjustment"); @@ -147,31 +192,33 @@ gnc_dup_trans_dialog_create (GtkWidget * parent, DupTransDialog *dt_dialog, dt_dialog->num_label = GTK_WIDGET(gtk_builder_get_object (builder, "num_label")); dt_dialog->tnum_label = GTK_WIDGET(gtk_builder_get_object (builder, "tnum_label")); + dt_dialog->num_edit = GTK_WIDGET(gtk_builder_get_object (builder, "num_entry")); + dt_dialog->tnum_edit = GTK_WIDGET(gtk_builder_get_object (builder, "tnum_entry")); + + if (num_str) + gtk_entry_set_text (GTK_ENTRY(dt_dialog->num_edit), num_str); + if (tnum_str) + gtk_entry_set_text (GTK_ENTRY(dt_dialog->tnum_edit), tnum_str); + + g_signal_connect (dt_dialog->num_edit, "key-press-event", + G_CALLBACK(gnc_dup_key_press_event_cb), + dt_dialog); + + g_signal_connect (dt_dialog->tnum_edit, "key-press-event", + G_CALLBACK(gnc_dup_key_press_event_cb), + dt_dialog); + + if (gnc_strisnum (num_str)) { - GtkWidget *num_spin, *tnum_spin; - long int num, tnum; - - num_spin = GTK_WIDGET(gtk_builder_get_object (builder, "num_spin")); - tnum_spin = GTK_WIDGET(gtk_builder_get_object (builder, "tnum_spin")); - dt_dialog->num_edit = num_spin; - dt_dialog->tnum_edit = tnum_spin; - - gtk_entry_set_activates_default(GTK_ENTRY(num_spin), TRUE); - g_signal_connect(num_spin, "output", - G_CALLBACK(gnc_dup_trans_output_cb), dt_dialog); - g_signal_connect(tnum_spin, "output", - G_CALLBACK(gnc_dup_trans_output_cb), dt_dialog); - - if (num_str && parse_num (num_str, &num)) - gtk_spin_button_set_value (GTK_SPIN_BUTTON (num_spin), num + 1); - else - gtk_entry_set_text (GTK_ENTRY (num_spin), ""); - - if (tnum_str && parse_num (tnum_str, &tnum)) - gtk_spin_button_set_value (GTK_SPIN_BUTTON (tnum_spin), tnum + 1); - else - gtk_entry_set_text (GTK_ENTRY (tnum_spin), ""); + gtk_widget_set_tooltip_text (GTK_WIDGET(dt_dialog->num_edit), tt); + gnc_dup_inc_dec (GTK_WIDGET(dt_dialog->num_edit), num_str, 1); } + if (gnc_strisnum (tnum_str)) + { + gtk_widget_set_tooltip_text (GTK_WIDGET(dt_dialog->tnum_edit), tt); + gnc_dup_inc_dec (GTK_WIDGET(dt_dialog->tnum_edit), tnum_str, 1); + } + /* Transaction Linked Document */ { dt_dialog->link_label = GTK_WIDGET(gtk_builder_get_object (builder, "link_label")); diff --git a/gnucash/gtkbuilder/gnc-plugin-page-register.glade b/gnucash/gtkbuilder/gnc-plugin-page-register.glade index 84534ce5e9..5e835ffdc4 100644 --- a/gnucash/gtkbuilder/gnc-plugin-page-register.glade +++ b/gnucash/gtkbuilder/gnc-plugin-page-register.glade @@ -559,10 +559,209 @@ If 0, all previous days included - - 1000000000 - 1 - 10 + + False + 6 + Duplicate Transaction + False + True + dialog + + + True + False + vertical + 6 + + + True + False + end + + + _Cancel + True + True + True + False + True + + + False + False + 0 + + + + + _OK + True + True + True + True + False + True + + + False + False + 1 + + + + + False + True + end + 0 + + + + + True + False + start + <b>New Transaction Information</b> + True + + + False + False + 1 + + + + + True + False + 6 + 6 + 6 + 3 + 6 + + + True + False + end + _Date + True + center + + + 0 + 0 + + + + + True + False + end + _Number + True + center + num_entry + + + 0 + 1 + + + + + True + False + + + + + + 1 + 0 + + + + + True + False + end + _Transaction Number + True + center + tnum_entry + + + 0 + 2 + + + + + True + True + False + start + top + True + True + + + 1 + 3 + + + + + True + False + end + Keep Linked Document Entry + + + 0 + 3 + + + + + True + True + + + 1 + 1 + + + + + True + True + + + 1 + 2 + + + + + False + True + 2 + + + + + + button76 + button77 + + + + + + + 0 False @@ -906,221 +1105,6 @@ If 0, all previous days included - - 1000000000 - 1 - 10 - - - False - 6 - Duplicate Transaction - False - True - dialog - - - True - False - vertical - 6 - - - True - False - end - - - _Cancel - True - True - True - False - True - - - False - False - 0 - - - - - _OK - True - True - True - True - False - True - - - False - False - 1 - - - - - False - True - end - 0 - - - - - True - False - 6 - 6 - 6 - 3 - 6 - - - True - False - end - _Date - True - center - - - 0 - 0 - - - - - True - False - end - _Number - True - center - num_spin - - - 0 - 1 - - - - - True - True - True - False - False - num_adjustment - 1 - - - 1 - 1 - - - - - True - False - - - - - - 1 - 0 - - - - - True - False - end - _Transaction Number - True - center - tnum_spin - - - 0 - 2 - - - - - True - True - False - False - tnum_adjustment - 1 - - - 1 - 2 - - - - - True - True - False - start - top - True - True - - - 1 - 3 - - - - - True - False - end - Keep Linked Document Entry - - - 0 - 3 - - - - - False - True - 2 - - - - - True - False - start - <b>New Transaction Information</b> - True - - - False - False - 2 - - - - - - button76 - button77 - - - - - False 6 diff --git a/gnucash/gtkbuilder/gnc-plugin-page-register2.glade b/gnucash/gtkbuilder/gnc-plugin-page-register2.glade index be1eee2265..c0340f8b26 100644 --- a/gnucash/gtkbuilder/gnc-plugin-page-register2.glade +++ b/gnucash/gtkbuilder/gnc-plugin-page-register2.glade @@ -64,6 +64,21 @@ 0 + + + True + False + start + 6 + <b>New Transaction Information</b> + True + + + False + False + 1 + + True @@ -93,28 +108,13 @@ _Number True center - num_spin + num_entry 0 1 - - - True - True - True - False - False - adjustment1 - 1 - - - 1 - 1 - - True @@ -128,6 +128,68 @@ 0 + + + True + True + + + 1 + 1 + + + + + True + False + end + _Transaction Number + True + center + tnum_entry + + + 0 + 2 + + + + + True + False + end + Keep Linked Document Entry + + + 0 + 3 + + + + + True + True + + + 1 + 2 + + + + + True + True + False + start + top + True + True + + + 1 + 3 + + False @@ -135,21 +197,6 @@ 2 - - - True - False - start - 6 - <b>New Transaction Information</b> - True - - - False - False - 2 - - diff --git a/gnucash/register/ledger-core/split-register.c b/gnucash/register/ledger-core/split-register.c index eff5798e15..7dcde96ce5 100644 --- a/gnucash/register/ledger-core/split-register.c +++ b/gnucash/register/ledger-core/split-register.c @@ -571,6 +571,7 @@ gnc_split_register_duplicate_current (SplitRegister* reg) } else { + Account* account; NumCell* num_cell; Transaction* new_trans; int trans_split_index; @@ -587,18 +588,17 @@ gnc_split_register_duplicate_current (SplitRegister* reg) /* We are on a transaction row. Copy the whole transaction. */ date = info->last_date_entered; - if (gnc_strisnum (gnc_get_num_action (trans, trans_split))) - { - Account* account = gnc_split_register_get_default_account (reg); - if (account) - in_num = xaccAccountGetLastNum (account); - else - in_num = gnc_get_num_action (trans, trans_split); - in_tnum = (reg->use_tran_num_for_num_field - ? NULL - : gnc_get_num_action (trans, NULL)); - } + account = gnc_split_register_get_default_account (reg); + + if (account && gnc_strisnum (gnc_get_num_action (trans, trans_split))) + in_num = xaccAccountGetLastNum (account); + else + in_num = gnc_get_num_action (trans, trans_split); + + in_tnum = (reg->use_tran_num_for_num_field + ? NULL + : gnc_get_num_action (trans, NULL)); if (!gnc_dup_trans_dialog (gnc_split_register_get_parent (reg), NULL, TRUE, &date, in_num, &out_num, in_tnum, &out_tnum, From bbc6887b0fc43b93c98b9520e78b753e85df44cb Mon Sep 17 00:00:00 2001 From: Robert Fewell <14uBobIT@gmail.com> Date: Sun, 8 Nov 2020 12:42:07 +0000 Subject: [PATCH 121/167] Change source files dialog-dup-trans.* for space and tabs --- gnucash/gnome-utils/dialog-dup-trans.c | 111 +++++++++++++------------ gnucash/gnome-utils/dialog-dup-trans.h | 5 +- 2 files changed, 63 insertions(+), 53 deletions(-) diff --git a/gnucash/gnome-utils/dialog-dup-trans.c b/gnucash/gnome-utils/dialog-dup-trans.c index f2542a8fb8..329ecafb10 100644 --- a/gnucash/gnome-utils/dialog-dup-trans.c +++ b/gnucash/gnome-utils/dialog-dup-trans.c @@ -48,11 +48,11 @@ typedef struct GtkWidget * link_edit; GtkWidget *duplicate_title_label; // GtkLabel - GtkWidget *duplicate_table; // GtkTable - GtkWidget *date_label; // GtkLabel - GtkWidget *num_label; // GtkLabel - GtkWidget *tnum_label; // GtkLabel - GtkWidget *link_label; //GtkLabel + GtkWidget *duplicate_table; // GtkTable + GtkWidget *date_label; // GtkLabel + GtkWidget *num_label; // GtkLabel + GtkWidget *tnum_label; // GtkLabel + GtkWidget *link_label; // GtkLabel } DupTransDialog; /* Parses the string value and returns true if it is a @@ -66,10 +66,10 @@ parse_num (const char *string, long int *num) if (string == NULL) return FALSE; - if (!gnc_strisnum(string)) + if (!gnc_strisnum (string)) return FALSE; - number = strtol(string, NULL, 10); + number = strtol (string, NULL, 10); if ((number == LONG_MIN) || (number == LONG_MAX)) return FALSE; @@ -147,7 +147,7 @@ gnc_dup_trans_dialog_create (GtkWidget * parent, DupTransDialog *dt_dialog, GtkBuilder *builder; const gchar *tt = _("Use +- keys to increment/decrement number"); - builder = gtk_builder_new(); + builder = gtk_builder_new (); gnc_builder_add_from_file (builder, "gnc-plugin-page-register.glade", "num_adjustment"); gnc_builder_add_from_file (builder, "gnc-plugin-page-register.glade", "tnum_adjustment"); gnc_builder_add_from_file (builder, "gnc-plugin-page-register.glade", "duplicate_transaction_dialog"); @@ -161,7 +161,7 @@ gnc_dup_trans_dialog_create (GtkWidget * parent, DupTransDialog *dt_dialog, /* parent */ if (parent != NULL) - gtk_window_set_transient_for (GTK_WINDOW (dialog), GTK_WINDOW (parent)); + gtk_window_set_transient_for (GTK_WINDOW(dialog), GTK_WINDOW(parent)); /* date widget */ dt_dialog->date_label = GTK_WIDGET(gtk_builder_get_object (builder, "date_label")); @@ -171,13 +171,13 @@ gnc_dup_trans_dialog_create (GtkWidget * parent, DupTransDialog *dt_dialog, GtkWidget *hbox; date_edit = gnc_date_edit_new (date, FALSE, FALSE); - gnc_date_activates_default(GNC_DATE_EDIT(date_edit), TRUE); + gnc_date_activates_default (GNC_DATE_EDIT(date_edit), TRUE); hbox = GTK_WIDGET(gtk_builder_get_object (builder, "date_hbox")); gtk_widget_show (date_edit); gnc_date_make_mnemonic_target (GNC_DATE_EDIT(date_edit), dt_dialog->date_label); - gtk_box_pack_end (GTK_BOX (hbox), date_edit, TRUE, TRUE, 0); + gtk_box_pack_end (GTK_BOX(hbox), date_edit, TRUE, TRUE, 0); dt_dialog->date_edit = date_edit; } else @@ -227,14 +227,14 @@ gnc_dup_trans_dialog_create (GtkWidget * parent, DupTransDialog *dt_dialog, gtk_builder_connect_signals_full (builder, gnc_builder_connect_full_func, dt_dialog); - g_object_unref(G_OBJECT(builder)); + g_object_unref (G_OBJECT(builder)); } static gboolean gnc_dup_trans_dialog_internal (GtkWidget * parent, const char* window_title, const char* title, - gboolean show_date, time64 *date_p, - GDate *gdate_p, const char *num, char **out_num, + gboolean show_date, time64 *date_p, GDate *gdate_p, + const char *num, char **out_num, const char *tnum, char **out_tnum, const char *tlink, char **out_tlink) { @@ -251,9 +251,9 @@ gnc_dup_trans_dialog_internal (GtkWidget * parent, if (!show_date) { // The "date" field isn't being asked for, so we make the widgets invisible - gtk_widget_set_visible(dt_dialog->date_label, FALSE); + gtk_widget_set_visible (dt_dialog->date_label, FALSE); if (dt_dialog->date_edit) - gtk_widget_set_visible(dt_dialog->date_edit, FALSE); + gtk_widget_set_visible (dt_dialog->date_edit, FALSE); // If no "date" field, there must be a "num" field, so give it focus if (out_num) gtk_widget_grab_focus (dt_dialog->num_edit); @@ -262,70 +262,70 @@ gnc_dup_trans_dialog_internal (GtkWidget * parent, { GNCDateEdit *gde; - gde = GNC_DATE_EDIT (dt_dialog->date_edit); + gde = GNC_DATE_EDIT(dt_dialog->date_edit); entry = gde->date_entry; gtk_widget_grab_focus (entry); } if (window_title) - gtk_window_set_title (GTK_WINDOW (dt_dialog->dialog), window_title); + gtk_window_set_title (GTK_WINDOW(dt_dialog->dialog), window_title); if (title) { - gchar *full_text = g_strdup_printf("%s", title); - gtk_label_set_markup(GTK_LABEL (dt_dialog->duplicate_title_label), full_text); - g_free(full_text); + gchar *full_text = g_strdup_printf ("%s", title); + gtk_label_set_markup (GTK_LABEL(dt_dialog->duplicate_title_label), full_text); + g_free (full_text); } if (!out_num) { // The "num" field isn't being asked for, so we make the widgets invisible - gtk_widget_set_visible(dt_dialog->num_label, FALSE); - gtk_widget_set_visible(dt_dialog->num_edit, FALSE); + gtk_widget_set_visible (dt_dialog->num_label, FALSE); + gtk_widget_set_visible (dt_dialog->num_edit, FALSE); } if (!tnum) { // The "tnum" field isn't being asked for, so we make the widgets invisible - gtk_widget_set_visible(dt_dialog->tnum_label, FALSE); - gtk_widget_set_visible(dt_dialog->tnum_edit, FALSE); + gtk_widget_set_visible (dt_dialog->tnum_label, FALSE); + gtk_widget_set_visible (dt_dialog->tnum_edit, FALSE); } if (!show_date && !tnum) { // The "date" and the "tnum" fields aren't being asked for, this is a split copy - gtk_label_set_markup(GTK_LABEL (dt_dialog->num_label), _("Action/Number")); + gtk_label_set_markup (GTK_LABEL(dt_dialog->num_label), _("Action/Number")); } if (tnum) { - gtk_entry_set_activates_default(GTK_ENTRY(dt_dialog->num_edit), FALSE); - gtk_entry_set_activates_default(GTK_ENTRY(dt_dialog->tnum_edit), TRUE); + gtk_entry_set_activates_default (GTK_ENTRY(dt_dialog->num_edit), FALSE); + gtk_entry_set_activates_default (GTK_ENTRY(dt_dialog->tnum_edit), TRUE); } if (tlink) { - gtk_widget_set_visible(dt_dialog->link_label, TRUE); - gtk_widget_set_visible(dt_dialog->link_edit, TRUE); + gtk_widget_set_visible (dt_dialog->link_label, TRUE); + gtk_widget_set_visible (dt_dialog->link_edit, TRUE); } else { - gtk_widget_set_visible(dt_dialog->link_label, FALSE); - gtk_widget_set_visible(dt_dialog->link_edit, FALSE); + gtk_widget_set_visible (dt_dialog->link_label, FALSE); + gtk_widget_set_visible (dt_dialog->link_edit, FALSE); } - result = gtk_dialog_run (GTK_DIALOG (dt_dialog->dialog)); + result = gtk_dialog_run (GTK_DIALOG(dt_dialog->dialog)); if (result == GTK_RESPONSE_OK) { if (date_p) - *date_p = gnc_date_edit_get_date (GNC_DATE_EDIT (dt_dialog->date_edit)); + *date_p = gnc_date_edit_get_date (GNC_DATE_EDIT(dt_dialog->date_edit)); if (gdate_p) - gnc_date_edit_get_gdate (GNC_DATE_EDIT (dt_dialog->date_edit), gdate_p); + gnc_date_edit_get_gdate (GNC_DATE_EDIT(dt_dialog->date_edit), gdate_p); if (out_num) - *out_num = g_strdup (gtk_entry_get_text (GTK_ENTRY (dt_dialog->num_edit))); + *out_num = g_strdup (gtk_entry_get_text (GTK_ENTRY(dt_dialog->num_edit))); if (tnum) - *out_tnum = g_strdup (gtk_entry_get_text (GTK_ENTRY (dt_dialog->tnum_edit))); + *out_tnum = g_strdup (gtk_entry_get_text (GTK_ENTRY(dt_dialog->tnum_edit))); if (tlink) { if (gtk_toggle_button_get_active (GTK_TOGGLE_BUTTON(dt_dialog->link_edit))) @@ -336,20 +336,23 @@ gnc_dup_trans_dialog_internal (GtkWidget * parent, else ok = FALSE; - gtk_widget_destroy(GTK_WIDGET(dt_dialog->dialog)); + gtk_widget_destroy (GTK_WIDGET(dt_dialog->dialog)); g_free (dt_dialog); return ok; } gboolean -gnc_dup_trans_dialog (GtkWidget * parent, const char* title, gboolean show_date, - time64 *date_p, const char *num, char **out_num, +gnc_dup_trans_dialog (GtkWidget * parent, const char* title, + gboolean show_date, time64 *date_p, + const char *num, char **out_num, const char *tnum, char **out_tnum, const char *tlink, char **out_tlink) { - return gnc_dup_trans_dialog_internal(parent, NULL, title, show_date, date_p, NULL, - num, out_num, tnum, out_tnum, tlink, out_tlink); + return gnc_dup_trans_dialog_internal (parent, NULL, title, + show_date, date_p, NULL, + num, out_num, tnum, out_tnum, + tlink, out_tlink); } gboolean @@ -357,29 +360,35 @@ gnc_dup_trans_dialog_gdate (GtkWidget * parent, GDate *gdate_p, const char *num, char **out_num) { time64 tmp_time; - g_assert(gdate_p); + g_assert (gdate_p); tmp_time = gdate_to_time64 (*gdate_p); - return gnc_dup_trans_dialog_internal(parent, NULL, NULL, TRUE, &tmp_time, gdate_p, - num, out_num, NULL, NULL, NULL, NULL); + return gnc_dup_trans_dialog_internal (parent, NULL, NULL, TRUE, + &tmp_time, gdate_p, + num, out_num, NULL, NULL, + NULL, NULL); } gboolean gnc_dup_time64_dialog (GtkWidget * parent, const char *window_title, const char* title, time64 *date) { - return gnc_dup_trans_dialog_internal(parent, window_title, title, TRUE, date, NULL, - NULL, NULL, NULL, NULL, NULL, NULL); + return gnc_dup_trans_dialog_internal (parent, window_title, title, TRUE, + date, NULL, + NULL, NULL, NULL, NULL, + NULL, NULL); } gboolean gnc_dup_date_dialog (GtkWidget * parent, const char* title, GDate *gdate_p) { time64 tmp_time; - g_assert(gdate_p); + g_assert (gdate_p); - tmp_time = gdate_to_time64(*gdate_p); - return gnc_dup_trans_dialog_internal(parent, NULL, title, TRUE, &tmp_time, gdate_p, - NULL, NULL, NULL, NULL, NULL, NULL); + tmp_time = gdate_to_time64 (*gdate_p); + return gnc_dup_trans_dialog_internal (parent, NULL, title, TRUE, + &tmp_time, gdate_p, + NULL, NULL, NULL, NULL, + NULL, NULL); } diff --git a/gnucash/gnome-utils/dialog-dup-trans.h b/gnucash/gnome-utils/dialog-dup-trans.h index 7c862c0c0c..055abe0bd7 100644 --- a/gnucash/gnome-utils/dialog-dup-trans.h +++ b/gnucash/gnome-utils/dialog-dup-trans.h @@ -50,8 +50,9 @@ * Return: TRUE if user closes dialog with 'OK' * \***********************************************************************/ gboolean -gnc_dup_trans_dialog (GtkWidget * parent, const char* title, gboolean show_date, - time64 *date_p, const char *num, char **out_num, +gnc_dup_trans_dialog (GtkWidget * parent, const char* title, + gboolean show_date, time64 *date_p, + const char *num, char **out_num, const char *tnum, char **out_tnum, const char *tdoclink, char **out_tdoclink); From 6a6396edca192cadf9cc929c0245b143d03e2e06 Mon Sep 17 00:00:00 2001 From: Christopher Lam Date: Mon, 9 Nov 2020 19:54:54 +0800 Subject: [PATCH 122/167] Revert "[auto-clear] provide live feedback when a valid end_amount is input" This reverts commit afcf1765f6c56931d5b4545613d32b8d60c4e7bc. Not satisfactory. Introduces unacceptable delay after each keystroke. Will try again when knapsack algorithm is improved to generate toclear_list as GHashTable value. --- gnucash/gnome/window-autoclear.c | 147 +++++++------------------------ 1 file changed, 34 insertions(+), 113 deletions(-) diff --git a/gnucash/gnome/window-autoclear.c b/gnucash/gnome/window-autoclear.c index d7dec2eab2..f5270be82a 100644 --- a/gnucash/gnome/window-autoclear.c +++ b/gnucash/gnome/window-autoclear.c @@ -52,7 +52,6 @@ struct _AutoClearWindow GtkWidget *cancel_button; GtkWidget *show_cleared_splits_button; GtkLabel *status_label; - GList *toclear_list; }; /** Callback prototypes************************************************/ @@ -123,44 +122,47 @@ void gnc_autoclear_window_ok_cb (GtkWidget *widget, AutoClearWindow *data) { + GList *toclear_list; gnc_numeric toclear_value; gchar *errmsg = NULL; g_return_if_fail (widget && data); - /* sanity check: if toclear_list is null, bail out. but this - should not happen because the OK button is disabled if there is - autoclear error, and toclear_list is null */ - g_return_if_fail (data->toclear_list); + toclear_value = gnc_amount_edit_get_amount(data->end_value); - xaccAccountBeginEdit (data->account); - for (GList *node = data->toclear_list; node; node = node->next) - xaccSplitSetReconcile (node->data, CREC); - xaccAccountCommitEdit (data->account); + if (gnc_reverse_balance(data->account)) + toclear_value = gnc_numeric_neg (toclear_value); - if (gtk_toggle_button_get_active - (GTK_TOGGLE_BUTTON (data->show_cleared_splits_button))) - show_cleared_splits (data->toclear_list); + toclear_value = gnc_numeric_convert + (toclear_value, xaccAccountGetCommoditySCU(data->account), GNC_HOW_RND_ROUND); - /* Close window */ - gnc_autoclear_window_cancel_cb (widget, data); -} + toclear_list = gnc_account_get_autoclear_splits + (data->account, toclear_value, &errmsg); -static gboolean -gnc_autoclear_window_delete_cb (GtkWidget *widget, GdkEvent *event, - AutoClearWindow *data) -{ - if (data->toclear_list) - g_list_free (data->toclear_list); - g_free(data); - return FALSE; -} + if (errmsg) + { + gtk_label_set_text (data->status_label, errmsg); + gnc_amount_edit_set_amount (data->end_value, toclear_value); + gtk_editable_select_region (GTK_EDITABLE (data->end_value), 0, -1); + g_free (errmsg); + } + else + { + xaccAccountBeginEdit (data->account); + for (GList *node = toclear_list; node; node = node->next) + xaccSplitSetReconcile (node->data, CREC); + xaccAccountCommitEdit (data->account); -static void -gnc_autoclear_end_value_activate_cb (GtkWidget *widget, AutoClearWindow *data) -{ - if (data->toclear_list) - gnc_autoclear_window_ok_cb (widget, data); + if (gtk_toggle_button_get_active + (GTK_TOGGLE_BUTTON (data->show_cleared_splits_button))) + show_cleared_splits (toclear_list); + + g_list_free (toclear_list); + + /* Close window */ + gtk_widget_destroy (data->window); + g_free (data); + } } void @@ -169,80 +171,12 @@ gnc_autoclear_window_cancel_cb (GtkWidget *widget, { /* Close window */ gtk_widget_destroy(data->window); - if (data->toclear_list) - g_list_free (data->toclear_list); g_free(data); } -#define MAX_LENGTH 50 - -static void end_value_changed_cb (GtkEditable *editable, AutoClearWindow *data) +static void clear_status_label_cb (GtkEditable *editable, AutoClearWindow *data) { - gnc_numeric toclear_value; - gchar *errmsg = NULL; - - if (gnc_amount_edit_expr_is_valid (data->end_value, &toclear_value, TRUE)) - { - gtk_widget_set_sensitive (data->ok_button, FALSE); - gtk_label_set_text (data->status_label, ""); - return; - } - - if (gnc_reverse_balance (data->account)) - toclear_value = gnc_numeric_neg (toclear_value); - - toclear_value = gnc_numeric_convert - (toclear_value, xaccAccountGetCommoditySCU(data->account), GNC_HOW_RND_ROUND); - - if (data->toclear_list) - g_list_free (data->toclear_list); - - data->toclear_list = gnc_account_get_autoclear_splits - (data->account, toclear_value, &errmsg); - - gtk_widget_set_sensitive (data->ok_button, errmsg == NULL); - - if (errmsg) - { - gtk_widget_set_sensitive (data->ok_button, FALSE); - gtk_label_set_text (data->status_label, errmsg); - g_free (errmsg); - } - else - { - gchar *status = g_strdup (_("The following splits will be cleared:")); - GNCPrintAmountInfo p_info = gnc_account_print_info (data->account, TRUE); - gboolean reverse = gnc_reverse_balance (data->account); - for (GList *node = data->toclear_list; node; node = node->next) - { - Transaction *trans = xaccSplitGetParent (node->data); - gnc_numeric amount = xaccSplitGetAmount (node->data); - const gchar *desc = xaccTransGetDescription (trans); - gchar *datestr = qof_print_date (xaccTransGetDate (trans)); - gchar *newdesc, *newstatus; - - if (g_utf8_strlen (desc, -1) > MAX_LENGTH) - { - gchar *trunc = g_utf8_substring (desc, 0, MAX_LENGTH); - newdesc = g_strdup_printf ("%s...", trunc); - g_free (trunc); - } - else - newdesc = g_strdup (desc); - - if (reverse) - amount = gnc_numeric_neg (amount); - - newstatus = g_strdup_printf ("%s\n%s %s %s", status, datestr, - newdesc, xaccPrintAmount (amount, p_info)); - g_free (status); - g_free (datestr); - g_free (newdesc); - status = newstatus; - } - gtk_label_set_text (data->status_label, status); - g_free (status); - } + gtk_label_set_text (data->status_label, ""); } @@ -278,23 +212,13 @@ autoClearWindow (GtkWidget *parent, Account *account) // Set the name for this dialog so it can be easily manipulated with css gtk_widget_set_name (GTK_WIDGET(data->window), "gnc-id-auto-clear"); - data->ok_button = GTK_WIDGET (gtk_builder_get_object (builder, "ok_button")); - gtk_widget_set_sensitive (data->ok_button, FALSE); - - data->cancel_button = GTK_WIDGET (gtk_builder_get_object - (builder, "cancel_button")); - data->show_cleared_splits_button = GTK_WIDGET (gtk_builder_get_object (builder, "show_cleared_splits_button")); /* Add amount edit box */ data->end_value = GNC_AMOUNT_EDIT(gnc_amount_edit_new()); g_signal_connect(GTK_WIDGET(data->end_value), "activate", - G_CALLBACK(gnc_autoclear_end_value_activate_cb), data); - g_signal_connect(GTK_WIDGET(data->ok_button), "activate", G_CALLBACK(gnc_autoclear_window_ok_cb), data); - g_signal_connect(GTK_WIDGET(data->cancel_button), "activate", - G_CALLBACK(gnc_autoclear_window_cancel_cb), data); box = GTK_BOX(gtk_builder_get_object (builder, "end_value_box")); gtk_box_pack_start(box, GTK_WIDGET(data->end_value), TRUE, TRUE, 0); @@ -313,10 +237,7 @@ autoClearWindow (GtkWidget *parent, Account *account) data->status_label = GTK_LABEL(gtk_builder_get_object (builder, "status_label")); g_signal_connect (GTK_WIDGET(data->end_value), "changed", - G_CALLBACK(end_value_changed_cb), data); - - g_signal_connect (data->window, "delete-event", - G_CALLBACK (gnc_autoclear_window_delete_cb), data); + G_CALLBACK(clear_status_label_cb), data); if (parent != NULL) gtk_window_set_transient_for (GTK_WINDOW (data->window), GTK_WINDOW (parent)); From 194a021da4e2ad8a8e700aff7b7547cd794fb078 Mon Sep 17 00:00:00 2001 From: John Ralls Date: Mon, 9 Nov 2020 13:50:51 -0800 Subject: [PATCH 123/167] Use LTDL_LIBRARY_PATH instead of (DY)LD_LIBRARY_PATH With GnuCash's main libraries now linked at startup instead of being dlopened at runtime except by Guile we can restrict the library path renaming to Gnu Libtool's environment variable. --- gnucash/environment.in | 5 +---- 1 file changed, 1 insertion(+), 4 deletions(-) diff --git a/gnucash/environment.in b/gnucash/environment.in index e81a013256..3c03b74ee9 100644 --- a/gnucash/environment.in +++ b/gnucash/environment.in @@ -64,10 +64,7 @@ GUILE_LOAD_PATH=@GNC_GUILE_LOAD_PATH@;{GUILE_LIBS};{GUILE_LOAD_PATH} GUILE_LOAD_COMPILED_PATH=@GNC_GUILE_LOAD_COMPILED_PATH@;{GUILE_COMPILED_LIBS};{GUILE_LOAD_COMPILED_PATH} # Tell Guile where to find GnuCash specific shared libraries -GNC_LIBRARY_PATH={SYS_LIB};{GNC_LIB} -LD_LIBRARY_PATH={GNC_LIBRARY_PATH};{LD_LIBRARY_PATH} -# The same, but for GnuCash on OS X -DYLD_LIBRARY_PATH={GNC_LIBRARY_PATH};{DYLD_LIBRARY_PATH} +LTDL_LIBRARY_PATH={SYS_LIB};{GNC_LIB} # For changing the language GnuCash uses, first refer to # to https://wiki.gnucash.org/wiki/Locale_Settings. From 08a0da8c4ef8825433f403fc7fbdfafed8424e58 Mon Sep 17 00:00:00 2001 From: John Ralls Date: Mon, 9 Nov 2020 14:26:15 -0800 Subject: [PATCH 124/167] Fix typo in .gitattributes, text not test. --- .gitattributes | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.gitattributes b/.gitattributes index 75ddd56bc6..15e143b3eb 100644 --- a/.gitattributes +++ b/.gitattributes @@ -23,7 +23,7 @@ *.sh text eol=lf *.svg text eol=lf *.xsl text eol=lf -*.cmake test eol=lf +*.cmake text eol=lf Makefile.TAGS text eol=lf Makevars text eol=lf From 1aba062109bcf67c56719949e4fc9388ddd8e9ec Mon Sep 17 00:00:00 2001 From: "Frank H. Ellenberger" Date: Sat, 7 Nov 2020 11:41:52 +0100 Subject: [PATCH 125/167] Add a few more CSS classes for labels --- gnucash/gnome-utils/dialog-account.c | 2 +- gnucash/gnucash-fallback.css | 19 +++++++++++++++---- 2 files changed, 16 insertions(+), 5 deletions(-) diff --git a/gnucash/gnome-utils/dialog-account.c b/gnucash/gnome-utils/dialog-account.c index be630f279d..f72debba11 100644 --- a/gnucash/gnome-utils/dialog-account.c +++ b/gnucash/gnome-utils/dialog-account.c @@ -699,7 +699,7 @@ verify_children_compatible (AccountWindow *aw) gnc_label_set_alignment (label, 0.0, 0.0); /* make label large */ - gnc_widget_style_context_add_class (GTK_WIDGET(label), "gnc-class-emphasize-label"); + gnc_widget_style_context_add_class (GTK_WIDGET(label), "gnc-class-title"); gtk_box_pack_start (GTK_BOX (vbox), label, FALSE, FALSE, 0); diff --git a/gnucash/gnucash-fallback.css b/gnucash/gnucash-fallback.css index 9528ee9a49..f5f4a34c60 100644 --- a/gnucash/gnucash-fallback.css +++ b/gnucash/gnucash-fallback.css @@ -41,10 +41,21 @@ border-color: black; } -/* Make label more important */ -.gnc-class-emphasize-label { - font-size: large; - font-weight: bold; +/* Make some labels more important */ +.gnc-class-underline-title { +font-size: large; +font-weight: bold; +text-decoration-line: underline; +} +.gnc-class-title { +font-size: large; +font-weight: bold; +} +.gnc-class-strong { +font-weight: bold; +} +.gnc-class-emphasis { +font-style: italic; } /* The Dense Calendar defaults */ From 4718604f3b1e84b4da7d40f2f1bfe7e684d04a90 Mon Sep 17 00:00:00 2001 From: Cristian Klein Date: Wed, 14 Oct 2020 07:48:24 +0200 Subject: [PATCH 126/167] Document complexity in UI --- gnucash/gtkbuilder/window-autoclear.glade | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/gnucash/gtkbuilder/window-autoclear.glade b/gnucash/gtkbuilder/window-autoclear.glade index 25730a6ffd..4288ac7446 100644 --- a/gnucash/gtkbuilder/window-autoclear.glade +++ b/gnucash/gtkbuilder/window-autoclear.glade @@ -72,7 +72,9 @@ True False <b>Auto-Clear Information</b> -Use this dialog if you want GnuCash to automatically find which transactions are cleared, given an ending balance. For example, said ending balance can be the current balance given by your online bank. +Use this dialog if you want GnuCash to automatically find which transactions are cleared, given an ending balance. For example, said ending balance can be the current balance given by your online bank. + +<b>Note</b>: The complexity of this algorithm is quite high (<a href="https://en.wikipedia.org/wiki/Knapsack_problem#Computational_complexity">O(nW)</a>). Use this only on a dozen of uncleared splits. True True 80 From 49b3bdeb09b5c86751b8dedcec26be9c3487df48 Mon Sep 17 00:00:00 2001 From: "Frank H. Ellenberger" Date: Thu, 29 Oct 2020 21:57:26 +0100 Subject: [PATCH 127/167] I18N: Ammend intro of autoclear window Split text in titles and section and use CSS instead of markup. --- gnucash/gtkbuilder/window-autoclear.glade | 70 +++++++++++++++++------ 1 file changed, 54 insertions(+), 16 deletions(-) diff --git a/gnucash/gtkbuilder/window-autoclear.glade b/gnucash/gtkbuilder/window-autoclear.glade index 4288ac7446..335ed8c2a8 100644 --- a/gnucash/gtkbuilder/window-autoclear.glade +++ b/gnucash/gtkbuilder/window-autoclear.glade @@ -1,14 +1,11 @@ - + False False dialog - - - True @@ -71,18 +68,59 @@ True False - <b>Auto-Clear Information</b> -Use this dialog if you want GnuCash to automatically find which transactions are cleared, given an ending balance. For example, said ending balance can be the current balance given by your online bank. - -<b>Note</b>: The complexity of this algorithm is quite high (<a href="https://en.wikipedia.org/wiki/Knapsack_problem#Computational_complexity">O(nW)</a>). Use this only on a dozen of uncleared splits. - True + About Auto-Clear + + + + False + False + 0 + + + + + True + False + Use this dialog if you want GnuCash to automatically find which transactions are cleared, given an ending balance. For example, said ending balance can be the current balance given by your bank online. True 80 False False - 0 + 1 + + + + + True + False + True + Caution! + + + + False + False + 2 + + + + + True + False + This tool might be slow or abort if the number of uncleared splits is more than approximately 20. In that case please clear at least some of them manually. + True + 80 + + + False + False + 3 @@ -110,9 +148,6 @@ Use this dialog if you want GnuCash to automatically find which transactions are True False True - - - 1 @@ -134,7 +169,7 @@ Use this dialog if you want GnuCash to automatically find which transactions are False True - 1 + 4 @@ -150,7 +185,7 @@ Use this dialog if you want GnuCash to automatically find which transactions are False True - 2 + 5 @@ -158,7 +193,7 @@ Use this dialog if you want GnuCash to automatically find which transactions are False False 5 - 2 + 1 @@ -167,5 +202,8 @@ Use this dialog if you want GnuCash to automatically find which transactions are cancel_button ok_button + + + From a519b913a6067f44ef699d504a8955ffdc49930d Mon Sep 17 00:00:00 2001 From: Robert Fewell <14uBobIT@gmail.com> Date: Tue, 10 Nov 2020 19:05:37 +0000 Subject: [PATCH 128/167] Windows Build failure in dialog-dup-trans.c Windows build failed on creating gchar *format with g_strdup_printf parameter '%ld' expects argument of type 'long int', but argument 3 has type 'size_t' {aka 'unsigned int'} Fixed by replacing strlen with g_utf8_strlen. --- gnucash/gnome-utils/dialog-dup-trans.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/gnucash/gnome-utils/dialog-dup-trans.c b/gnucash/gnome-utils/dialog-dup-trans.c index 329ecafb10..6db2558812 100644 --- a/gnucash/gnome-utils/dialog-dup-trans.c +++ b/gnucash/gnome-utils/dialog-dup-trans.c @@ -95,7 +95,7 @@ gnc_dup_inc_dec (GtkWidget *widget, const gchar *text, gint inc_dec) num = 0; if (g_str_has_prefix (text, "0")) - format = g_strdup_printf ("%s%ld%s", "%0", strlen (text), "d"); + format = g_strdup_printf ("%s%ld%s", "%0", g_utf8_strlen (text, -1), "d"); else format = g_strdup_printf ("%s", "%ld"); From b22bf07bc45263d7401d365d3568d2061433c065 Mon Sep 17 00:00:00 2001 From: John Ralls Date: Mon, 9 Nov 2020 14:29:09 -0800 Subject: [PATCH 129/167] Setup Github Actions with CI testing for Ubuntu 18.04 --- .github/workflows/ci-tests.yml | 36 ++++++++++++++++++++++++++++++++++ 1 file changed, 36 insertions(+) create mode 100644 .github/workflows/ci-tests.yml diff --git a/.github/workflows/ci-tests.yml b/.github/workflows/ci-tests.yml new file mode 100644 index 0000000000..619679dd85 --- /dev/null +++ b/.github/workflows/ci-tests.yml @@ -0,0 +1,36 @@ +name: ci-tests +on: [push] +jobs: + ci_tests_ubuntu-18: + runs-on: ubuntu-18.04 + name: Ubuntu-18.04 Tests + env: + TZ: America/Los_Angeles + steps: + - name: Checkout + uses: actions/checkout@v2 + - name: Install additional dependencies + run: sudo apt-get install -y cmake libxslt-dev xsltproc ninja-build libboost-all-dev libgtk-3-dev guile-2.2-dev libgwengui-gtk3-dev libaqbanking-dev libofx-dev libdbi-dev libdbd-sqlite3 libwebkit2gtk-4.0-dev googletest + - name: Install language packs. + run: sudo apt-get --reinstall install -y language-pack-en language-pack-fr + - run: | + echo "ROOT_DIR=$GITHUB_WORKSPACE/.." >> $GITHUB_ENV + - name: Create Directories + run: | + pwd + mkdir $ROOT_DIR/inst + mkdir build + - name: Configure GnuCash + run: | + cd build + cmake -G Ninja -DWITH_PYTHON=ON -DCMAKE_INSTALL_PREFIX=$ROOT_DIR/inst $GITHUB_WORKSPACE + - name: Build and Test GnuCash + run: | + cd build + ninja + ninja check + - uses: actions/upload-artifact@v2 + if: failure() + with: + name: TestLog + path: ${{ github.workspace }}/build/Testing/Temporary/LastTest.log From 31c9c5e0805f9dd3f4435191134339f5b96dbdee Mon Sep 17 00:00:00 2001 From: John Ralls Date: Thu, 12 Nov 2020 13:53:59 -0800 Subject: [PATCH 130/167] Add Ubuntu-20 tests. --- .github/workflows/ci-tests.yml | 39 ++++++++++++++++++++++++++++++++++ 1 file changed, 39 insertions(+) diff --git a/.github/workflows/ci-tests.yml b/.github/workflows/ci-tests.yml index 619679dd85..30ec9f3f67 100644 --- a/.github/workflows/ci-tests.yml +++ b/.github/workflows/ci-tests.yml @@ -34,3 +34,42 @@ jobs: with: name: TestLog path: ${{ github.workspace }}/build/Testing/Temporary/LastTest.log + ci_tests_ubuntu-20: + runs-on: ubuntu-20.04 + name: Ubuntu-20.04 Tests + env: + TZ: America/Los_Angeles + steps: + - name: Checkout + uses: actions/checkout@v2 + - name: Install apt utils + run: sudo apt-get install -y --no-install-recommends apt-utils + - name: Upgrade apt + run: | + sudo apt-get update -y + sudo apt-get upgrade -y + - name: Install additional dependencies + run: sudo apt-get install -y cmake libxslt-dev xsltproc ninja-build libboost-all-dev libgtk-3-dev guile-2.2-dev libgwengui-gtk3-dev libaqbanking-dev libofx-dev libdbi-dev libdbd-sqlite3 libwebkit2gtk-4.0-dev googletest + - name: Install language packs. + run: sudo apt-get --reinstall install -y language-pack-en language-pack-fr + - run: | + echo "ROOT_DIR=$GITHUB_WORKSPACE/.." >> $GITHUB_ENV + - name: Create Directories + run: | + pwd + mkdir $ROOT_DIR/inst + mkdir build + - name: Configure GnuCash + run: | + cd build + cmake -G Ninja -DWITH_PYTHON=ON -DCMAKE_INSTALL_PREFIX=$ROOT_DIR/inst $GITHUB_WORKSPACE + - name: Build and Test GnuCash + run: | + cd build + ninja + ninja check + - uses: actions/upload-artifact@v2 + if: failure() + with: + name: TestLog + path: ${{ github.workspace }}/build/Testing/Temporary/LastTest.log From 4e91a33be358ac952ea31c2c62c816070c15b453 Mon Sep 17 00:00:00 2001 From: John Ralls Date: Mon, 9 Nov 2020 13:50:51 -0800 Subject: [PATCH 131/167] Use LTDL_LIBRARY_PATH instead of (DY)LD_LIBRARY_PATH With GnuCash's main libraries now linked at startup instead of being dlopened at runtime except by Guile we can restrict the library path renaming to Gnu Libtool's environment variable. --- gnucash/environment.in | 5 +---- 1 file changed, 1 insertion(+), 4 deletions(-) diff --git a/gnucash/environment.in b/gnucash/environment.in index e81a013256..3c03b74ee9 100644 --- a/gnucash/environment.in +++ b/gnucash/environment.in @@ -64,10 +64,7 @@ GUILE_LOAD_PATH=@GNC_GUILE_LOAD_PATH@;{GUILE_LIBS};{GUILE_LOAD_PATH} GUILE_LOAD_COMPILED_PATH=@GNC_GUILE_LOAD_COMPILED_PATH@;{GUILE_COMPILED_LIBS};{GUILE_LOAD_COMPILED_PATH} # Tell Guile where to find GnuCash specific shared libraries -GNC_LIBRARY_PATH={SYS_LIB};{GNC_LIB} -LD_LIBRARY_PATH={GNC_LIBRARY_PATH};{LD_LIBRARY_PATH} -# The same, but for GnuCash on OS X -DYLD_LIBRARY_PATH={GNC_LIBRARY_PATH};{DYLD_LIBRARY_PATH} +LTDL_LIBRARY_PATH={SYS_LIB};{GNC_LIB} # For changing the language GnuCash uses, first refer to # to https://wiki.gnucash.org/wiki/Locale_Settings. From d751913cb9d422be91595f42f89674248ffe90aa Mon Sep 17 00:00:00 2001 From: John Ralls Date: Mon, 9 Nov 2020 14:26:15 -0800 Subject: [PATCH 132/167] Fix typo in .gitattributes, text not test. --- .gitattributes | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.gitattributes b/.gitattributes index 75ddd56bc6..15e143b3eb 100644 --- a/.gitattributes +++ b/.gitattributes @@ -23,7 +23,7 @@ *.sh text eol=lf *.svg text eol=lf *.xsl text eol=lf -*.cmake test eol=lf +*.cmake text eol=lf Makefile.TAGS text eol=lf Makevars text eol=lf From 0b670680d707b142756fe9db1a1adf2051052e98 Mon Sep 17 00:00:00 2001 From: John Ralls Date: Thu, 12 Nov 2020 19:32:10 -0800 Subject: [PATCH 133/167] Implement CI tests on ArchLinux via docker container. --- .github/workflows/ci-docker.yml | 15 +++++++++++++++ util/ci/actions/archlinux-test/Dockerfile | 8 ++++++++ util/ci/actions/archlinux-test/action.yaml | 5 +++++ util/ci/actions/archlinux-test/entrypoint.sh | 13 +++++++++++++ 4 files changed, 41 insertions(+) create mode 100644 .github/workflows/ci-docker.yml create mode 100644 util/ci/actions/archlinux-test/Dockerfile create mode 100644 util/ci/actions/archlinux-test/action.yaml create mode 100755 util/ci/actions/archlinux-test/entrypoint.sh diff --git a/.github/workflows/ci-docker.yml b/.github/workflows/ci-docker.yml new file mode 100644 index 0000000000..fdf1b8e06a --- /dev/null +++ b/.github/workflows/ci-docker.yml @@ -0,0 +1,15 @@ +name: ci-tests-docker +on: [push] +jobs: + ci_tests_archlinux: + runs-on: ubuntu-latest + name: Test Docker Action + steps: + - name: Checkout + uses: actions/checkout@v2 + - name: Test Action + uses: ./util/ci/actions/archlinux-test + - uses: actions/upload-artifact@v2 + with: + name: TestLog + path: ${{ github.workspace }}/LastTest.log diff --git a/util/ci/actions/archlinux-test/Dockerfile b/util/ci/actions/archlinux-test/Dockerfile new file mode 100644 index 0000000000..24352b54f7 --- /dev/null +++ b/util/ci/actions/archlinux-test/Dockerfile @@ -0,0 +1,8 @@ +from archlinux/base +run pacman -Syu --quiet --noconfirm gcc cmake make boost python2 pkg-config gettext guile git ninja gtest gmock sqlite3 webkit2gtk swig gwenhywfar aqbanking intltool libxslt postgresql-libs libmariadbclient libdbi libdbi-drivers > /dev/null +run echo en_US.UTF-8 UTF-8 >> /etc/locale.gen +run echo en_GB.UTF-8 UTF-8 >> /etc/locale.gen +run echo fr_FR.UTF-8 UTF-8 >> /etc/locale.gen +run locale-gen +copy entrypoint.sh / +entrypoint /entrypoint.sh diff --git a/util/ci/actions/archlinux-test/action.yaml b/util/ci/actions/archlinux-test/action.yaml new file mode 100644 index 0000000000..d2043c7284 --- /dev/null +++ b/util/ci/actions/archlinux-test/action.yaml @@ -0,0 +1,5 @@ +name: 'CI Tests ArchLinux' +description: 'Run GnuCash CI tests in an ArchLinux Docker' +runs: + using: 'docker' + image: 'Dockerfile' diff --git a/util/ci/actions/archlinux-test/entrypoint.sh b/util/ci/actions/archlinux-test/entrypoint.sh new file mode 100755 index 0000000000..9b21224af5 --- /dev/null +++ b/util/ci/actions/archlinux-test/entrypoint.sh @@ -0,0 +1,13 @@ +#!/bin/bash -le + +mkdir -p "$HOME"/.local/share + +mkdir build +cd build +export TZ="America/Los_Angeles" + +cmake /github/workspace -DWITH_PYTHON=ON -DCMAKE_BUILD_TYPE=debug -G Ninja +ninja +ninja check + +cp Testing/Temporary/LastTest.log /github/workspace From e9a117b21bda9c9810cff2f543efa9b283d95c08 Mon Sep 17 00:00:00 2001 From: Geert Janssens Date: Fri, 13 Nov 2020 10:58:14 +0100 Subject: [PATCH 134/167] Bug 798008 - Option '--log' cannot be specified more than once Wrapping the std::vector to hold the log flags is unneeded and actually harmful. Just work on the vector directly. If user doesn't specify any '--log' options the vector will just be empty. --- gnucash/gnucash-core-app.cpp | 29 +++++++++++++---------------- gnucash/gnucash-core-app.hpp | 2 +- 2 files changed, 14 insertions(+), 17 deletions(-) diff --git a/gnucash/gnucash-core-app.cpp b/gnucash/gnucash-core-app.cpp index 6a6b6a80de..451b1f712c 100644 --- a/gnucash/gnucash-core-app.cpp +++ b/gnucash/gnucash-core-app.cpp @@ -346,7 +346,7 @@ load_user_config(void) static void -gnc_log_init (const boost::optional > &log_flags, +gnc_log_init (const std::vector log_flags, const boost::optional &log_to_filename) { if (log_to_filename && !log_to_filename->empty()) @@ -389,24 +389,21 @@ gnc_log_init (const boost::optional > &log_flags, qof_log_parse_log_config (log_config_filename); g_free (log_config_filename); - if (log_flags && !log_flags->empty()) + for (auto log_flag : log_flags) { - for (auto log_flag : *log_flags) + if (log_flag.empty () || + log_flag[0] == '=' || + log_flag[log_flag.length () - 1] == '=') { - if (log_flag.empty () || - log_flag[0] == '=' || - log_flag[log_flag.length () - 1] == '=') - { - g_warning ("string [%s] not parseable", log_flag.c_str()); - continue; - } - - std::vector split_flag; - boost::split (split_flag, log_flag, [](char c){return c == '=';}); - - auto level = qof_log_level_from_string (split_flag[1].c_str()); - qof_log_set_level (split_flag[0].c_str(), level); + g_warning ("string [%s] not parseable", log_flag.c_str()); + continue; } + + std::vector split_flag; + boost::split (split_flag, log_flag, [](char c){return c == '=';}); + + auto level = qof_log_level_from_string (split_flag[1].c_str()); + qof_log_set_level (split_flag[0].c_str(), level); } } diff --git a/gnucash/gnucash-core-app.hpp b/gnucash/gnucash-core-app.hpp index 37dea122d3..ed61af1f28 100644 --- a/gnucash/gnucash-core-app.hpp +++ b/gnucash/gnucash-core-app.hpp @@ -65,7 +65,7 @@ private: bool m_debug = false; bool m_extra = false; boost::optional m_gsettings_prefix; - boost::optional > m_log_flags; + std::vector m_log_flags; char *sys_locale = nullptr; }; From 3e2be271fc3c8245e4be7f24d6a15ca2116d3ab7 Mon Sep 17 00:00:00 2001 From: Christopher Lam Date: Sun, 15 Nov 2020 18:31:30 +0800 Subject: [PATCH 135/167] Bug 798005 - Import of QIF file sets expenses to zero, deposits are fine recongizes numbers with trailing negative sign. --- gnucash/import-export/qif-imp/qif-parse.scm | 9 ++++++--- gnucash/import-export/qif-imp/test/test-qif-parse.scm | 4 ++++ 2 files changed, 10 insertions(+), 3 deletions(-) diff --git a/gnucash/import-export/qif-imp/qif-parse.scm b/gnucash/import-export/qif-imp/qif-parse.scm index 261c10212a..c7fec3cbd9 100644 --- a/gnucash/import-export/qif-imp/qif-parse.scm +++ b/gnucash/import-export/qif-imp/qif-parse.scm @@ -401,14 +401,17 @@ ;; the following is a working refactored function (define (qif-parse:parse-number/format value-string format) - (let* ((filtered-string (gnc:string-delete-chars value-string "$'+")) + (let* ((has-minus? (string-index value-string #\-)) + (filtered-string (gnc:string-delete-chars value-string "$'+-")) (read-string (case format ((decimal) (gnc:string-delete-chars filtered-string ",")) ((comma) (gnc:string-replace-char (gnc:string-delete-chars filtered-string ".") #\, #\.)) - ((integer) filtered-string)))) - (or (string->number (string-append "#e" read-string)) 0))) + ((integer) filtered-string))) + (num (or (string->number (string-append "#e" read-string)) 0))) + (pk value-string has-minus? filtered-string read-string num) + (if has-minus? (- num) num))) ;; input: list of numstrings eg "10.50" "20.54" ;; input: formats to test '(decimal comma integer) diff --git a/gnucash/import-export/qif-imp/test/test-qif-parse.scm b/gnucash/import-export/qif-imp/test/test-qif-parse.scm index 8e94ab3084..8d7402b4cf 100644 --- a/gnucash/import-export/qif-imp/test/test-qif-parse.scm +++ b/gnucash/import-export/qif-imp/test/test-qif-parse.scm @@ -228,6 +228,10 @@ -1234 (qif-parse:parse-number/format "-1234" 'integer)) + (test-equal "qif-parse:parse-number/format 1234-" + -1234 + (qif-parse:parse-number/format "1234-" 'integer)) + (test-equal "qif-parse:parse-number/format 1234" 1234 (qif-parse:parse-number/format "1234" 'integer)) From ea78fa5516c9183541c6400a629d88374ddb1769 Mon Sep 17 00:00:00 2001 From: Christopher Lam Date: Sun, 15 Nov 2020 18:37:17 +0800 Subject: [PATCH 136/167] Remove debugging statement --- gnucash/import-export/qif-imp/qif-parse.scm | 1 - 1 file changed, 1 deletion(-) diff --git a/gnucash/import-export/qif-imp/qif-parse.scm b/gnucash/import-export/qif-imp/qif-parse.scm index c7fec3cbd9..1163c8d82a 100644 --- a/gnucash/import-export/qif-imp/qif-parse.scm +++ b/gnucash/import-export/qif-imp/qif-parse.scm @@ -410,7 +410,6 @@ #\, #\.)) ((integer) filtered-string))) (num (or (string->number (string-append "#e" read-string)) 0))) - (pk value-string has-minus? filtered-string read-string num) (if has-minus? (- num) num))) ;; input: list of numstrings eg "10.50" "20.54" From 20f2efbe1188ebb07c3610f7654d1be92d924906 Mon Sep 17 00:00:00 2001 From: Robert Fewell <14uBobIT@gmail.com> Date: Sun, 15 Nov 2020 14:37:57 +0000 Subject: [PATCH 137/167] Bug 797901 - File History not updated To reproduce this, with an existing list of four recently opened files, open a fifth file whose name must differ from those already in the list and you will observe that the file history list is not updated. This was down to when doing the 'File->Open', a call is made to gnc_close_gui_component_by_session which closes the existing pages and as part of that the preference callbacks for the history plugin page were being removed along with some others like for tab placement. To fix this added the removal inside an if statement that checks to see if the window is quitting or not. --- gnucash/gnome-utils/gnc-main-window.c | 40 +++++++++++++++++---------- 1 file changed, 25 insertions(+), 15 deletions(-) diff --git a/gnucash/gnome-utils/gnc-main-window.c b/gnucash/gnome-utils/gnc-main-window.c index d416a3e362..c88c1d234a 100644 --- a/gnucash/gnome-utils/gnc-main-window.c +++ b/gnucash/gnome-utils/gnc-main-window.c @@ -1405,8 +1405,14 @@ gnc_main_window_quit(GncMainWindow *window) } if (do_shutdown) { + GList *w; + + for (w = active_windows; w; w = g_list_next (w)) + { + window = w->data; + window->window_quitting = TRUE; // set window_quitting on all windows + } /* remove the preference callbacks from the main window */ - window->window_quitting = TRUE; gnc_main_window_remove_prefs (window); g_timeout_add(250, gnc_main_window_timed_quit, NULL); return TRUE; @@ -3232,21 +3238,25 @@ gnc_main_window_close_page (GncPluginPage *page) priv = GNC_MAIN_WINDOW_GET_PRIVATE(window); if (priv->installed_pages == NULL) { - GncPluginManager *manager = gnc_plugin_manager_get (); - GList *plugins = gnc_plugin_manager_get_plugins (manager); - - /* remove only the preference callbacks from the window plugins */ - window->just_plugin_prefs = TRUE; - g_list_foreach (plugins, gnc_main_window_remove_plugin, window); - window->just_plugin_prefs = FALSE; - g_list_free (plugins); - - /* remove the preference callbacks from the main window */ - gnc_main_window_remove_prefs (window); - - if (g_list_length(active_windows) > 1) + if (window->window_quitting) { - gtk_widget_destroy(GTK_WIDGET(window)); + GncPluginManager *manager = gnc_plugin_manager_get (); + GList *plugins = gnc_plugin_manager_get_plugins (manager); + + /* remove only the preference callbacks from the window plugins */ + window->just_plugin_prefs = TRUE; + g_list_foreach (plugins, gnc_main_window_remove_plugin, window); + window->just_plugin_prefs = FALSE; + g_list_free (plugins); + + /* remove the preference callbacks from the main window */ + gnc_main_window_remove_prefs (window); + + gtk_widget_destroy (GTK_WIDGET(window)); + } + if (g_list_length (active_windows) > 1) + { + gtk_widget_destroy (GTK_WIDGET(window)); } } } From 8ad9d0a22d44f5bcd183673ef48e8e0eb7cfed92 Mon Sep 17 00:00:00 2001 From: Robert Fewell <14uBobIT@gmail.com> Date: Wed, 11 Nov 2020 10:36:57 +0000 Subject: [PATCH 138/167] Bug 644242 - Register Panning Problem If the horizontal scrollbar is present for a register and you start to tab from one cell to the next one that is not in view the sheet does not scroll to keep the active cell in view. This commit fixes that by getting the active cell horizontal offset and width and comparing it to the sheet width and window width. --- .../register/register-gnome/gnucash-header.c | 25 +++++++++++++++++ .../register/register-gnome/gnucash-header.h | 5 ++++ .../register/register-gnome/gnucash-sheet.c | 27 +++++++++++++++++++ 3 files changed, 57 insertions(+) diff --git a/gnucash/register/register-gnome/gnucash-header.c b/gnucash/register/register-gnome/gnucash-header.c index 34255a24c2..3ad859e7a7 100644 --- a/gnucash/register/register-gnome/gnucash-header.c +++ b/gnucash/register/register-gnome/gnucash-header.c @@ -188,6 +188,31 @@ gnc_header_draw_offscreen (GncHeader *header) } +gint +gnc_header_get_cell_offset (GncHeader *header, gint col, gint *cell_width) +{ + SheetBlockStyle *style = header->style; + gint j; + gint offset = 0; + + for (j = 0; j < style->ncols; j++) + { + CellDimensions *cd; + + cd = gnucash_style_get_cell_dimensions (style, 0, j); + if (!cd) continue; + + if (j == col) + { + *cell_width = cd->pixel_width; + break; + } + offset = offset + cd->pixel_width; + } + return offset; +} + + static gboolean gnc_header_draw (GtkWidget *header, cairo_t *cr) { diff --git a/gnucash/register/register-gnome/gnucash-header.h b/gnucash/register/register-gnome/gnucash-header.h index 096e80ede7..3908357fb5 100644 --- a/gnucash/register/register-gnome/gnucash-header.h +++ b/gnucash/register/register-gnome/gnucash-header.h @@ -74,5 +74,10 @@ void gnc_header_request_redraw (GncHeader *header); void gnc_header_set_header_rows (GncHeader *header, int num_phys_rows); + +gint gnc_header_get_cell_offset (GncHeader *header, + gint col, + gint *cell_width); + /** @} */ #endif /* GNUCASH_HEADER_H */ diff --git a/gnucash/register/register-gnome/gnucash-sheet.c b/gnucash/register/register-gnome/gnucash-sheet.c index e1b73c2474..a2c556fb30 100644 --- a/gnucash/register/register-gnome/gnucash-sheet.c +++ b/gnucash/register/register-gnome/gnucash-sheet.c @@ -1627,6 +1627,27 @@ gnucash_sheet_clipboard_event (GnucashSheet *sheet, GdkEventKey *event) return handled; } +static void +gnucash_sheet_need_horizontal_scroll (GnucashSheet *sheet, + VirtualLocation *new_virt_loc) +{ + gint hscroll_val; + gint cell_width = 0; + gint offset; + + if (sheet->window_width == sheet->width) + return; + + // get the horizontal scroll window value + hscroll_val = (gint) gtk_adjustment_get_value (sheet->hadj); + + // offset is the start of the cell for column + offset = gnc_header_get_cell_offset (GNC_HEADER(sheet->header_item), new_virt_loc->phys_col_offset, &cell_width); + + if (((offset + cell_width) > sheet->window_width) || (offset < hscroll_val)) + gtk_adjustment_set_value (sheet->hadj, offset); +} + static gboolean process_motion_keys (GnucashSheet *sheet, GdkEventKey *event, gboolean *pass_on, gncTableTraversalDir *direction, @@ -1735,6 +1756,9 @@ process_motion_keys (GnucashSheet *sheet, GdkEventKey *event, gboolean *pass_on, *pass_on = TRUE; break; } + // does the sheet need horizontal scrolling due to tab + gnucash_sheet_need_horizontal_scroll (sheet, new_virt_loc); + return FALSE; } @@ -1894,6 +1918,9 @@ gnucash_sheet_goto_virt_loc (GnucashSheet *sheet, VirtualLocation virt_loc) if (abort_move) return; + // does the sheet need horizontal scrolling + gnucash_sheet_need_horizontal_scroll (sheet, &virt_loc); + gnucash_sheet_cursor_move (sheet, virt_loc); } From fdbbc1305e4df22e7af69bc4cf65e0a334086111 Mon Sep 17 00:00:00 2001 From: Robert Fewell <14uBobIT@gmail.com> Date: Wed, 11 Nov 2020 10:38:02 +0000 Subject: [PATCH 139/167] Change source files gnucash-sheet/header.* for space and tabs --- .../register/register-gnome/gnucash-header.c | 53 +-- .../register-gnome/gnucash-sheet-private.c | 97 +++-- .../register/register-gnome/gnucash-sheet.c | 353 ++++++++---------- .../register/register-gnome/gnucash-sheet.h | 8 +- .../register/register-gnome/gnucash-sheetP.h | 3 - 5 files changed, 240 insertions(+), 274 deletions(-) diff --git a/gnucash/register/register-gnome/gnucash-header.c b/gnucash/register/register-gnome/gnucash-header.c index 3ad859e7a7..05ae7bbc67 100644 --- a/gnucash/register/register-gnome/gnucash-header.c +++ b/gnucash/register/register-gnome/gnucash-header.c @@ -79,8 +79,8 @@ gnc_header_draw_offscreen (GncHeader *header) if (header->surface) cairo_surface_destroy (header->surface); header->surface = cairo_image_surface_create (CAIRO_FORMAT_ARGB32, - header->width, - header->height); + header->width, + header->height); cr = cairo_create (header->surface); @@ -134,7 +134,7 @@ gnc_header_draw_offscreen (GncHeader *header) cd = gnucash_style_get_cell_dimensions (style, i, j); if (!cd) continue; - + height = cd->pixel_height; if (header->in_resize && (j == header->resize_col)) width = header->resize_col_width; @@ -158,7 +158,7 @@ gnc_header_draw_offscreen (GncHeader *header) if (!text) text = ""; - layout = gtk_widget_create_pango_layout (GTK_WIDGET (header->sheet), text); + layout = gtk_widget_create_pango_layout (GTK_WIDGET(header->sheet), text); pango_layout_get_pixel_extents (layout, NULL, &logical_rect); @@ -249,7 +249,7 @@ gnc_header_request_redraw (GncHeader *header) static void gnc_header_unrealize (GtkWidget *widget) { - GncHeader *header = GNC_HEADER (widget); + GncHeader *header = GNC_HEADER(widget); if (header->surface) cairo_surface_destroy (header->surface); header->surface = NULL; @@ -262,8 +262,8 @@ gnc_header_unrealize (GtkWidget *widget) g_object_unref (header->normal_cursor); header->normal_cursor = NULL; - if (GTK_WIDGET_CLASS (parent_class)->unrealize) - GTK_WIDGET_CLASS (parent_class)->unrealize (GTK_WIDGET(header)); + if (GTK_WIDGET_CLASS(parent_class)->unrealize) + GTK_WIDGET_CLASS(parent_class)->unrealize (GTK_WIDGET(header)); } @@ -272,12 +272,12 @@ gnc_header_finalize (GObject *object) { GncHeader *header; - header = GNC_HEADER (object); + header = GNC_HEADER(object); g_free (header->cursor_name); header->cursor_name = NULL; - G_OBJECT_CLASS (parent_class)->finalize (object); + G_OBJECT_CLASS(parent_class)->finalize (object); } @@ -289,7 +289,7 @@ gnc_header_reconfigure (GncHeader *header) int w, h; g_return_if_fail (header != NULL); - g_return_if_fail (GNC_IS_HEADER (header)); + g_return_if_fail (GNC_IS_HEADER(header)); sheet = GNUCASH_SHEET(header->sheet); old_style = header->style; @@ -314,8 +314,8 @@ gnc_header_reconfigure (GncHeader *header) { header->height = h; header->width = w; - gtk_layout_set_size(GTK_LAYOUT(header), w, h); - gtk_widget_set_size_request(GTK_WIDGET(header), -1, h); + gtk_layout_set_size (GTK_LAYOUT(header), w, h); + gtk_widget_set_size_request (GTK_WIDGET(header), -1, h); gnc_header_request_redraw (header); } } @@ -325,7 +325,7 @@ gnc_header_set_header_rows (GncHeader *header, int num_phys_rows) { g_return_if_fail (header != NULL); - g_return_if_fail (GNC_IS_HEADER (header)); + g_return_if_fail (GNC_IS_HEADER(header)); header->num_phys_rows = num_phys_rows; } @@ -348,7 +348,7 @@ pointer_on_resize_line (GncHeader *header, int x, G_GNUC_UNUSED int y, int *col) { cd = gnucash_style_get_cell_dimensions (style, 0, j); if (!cd) continue; - + pixels += cd->pixel_width; if (x >= pixels - 1 && x <= pixels + 1) on_the_line = TRUE; @@ -453,7 +453,7 @@ gnc_header_event (GtkWidget *widget, GdkEvent *event) break; } - if (pointer_on_resize_line(header, x, y, &col) && + if (pointer_on_resize_line (header, x, y, &col) && gnucash_style_col_is_resizable (header->style, col)) gdk_window_set_cursor (window, header->resize_cursor); else @@ -560,7 +560,7 @@ gnc_header_get_property (GObject *object, GValue *value, GParamSpec *pspec) { - GncHeader *header = GNC_HEADER (object); + GncHeader *header = GNC_HEADER(object); switch (param_id) { @@ -571,7 +571,7 @@ gnc_header_get_property (GObject *object, g_value_set_string (value, header->cursor_name); break; default: - G_OBJECT_WARN_INVALID_PROPERTY_ID (object, param_id, pspec); + G_OBJECT_WARN_INVALID_PROPERTY_ID(object, param_id, pspec); break; } } @@ -582,15 +582,15 @@ gnc_header_set_property (GObject *object, const GValue *value, GParamSpec *pspec) { - GncHeader *header = GNC_HEADER (object); - GtkLayout *layout = GTK_LAYOUT (header); + GncHeader *header = GNC_HEADER(object); + GtkLayout *layout = GTK_LAYOUT(header); gboolean needs_update = FALSE; gchar *old_name; switch (param_id) { case PROP_SHEET: - header->sheet = GNUCASH_SHEET (g_value_get_object (value)); + header->sheet = GNUCASH_SHEET(g_value_get_object (value)); gtk_scrollable_set_hadjustment (GTK_SCROLLABLE(layout), header->sheet->hadj); needs_update = TRUE; break; @@ -603,7 +603,7 @@ gnc_header_set_property (GObject *object, g_free (old_name); break; default: - G_OBJECT_WARN_INVALID_PROPERTY_ID (object, param_id, pspec); + G_OBJECT_WARN_INVALID_PROPERTY_ID(object, param_id, pspec); break; } @@ -625,14 +625,15 @@ gnc_header_init (GncHeader *header) header->width = 400; header->style = NULL; - gtk_widget_add_events(GTK_WIDGET(header), (GDK_EXPOSURE_MASK + gtk_widget_add_events (GTK_WIDGET(header), + (GDK_EXPOSURE_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK | GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK)); - g_signal_connect(G_OBJECT(header), "configure_event", - G_CALLBACK(gnc_header_reconfigure), NULL); + g_signal_connect (G_OBJECT(header), "configure_event", + G_CALLBACK(gnc_header_reconfigure), NULL); gtk_widget_show_all (GTK_WIDGET(header)); } @@ -640,8 +641,8 @@ gnc_header_init (GncHeader *header) static void gnc_header_class_init (GncHeaderClass *header_class) { - GObjectClass *object_class = G_OBJECT_CLASS (header_class); - GtkWidgetClass *item_class = GTK_WIDGET_CLASS (header_class); + GObjectClass *object_class = G_OBJECT_CLASS(header_class); + GtkWidgetClass *item_class = GTK_WIDGET_CLASS(header_class); gtk_widget_class_set_css_name (GTK_WIDGET_CLASS(header_class), "gnc-id-header"); diff --git a/gnucash/register/register-gnome/gnucash-sheet-private.c b/gnucash/register/register-gnome/gnucash-sheet-private.c index 0d36e967b2..4e2da3bca5 100644 --- a/gnucash/register/register-gnome/gnucash-sheet-private.c +++ b/gnucash/register/register-gnome/gnucash-sheet-private.c @@ -60,8 +60,8 @@ find_block_by_pixel (GnucashSheet *sheet, SheetBlock *block; VirtualCellLocation vc_loc = { 1, 0 }; - g_return_val_if_fail(y >= 0, NULL); - g_return_val_if_fail(x >= 0, NULL); + g_return_val_if_fail (y >= 0, NULL); + g_return_val_if_fail (x >= 0, NULL); do { @@ -199,7 +199,7 @@ get_cell_borders (GnucashSheet *sheet, VirtualLocation virt_loc, if (gnc_table_move_vertical_position (sheet->table, &v_loc, -1)) { gnucash_sheet_get_borders (sheet, v_loc, &neighbor); - borders->top = MAX (borders->top, neighbor.bottom); + borders->top = MAX(borders->top, neighbor.bottom); } /* bottom */ @@ -207,7 +207,7 @@ get_cell_borders (GnucashSheet *sheet, VirtualLocation virt_loc, if (gnc_table_move_vertical_position (sheet->table, &v_loc, 1)) { gnucash_sheet_get_borders (sheet, v_loc, &neighbor); - borders->bottom = MAX (borders->bottom, neighbor.top); + borders->bottom = MAX(borders->bottom, neighbor.top); } /* left */ @@ -216,7 +216,7 @@ get_cell_borders (GnucashSheet *sheet, VirtualLocation virt_loc, if (gnc_table_virtual_loc_valid (sheet->table, v_loc, TRUE)) { gnucash_sheet_get_borders (sheet, v_loc, &neighbor); - borders->left = MAX (borders->left, neighbor.right); + borders->left = MAX(borders->left, neighbor.right); } /* right */ @@ -225,7 +225,7 @@ get_cell_borders (GnucashSheet *sheet, VirtualLocation virt_loc, if (gnc_table_virtual_loc_valid (sheet->table, v_loc, TRUE)) { gnucash_sheet_get_borders (sheet, v_loc, &neighbor); - borders->right = MAX (borders->right, neighbor.left); + borders->right = MAX(borders->right, neighbor.left); } } @@ -235,7 +235,7 @@ get_cell_borders (GnucashSheet *sheet, VirtualLocation virt_loc, specified by numerator and denominator. This is some simple integer arithmetics for the case when we don't even need a conversion to floating point and backwards. */ -static guint8 inc_intensity_byte(guint8 input, int numerator, int denominator) +static guint8 inc_intensity_byte (guint8 input, int numerator, int denominator) { guint8 result_inv, result; guint8 input_inv = 0xff - input; @@ -247,12 +247,12 @@ static guint8 inc_intensity_byte(guint8 input, int numerator, int denominator) /** For a given RGB value, increase the color intensity for each of the three colors identically by 10 percent (i.e. make them "less black" and "more gray") and return this changed RGB value. */ -static guint32 inc_intensity_10percent(guint32 argb) +static guint32 inc_intensity_10percent (guint32 argb) { guint32 result = - (inc_intensity_byte((argb & 0x00FF0000) >> 16, 8, 10) << 16) - + (inc_intensity_byte((argb & 0x0000FF00) >> 8, 8, 10) << 8) - + (inc_intensity_byte(argb & 0x000000FF, 8, 10)); + (inc_intensity_byte ((argb & 0x00FF0000) >> 16, 8, 10) << 16) + + (inc_intensity_byte ((argb & 0x0000FF00) >> 8, 8, 10) << 8) + + (inc_intensity_byte (argb & 0x000000FF, 8, 10)); return result; } #endif @@ -261,7 +261,7 @@ static guint32 inc_intensity_10percent(guint32 argb) specified by numerator and denominator. This is some simple integer arithmetics for the case when we don't even need a conversion to floating point and backwards. */ -static guint8 dec_intensity_byte(guint8 input, int numerator, int denominator) +static guint8 dec_intensity_byte (guint8 input, int numerator, int denominator) { guint8 result; result = (input * numerator) / denominator; @@ -270,14 +270,14 @@ static guint8 dec_intensity_byte(guint8 input, int numerator, int denominator) /** For a given RGB value, decrease the color intensity for each of the three colors identically by 10 percent and return this changed RGB value. */ -static guint32 dec_intensity_10percent(guint32 argb) +static guint32 dec_intensity_10percent (guint32 argb) { // Multiply each single byte by 9/10 i.e. by 0.9 which decreases the // intensity by 10 percent. guint32 result = - (dec_intensity_byte((argb & 0x00FF0000) >> 16, 9, 10) << 16) - + (dec_intensity_byte((argb & 0x0000FF00) >> 8, 9, 10) << 8) - + (dec_intensity_byte(argb & 0x000000FF, 9, 10)); + (dec_intensity_byte ((argb & 0x00FF0000) >> 16, 9, 10) << 16) + + (dec_intensity_byte ((argb & 0x0000FF00) >> 8, 9, 10) << 8) + + (dec_intensity_byte (argb & 0x000000FF, 9, 10)); return result; } @@ -326,8 +326,8 @@ draw_cell_line (cairo_t *cr, GdkRGBA *bg_color, } static void -draw_hatching (cairo_t *cr, - double x, double y, G_GNUC_UNUSED double width, double height) +draw_hatching (cairo_t *cr, double x, double y, + G_GNUC_UNUSED double width, double height) { GdkRGBA *fg_color; double h_x = x + 2.5; @@ -375,10 +375,8 @@ draw_divider_line (cairo_t *cr, VirtualLocation virt_loc, } static void -draw_cell (GnucashSheet *sheet, - SheetBlock *block, - VirtualLocation virt_loc, - cairo_t *cr, +draw_cell (GnucashSheet *sheet, SheetBlock *block, + VirtualLocation virt_loc, cairo_t *cr, int x, int y, int width, int height) { GncItemEdit *item_edit = GNC_ITEM_EDIT(sheet->item_editor); @@ -469,20 +467,20 @@ draw_cell (GnucashSheet *sheet, /* dividing line upper (red) */ fg_color = &gn_red; - draw_divider_line(cr, virt_loc, - table->model->dividing_row_upper, block->style->nrows, - fg_color, x, y, width, height); + draw_divider_line (cr, virt_loc, + table->model->dividing_row_upper, block->style->nrows, + fg_color, x, y, width, height); /* dividing line (blue) */ fg_color = &gn_blue; - draw_divider_line(cr, virt_loc, - table->model->dividing_row, block->style->nrows, - fg_color, x, y, width, height); + draw_divider_line (cr, virt_loc, + table->model->dividing_row, block->style->nrows, + fg_color, x, y, width, height); /* dividing line lower (blue) */ - draw_divider_line(cr, virt_loc, - table->model->dividing_row_lower, block->style->nrows, - fg_color, x, y, width, height); + draw_divider_line (cr, virt_loc, + table->model->dividing_row_lower, block->style->nrows, + fg_color, x, y, width, height); layout = gtk_widget_create_pango_layout (GTK_WIDGET (sheet), text); @@ -554,10 +552,8 @@ exit: } static void -draw_block (GnucashSheet *sheet, - SheetBlock *block, - VirtualLocation virt_loc, - cairo_t *cr, +draw_block (GnucashSheet *sheet, SheetBlock *block, + VirtualLocation virt_loc, cairo_t *cr, int x, int y, int width, int height) { CellDimensions *cd; @@ -565,13 +561,13 @@ draw_block (GnucashSheet *sheet, gint y_paint; gint w, h; - for ( virt_loc.phys_row_offset = 0; + for (virt_loc.phys_row_offset = 0; virt_loc.phys_row_offset < block->style->nrows ; - virt_loc.phys_row_offset++ ) + virt_loc.phys_row_offset++) { - for ( virt_loc.phys_col_offset = 0; + for (virt_loc.phys_col_offset = 0; virt_loc.phys_col_offset < block->style->ncols ; - virt_loc.phys_col_offset++ ) + virt_loc.phys_col_offset++) { cd = gnucash_style_get_cell_dimensions (block->style, @@ -618,17 +614,16 @@ gnucash_sheet_draw_internal (GnucashSheet* sheet, cairo_t* cr, int height = alloc->height; GtkAdjustment * adj; - adj = gtk_scrollable_get_hadjustment(GTK_SCROLLABLE (sheet)); - x = (gint) gtk_adjustment_get_value(adj); - adj = gtk_scrollable_get_vadjustment(GTK_SCROLLABLE (sheet)); - y = (gint) gtk_adjustment_get_value(adj); + adj = gtk_scrollable_get_hadjustment (GTK_SCROLLABLE(sheet)); + x = (gint) gtk_adjustment_get_value (adj); + adj = gtk_scrollable_get_vadjustment (GTK_SCROLLABLE(sheet)); + y = (gint) gtk_adjustment_get_value (adj); if (x < 0 || y < 0) return FALSE; /* compute our initial values where we start drawing */ - sheet_block = find_block_by_pixel (sheet, x, y, - &virt_loc.vcell_loc); + sheet_block = find_block_by_pixel (sheet, x, y, &virt_loc.vcell_loc); if (!sheet_block || !sheet_block->style) return FALSE; @@ -637,8 +632,7 @@ gnucash_sheet_draw_internal (GnucashSheet* sheet, cairo_t* cr, { while (TRUE) { - sheet_block = gnucash_sheet_get_block - (sheet, virt_loc.vcell_loc); + sheet_block = gnucash_sheet_get_block (sheet, virt_loc.vcell_loc); if (!sheet_block || !sheet_block->style) return TRUE; @@ -655,7 +649,6 @@ gnucash_sheet_draw_internal (GnucashSheet* sheet, cairo_t* cr, draw_block (sheet, sheet_block, virt_loc, cr, x, y, width, height); } - return TRUE; } @@ -669,10 +662,10 @@ gnucash_sheet_draw_cursor (GnucashCursor *cursor, cairo_t *cr) int y = 0; GtkAdjustment * adj; - adj = gtk_scrollable_get_hadjustment(GTK_SCROLLABLE (cursor->sheet)); - x = (gint) gtk_adjustment_get_value(adj); - adj = gtk_scrollable_get_vadjustment(GTK_SCROLLABLE (cursor->sheet)); - y = (gint) gtk_adjustment_get_value(adj); + adj = gtk_scrollable_get_hadjustment (GTK_SCROLLABLE(cursor->sheet)); + x = (gint) gtk_adjustment_get_value (adj); + adj = gtk_scrollable_get_vadjustment (GTK_SCROLLABLE(cursor->sheet)); + y = (gint) gtk_adjustment_get_value (adj); fg_color = &gn_black; diff --git a/gnucash/register/register-gnome/gnucash-sheet.c b/gnucash/register/register-gnome/gnucash-sheet.c index a2c556fb30..47fc825241 100644 --- a/gnucash/register/register-gnome/gnucash-sheet.c +++ b/gnucash/register/register-gnome/gnucash-sheet.c @@ -78,14 +78,14 @@ static GtkLayout *sheet_parent_class; static void gnucash_sheet_start_editing_at_cursor (GnucashSheet *sheet); static gboolean gnucash_sheet_cursor_move (GnucashSheet *sheet, - VirtualLocation virt_loc); + VirtualLocation virt_loc); static void gnucash_sheet_deactivate_cursor_cell (GnucashSheet *sheet); static void gnucash_sheet_activate_cursor_cell (GnucashSheet *sheet, - gboolean changed_cells); + gboolean changed_cells); static void gnucash_sheet_stop_editing (GnucashSheet *sheet); -static gboolean gnucash_sheet_check_direct_update_cell(GnucashSheet *sheet, - const VirtualLocation virt_loc); +static gboolean gnucash_sheet_check_direct_update_cell (GnucashSheet *sheet, + const VirtualLocation virt_loc); gboolean gnucash_sheet_draw_cb (GtkWidget *widget, cairo_t *cr, G_GNUC_UNUSED gpointer data); @@ -103,22 +103,22 @@ gboolean gnucash_sheet_draw_cb (GtkWidget *widget, cairo_t *cr, static inline void gnucash_sheet_set_entry_selection (GnucashSheet *sheet) { - DEBUG ("Set entry selection to sheet: %d:%d", sheet->bound, sheet->pos); - gtk_editable_select_region (GTK_EDITABLE (sheet->entry), + DEBUG("Set entry selection to sheet: %d:%d", sheet->bound, sheet->pos); + gtk_editable_select_region (GTK_EDITABLE(sheet->entry), sheet->bound, sheet->pos); } static inline void gnucash_sheet_set_selection_from_entry (GnucashSheet *sheet) { - gtk_editable_get_selection_bounds (GTK_EDITABLE (sheet->entry), + gtk_editable_get_selection_bounds (GTK_EDITABLE(sheet->entry), &sheet->bound, &sheet->pos); } static inline void gnucash_sheet_set_selection (GnucashSheet *sheet, int pos, int bound) { - DEBUG ("Set sheet selection %d:%d", bound, pos); + DEBUG("Set sheet selection %d:%d", bound, pos); sheet->pos = pos; sheet->bound = bound; gnucash_sheet_set_entry_selection (sheet); @@ -161,16 +161,16 @@ gnucash_sheet_clear_selection (GnucashSheet *sheet) static inline void gnucash_sheet_set_entry_value (GnucashSheet *sheet, const char* value) { - g_signal_handler_block (G_OBJECT (sheet->entry), + g_signal_handler_block (G_OBJECT(sheet->entry), sheet->insert_signal); - g_signal_handler_block (G_OBJECT (sheet->entry), + g_signal_handler_block (G_OBJECT(sheet->entry), sheet->delete_signal); - gtk_entry_set_text (GTK_ENTRY (sheet->entry), value); + gtk_entry_set_text (GTK_ENTRY(sheet->entry), value); - g_signal_handler_unblock (G_OBJECT (sheet->entry), + g_signal_handler_unblock (G_OBJECT(sheet->entry), sheet->delete_signal); - g_signal_handler_unblock (G_OBJECT (sheet->entry), + g_signal_handler_unblock (G_OBJECT(sheet->entry), sheet->insert_signal); } @@ -192,7 +192,7 @@ gnucash_sheet_cell_valid (GnucashSheet *sheet, VirtualLocation virt_loc) SheetBlockStyle *style; valid = !gnucash_sheet_virt_cell_out_of_bounds (sheet, - virt_loc.vcell_loc); + virt_loc.vcell_loc); if (valid) { @@ -212,7 +212,7 @@ static void gnucash_sheet_cursor_set (GnucashSheet *sheet, VirtualLocation virt_loc) { g_return_if_fail (sheet != NULL); - g_return_if_fail (GNUCASH_IS_SHEET (sheet)); + g_return_if_fail (GNUCASH_IS_SHEET(sheet)); g_return_if_fail (virt_loc.vcell_loc.virt_row >= 0 || virt_loc.vcell_loc.virt_row <= sheet->num_virt_rows); @@ -327,7 +327,7 @@ gnucash_sheet_set_text_bounds (GnucashSheet *sheet, GdkRectangle *rect, gint gnucash_sheet_get_text_offset (GnucashSheet *sheet, const VirtualLocation virt_loc, - gint rect_width, gint logical_width) + gint rect_width, gint logical_width) { GncItemEdit *item_edit = GNC_ITEM_EDIT(sheet->item_editor); Table *table = sheet->table; @@ -401,7 +401,7 @@ gnucash_sheet_activate_cursor_cell (GnucashSheet *sheet, gnucash_sheet_redraw_block (sheet, virt_loc.vcell_loc); else { - gtk_entry_reset_im_context(GTK_ENTRY (sheet->entry)); + gtk_entry_reset_im_context (GTK_ENTRY (sheet->entry)); gnucash_sheet_start_editing_at_cursor (sheet); // Came here by keyboard, select text, otherwise text cursor to @@ -446,8 +446,7 @@ gnucash_sheet_activate_cursor_cell (GnucashSheet *sheet, } gnucash_sheet_set_position (sheet, index + trailing); } - sheet->direct_update_cell = - gnucash_sheet_check_direct_update_cell (sheet, virt_loc); + sheet->direct_update_cell = gnucash_sheet_check_direct_update_cell (sheet, virt_loc); } // when a gui refresh is called, we end up here so only grab the focus // if the sheet is showing on the current plugin_page @@ -526,7 +525,6 @@ gnucash_sheet_y_pixel_to_block (GnucashSheet *sheet, int y) if (block->origin_y + block->style->dimensions->height > y) break; } - return vcell_loc.virt_row; } @@ -540,27 +538,24 @@ gnucash_sheet_compute_visible_range (GnucashSheet *sheet) gint height; gint cy; gint top_block; -// gint old_visible_blocks, old_visible_rows; g_return_if_fail (sheet != NULL); - g_return_if_fail (GNUCASH_IS_SHEET (sheet)); + g_return_if_fail (GNUCASH_IS_SHEET(sheet)); gtk_widget_get_allocation (GTK_WIDGET(sheet), &alloc); height = alloc.height; adj = gtk_scrollable_get_vadjustment (GTK_SCROLLABLE(sheet)); - cy = gtk_adjustment_get_value(adj); + cy = gtk_adjustment_get_value (adj); top_block = gnucash_sheet_y_pixel_to_block (sheet, cy); -// old_visible_blocks = sheet->num_visible_blocks; -// old_visible_rows = sheet->num_visible_phys_rows; sheet->num_visible_blocks = 0; sheet->num_visible_phys_rows = 0; - for ( vcell_loc.virt_row = top_block, vcell_loc.virt_col = 0; - vcell_loc.virt_row < sheet->num_virt_rows; - vcell_loc.virt_row++ ) + for (vcell_loc.virt_row = top_block, vcell_loc.virt_col = 0; + vcell_loc.virt_row < sheet->num_virt_rows; + vcell_loc.virt_row++) { SheetBlock *block; @@ -599,9 +594,9 @@ gnucash_sheet_show_row (GnucashSheet *sheet, gint virt_row) sheet->num_virt_rows - 1); adj = gtk_scrollable_get_hadjustment (GTK_SCROLLABLE(sheet)); - cx = gtk_adjustment_get_value(adj); + cx = gtk_adjustment_get_value (adj); adj = gtk_scrollable_get_vadjustment (GTK_SCROLLABLE(sheet)); - cy = gtk_adjustment_get_value(adj); + cy = gtk_adjustment_get_value (adj); x = cx; gtk_widget_get_allocation (GTK_WIDGET(sheet), &alloc); @@ -642,7 +637,7 @@ void gnucash_sheet_make_cell_visible (GnucashSheet *sheet, VirtualLocation virt_loc) { g_return_if_fail (sheet != NULL); - g_return_if_fail (GNUCASH_IS_SHEET (sheet)); + g_return_if_fail (GNUCASH_IS_SHEET(sheet)); if (!gnucash_sheet_cell_valid (sheet, virt_loc)) return; @@ -670,18 +665,18 @@ gnucash_sheet_show_range (GnucashSheet *sheet, g_return_if_fail (sheet != NULL); g_return_if_fail (GNUCASH_IS_SHEET(sheet)); - start_loc.virt_row = MAX (start_loc.virt_row, 1); - start_loc.virt_row = MIN (start_loc.virt_row, - sheet->num_virt_rows - 1); + start_loc.virt_row = MAX(start_loc.virt_row, 1); + start_loc.virt_row = MIN(start_loc.virt_row, + sheet->num_virt_rows - 1); - end_loc.virt_row = MAX (end_loc.virt_row, 1); - end_loc.virt_row = MIN (end_loc.virt_row, - sheet->num_virt_rows - 1); + end_loc.virt_row = MAX(end_loc.virt_row, 1); + end_loc.virt_row = MIN(end_loc.virt_row, + sheet->num_virt_rows - 1); adj = gtk_scrollable_get_hadjustment (GTK_SCROLLABLE(sheet)); - cx = gtk_adjustment_get_value(adj); + cx = gtk_adjustment_get_value (adj); adj = gtk_scrollable_get_vadjustment (GTK_SCROLLABLE(sheet)); - cy = gtk_adjustment_get_value(adj); + cy = gtk_adjustment_get_value (adj); x = cx; gtk_widget_get_allocation (GTK_WIDGET(sheet), &alloc); @@ -703,7 +698,7 @@ gnucash_sheet_show_range (GnucashSheet *sheet, } if (y > cy) - y -= height - MIN (block_height, height); + y -= height - MIN(block_height, height); if ((sheet->height - y) < height) y = sheet->height - height; @@ -727,7 +722,7 @@ gnucash_sheet_update_adjustments (GnucashSheet *sheet) GtkAdjustment *vadj; g_return_if_fail (sheet != NULL); - g_return_if_fail (GNUCASH_IS_SHEET (sheet)); + g_return_if_fail (GNUCASH_IS_SHEET(sheet)); g_return_if_fail (sheet->vadj != NULL); vadj = sheet->vadj; @@ -742,7 +737,7 @@ gnucash_sheet_update_adjustments (GnucashSheet *sheet) static void gnucash_sheet_vadjustment_value_changed (GtkAdjustment *adj, - GnucashSheet *sheet) + GnucashSheet *sheet) { gnucash_sheet_compute_visible_range (sheet); } @@ -754,7 +749,7 @@ gnucash_sheet_redraw_all (GnucashSheet *sheet) g_return_if_fail (sheet != NULL); g_return_if_fail (GNUCASH_IS_SHEET(sheet)); - gtk_widget_queue_draw (GTK_WIDGET (sheet)); + gtk_widget_queue_draw (GTK_WIDGET(sheet)); g_signal_emit_by_name (sheet->reg, "redraw_all"); } @@ -787,8 +782,7 @@ gnucash_sheet_redraw_block (GnucashSheet *sheet, VirtualCellLocation vcell_loc) gtk_widget_get_allocation (GTK_WIDGET(sheet), &alloc); h = block->style->dimensions->height; - w = MIN(block->style->dimensions->width, - alloc.width); + w = MIN(block->style->dimensions->width, alloc.width); gtk_widget_queue_draw_area (GTK_WIDGET(sheet), x, y, w + 1, h + 1); } @@ -812,7 +806,7 @@ gnucash_sheet_finalize (GObject *object) { GnucashSheet *sheet; - sheet = GNUCASH_SHEET (object); + sheet = GNUCASH_SHEET(object); g_table_resize (sheet->blocks, 0, 0); g_table_destroy (sheet->blocks); @@ -823,8 +817,8 @@ gnucash_sheet_finalize (GObject *object) g_hash_table_destroy (sheet->cursor_styles); g_hash_table_destroy (sheet->dimensions_hash_table); - if (G_OBJECT_CLASS (sheet_parent_class)->finalize) - (*G_OBJECT_CLASS (sheet_parent_class)->finalize)(object); + if (G_OBJECT_CLASS(sheet_parent_class)->finalize) + (*G_OBJECT_CLASS(sheet_parent_class)->finalize)(object); } @@ -841,10 +835,10 @@ gnucash_sheet_create (Table *table) sheet->vadj = gtk_scrollable_get_vadjustment (GTK_SCROLLABLE(sheet)); sheet->hadj = gtk_scrollable_get_hadjustment (GTK_SCROLLABLE(sheet)); - g_signal_connect (G_OBJECT (sheet->vadj), "value_changed", - G_CALLBACK (gnucash_sheet_vadjustment_value_changed), sheet); - g_signal_connect (G_OBJECT (sheet), "draw", - G_CALLBACK (gnucash_sheet_draw_cb), sheet); + g_signal_connect (G_OBJECT(sheet->vadj), "value_changed", + G_CALLBACK(gnucash_sheet_vadjustment_value_changed), sheet); + g_signal_connect (G_OBJECT(sheet), "draw", + G_CALLBACK(gnucash_sheet_draw_cb), sheet); LEAVE("%p", sheet); return sheet; @@ -895,12 +889,10 @@ gnucash_sheet_modify_current_cell (GnucashSheet *sheet, const gchar *new_text) Table *table = sheet->table; VirtualLocation virt_loc; int new_text_len; - const char *retval; - int cursor_position, start_sel, end_sel; - gnucash_cursor_get_virt(GNUCASH_CURSOR(sheet->cursor), &virt_loc); + gnucash_cursor_get_virt (GNUCASH_CURSOR(sheet->cursor), &virt_loc); if (!gnc_table_virtual_loc_valid (table, virt_loc, TRUE)) return NULL; @@ -925,7 +917,7 @@ gnucash_sheet_modify_current_cell (GnucashSheet *sheet, const gchar *new_text) if (retval) { - DEBUG ("%s", retval ? retval : "nothing"); + DEBUG("%s", retval ? retval : "nothing"); gnucash_sheet_set_entry_value (sheet, retval); gnucash_sheet_set_position_and_selection (sheet, cursor_position, start_sel, end_sel); @@ -942,19 +934,17 @@ typedef struct } select_info; static gboolean -gnucash_sheet_direct_event(GnucashSheet *sheet, GdkEvent *event) +gnucash_sheet_direct_event (GnucashSheet *sheet, GdkEvent *event) { GtkEditable *editable; Table *table = sheet->table; VirtualLocation virt_loc; gboolean result; - char *new_text = NULL; - int cursor_position, start_sel, end_sel; int new_position, new_start, new_end; - gnucash_cursor_get_virt(GNUCASH_CURSOR(sheet->cursor), &virt_loc); + gnucash_cursor_get_virt (GNUCASH_CURSOR(sheet->cursor), &virt_loc); if (!gnc_table_virtual_loc_valid (table, virt_loc, TRUE)) return FALSE; @@ -977,7 +967,7 @@ gnucash_sheet_direct_event(GnucashSheet *sheet, GdkEvent *event) event); if (result) { - DEBUG ("%s", new_text ? new_text : "nothing"); + DEBUG("%s", new_text ? new_text : "nothing"); if (new_text != NULL) gnucash_sheet_set_entry_value (sheet, new_text); gnucash_sheet_set_position_and_selection (sheet, new_position, @@ -1015,16 +1005,16 @@ insert_text (const char* old_text, const char* new_text, int pos, int bound) static char* make_new_text (GnucashSheet *sheet, const char* new_text, int *position) { - GtkEditable* editable = (GTK_EDITABLE (sheet->entry)); + GtkEditable* editable = (GTK_EDITABLE(sheet->entry)); int pos, bound; - const char* old_text = gtk_entry_get_text (GTK_ENTRY (sheet->entry)); + const char* old_text = gtk_entry_get_text (GTK_ENTRY(sheet->entry)); int old_length = g_utf8_strlen (old_text, -1); int insert_length = g_utf8_strlen (new_text, -1); if (!old_text || old_length == 0) { *position = insert_length; - return g_strdup(new_text); + return g_strdup (new_text); } gtk_editable_get_selection_bounds (editable, &bound, &pos); @@ -1072,12 +1062,12 @@ gnucash_sheet_insert_cb (GtkEditable *editable, const char *retval; int start_sel = 0, end_sel = 0; int old_position = *position; - const char* old_text = gtk_entry_get_text (GTK_ENTRY (sheet->entry)); + const char* old_text = gtk_entry_get_text (GTK_ENTRY(sheet->entry)); g_assert (GTK_WIDGET(editable) == sheet->entry); if (sheet->input_cancelled) { - g_signal_stop_emission_by_name (G_OBJECT (sheet->entry), + g_signal_stop_emission_by_name (G_OBJECT(sheet->entry), "insert_text"); return; } @@ -1109,7 +1099,7 @@ gnucash_sheet_insert_cb (GtkEditable *editable, * IMContext that would reset the selection, and we may need to keep it * so save it in the sheet values. */ - DEBUG ("%s, got %s", new_text, retval); + DEBUG("%s, got %s", new_text, retval); gnucash_sheet_set_position_and_selection (sheet, *position, start_sel, end_sel); @@ -1125,9 +1115,9 @@ gnucash_sheet_insert_cb (GtkEditable *editable, retval = old_text; /* reset IMContext if disallowed chars */ - gtk_entry_reset_im_context (GTK_ENTRY (sheet->entry)); + gtk_entry_reset_im_context (GTK_ENTRY(sheet->entry)); /* the entry was disallowed, so we stop the insert signal */ - g_signal_stop_emission_by_name (G_OBJECT (sheet->entry), + g_signal_stop_emission_by_name (G_OBJECT(sheet->entry), "insert_text"); } } @@ -1135,7 +1125,7 @@ gnucash_sheet_insert_cb (GtkEditable *editable, static char* delete_text (GnucashSheet *sheet, int pos, int bound) { - const char* old_text = gtk_entry_get_text (GTK_ENTRY (sheet->entry)); + const char* old_text = gtk_entry_get_text (GTK_ENTRY(sheet->entry)); int old_length = g_utf8_strlen (old_text, -1); char* begin, *end; char *retval = NULL; @@ -1176,7 +1166,7 @@ gnucash_sheet_delete_cb (GtkWidget *widget, int cursor_position = start_pos; int start_sel, end_sel; - gnucash_cursor_get_virt (GNUCASH_CURSOR (sheet->cursor), &virt_loc); + gnucash_cursor_get_virt (GNUCASH_CURSOR(sheet->cursor), &virt_loc); if (!gnc_table_virtual_loc_valid (table, virt_loc, FALSE)) return; @@ -1186,7 +1176,7 @@ gnucash_sheet_delete_cb (GtkWidget *widget, new_text = delete_text (sheet, start_pos, end_pos); new_text_len = strlen (new_text); - editable = GTK_EDITABLE (sheet->entry); + editable = GTK_EDITABLE(sheet->entry); gtk_editable_get_selection_bounds (editable, &start_sel, &end_sel); retval = gnc_table_modify_update (table, virt_loc, NULL, 0, @@ -1200,7 +1190,7 @@ gnucash_sheet_delete_cb (GtkWidget *widget, g_signal_stop_emission_by_name (G_OBJECT(sheet->entry), "delete_text"); - DEBUG ("%s", retval ? retval : "nothing"); + DEBUG("%s", retval ? retval : "nothing"); gnucash_sheet_set_position_and_selection (sheet, cursor_position, start_sel, end_sel); } @@ -1208,19 +1198,17 @@ gnucash_sheet_delete_cb (GtkWidget *widget, gboolean gnucash_sheet_draw_cb (GtkWidget *widget, cairo_t *cr, G_GNUC_UNUSED gpointer data) { - GnucashSheet *sheet = GNUCASH_SHEET (widget); + GnucashSheet *sheet = GNUCASH_SHEET(widget); GtkStyleContext *context = gtk_widget_get_style_context (widget); GtkAllocation alloc; - gboolean result; //FIXME - gtk_widget_get_allocation(widget, &alloc); + gtk_widget_get_allocation (widget, &alloc); gtk_style_context_save (context); gtk_style_context_add_class (context, GTK_STYLE_CLASS_BACKGROUND); gtk_render_background (context, cr, 0, 0, alloc.width, alloc.height); gtk_style_context_restore (context); -//FIXME what should be done with result being TRUE or FALSE gnucash_sheet_draw_internal (sheet, cr, &alloc); gnucash_sheet_draw_cursor (sheet->cursor, cr); @@ -1236,7 +1224,7 @@ gnucash_sheet_size_allocate (GtkWidget *widget, GtkAllocation *allocation) ENTER("widget=%p, allocation=%p", widget, allocation); if (GTK_WIDGET_CLASS(sheet_parent_class)->size_allocate) - (*GTK_WIDGET_CLASS (sheet_parent_class)->size_allocate) + (*GTK_WIDGET_CLASS(sheet_parent_class)->size_allocate) (widget, allocation); if (allocation->height == sheet->window_height && @@ -1255,7 +1243,7 @@ gnucash_sheet_size_allocate (GtkWidget *widget, GtkAllocation *allocation) sheet->window_height = allocation->height; sheet->window_width = allocation->width; - gnucash_cursor_configure (GNUCASH_CURSOR (sheet->cursor)); + gnucash_cursor_configure (GNUCASH_CURSOR(sheet->cursor)); gnc_header_reconfigure (GNC_HEADER(sheet->header_item)); gnucash_sheet_set_scroll_region (sheet); @@ -1269,8 +1257,7 @@ gnucash_sheet_size_allocate (GtkWidget *widget, GtkAllocation *allocation) virt_loc = sheet->table->current_cursor_loc; if (gnucash_sheet_cell_valid (sheet, virt_loc)) - gnucash_sheet_show_row (sheet, - virt_loc.vcell_loc.virt_row); + gnucash_sheet_show_row (sheet, virt_loc.vcell_loc.virt_row); } gnc_header_request_redraw (GNC_HEADER(sheet->header_item)); LEAVE(" "); @@ -1282,7 +1269,7 @@ gnucash_sheet_focus_in_event (GtkWidget *widget, GdkEventFocus *event) GnucashSheet *sheet = GNUCASH_SHEET(widget); if (GTK_WIDGET_CLASS(sheet_parent_class)->focus_in_event) - (*GTK_WIDGET_CLASS (sheet_parent_class)->focus_in_event) + (*GTK_WIDGET_CLASS(sheet_parent_class)->focus_in_event) (widget, event); gnc_item_edit_focus_in (GNC_ITEM_EDIT(sheet->item_editor)); @@ -1296,7 +1283,7 @@ gnucash_sheet_focus_out_event (GtkWidget *widget, GdkEventFocus *event) GnucashSheet *sheet = GNUCASH_SHEET(widget); if (GTK_WIDGET_CLASS(sheet_parent_class)->focus_out_event) - (*GTK_WIDGET_CLASS (sheet_parent_class)->focus_out_event) + (*GTK_WIDGET_CLASS(sheet_parent_class)->focus_out_event) (widget, event); gnc_item_edit_focus_out (GNC_ITEM_EDIT(sheet->item_editor)); @@ -1304,8 +1291,8 @@ gnucash_sheet_focus_out_event (GtkWidget *widget, GdkEventFocus *event) } static gboolean -gnucash_sheet_check_direct_update_cell(GnucashSheet *sheet, - const VirtualLocation virt_loc) +gnucash_sheet_check_direct_update_cell (GnucashSheet *sheet, + const VirtualLocation virt_loc) { const gchar *type_name; @@ -1327,14 +1314,14 @@ gnucash_sheet_start_editing_at_cursor (GnucashSheet *sheet) VirtualLocation virt_loc; g_return_if_fail (sheet != NULL); - g_return_if_fail (GNUCASH_IS_SHEET (sheet)); + g_return_if_fail (GNUCASH_IS_SHEET(sheet)); gnucash_cursor_get_virt (GNUCASH_CURSOR(sheet->cursor), &virt_loc); text = gnc_table_get_entry (sheet->table, virt_loc); gnc_item_edit_configure (GNC_ITEM_EDIT(sheet->item_editor)); - gtk_widget_show (GTK_WIDGET (sheet->item_editor)); + gtk_widget_show (GTK_WIDGET(sheet->item_editor)); gtk_entry_set_text (GTK_ENTRY(sheet->entry), text); @@ -1342,11 +1329,11 @@ gnucash_sheet_start_editing_at_cursor (GnucashSheet *sheet) /* set up the signals */ sheet->insert_signal = - g_signal_connect(G_OBJECT(sheet->entry), "insert_text", - G_CALLBACK(gnucash_sheet_insert_cb), sheet); + g_signal_connect (G_OBJECT(sheet->entry), "insert_text", + G_CALLBACK(gnucash_sheet_insert_cb), sheet); sheet->delete_signal = - g_signal_connect(G_OBJECT(sheet->entry), "delete_text", - G_CALLBACK(gnucash_sheet_delete_cb), sheet); + g_signal_connect (G_OBJECT(sheet->entry), "delete_text", + G_CALLBACK(gnucash_sheet_delete_cb), sheet); } static gboolean @@ -1354,11 +1341,11 @@ gnucash_sheet_button_release_event (GtkWidget *widget, GdkEventButton *event) { GnucashSheet *sheet; - g_return_val_if_fail(widget != NULL, TRUE); - g_return_val_if_fail(GNUCASH_IS_SHEET(widget), TRUE); - g_return_val_if_fail(event != NULL, TRUE); + g_return_val_if_fail (widget != NULL, TRUE); + g_return_val_if_fail (GNUCASH_IS_SHEET(widget), TRUE); + g_return_val_if_fail (event != NULL, TRUE); - sheet = GNUCASH_SHEET (widget); + sheet = GNUCASH_SHEET(widget); if (sheet->button != event->button) return FALSE; @@ -1381,11 +1368,11 @@ gnucash_scroll_event (GtkWidget *widget, GdkEventScroll *event) GtkAdjustment *vadj; gfloat v_value; - g_return_val_if_fail(widget != NULL, TRUE); - g_return_val_if_fail(GNUCASH_IS_SHEET(widget), TRUE); - g_return_val_if_fail(event != NULL, TRUE); + g_return_val_if_fail (widget != NULL, TRUE); + g_return_val_if_fail (GNUCASH_IS_SHEET(widget), TRUE); + g_return_val_if_fail (event != NULL, TRUE); - sheet = GNUCASH_SHEET (widget); + sheet = GNUCASH_SHEET(widget); vadj = sheet->vadj; v_value = gtk_adjustment_get_value (vadj); @@ -1409,7 +1396,7 @@ gnucash_scroll_event (GtkWidget *widget, GdkEventScroll *event) v_value = CLAMP(v_value, gtk_adjustment_get_lower (vadj), gtk_adjustment_get_upper (vadj) - gtk_adjustment_get_page_size (vadj)); - gtk_adjustment_set_value(vadj, v_value); + gtk_adjustment_set_value (vadj, v_value); if (event->delta_y == 0) { @@ -1452,21 +1439,18 @@ gnucash_sheet_button_press_event (GtkWidget *widget, GdkEventButton *event) { GnucashSheet *sheet; VirtualCell *vcell; - gboolean changed_cells; //FIXME - VirtualLocation cur_virt_loc; VirtualLocation new_virt_loc; - Table *table; gboolean abort_move; gboolean button_1; gboolean do_popup; - g_return_val_if_fail(widget != NULL, TRUE); - g_return_val_if_fail(GNUCASH_IS_SHEET(widget), TRUE); - g_return_val_if_fail(event != NULL, TRUE); + g_return_val_if_fail (widget != NULL, TRUE); + g_return_val_if_fail (GNUCASH_IS_SHEET(widget), TRUE); + g_return_val_if_fail (event != NULL, TRUE); - sheet = GNUCASH_SHEET (widget); + sheet = GNUCASH_SHEET(widget); table = sheet->table; if (sheet->button && (sheet->button != event->button)) @@ -1476,8 +1460,8 @@ gnucash_sheet_button_press_event (GtkWidget *widget, GdkEventButton *event) if (sheet->button == 3) sheet->button = 0; - if (!gtk_widget_has_focus(widget)) - gtk_widget_grab_focus(widget); + if (!gtk_widget_has_focus (widget)) + gtk_widget_grab_focus (widget); button_1 = FALSE; do_popup = FALSE; @@ -1504,8 +1488,8 @@ gnucash_sheet_button_press_event (GtkWidget *widget, GdkEventButton *event) sheet->button_x = -1; sheet->button_y = -1; - if (!gnucash_sheet_find_loc_by_pixel(sheet, - event->x, event->y, &new_virt_loc)) + if (!gnucash_sheet_find_loc_by_pixel (sheet, event->x, event->y, + &new_virt_loc)) return TRUE; sheet->button_x = event->x; @@ -1520,7 +1504,7 @@ gnucash_sheet_button_press_event (GtkWidget *widget, GdkEventButton *event) if (button_1) { - gtk_grab_add(widget); + gtk_grab_add (widget); sheet->grabbed = TRUE; } @@ -1543,7 +1527,6 @@ gnucash_sheet_button_press_event (GtkWidget *widget, GdkEventButton *event) if (abort_move) return TRUE; -//FIXME does something need to be done if changed_cells is true or false ? gnucash_sheet_cursor_move (sheet, new_virt_loc); // if clicked in ocument link cell, run call back @@ -1565,15 +1548,15 @@ gnucash_sheet_button_press_event (GtkWidget *widget, GdkEventButton *event) void gnucash_sheet_refresh_from_prefs (GnucashSheet *sheet) { - g_return_if_fail(sheet != NULL); - g_return_if_fail(GNUCASH_IS_SHEET(sheet)); + g_return_if_fail (sheet != NULL); + g_return_if_fail (GNUCASH_IS_SHEET(sheet)); sheet->use_gnc_color_theme = gnc_prefs_get_bool (GNC_PREFS_GROUP_GENERAL_REGISTER, GNC_PREF_USE_GNUCASH_COLOR_THEME); - sheet->use_horizontal_lines = gnc_prefs_get_bool(GNC_PREFS_GROUP_GENERAL_REGISTER, - GNC_PREF_DRAW_HOR_LINES); - sheet->use_vertical_lines = gnc_prefs_get_bool(GNC_PREFS_GROUP_GENERAL_REGISTER, - GNC_PREF_DRAW_VERT_LINES); + sheet->use_horizontal_lines = gnc_prefs_get_bool (GNC_PREFS_GROUP_GENERAL_REGISTER, + GNC_PREF_DRAW_HOR_LINES); + sheet->use_vertical_lines = gnc_prefs_get_bool (GNC_PREFS_GROUP_GENERAL_REGISTER, + GNC_PREF_DRAW_VERT_LINES); } static gboolean @@ -1590,7 +1573,7 @@ gnucash_sheet_clipboard_event (GnucashSheet *sheet, GdkEventKey *event) case GDK_KEY_c: if (event->state & GDK_MODIFIER_INTENT_PRIMARY_ACCELERATOR) { - gnc_item_edit_copy_clipboard(item_edit); + gnc_item_edit_copy_clipboard (item_edit); handled = TRUE; } break; @@ -1598,7 +1581,7 @@ gnucash_sheet_clipboard_event (GnucashSheet *sheet, GdkEventKey *event) case GDK_KEY_x: if (event->state & GDK_MODIFIER_INTENT_PRIMARY_ACCELERATOR) { - gnc_item_edit_cut_clipboard(item_edit); + gnc_item_edit_cut_clipboard (item_edit); handled = TRUE; } break; @@ -1618,12 +1601,11 @@ gnucash_sheet_clipboard_event (GnucashSheet *sheet, GdkEventKey *event) } else if (event->state & GDK_MODIFIER_INTENT_PRIMARY_ACCELERATOR) { - gnc_item_edit_copy_clipboard(item_edit); + gnc_item_edit_copy_clipboard (item_edit); handled = TRUE; } break; } - return handled; } @@ -1642,7 +1624,8 @@ gnucash_sheet_need_horizontal_scroll (GnucashSheet *sheet, hscroll_val = (gint) gtk_adjustment_get_value (sheet->hadj); // offset is the start of the cell for column - offset = gnc_header_get_cell_offset (GNC_HEADER(sheet->header_item), new_virt_loc->phys_col_offset, &cell_width); + offset = gnc_header_get_cell_offset (GNC_HEADER(sheet->header_item), + new_virt_loc->phys_col_offset, &cell_width); if (((offset + cell_width) > sheet->window_width) || (offset < hscroll_val)) gtk_adjustment_set_value (sheet->hadj, offset); @@ -1660,9 +1643,9 @@ process_motion_keys (GnucashSheet *sheet, GdkEventKey *event, gboolean *pass_on, { case GDK_KEY_Return: case GDK_KEY_KP_Enter: - g_signal_emit_by_name(sheet->reg, "activate_cursor"); - /* Clear the saved selection. */ - sheet->pos = sheet->bound; + g_signal_emit_by_name (sheet->reg, "activate_cursor"); + /* Clear the saved selection. */ + sheet->pos = sheet->bound; return TRUE; break; case GDK_KEY_Tab: @@ -1670,14 +1653,12 @@ process_motion_keys (GnucashSheet *sheet, GdkEventKey *event, gboolean *pass_on, if (event->state & GDK_SHIFT_MASK) { *direction = GNC_TABLE_TRAVERSE_LEFT; - gnc_table_move_tab (sheet->table, new_virt_loc, - FALSE); + gnc_table_move_tab (sheet->table, new_virt_loc, FALSE); } else { *direction = GNC_TABLE_TRAVERSE_RIGHT; - gnc_table_move_tab (sheet->table, new_virt_loc, - TRUE); + gnc_table_move_tab (sheet->table, new_virt_loc, TRUE); } break; case GDK_KEY_KP_Page_Up: @@ -1719,16 +1700,13 @@ process_motion_keys (GnucashSheet *sheet, GdkEventKey *event, gboolean *pass_on, if (event->keyval == GDK_KEY_Menu || (event->state & GDK_MODIFIER_INTENT_PRIMARY_ACCELERATOR)) { - GncItemEdit *item_edit; + GncItemEdit *item_edit = GNC_ITEM_EDIT(sheet->item_editor); - item_edit = GNC_ITEM_EDIT (sheet->item_editor); - - if (gnc_table_confirm_change (sheet->table, - cur_virt_loc)) + if (gnc_table_confirm_change (sheet->table, cur_virt_loc)) gnc_item_edit_show_popup (item_edit); - /* Clear the saved selection for the new cell. */ - sheet->pos = sheet->bound; + /* Clear the saved selection for the new cell. */ + sheet->pos = sheet->bound; return TRUE; } @@ -1742,17 +1720,17 @@ process_motion_keys (GnucashSheet *sheet, GdkEventKey *event, gboolean *pass_on, case GDK_KEY_Left: case GDK_KEY_Home: case GDK_KEY_End: - /* Clear the saved selection, we're not using it. */ - sheet->pos = sheet->bound; - *pass_on = TRUE; - break; + /* Clear the saved selection, we're not using it. */ + sheet->pos = sheet->bound; + *pass_on = TRUE; + break; default: - if (gnucash_sheet_clipboard_event(sheet, event)) - { - /* Clear the saved selection. */ - sheet->pos = sheet->bound; + if (gnucash_sheet_clipboard_event (sheet, event)) + { + /* Clear the saved selection. */ + sheet->pos = sheet->bound; return TRUE; - } + } *pass_on = TRUE; break; } @@ -1790,11 +1768,11 @@ gnucash_sheet_key_press_event_internal (GtkWidget *widget, GdkEventKey *event) int distance; GdkModifierType modifiers = gtk_accelerator_get_default_mod_mask (); - g_return_val_if_fail(widget != NULL, TRUE); - g_return_val_if_fail(GNUCASH_IS_SHEET(widget), TRUE); - g_return_val_if_fail(event != NULL, TRUE); + g_return_val_if_fail (widget != NULL, TRUE); + g_return_val_if_fail (GNUCASH_IS_SHEET(widget), TRUE); + g_return_val_if_fail (event != NULL, TRUE); - sheet = GNUCASH_SHEET (widget); + sheet = GNUCASH_SHEET(widget); table = sheet->table; /* Don't respond to stand-alone modifier keys. */ if (event->is_modifier) @@ -1804,10 +1782,10 @@ gnucash_sheet_key_press_event_internal (GtkWidget *widget, GdkEventKey *event) */ gnucash_sheet_set_selection_from_entry (sheet); /* Direct_event gets first whack */ - if (gnucash_sheet_direct_event(sheet, (GdkEvent *) event)) + if (gnucash_sheet_direct_event (sheet, (GdkEvent *) event)) return TRUE; /* Followed by the input method */ - if (gtk_entry_im_context_filter_keypress (GTK_ENTRY (sheet->entry), event)) + if (gtk_entry_im_context_filter_keypress (GTK_ENTRY(sheet->entry), event)) { /* Restore the saved cursor position in case GtkEntry's IMContext * handlers messed with it after we set it in our insert_cb. @@ -1841,8 +1819,8 @@ gnucash_sheet_key_press_event_internal (GtkWidget *widget, GdkEventKey *event) if (abort_move) { // Make sure the sheet is the focus - if (!gtk_widget_has_focus(GTK_WIDGET (sheet))) - gtk_widget_grab_focus (GTK_WIDGET (sheet)); + if (!gtk_widget_has_focus (GTK_WIDGET(sheet))) + gtk_widget_grab_focus (GTK_WIDGET(sheet)); return TRUE; } @@ -1860,11 +1838,11 @@ gnucash_sheet_key_press_event (GtkWidget *widget, GdkEventKey *event) GnucashSheet *sheet; GtkEditable *editable = NULL; - g_return_val_if_fail(widget != NULL, TRUE); - g_return_val_if_fail(GNUCASH_IS_SHEET(widget), TRUE); - g_return_val_if_fail(event != NULL, TRUE); + g_return_val_if_fail (widget != NULL, TRUE); + g_return_val_if_fail (GNUCASH_IS_SHEET(widget), TRUE); + g_return_val_if_fail (event != NULL, TRUE); - sheet = GNUCASH_SHEET (widget); + sheet = GNUCASH_SHEET(widget); editable = GTK_EDITABLE(sheet->entry); /* bug#60582 comment#27 2 save shift state to enable and @@ -1884,13 +1862,13 @@ gnucash_sheet_key_press_event (GtkWidget *widget, GdkEventKey *event) } static gint -gnucash_sheet_key_release_event(GtkWidget *widget, GdkEventKey *event) +gnucash_sheet_key_release_event (GtkWidget *widget, GdkEventKey *event) { GnucashSheet *sheet; - g_return_val_if_fail(widget != NULL, TRUE); - g_return_val_if_fail(GNUCASH_IS_SHEET(widget), TRUE); - g_return_val_if_fail(event != NULL, TRUE); + g_return_val_if_fail (widget != NULL, TRUE); + g_return_val_if_fail (GNUCASH_IS_SHEET(widget), TRUE); + g_return_val_if_fail (event != NULL, TRUE); return FALSE; } @@ -1903,7 +1881,7 @@ gnucash_sheet_goto_virt_loc (GnucashSheet *sheet, VirtualLocation virt_loc) gboolean abort_move; VirtualLocation cur_virt_loc; - g_return_if_fail(GNUCASH_IS_SHEET(sheet)); + g_return_if_fail (GNUCASH_IS_SHEET(sheet)); table = sheet->table; @@ -1943,7 +1921,7 @@ GncItemEdit *gnucash_sheet_get_item_edit (GnucashSheet *sheet) if (sheet->item_editor == NULL) return NULL; else - return GNC_ITEM_EDIT (sheet->item_editor); + return GNC_ITEM_EDIT(sheet->item_editor); } @@ -1991,10 +1969,9 @@ gnucash_sheet_block_set_from_table (GnucashSheet *sheet, if (block->style == NULL) { block->style = style; - gnucash_sheet_style_ref(sheet, block->style); + gnucash_sheet_style_ref (sheet, block->style); return TRUE; } - return FALSE; } @@ -2069,7 +2046,7 @@ gnucash_sheet_col_max_width (GnucashSheet *sheet, gint virt_col, gint cell_col) { width += gnc_item_edit_get_button_width (item_edit) + 2; // add 2 for the button margin } - max = MAX (max, width); + max = MAX(max, width); } } } @@ -2083,23 +2060,20 @@ void gnucash_sheet_set_scroll_region (GnucashSheet *sheet) { guint new_h, new_w; -// GtkWidget *widget; GtkAllocation alloc; guint old_h, old_w; if (!sheet) return; -// widget = GTK_WIDGET(sheet); - if (!sheet->header_item || !GNC_HEADER(sheet->header_item)->style) return; gtk_layout_get_size (GTK_LAYOUT(sheet), &old_w, &old_h); gtk_widget_get_allocation (GTK_WIDGET(sheet), &alloc); - new_h = MAX (sheet->height, alloc.height); - new_w = MAX (sheet->width, alloc.width); + new_h = MAX(sheet->height, alloc.height); + new_w = MAX(sheet->width, alloc.width); if (new_w != old_w || new_h != old_h) gtk_layout_set_size (GTK_LAYOUT(sheet), new_w, new_h); @@ -2186,7 +2160,6 @@ gnucash_sheet_recompute_block_offsets (GnucashSheet *sheet) if (i > 0 && block && block->visible) height += block->style->dimensions->height; } - sheet->height = height; } @@ -2225,7 +2198,7 @@ gnucash_sheet_table_load (GnucashSheet *sheet, gboolean do_scroll) vcell->cellblock->num_rows); } - gnc_header_set_header_rows (GNC_HEADER (sheet->header_item), + gnc_header_set_header_rows (GNC_HEADER(sheet->header_item), num_header_phys_rows); gnc_header_reconfigure (GNC_HEADER(sheet->header_item)); @@ -2321,8 +2294,8 @@ gnucash_sheet_class_init (GnucashSheetClass *klass) GObjectClass *gobject_class; GtkWidgetClass *widget_class; - gobject_class = G_OBJECT_CLASS (klass); - widget_class = GTK_WIDGET_CLASS (klass); + gobject_class = G_OBJECT_CLASS(klass); + widget_class = GTK_WIDGET_CLASS(klass); gtk_widget_class_set_css_name (GTK_WIDGET_CLASS(klass), "gnc-id-sheet"); @@ -2376,11 +2349,12 @@ gnucash_sheet_init (GnucashSheet *sheet) gnucash_sheet_block_construct, gnucash_sheet_block_destroy, sheet); - gtk_widget_add_events(GTK_WIDGET(sheet), (GDK_EXPOSURE_MASK - | GDK_BUTTON_PRESS_MASK - | GDK_BUTTON_RELEASE_MASK - | GDK_POINTER_MOTION_MASK - | GDK_POINTER_MOTION_HINT_MASK)); + gtk_widget_add_events (GTK_WIDGET(sheet), + (GDK_EXPOSURE_MASK + | GDK_BUTTON_PRESS_MASK + | GDK_BUTTON_RELEASE_MASK + | GDK_POINTER_MOTION_MASK + | GDK_POINTER_MOTION_HINT_MASK)); /* setup IMContext */ sheet->direct_update_cell = FALSE; @@ -2422,10 +2396,11 @@ gnucash_sheet_get_type (void) static gboolean gnucash_sheet_tooltip (GtkWidget *widget, gint x, gint y, - gboolean keyboard_mode, GtkTooltip *tooltip, - gpointer user_data) + gboolean keyboard_mode, + GtkTooltip *tooltip, + gpointer user_data) { - GnucashSheet *sheet = GNUCASH_SHEET (widget); + GnucashSheet *sheet = GNUCASH_SHEET(widget); Table *table = sheet->table; VirtualLocation virt_loc; gchar *tooltip_text; @@ -2497,7 +2472,7 @@ gnucash_sheet_new (Table *table) sheet->cursor = gnucash_cursor_new (sheet); /* set up the editor */ - sheet->item_editor = gnc_item_edit_new(sheet); + sheet->item_editor = gnc_item_edit_new (sheet); /* some register data */ sheet->dimensions_hash_table = g_hash_table_new_full (g_int_hash, @@ -2506,10 +2481,10 @@ gnucash_sheet_new (Table *table) /* add tooltips to sheet */ gtk_widget_set_has_tooltip (GTK_WIDGET(sheet), TRUE); - g_signal_connect(G_OBJECT(sheet), "query-tooltip", - G_CALLBACK(gnucash_sheet_tooltip), NULL); + g_signal_connect (G_OBJECT(sheet), "query-tooltip", + G_CALLBACK(gnucash_sheet_tooltip), NULL); - gnucash_sheet_refresh_from_prefs(sheet); + gnucash_sheet_refresh_from_prefs (sheet); return GTK_WIDGET(sheet); } diff --git a/gnucash/register/register-gnome/gnucash-sheet.h b/gnucash/register/register-gnome/gnucash-sheet.h index 9ed25c9150..2308ba1f4a 100644 --- a/gnucash/register/register-gnome/gnucash-sheet.h +++ b/gnucash/register/register-gnome/gnucash-sheet.h @@ -75,16 +75,16 @@ void gnucash_sheet_redraw_help (GnucashSheet *sheet); void gnucash_sheet_redraw_block (GnucashSheet *sheet, VirtualCellLocation vcell_loc); -const char * gnucash_sheet_modify_current_cell(GnucashSheet *sheet, - const gchar *new_text); +const char * gnucash_sheet_modify_current_cell (GnucashSheet *sheet, + const gchar *new_text); gboolean gnucash_sheet_block_set_from_table (GnucashSheet *sheet, - VirtualCellLocation vcell_loc); + VirtualCellLocation vcell_loc); void gnucash_sheet_set_scroll_region (GnucashSheet *sheet); void gnucash_sheet_cursor_set_from_table (GnucashSheet *sheet, - gboolean do_scroll); + gboolean do_scroll); void gnucash_sheet_compute_visible_range (GnucashSheet *sheet); diff --git a/gnucash/register/register-gnome/gnucash-sheetP.h b/gnucash/register/register-gnome/gnucash-sheetP.h index 176a57c618..dd4be506a1 100644 --- a/gnucash/register/register-gnome/gnucash-sheetP.h +++ b/gnucash/register/register-gnome/gnucash-sheetP.h @@ -116,9 +116,6 @@ GncItemEdit *gnucash_sheet_get_item_edit (GnucashSheet *sheet); void gnucash_sheet_set_popup (GnucashSheet *sheet, GtkWidget *popup, gpointer data); void gnucash_sheet_goto_virt_loc (GnucashSheet *sheet, VirtualLocation virt_loc); void gnucash_sheet_refresh_from_prefs (GnucashSheet *sheet); -//Table *gnucash_sheet_get_table (GnucashSheet *sheet); -//gint gnucash_sheet_get_num_virt_rows (GnucashSheet *sheet); -//gint gnucash_sheet_get_num_virt_cols (GnucashSheet *sheet); gboolean gnucash_sheet_find_loc_by_pixel (GnucashSheet *sheet, gint x, gint y, VirtualLocation *vcell_loc); From 1cce12f8beb3983e4fc61c7a7d382cdd0cfbd4fd Mon Sep 17 00:00:00 2001 From: Ralf Habacker Date: Mon, 6 Jul 2020 20:03:41 +0200 Subject: [PATCH 140/167] Add script to add slots with key 'equity-type' and value 'opening-balance' to detected opening balance accounts --- util/add-opening-balances | 118 ++++++++++++++++++++++++++++++++++++++ 1 file changed, 118 insertions(+) create mode 100755 util/add-opening-balances diff --git a/util/add-opening-balances b/util/add-opening-balances new file mode 100755 index 0000000000..692a0d1902 --- /dev/null +++ b/util/add-opening-balances @@ -0,0 +1,118 @@ +#!/bin/sh +# +# Find opening balance accounts by translations and add slot with key 'opening-balance' to make them translation independent +# +# @author Ralf Habacker +# +r=$(realpath $0) +r=$(dirname $r) +r=$(dirname $r) + +# debug +#grep -rn -A1 '"Opening Balances"' $r/po | grep msgstr > translation-of-opening-balance-with-files.txt +#grep -rnf translation-of-opening-balance.txt $r/data/accounts > all-opening-balances-accounts.txt + +if test -z "$1" || test "$1" == "--collect"; then + # collect all translations for 'Opening Balances' + grep -rn -A1 '"Opening Balances"' $r/po | grep msgstr | gawk '{ $1=""; print $0}' | sed 's,^ ,,g;s,",,g' | grep -v "^$" | sed 's,^,,g;s,$,.*,g' > translation-of-opening-balance.txt + + # collect all translations for 'Opening Balances' with optional last character + grep -rn -A1 '"Opening Balances"' $r/po | grep msgstr | gawk '{ $1=""; print $0}' | sed 's,^ ,,g;s,",,g' | grep -v "^$" | sed 's,^,,g;s,$,*,g' >> translation-of-opening-balance.txt + + # add custom strings + cat << EOF >> translation-of-opening-balance.txt +Openingsbalans +9000 Saldenvortrag Sachkonten +9000 Saldenvorträge Sachkonten +Saldenvorträge Sachkonten +EOF + +fi + +# collect all files that contains a translation for 'Opening Balances' +for i in $(grep -rnf translation-of-opening-balance.txt $r/data/accounts | sed 's,:[ ]*,:,g;s, ,#,g'); do + #echo $i + file=$(echo $i | sed 's,:.*$,,g') + pattern=$(echo $i | sed 's,^.*:<,<,g;s,#, ,g') + #echo "searching for $pattern in $file" + # add equity-type slot + gawk ' +BEGIN { + found = 0; + slotadded = 0; + slotpresent = 0; + patternfound = 0; +} + +# search for account name +$0 ~ PATTERN { + slotadded = 0 + slotpresent = 0 + patternfound = 1 + replace = 1 + #print "" +} + +# opening-balance slot is already available +replace && $1 == "equity-type" { + slotkeypresent = 1 +} + +slotkeypresent && $1 == "opening-balance" { + replace = 0 + slotpresent = 1 +} + +#exclude parent named like opening balance account +replace && $1 == "placeholder" { + replace = 0 +} + +# add new slots tag +replace && $1 == "" { + if (slotkeypresent) { + print FILE ": slot equity-type already present with different value, could not tag '" PATTERN "' as opening balance account" > /dev/stderr + } else { + print " " + print " " + print " equity-type" + print " opening-balance" + print " " + print " " + slotadded = 1 + replace = 0 + } +} + +{ + print $0; +} + +END { + if (!patternfound) + print FILE ": opening balance account not found with pattern " PATTERN > /dev/stderr + #if (!slotpresent && !slotadded) + #print FILE " opening balance account not found with pattern " PATTERN > /dev/stderr +} + ' "PATTERN=$pattern" $file > $file.new + mv $file.new $file +done + +oba="" +nooba="" +for i in $(find $r/data/accounts -name '*.gnucash-xea'); do + o=$(grep -Hn "opening-balance" $i) + if test -z "$o"; then + nooba="$nooba\n$i" + else + oba="$oba\n$i" + fi +done + +echo "------------------------------------------------------------" +echo -e "The following files do not have an account with slot key 'opening-balance'" +echo -e $nooba +echo +echo "------------------------------------------------------------" +echo -e "The following files have an account with slot key 'opening-balance'" +echo -e $oba From 573f7aaa0b427fda4a1874b5c35b95e4ad48b816 Mon Sep 17 00:00:00 2001 From: Ralf Habacker Date: Tue, 15 Sep 2020 03:11:22 +0200 Subject: [PATCH 141/167] Add slot "equity-type" with value "opening-balance" to account templates The slots are added by running `util/add-opening-balances` on the gnucash sources. --- data/accounts/C/acctchrt_business.gnucash-xea | 6 ++++++ data/accounts/C/acctchrt_checkbook.gnucash-xea | 6 ++++++ data/accounts/C/acctchrt_common.gnucash-xea | 6 ++++++ data/accounts/C/acctchrt_full.gnucash-xea | 6 ++++++ data/accounts/da/acctchrt_common.gnucash-xea | 6 ++++++ data/accounts/de_AT/acctchrt_business.gnucash-xea | 6 ++++++ data/accounts/de_AT/acctchrt_common.gnucash-xea | 6 ++++++ data/accounts/de_CH/acctchrt_common.gnucash-xea | 6 ++++++ data/accounts/de_DE/acctchrt_common.gnucash-xea | 6 ++++++ data/accounts/de_DE/acctchrt_full.gnucash-xea | 6 ++++++ data/accounts/de_DE/acctchrt_skr03.gnucash-xea | 6 ++++++ data/accounts/de_DE/acctchrt_skr04.gnucash-xea | 6 ++++++ data/accounts/de_DE/acctchrt_skr49.gnucash-xea | 6 ++++++ data/accounts/el_GR/acctchrt_common.gnucash-xea | 6 ++++++ data/accounts/en_GB/acctchrt_business.gnucash-xea | 6 ++++++ data/accounts/en_GB/acctchrt_checkbook.gnucash-xea | 6 ++++++ data/accounts/en_GB/acctchrt_common.gnucash-xea | 6 ++++++ data/accounts/en_GB/acctchrt_full.gnucash-xea | 6 ++++++ data/accounts/en_GB/uk-vat.gnucash-xea | 6 ++++++ data/accounts/en_IN/acctchrt_gstindia.gnucash-xea | 6 ++++++ data/accounts/es_ES/acctchrt_common.gnucash-xea | 6 ++++++ data/accounts/es_MX/acctchrt_common.gnucash-xea | 6 ++++++ data/accounts/fi_FI/acctchrt_ry.gnucash-xea | 6 ++++++ data/accounts/fr_BE/acctchrt_business.gnucash-xea | 6 ++++++ data/accounts/fr_BE/acctchrt_common.gnucash-xea | 6 ++++++ data/accounts/fr_CH/acctchrt_business.gnucash-xea | 6 ++++++ data/accounts/fr_CH/acctchrt_common.gnucash-xea | 6 ++++++ data/accounts/fr_FR/acctchrt_business.gnucash-xea | 6 ++++++ data/accounts/fr_FR/acctchrt_common.gnucash-xea | 6 ++++++ data/accounts/he/acctchrt_checkbook.gnucash-xea | 6 ++++++ data/accounts/hr/acctchrt_checkbook.gnucash-xea | 6 ++++++ data/accounts/hr/acctchrt_common.gnucash-xea | 6 ++++++ data/accounts/hu/acctchrt_business.gnucash-xea | 6 ++++++ data/accounts/hu/acctchrt_checkbook.gnucash-xea | 6 ++++++ data/accounts/hu/acctchrt_common.gnucash-xea | 6 ++++++ data/accounts/it/acctchrt_checkbook.gnucash-xea | 6 ++++++ data/accounts/it/acctchrt_common.gnucash-xea | 6 ++++++ data/accounts/ja/acctchrt_business.gnucash-xea | 6 ++++++ data/accounts/ja/acctchrt_checkbook.gnucash-xea | 6 ++++++ data/accounts/ja/acctchrt_common.gnucash-xea | 6 ++++++ data/accounts/ja/acctchrt_full.gnucash-xea | 6 ++++++ data/accounts/lv/acctchrt_checkbook.gnucash-xea | 6 ++++++ data/accounts/lv/acctchrt_common.gnucash-xea | 6 ++++++ data/accounts/lv/acctchrt_full.gnucash-xea | 6 ++++++ data/accounts/nb/acctchrt_common.gnucash-xea | 6 ++++++ data/accounts/nb/acctchrt_full.gnucash-xea | 6 ++++++ data/accounts/nl/acctchrt_checkbook.gnucash-xea | 6 ++++++ data/accounts/nl/acctchrt_full.gnucash-xea | 6 ++++++ data/accounts/pl/acctchrt_business.gnucash-xea | 6 ++++++ data/accounts/pl/acctchrt_checkbook.gnucash-xea | 6 ++++++ data/accounts/pl/acctchrt_common.gnucash-xea | 6 ++++++ data/accounts/pl/acctchrt_full.gnucash-xea | 6 ++++++ data/accounts/pt_BR/acctchrt_common.gnucash-xea | 6 ++++++ data/accounts/pt_PT/acctchrt_common.gnucash-xea | 6 ++++++ data/accounts/ru/acctchrt_common.gnucash-xea | 6 ++++++ data/accounts/tr_TR/acctchrt_TEKDUZ.gnucash-xea | 12 ++++++++++++ data/accounts/zh_CN/acctchrt_business.gnucash-xea | 6 ++++++ data/accounts/zh_CN/acctchrt_checkbook.gnucash-xea | 6 ++++++ data/accounts/zh_CN/acctchrt_common.gnucash-xea | 6 ++++++ data/accounts/zh_CN/acctchrt_full.gnucash-xea | 6 ++++++ 60 files changed, 366 insertions(+) diff --git a/data/accounts/C/acctchrt_business.gnucash-xea b/data/accounts/C/acctchrt_business.gnucash-xea index d770547dea..b21e191f68 100644 --- a/data/accounts/C/acctchrt_business.gnucash-xea +++ b/data/accounts/C/acctchrt_business.gnucash-xea @@ -1422,6 +1422,12 @@ 100 Opening Balances 87e02e757b32b3059652cfe09fe9ae00 + + + equity-type + opening-balance + + Retained Earnings diff --git a/data/accounts/C/acctchrt_checkbook.gnucash-xea b/data/accounts/C/acctchrt_checkbook.gnucash-xea index f3c2792192..569543223d 100644 --- a/data/accounts/C/acctchrt_checkbook.gnucash-xea +++ b/data/accounts/C/acctchrt_checkbook.gnucash-xea @@ -147,5 +147,11 @@ 100 Opening Balances b8b72887da1adf889f171923d23efbdd + + + equity-type + opening-balance + + diff --git a/data/accounts/C/acctchrt_common.gnucash-xea b/data/accounts/C/acctchrt_common.gnucash-xea index 883f0cf71f..0cfb6360fb 100644 --- a/data/accounts/C/acctchrt_common.gnucash-xea +++ b/data/accounts/C/acctchrt_common.gnucash-xea @@ -783,6 +783,12 @@ Opening Balances 3ab6a6d97b216c11333e48aa2b749a91 + + + equity-type + opening-balance + + diff --git a/data/accounts/C/acctchrt_full.gnucash-xea b/data/accounts/C/acctchrt_full.gnucash-xea index acc2a8bac8..7ffe7e09d7 100644 --- a/data/accounts/C/acctchrt_full.gnucash-xea +++ b/data/accounts/C/acctchrt_full.gnucash-xea @@ -1396,6 +1396,12 @@ Opening Balances 68d4074f91295062c0b773b4ae8de6bd + + + equity-type + opening-balance + + diff --git a/data/accounts/da/acctchrt_common.gnucash-xea b/data/accounts/da/acctchrt_common.gnucash-xea index 05c98d6f94..efcdd580da 100644 --- a/data/accounts/da/acctchrt_common.gnucash-xea +++ b/data/accounts/da/acctchrt_common.gnucash-xea @@ -684,5 +684,11 @@ Åbningssaldi 3ab6a6d97b216c11333e48aa2b749a91 + + + equity-type + opening-balance + + diff --git a/data/accounts/de_AT/acctchrt_business.gnucash-xea b/data/accounts/de_AT/acctchrt_business.gnucash-xea index c8b7afa186..3ce69178cc 100644 --- a/data/accounts/de_AT/acctchrt_business.gnucash-xea +++ b/data/accounts/de_AT/acctchrt_business.gnucash-xea @@ -964,5 +964,11 @@ 100 Anfangsbestand 1972cce2e2364f95b2b0bc014502661d + + + equity-type + opening-balance + + diff --git a/data/accounts/de_AT/acctchrt_common.gnucash-xea b/data/accounts/de_AT/acctchrt_common.gnucash-xea index 2a361f4e11..b364ccd262 100644 --- a/data/accounts/de_AT/acctchrt_common.gnucash-xea +++ b/data/accounts/de_AT/acctchrt_common.gnucash-xea @@ -964,5 +964,11 @@ 100 Anfangsbestand 1972cce2e2364f95b2b0bc014502661d + + + equity-type + opening-balance + + diff --git a/data/accounts/de_CH/acctchrt_common.gnucash-xea b/data/accounts/de_CH/acctchrt_common.gnucash-xea index 005489c239..42bb958cca 100644 --- a/data/accounts/de_CH/acctchrt_common.gnucash-xea +++ b/data/accounts/de_CH/acctchrt_common.gnucash-xea @@ -739,5 +739,11 @@ Anfangsbestand 1972cce2e2364f95b2b0bc014502661d + + + equity-type + opening-balance + + diff --git a/data/accounts/de_DE/acctchrt_common.gnucash-xea b/data/accounts/de_DE/acctchrt_common.gnucash-xea index 461249d9ac..9db3399e98 100644 --- a/data/accounts/de_DE/acctchrt_common.gnucash-xea +++ b/data/accounts/de_DE/acctchrt_common.gnucash-xea @@ -843,6 +843,12 @@ Anfangsbestand 1972cce2e2364f95b2b0bc014502661d + + + equity-type + opening-balance + + diff --git a/data/accounts/de_DE/acctchrt_full.gnucash-xea b/data/accounts/de_DE/acctchrt_full.gnucash-xea index dde38e39d0..8b80d3d597 100644 --- a/data/accounts/de_DE/acctchrt_full.gnucash-xea +++ b/data/accounts/de_DE/acctchrt_full.gnucash-xea @@ -1192,6 +1192,12 @@ Anfangsbestand 320d3cf62b418db6281c3cd8ec2e95c7 + + + equity-type + opening-balance + + diff --git a/data/accounts/de_DE/acctchrt_skr03.gnucash-xea b/data/accounts/de_DE/acctchrt_skr03.gnucash-xea index f774dbd932..3107b1301b 100644 --- a/data/accounts/de_DE/acctchrt_skr03.gnucash-xea +++ b/data/accounts/de_DE/acctchrt_skr03.gnucash-xea @@ -1269,6 +1269,12 @@ 100 9000 26c3f10c1c7621661c1b813d6141280d + + + equity-type + opening-balance + + 9008 Saldenvorträge Debitoren diff --git a/data/accounts/de_DE/acctchrt_skr04.gnucash-xea b/data/accounts/de_DE/acctchrt_skr04.gnucash-xea index 8c78b57fdc..17beccb937 100644 --- a/data/accounts/de_DE/acctchrt_skr04.gnucash-xea +++ b/data/accounts/de_DE/acctchrt_skr04.gnucash-xea @@ -15678,6 +15678,12 @@ 100 9000 e57d948c9a884e179bd090118b9212f8 + + + equity-type + opening-balance + + Saldenvorträge Debitoren diff --git a/data/accounts/de_DE/acctchrt_skr49.gnucash-xea b/data/accounts/de_DE/acctchrt_skr49.gnucash-xea index 6351998b78..7f976f9fa2 100644 --- a/data/accounts/de_DE/acctchrt_skr49.gnucash-xea +++ b/data/accounts/de_DE/acctchrt_skr49.gnucash-xea @@ -14305,6 +14305,12 @@ Den Bereich habe ich mit „9999“ bezeichet, damit er unterhalb der regulären ffca2686cb9963bea1089b796763dda0 + + + equity-type + opening-balance + + 9001-9007 Saldenvorträge, Sachkonten diff --git a/data/accounts/el_GR/acctchrt_common.gnucash-xea b/data/accounts/el_GR/acctchrt_common.gnucash-xea index 80a881f5f5..be832eab32 100644 --- a/data/accounts/el_GR/acctchrt_common.gnucash-xea +++ b/data/accounts/el_GR/acctchrt_common.gnucash-xea @@ -786,5 +786,11 @@ Αρχικά υπόλοιπα 3ab6a6d97b216c11333e48aa2b749a91 + + + equity-type + opening-balance + + diff --git a/data/accounts/en_GB/acctchrt_business.gnucash-xea b/data/accounts/en_GB/acctchrt_business.gnucash-xea index 436b1bb7f8..2504a208ff 100644 --- a/data/accounts/en_GB/acctchrt_business.gnucash-xea +++ b/data/accounts/en_GB/acctchrt_business.gnucash-xea @@ -1420,6 +1420,12 @@ 100 Opening Balances 87e02e757b32b3059652cfe09fe9ae00 + + + equity-type + opening-balance + + Retained Earnings diff --git a/data/accounts/en_GB/acctchrt_checkbook.gnucash-xea b/data/accounts/en_GB/acctchrt_checkbook.gnucash-xea index 91167f3305..9d8227f3f8 100644 --- a/data/accounts/en_GB/acctchrt_checkbook.gnucash-xea +++ b/data/accounts/en_GB/acctchrt_checkbook.gnucash-xea @@ -149,6 +149,12 @@ 100 Opening Balances b8b72887da1adf889f171923d23efbdd + + + equity-type + opening-balance + + diff --git a/data/accounts/en_GB/acctchrt_common.gnucash-xea b/data/accounts/en_GB/acctchrt_common.gnucash-xea index c679f09497..dc0557988e 100644 --- a/data/accounts/en_GB/acctchrt_common.gnucash-xea +++ b/data/accounts/en_GB/acctchrt_common.gnucash-xea @@ -781,5 +781,11 @@ Opening Balances 3ab6a6d97b216c11333e48aa2b749a91 + + + equity-type + opening-balance + + diff --git a/data/accounts/en_GB/acctchrt_full.gnucash-xea b/data/accounts/en_GB/acctchrt_full.gnucash-xea index 4f6dd11a1f..c422a5426e 100644 --- a/data/accounts/en_GB/acctchrt_full.gnucash-xea +++ b/data/accounts/en_GB/acctchrt_full.gnucash-xea @@ -1393,5 +1393,11 @@ Opening Balances 68d4074f91295062c0b773b4ae8de6bd + + + equity-type + opening-balance + + diff --git a/data/accounts/en_GB/uk-vat.gnucash-xea b/data/accounts/en_GB/uk-vat.gnucash-xea index 8222baa89d..1cfe3a6f19 100644 --- a/data/accounts/en_GB/uk-vat.gnucash-xea +++ b/data/accounts/en_GB/uk-vat.gnucash-xea @@ -398,6 +398,12 @@ 100 c0b1160d2dd6b3059acc5083348b282f + + + equity-type + opening-balance + + Grants diff --git a/data/accounts/en_IN/acctchrt_gstindia.gnucash-xea b/data/accounts/en_IN/acctchrt_gstindia.gnucash-xea index 8530719db4..8ec978f4e8 100644 --- a/data/accounts/en_IN/acctchrt_gstindia.gnucash-xea +++ b/data/accounts/en_IN/acctchrt_gstindia.gnucash-xea @@ -1137,6 +1137,12 @@ 100 Opening Balances 599b08659324698f0177ce3dbb513e5f + + + equity-type + opening-balance + + Reserves and Surplus diff --git a/data/accounts/es_ES/acctchrt_common.gnucash-xea b/data/accounts/es_ES/acctchrt_common.gnucash-xea index 7eac72d745..64c40c516c 100644 --- a/data/accounts/es_ES/acctchrt_common.gnucash-xea +++ b/data/accounts/es_ES/acctchrt_common.gnucash-xea @@ -753,5 +753,11 @@ Balances de apertura 3ab6a6d97b216c11333e48aa2b749a91 + + + equity-type + opening-balance + + diff --git a/data/accounts/es_MX/acctchrt_common.gnucash-xea b/data/accounts/es_MX/acctchrt_common.gnucash-xea index 862ce6a937..86e61a49d6 100644 --- a/data/accounts/es_MX/acctchrt_common.gnucash-xea +++ b/data/accounts/es_MX/acctchrt_common.gnucash-xea @@ -830,5 +830,11 @@ Balances de apertura 3ab6a6d97b216c11333e48aa2b749a91 + + + equity-type + opening-balance + + diff --git a/data/accounts/fi_FI/acctchrt_ry.gnucash-xea b/data/accounts/fi_FI/acctchrt_ry.gnucash-xea index 2e906c66a1..e33ae8d99e 100644 --- a/data/accounts/fi_FI/acctchrt_ry.gnucash-xea +++ b/data/accounts/fi_FI/acctchrt_ry.gnucash-xea @@ -397,6 +397,12 @@ 100 Opening Balances 7081f24a5685d4dfcb8f143f0b7ee31d + + + equity-type + opening-balance + + diff --git a/data/accounts/fr_BE/acctchrt_business.gnucash-xea b/data/accounts/fr_BE/acctchrt_business.gnucash-xea index d851309239..8878ee26ac 100644 --- a/data/accounts/fr_BE/acctchrt_business.gnucash-xea +++ b/data/accounts/fr_BE/acctchrt_business.gnucash-xea @@ -1378,6 +1378,12 @@ Les utilisateurs gérant une entreprise sélectionneront ceci au lieu des autres 100 Soldes initiaux 87e02e757b32b3059652cfe09fe9ae00 + + + equity-type + opening-balance + + Gains enregistrés diff --git a/data/accounts/fr_BE/acctchrt_common.gnucash-xea b/data/accounts/fr_BE/acctchrt_common.gnucash-xea index 3d49f4c914..a14410017d 100644 --- a/data/accounts/fr_BE/acctchrt_common.gnucash-xea +++ b/data/accounts/fr_BE/acctchrt_common.gnucash-xea @@ -750,5 +750,11 @@ Soldes initiaux 3ab6a6d97b216c11333e48aa2b749a91 + + + equity-type + opening-balance + + diff --git a/data/accounts/fr_CH/acctchrt_business.gnucash-xea b/data/accounts/fr_CH/acctchrt_business.gnucash-xea index 9dfa99cf45..001bb3c8a4 100644 --- a/data/accounts/fr_CH/acctchrt_business.gnucash-xea +++ b/data/accounts/fr_CH/acctchrt_business.gnucash-xea @@ -1378,6 +1378,12 @@ Les utilisateurs gérant une entreprise sélectionneront ceci au lieu des autres 100 Soldes initiaux 87e02e757b32b3059652cfe09fe9ae00 + + + equity-type + opening-balance + + Gains enregistrés diff --git a/data/accounts/fr_CH/acctchrt_common.gnucash-xea b/data/accounts/fr_CH/acctchrt_common.gnucash-xea index b245735fbf..acfd3481e5 100644 --- a/data/accounts/fr_CH/acctchrt_common.gnucash-xea +++ b/data/accounts/fr_CH/acctchrt_common.gnucash-xea @@ -750,5 +750,11 @@ Soldes initiaux 3ab6a6d97b216c11333e48aa2b749a91 + + + equity-type + opening-balance + + diff --git a/data/accounts/fr_FR/acctchrt_business.gnucash-xea b/data/accounts/fr_FR/acctchrt_business.gnucash-xea index 70f02996f5..294fbfc1f8 100644 --- a/data/accounts/fr_FR/acctchrt_business.gnucash-xea +++ b/data/accounts/fr_FR/acctchrt_business.gnucash-xea @@ -1378,6 +1378,12 @@ Les utilisateurs gérant une entreprise sélectionneront ceci au lieu des autres 100 Soldes initiaux 87e02e757b32b3059652cfe09fe9ae00 + + + equity-type + opening-balance + + Gains enregistrés diff --git a/data/accounts/fr_FR/acctchrt_common.gnucash-xea b/data/accounts/fr_FR/acctchrt_common.gnucash-xea index 7909575342..cdaaaeccfb 100644 --- a/data/accounts/fr_FR/acctchrt_common.gnucash-xea +++ b/data/accounts/fr_FR/acctchrt_common.gnucash-xea @@ -750,5 +750,11 @@ Soldes initiaux 3ab6a6d97b216c11333e48aa2b749a91 + + + equity-type + opening-balance + + diff --git a/data/accounts/he/acctchrt_checkbook.gnucash-xea b/data/accounts/he/acctchrt_checkbook.gnucash-xea index ea74c81880..975c29daba 100644 --- a/data/accounts/he/acctchrt_checkbook.gnucash-xea +++ b/data/accounts/he/acctchrt_checkbook.gnucash-xea @@ -147,5 +147,11 @@ 100 יתרת פתיחה b8b72887da1adf889f171923d23efbdd + + + equity-type + opening-balance + + diff --git a/data/accounts/hr/acctchrt_checkbook.gnucash-xea b/data/accounts/hr/acctchrt_checkbook.gnucash-xea index 6cd485e4c5..c55c6ee50f 100644 --- a/data/accounts/hr/acctchrt_checkbook.gnucash-xea +++ b/data/accounts/hr/acctchrt_checkbook.gnucash-xea @@ -147,5 +147,11 @@ 100 Početni saldo b8b72887da1adf889f171923d23efbdd + + + equity-type + opening-balance + + diff --git a/data/accounts/hr/acctchrt_common.gnucash-xea b/data/accounts/hr/acctchrt_common.gnucash-xea index 9d52bb6d57..cce4ac53f8 100644 --- a/data/accounts/hr/acctchrt_common.gnucash-xea +++ b/data/accounts/hr/acctchrt_common.gnucash-xea @@ -800,6 +800,12 @@ Početni saldo 73f3a388cebe42a3bc40ab8db179d32d + + + equity-type + opening-balance + + diff --git a/data/accounts/hu/acctchrt_business.gnucash-xea b/data/accounts/hu/acctchrt_business.gnucash-xea index 0e190fbb66..6bc09f3047 100644 --- a/data/accounts/hu/acctchrt_business.gnucash-xea +++ b/data/accounts/hu/acctchrt_business.gnucash-xea @@ -1378,6 +1378,12 @@ 100 Nyitóegyenlegek 87e02e757b32b3059652cfe09fe9ae00 + + + equity-type + opening-balance + + Céltartalékok diff --git a/data/accounts/hu/acctchrt_checkbook.gnucash-xea b/data/accounts/hu/acctchrt_checkbook.gnucash-xea index c9ce827845..8b86cd68df 100644 --- a/data/accounts/hu/acctchrt_checkbook.gnucash-xea +++ b/data/accounts/hu/acctchrt_checkbook.gnucash-xea @@ -139,5 +139,11 @@ 100 Nyitóegyenlegek b8b72887da1adf889f171923d23efbdd + + + equity-type + opening-balance + + diff --git a/data/accounts/hu/acctchrt_common.gnucash-xea b/data/accounts/hu/acctchrt_common.gnucash-xea index 6728e1d1a2..f9335cd5c0 100644 --- a/data/accounts/hu/acctchrt_common.gnucash-xea +++ b/data/accounts/hu/acctchrt_common.gnucash-xea @@ -728,5 +728,11 @@ Nyitóegyenlegek 3ab6a6d97b216c11333e48aa2b749a91 + + + equity-type + opening-balance + + diff --git a/data/accounts/it/acctchrt_checkbook.gnucash-xea b/data/accounts/it/acctchrt_checkbook.gnucash-xea index 10d3ec31bd..a55cb3b15f 100644 --- a/data/accounts/it/acctchrt_checkbook.gnucash-xea +++ b/data/accounts/it/acctchrt_checkbook.gnucash-xea @@ -144,5 +144,11 @@ 100 Bilanci d'apertura b8b72887da1adf889f171923d23efbdd + + + equity-type + opening-balance + + diff --git a/data/accounts/it/acctchrt_common.gnucash-xea b/data/accounts/it/acctchrt_common.gnucash-xea index 075415a617..1e5b683264 100644 --- a/data/accounts/it/acctchrt_common.gnucash-xea +++ b/data/accounts/it/acctchrt_common.gnucash-xea @@ -747,5 +747,11 @@ Bilanci d'apertura 3ab6a6d97b216c11333e48aa2b749a91 + + + equity-type + opening-balance + + diff --git a/data/accounts/ja/acctchrt_business.gnucash-xea b/data/accounts/ja/acctchrt_business.gnucash-xea index d346a792b5..3ad89b710e 100644 --- a/data/accounts/ja/acctchrt_business.gnucash-xea +++ b/data/accounts/ja/acctchrt_business.gnucash-xea @@ -1414,6 +1414,12 @@ 100 開始残高 87e02e757b32b3059652cfe09fe9ae00 + + + equity-type + opening-balance + + 内部留保 diff --git a/data/accounts/ja/acctchrt_checkbook.gnucash-xea b/data/accounts/ja/acctchrt_checkbook.gnucash-xea index 02b63dc1e4..f203a3c490 100644 --- a/data/accounts/ja/acctchrt_checkbook.gnucash-xea +++ b/data/accounts/ja/acctchrt_checkbook.gnucash-xea @@ -147,5 +147,11 @@ 100 開始残高 b8b72887da1adf889f171923d23efbdd + + + equity-type + opening-balance + + diff --git a/data/accounts/ja/acctchrt_common.gnucash-xea b/data/accounts/ja/acctchrt_common.gnucash-xea index 8a5974b91d..8bee4af8d3 100644 --- a/data/accounts/ja/acctchrt_common.gnucash-xea +++ b/data/accounts/ja/acctchrt_common.gnucash-xea @@ -775,5 +775,11 @@ 開始残高 3ab6a6d97b216c11333e48aa2b749a91 + + + equity-type + opening-balance + + diff --git a/data/accounts/ja/acctchrt_full.gnucash-xea b/data/accounts/ja/acctchrt_full.gnucash-xea index 535271b506..299076812e 100644 --- a/data/accounts/ja/acctchrt_full.gnucash-xea +++ b/data/accounts/ja/acctchrt_full.gnucash-xea @@ -1390,5 +1390,11 @@ 開始残高 68d4074f91295062c0b773b4ae8de6bd + + + equity-type + opening-balance + + diff --git a/data/accounts/lv/acctchrt_checkbook.gnucash-xea b/data/accounts/lv/acctchrt_checkbook.gnucash-xea index 1887b72812..f0abacc0ce 100644 --- a/data/accounts/lv/acctchrt_checkbook.gnucash-xea +++ b/data/accounts/lv/acctchrt_checkbook.gnucash-xea @@ -129,5 +129,11 @@ 100 Sākuma bilance b8b72887da1adf889f171923d23efbdd + + + equity-type + opening-balance + + diff --git a/data/accounts/lv/acctchrt_common.gnucash-xea b/data/accounts/lv/acctchrt_common.gnucash-xea index fcfe56ac8d..6e739371fe 100644 --- a/data/accounts/lv/acctchrt_common.gnucash-xea +++ b/data/accounts/lv/acctchrt_common.gnucash-xea @@ -736,5 +736,11 @@ Kontu sākuma bilances 3ab6a6d97b216c11333e48aa2b749a91 + + + equity-type + opening-balance + + diff --git a/data/accounts/lv/acctchrt_full.gnucash-xea b/data/accounts/lv/acctchrt_full.gnucash-xea index a92df3bb80..d8afe8ee7d 100644 --- a/data/accounts/lv/acctchrt_full.gnucash-xea +++ b/data/accounts/lv/acctchrt_full.gnucash-xea @@ -1354,5 +1354,11 @@ Sākuma bilances 68d4074f91295062c0b773b4ae8de6bd + + + equity-type + opening-balance + + diff --git a/data/accounts/nb/acctchrt_common.gnucash-xea b/data/accounts/nb/acctchrt_common.gnucash-xea index 9b62c73059..862e086f47 100644 --- a/data/accounts/nb/acctchrt_common.gnucash-xea +++ b/data/accounts/nb/acctchrt_common.gnucash-xea @@ -739,5 +739,11 @@ Opening Balances 3ab6a6d97b216c11333e48aa2b749a91 + + + equity-type + opening-balance + + diff --git a/data/accounts/nb/acctchrt_full.gnucash-xea b/data/accounts/nb/acctchrt_full.gnucash-xea index ac1654a340..bdc03878ec 100644 --- a/data/accounts/nb/acctchrt_full.gnucash-xea +++ b/data/accounts/nb/acctchrt_full.gnucash-xea @@ -1319,5 +1319,11 @@ Opening Balances 68d4074f91295062c0b773b4ae8de6bd + + + equity-type + opening-balance + + diff --git a/data/accounts/nl/acctchrt_checkbook.gnucash-xea b/data/accounts/nl/acctchrt_checkbook.gnucash-xea index 0928229d69..bcfddcc291 100644 --- a/data/accounts/nl/acctchrt_checkbook.gnucash-xea +++ b/data/accounts/nl/acctchrt_checkbook.gnucash-xea @@ -147,5 +147,11 @@ 100 Beginsaldi b8b72887da1adf889f171923d23efbdd + + + equity-type + opening-balance + + diff --git a/data/accounts/nl/acctchrt_full.gnucash-xea b/data/accounts/nl/acctchrt_full.gnucash-xea index 7a0ee89ca8..46f6761bee 100644 --- a/data/accounts/nl/acctchrt_full.gnucash-xea +++ b/data/accounts/nl/acctchrt_full.gnucash-xea @@ -1387,5 +1387,11 @@ Openingsbalans 68d4074f91295062c0b773b4ae8de6bd + + + equity-type + opening-balance + + diff --git a/data/accounts/pl/acctchrt_business.gnucash-xea b/data/accounts/pl/acctchrt_business.gnucash-xea index ac6d9dd34b..adc08f40eb 100644 --- a/data/accounts/pl/acctchrt_business.gnucash-xea +++ b/data/accounts/pl/acctchrt_business.gnucash-xea @@ -1414,6 +1414,12 @@ 100 Bilanse otwarcia 87e02e757b32b3059652cfe09fe9ae00 + + + equity-type + opening-balance + + Zyski zatrzymane diff --git a/data/accounts/pl/acctchrt_checkbook.gnucash-xea b/data/accounts/pl/acctchrt_checkbook.gnucash-xea index 0133c929ae..2a6c201305 100644 --- a/data/accounts/pl/acctchrt_checkbook.gnucash-xea +++ b/data/accounts/pl/acctchrt_checkbook.gnucash-xea @@ -147,5 +147,11 @@ 100 Bilanse otwarcia b8b72887da1adf889f171923d23efbdd + + + equity-type + opening-balance + + diff --git a/data/accounts/pl/acctchrt_common.gnucash-xea b/data/accounts/pl/acctchrt_common.gnucash-xea index 8d8a35d8f7..4c9bb65456 100644 --- a/data/accounts/pl/acctchrt_common.gnucash-xea +++ b/data/accounts/pl/acctchrt_common.gnucash-xea @@ -775,5 +775,11 @@ Bilanse otwarcia 3ab6a6d97b216c11333e48aa2b749a91 + + + equity-type + opening-balance + + diff --git a/data/accounts/pl/acctchrt_full.gnucash-xea b/data/accounts/pl/acctchrt_full.gnucash-xea index 14b62f9c31..2098358a1d 100644 --- a/data/accounts/pl/acctchrt_full.gnucash-xea +++ b/data/accounts/pl/acctchrt_full.gnucash-xea @@ -1387,5 +1387,11 @@ Bilanse otwarcia 68d4074f91295062c0b773b4ae8de6bd + + + equity-type + opening-balance + + diff --git a/data/accounts/pt_BR/acctchrt_common.gnucash-xea b/data/accounts/pt_BR/acctchrt_common.gnucash-xea index 971518a0cd..1b9df1d4be 100644 --- a/data/accounts/pt_BR/acctchrt_common.gnucash-xea +++ b/data/accounts/pt_BR/acctchrt_common.gnucash-xea @@ -728,5 +728,11 @@ Saldos Iniciais 3ab6a6d97b216c11333e48aa2b749a91 + + + equity-type + opening-balance + + diff --git a/data/accounts/pt_PT/acctchrt_common.gnucash-xea b/data/accounts/pt_PT/acctchrt_common.gnucash-xea index e3e48ae122..97a3f45b6b 100644 --- a/data/accounts/pt_PT/acctchrt_common.gnucash-xea +++ b/data/accounts/pt_PT/acctchrt_common.gnucash-xea @@ -746,5 +746,11 @@ Saldos iniciais 3ab6a6d97b216c11333e48aa2b749a91 + + + equity-type + opening-balance + + diff --git a/data/accounts/ru/acctchrt_common.gnucash-xea b/data/accounts/ru/acctchrt_common.gnucash-xea index 9108c22da9..0029599c5c 100644 --- a/data/accounts/ru/acctchrt_common.gnucash-xea +++ b/data/accounts/ru/acctchrt_common.gnucash-xea @@ -843,6 +843,12 @@ Остаток средств на начало периода 1972cce2e2364f95b2b0bc014502661d + + + equity-type + opening-balance + + diff --git a/data/accounts/tr_TR/acctchrt_TEKDUZ.gnucash-xea b/data/accounts/tr_TR/acctchrt_TEKDUZ.gnucash-xea index c539e57194..b0a76ba421 100644 --- a/data/accounts/tr_TR/acctchrt_TEKDUZ.gnucash-xea +++ b/data/accounts/tr_TR/acctchrt_TEKDUZ.gnucash-xea @@ -3835,6 +3835,12 @@ cfd3ff3dffa577973d3c1c5def43e568 + + + equity-type + opening-balance + + Ödenmemiş Sermaye(-) @@ -3871,6 +3877,12 @@ cfd3ff3dffa577973d3c1c5def43e568 + + + equity-type + opening-balance + + Sermaye Düzeltmesi Olumsuz Farkları(-) diff --git a/data/accounts/zh_CN/acctchrt_business.gnucash-xea b/data/accounts/zh_CN/acctchrt_business.gnucash-xea index 2e28e8ff7f..20696beb18 100644 --- a/data/accounts/zh_CN/acctchrt_business.gnucash-xea +++ b/data/accounts/zh_CN/acctchrt_business.gnucash-xea @@ -1414,6 +1414,12 @@ 100 期初余额 87e02e757b32b3059652cfe09fe9ae00 + + + equity-type + opening-balance + + 留存收益 diff --git a/data/accounts/zh_CN/acctchrt_checkbook.gnucash-xea b/data/accounts/zh_CN/acctchrt_checkbook.gnucash-xea index c8b04a6bc7..8624a4f0f1 100644 --- a/data/accounts/zh_CN/acctchrt_checkbook.gnucash-xea +++ b/data/accounts/zh_CN/acctchrt_checkbook.gnucash-xea @@ -147,5 +147,11 @@ 100 期初余额 b8b72887da1adf889f171923d23efbdd + + + equity-type + opening-balance + + diff --git a/data/accounts/zh_CN/acctchrt_common.gnucash-xea b/data/accounts/zh_CN/acctchrt_common.gnucash-xea index 1547f7d061..a7d21c8295 100644 --- a/data/accounts/zh_CN/acctchrt_common.gnucash-xea +++ b/data/accounts/zh_CN/acctchrt_common.gnucash-xea @@ -775,5 +775,11 @@ 期初余额 3ab6a6d97b216c11333e48aa2b749a91 + + + equity-type + opening-balance + + diff --git a/data/accounts/zh_CN/acctchrt_full.gnucash-xea b/data/accounts/zh_CN/acctchrt_full.gnucash-xea index 72306e0d46..c8e003703b 100644 --- a/data/accounts/zh_CN/acctchrt_full.gnucash-xea +++ b/data/accounts/zh_CN/acctchrt_full.gnucash-xea @@ -1387,5 +1387,11 @@ 期初余额 68d4074f91295062c0b773b4ae8de6bd + + + equity-type + opening-balance + + From f8dcd2302366a3d0032038b81f5fb5252fd09f87 Mon Sep 17 00:00:00 2001 From: Ralf Habacker Date: Sat, 19 Sep 2020 10:53:08 +0200 Subject: [PATCH 142/167] Add support for the opening balance accounts flag Up to now, opening balance accounts have been identified by means of fixed names and their translations, which in some cases is not appropriate. With this commit, therefore, opening balance accounts can now be identified by a special slot, which should solve the above problem. in gnc_find_or_create_equity_account(), when querying the EQUITY_OPENING_BALANCE type, the system now first searches for an account with an existing 'equity-type' slot having the value 'opening-balance' and returns it as an opening balance account if one exists. If no corresponding account is found, the search is continued as before. An account found in the process is automatically given the status of an opening balance account (it is given an 'equity-type' slot with value 'opening-balance') to simplify the future search. The opening balance status of an account is visualized in the account settings dialog with a check box. If a Gnucash file does not yet contain an opening balance account, one can be selected in the account settings dialog. https://bugs.gnucash.org/show_bug.cgi?id=797836 --- gnucash/gnome-utils/dialog-account.c | 62 ++++++++++++++++++++ gnucash/gnome-utils/gnc-tree-model-account.c | 6 ++ gnucash/gnome-utils/gnc-tree-model-account.h | 3 +- gnucash/gnome-utils/gnc-tree-view-account.c | 31 ++++++++++ gnucash/gtkbuilder/dialog-account.glade | 17 ++++++ libgnucash/app-utils/gnc-ui-util.c | 20 ++++++- libgnucash/engine/Account.cpp | 52 ++++++++++++++++ libgnucash/engine/Account.h | 25 ++++++++ libgnucash/engine/test/utest-Account.cpp | 4 +- 9 files changed, 217 insertions(+), 3 deletions(-) diff --git a/gnucash/gnome-utils/dialog-account.c b/gnucash/gnome-utils/dialog-account.c index f72debba11..3bf1d21ec9 100644 --- a/gnucash/gnome-utils/dialog-account.c +++ b/gnucash/gnome-utils/dialog-account.c @@ -106,6 +106,7 @@ typedef struct _AccountWindow GtkTreeView * parent_tree; GtkWidget * parent_scroll; + GtkWidget * opening_balance_button; GtkWidget * opening_balance_edit; GtkWidget * opening_balance_date_edit; GtkWidget * opening_balance_page; @@ -205,6 +206,32 @@ gnc_account_commodity_from_type (AccountWindow * aw, gboolean update) aw->commodity_mode = new_mode; } +static void +gnc_account_opening_balance_button_update (AccountWindow *aw, gnc_commodity *commodity) +{ + Account *account = aw_get_account (aw); + Account *ob_account = gnc_account_lookup_by_opening_balance (gnc_book_get_root_account (aw->book), commodity); + gboolean has_splits = xaccAccountCountSplits (account, FALSE) > 0; + + if (xaccAccountGetType (account) != ACCT_TYPE_EQUITY) + { + gtk_widget_set_sensitive (aw->opening_balance_button, FALSE); + return; + } + /* The opening balance flag can be edited, if there is no opening balance account + * or we are editing the only opening balance account and it has no splits assigned. + */ + switch(aw->dialog_type) + { + case EDIT_ACCOUNT: + gtk_widget_set_sensitive (aw->opening_balance_button, (ob_account == NULL || ob_account == account) && has_splits == 0); + break; + case NEW_ACCOUNT: + gtk_widget_set_sensitive (aw->opening_balance_button, ob_account == NULL); + break; + } +} + /* Copy the account values to the GUI widgets */ static void gnc_account_to_ui(AccountWindow *aw) @@ -268,6 +295,12 @@ gnc_account_to_ui(AccountWindow *aw) gtk_text_buffer_set_text (aw->notes_text_buffer, string, strlen(string)); + gnc_account_opening_balance_button_update (aw, commodity); + + flag = xaccAccountGetIsOpeningBalance (account); + gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON (aw->opening_balance_button), + flag); + flag = xaccAccountGetTaxRelated (account); gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON (aw->tax_related_button), flag); @@ -434,6 +467,11 @@ gnc_ui_to_account(AccountWindow *aw) if (null_strcmp (string, old_string) != 0) xaccAccountSetNotes (account, string); + flag = + gtk_toggle_button_get_active (GTK_TOGGLE_BUTTON (aw->opening_balance_button)); + if (xaccAccountGetIsOpeningBalance (account) != flag) + xaccAccountSetIsOpeningBalance (account, flag); + flag = gtk_toggle_button_get_active (GTK_TOGGLE_BUTTON (aw->tax_related_button)); if (xaccAccountGetTaxRelated (account) != flag) @@ -1271,11 +1309,33 @@ commodity_changed_cb (GNCGeneralSelect *gsl, gpointer data) AccountWindow *aw = data; gnc_commodity *currency; GtkTreeSelection *selection; + Account *account = aw_get_account (aw); currency = (gnc_commodity *) gnc_general_select_get_selected (gsl); if (!currency) return; + if (xaccAccountGetIsOpeningBalance (account)) + { + Account *ob_account = gnc_account_lookup_by_opening_balance (gnc_book_get_root_account (aw->book), currency); + if (ob_account != account) + { + gchar *dialog_msg = _("An account with opening balance already exists for the desired currency."); + gchar *dialog_title = _("Cannot change currency"); + GtkWidget *dialog = gtk_message_dialog_new (gnc_ui_get_main_window (NULL), + 0, + GTK_MESSAGE_ERROR, + GTK_BUTTONS_OK, + "%s", dialog_title); + gtk_message_dialog_format_secondary_text (GTK_MESSAGE_DIALOG(dialog), + "%s", dialog_msg); + gtk_dialog_run(GTK_DIALOG(dialog)); + gtk_widget_destroy(dialog); + gnc_general_select_set_selected (gsl, xaccAccountGetCommodity (account)); + return; + } + } + gnc_amount_edit_set_fraction (GNC_AMOUNT_EDIT (aw->opening_balance_edit), gnc_commodity_get_fraction (currency)); gnc_amount_edit_set_print_info (GNC_AMOUNT_EDIT (aw->opening_balance_edit), @@ -1283,6 +1343,7 @@ commodity_changed_cb (GNCGeneralSelect *gsl, gpointer data) selection = gtk_tree_view_get_selection (GTK_TREE_VIEW (aw->transfer_tree)); gtk_tree_selection_unselect_all (selection); + gnc_account_opening_balance_button_update (aw, currency); } static gboolean @@ -1420,6 +1481,7 @@ gnc_account_window_create(GtkWindow *parent, AccountWindow *aw) g_signal_connect (G_OBJECT (selection), "changed", G_CALLBACK (gnc_account_parent_changed_cb), aw); + aw->opening_balance_button = GTK_WIDGET(gtk_builder_get_object (builder, "opening_balance_button")); aw->tax_related_button = GTK_WIDGET(gtk_builder_get_object (builder, "tax_related_button")); aw->placeholder_button = GTK_WIDGET(gtk_builder_get_object (builder, "placeholder_button")); aw->hidden_button = GTK_WIDGET(gtk_builder_get_object (builder, "hidden_button")); diff --git a/gnucash/gnome-utils/gnc-tree-model-account.c b/gnucash/gnome-utils/gnc-tree-model-account.c index 0a93faf4da..5c3160e5ac 100644 --- a/gnucash/gnome-utils/gnc-tree-model-account.c +++ b/gnucash/gnome-utils/gnc-tree-model-account.c @@ -420,6 +420,7 @@ gnc_tree_model_account_get_column_type (GtkTreeModel *tree_model, int index) case GNC_TREE_MODEL_ACCOUNT_COL_HIDDEN: case GNC_TREE_MODEL_ACCOUNT_COL_PLACEHOLDER: + case GNC_TREE_MODEL_ACCOUNT_COL_OPENING_BALANCE: return G_TYPE_BOOLEAN; default: @@ -956,6 +957,11 @@ gnc_tree_model_account_get_value (GtkTreeModel *tree_model, g_value_set_boolean (value, xaccAccountGetPlaceholder (account)); break; + case GNC_TREE_MODEL_ACCOUNT_COL_OPENING_BALANCE: + g_value_init (value, G_TYPE_BOOLEAN); + g_value_set_boolean (value, xaccAccountGetIsOpeningBalance (account)); + break; + default: g_assert_not_reached (); break; diff --git a/gnucash/gnome-utils/gnc-tree-model-account.h b/gnucash/gnome-utils/gnc-tree-model-account.h index 17fd76d53f..177587305e 100644 --- a/gnucash/gnome-utils/gnc-tree-model-account.h +++ b/gnucash/gnome-utils/gnc-tree-model-account.h @@ -81,8 +81,9 @@ typedef enum GNC_TREE_MODEL_ACCOUNT_COL_TAX_INFO_SUB_ACCT, GNC_TREE_MODEL_ACCOUNT_COL_HIDDEN, GNC_TREE_MODEL_ACCOUNT_COL_PLACEHOLDER, + GNC_TREE_MODEL_ACCOUNT_COL_OPENING_BALANCE, - GNC_TREE_MODEL_ACCOUNT_COL_LAST_VISIBLE = GNC_TREE_MODEL_ACCOUNT_COL_PLACEHOLDER, + GNC_TREE_MODEL_ACCOUNT_COL_LAST_VISIBLE = GNC_TREE_MODEL_ACCOUNT_COL_OPENING_BALANCE, /* internal hidden columns */ GNC_TREE_MODEL_ACCOUNT_COL_COLOR_PRESENT, diff --git a/gnucash/gnome-utils/gnc-tree-view-account.c b/gnucash/gnome-utils/gnc-tree-view-account.c index f4abff1872..0da39e1171 100644 --- a/gnucash/gnome-utils/gnc-tree-view-account.c +++ b/gnucash/gnome-utils/gnc-tree-view-account.c @@ -494,6 +494,29 @@ sort_by_placeholder (GtkTreeModel *f_model, return xaccAccountOrder(account_a, account_b); } +static gint +sort_by_opening_balance (GtkTreeModel *f_model, + GtkTreeIter *f_iter_a, + GtkTreeIter *f_iter_b, + gpointer user_data) +{ + const Account *account_a, *account_b; + gboolean flag_a, flag_b; + + /* Find the accounts */ + sort_cb_setup (f_model, f_iter_a, f_iter_b, &account_a, &account_b); + + /* Get the opening balance flags. */ + flag_a = xaccAccountGetIsOpeningBalance (account_a); + flag_b = xaccAccountGetIsOpeningBalance (account_b); + + if (flag_a > flag_b) + return -1; + else if (flag_a < flag_b) + return 1; + return xaccAccountOrder(account_a, account_b); +} + static gint sort_by_xxx_period_value (GtkTreeModel *f_model, GtkTreeIter *f_iter_a, @@ -970,6 +993,14 @@ gnc_tree_view_account_new_with_root (Account *root, gboolean show_root) sort_by_placeholder, gnc_tree_view_account_placeholder_toggled); + gnc_tree_view_add_toggle_column(view, _("Opening Balance"), + C_("Column header for 'Opening Balance'", "O"), + "opening-balance", + GNC_TREE_MODEL_ACCOUNT_COL_OPENING_BALANCE, + GNC_TREE_VIEW_COLUMN_VISIBLE_ALWAYS, + sort_by_opening_balance, + NULL); + /* Add function to each column that optionally sets a background color for accounts */ col_list = gtk_tree_view_get_columns(GTK_TREE_VIEW(view)); for (node = col_list; node; node = node->next) diff --git a/gnucash/gtkbuilder/dialog-account.glade b/gnucash/gtkbuilder/dialog-account.glade index 18f5d9d70a..dd63585fdb 100644 --- a/gnucash/gtkbuilder/dialog-account.glade +++ b/gnucash/gtkbuilder/dialog-account.glade @@ -1504,6 +1504,23 @@ 7 + + + Opening balance + True + True + False + This account holds opening balance transactions. Only one account per commodity can hold opening balance transactions. + True + + + 1 + 11 + + + + + diff --git a/libgnucash/app-utils/gnc-ui-util.c b/libgnucash/app-utils/gnc-ui-util.c index 02f487f5b8..86b61b296f 100644 --- a/libgnucash/app-utils/gnc-ui-util.c +++ b/libgnucash/app-utils/gnc-ui-util.c @@ -955,7 +955,7 @@ gnc_find_or_create_equity_account (Account *root, gnc_commodity *currency) { Account *parent; - Account *account; + Account *account = NULL; gboolean name_exists; gboolean base_name_exists; const char *base_name; @@ -966,6 +966,13 @@ gnc_find_or_create_equity_account (Account *root, g_return_val_if_fail (currency != NULL, NULL); g_return_val_if_fail (root != NULL, NULL); + if (equity_type == EQUITY_OPENING_BALANCE) + { + account = gnc_account_lookup_by_opening_balance (root, currency); + if (account) + return account; + } + base_name = equity_base_name (equity_type); account = gnc_account_lookup_by_name(root, base_name); @@ -985,7 +992,11 @@ gnc_find_or_create_equity_account (Account *root, if (account && gnc_commodity_equiv (currency, xaccAccountGetCommodity (account))) + { + if (equity_type == EQUITY_OPENING_BALANCE) + xaccAccountSetIsOpeningBalance (account, TRUE); return account; + } name = g_strconcat (base_name, " - ", gnc_commodity_get_mnemonic (currency), NULL); @@ -997,7 +1008,11 @@ gnc_find_or_create_equity_account (Account *root, if (account && gnc_commodity_equiv (currency, xaccAccountGetCommodity (account))) + { + if (equity_type == EQUITY_OPENING_BALANCE) + xaccAccountSetIsOpeningBalance (account, TRUE); return account; + } /* Couldn't find one, so create it */ if (name_exists && base_name_exists) @@ -1027,6 +1042,9 @@ gnc_find_or_create_equity_account (Account *root, xaccAccountSetType (account, ACCT_TYPE_EQUITY); xaccAccountSetCommodity (account, currency); + if (equity_type == EQUITY_OPENING_BALANCE) + xaccAccountSetIsOpeningBalance (account, TRUE); + xaccAccountBeginEdit (parent); gnc_account_append_child (parent, account); xaccAccountCommitEdit (parent); diff --git a/libgnucash/engine/Account.cpp b/libgnucash/engine/Account.cpp index cdba3c20f0..5bcfe1a6c3 100644 --- a/libgnucash/engine/Account.cpp +++ b/libgnucash/engine/Account.cpp @@ -116,6 +116,7 @@ enum PROP_LOT_NEXT_ID, /* KVP */ PROP_ONLINE_ACCOUNT, /* KVP */ + PROP_IS_OPENING_BALANCE, /* KVP */ PROP_OFX_INCOME_ACCOUNT, /* KVP */ PROP_AB_ACCOUNT_ID, /* KVP */ PROP_AB_ACCOUNT_UID, /* KVP */ @@ -467,6 +468,9 @@ gnc_account_get_property (GObject *object, case PROP_AUTO_INTEREST: g_value_set_boolean (value, xaccAccountGetAutoInterest (account)); break; + case PROP_IS_OPENING_BALANCE: + g_value_set_boolean(value, xaccAccountGetIsOpeningBalance(account)); + break; case PROP_PLACEHOLDER: g_value_set_boolean(value, xaccAccountGetPlaceholder(account)); break; @@ -595,6 +599,9 @@ gnc_account_set_property (GObject *object, case PROP_AUTO_INTEREST: xaccAccountSetAutoInterest (account, g_value_get_boolean (value)); break; + case PROP_IS_OPENING_BALANCE: + xaccAccountSetIsOpeningBalance (account, g_value_get_boolean (value)); + break; case PROP_PLACEHOLDER: xaccAccountSetPlaceholder(account, g_value_get_boolean(value)); break; @@ -940,6 +947,15 @@ gnc_account_class_init (AccountClass *klass) FALSE, static_cast(G_PARAM_READWRITE))); + g_object_class_install_property + (gobject_class, + PROP_IS_OPENING_BALANCE, + g_param_spec_boolean ("opening-balance", + "Opening Balance", + "Whether the account holds opening balances", + FALSE, + static_cast(G_PARAM_READWRITE))); + g_object_class_install_property (gobject_class, PROP_TAX_CODE, @@ -3018,6 +3034,21 @@ gnc_account_lookup_by_code (const Account *parent, const char * code) return NULL; } +static gpointer +is_opening_balance_account (Account* account, gpointer data) +{ + gnc_commodity* commodity = GNC_COMMODITY(data); + if (xaccAccountGetIsOpeningBalance(account) && gnc_commodity_equiv(commodity, xaccAccountGetCommodity(account))) + return account; + return nullptr; +} + +Account* +gnc_account_lookup_by_opening_balance (Account* account, gnc_commodity* commodity) +{ + return (Account *)gnc_account_foreach_descendant_until (account, is_opening_balance_account, commodity); +} + /********************************************************************\ * Fetch an account, given its full name * \********************************************************************/ @@ -4128,6 +4159,22 @@ xaccAccountSetPlaceholder (Account *acc, gboolean val) set_boolean_key(acc, {"placeholder"}, val); } +gboolean +xaccAccountGetIsOpeningBalance (const Account *acc) +{ + if (GET_PRIVATE(acc)->type != ACCT_TYPE_EQUITY) + return false; + return g_strcmp0(get_kvp_string_tag(acc, "equity-type"), "opening-balance") == 0; +} + +void +xaccAccountSetIsOpeningBalance (Account *acc, gboolean val) +{ + if (GET_PRIVATE(acc)->type != ACCT_TYPE_EQUITY) + return; + set_kvp_string_tag(acc, "equity-type", val ? "opening-balance" : ""); +} + GNCPlaceholderType xaccAccountGetDescendantPlaceholder (const Account *acc) { @@ -6034,6 +6081,11 @@ gboolean xaccAccountRegister (void) (QofAccessFunc) xaccAccountGetTaxRelated, (QofSetterFunc) xaccAccountSetTaxRelated }, + { + ACCOUNT_OPENING_BALANCE_, QOF_TYPE_BOOLEAN, + (QofAccessFunc) xaccAccountGetIsOpeningBalance, + (QofSetterFunc) xaccAccountSetIsOpeningBalance + }, { ACCOUNT_SCU, QOF_TYPE_INT32, (QofAccessFunc) xaccAccountGetCommoditySCU, diff --git a/libgnucash/engine/Account.h b/libgnucash/engine/Account.h index 2afe184d9b..cb93c64a5b 100644 --- a/libgnucash/engine/Account.h +++ b/libgnucash/engine/Account.h @@ -930,6 +930,14 @@ Account *gnc_account_lookup_by_full_name (const Account *any_account, Account *gnc_account_lookup_by_code (const Account *parent, const char *code); +/** Find the opening balance account for the currency. + * + * @param account The account of which the sought-for account is a descendant. + * @param commodity The commodity in which the account should be denominated + * @return The descendant account of EQUITY_TYPE_OPENING_BALANCE or NULL if one doesn't exist. + */ +Account *gnc_account_lookup_by_opening_balance (Account *account, gnc_commodity *commodity); + /** @} */ /* ------------------ */ @@ -1191,6 +1199,22 @@ gboolean xaccAccountGetPlaceholder (const Account *account); * @param val The new state for the account's "placeholder" flag. */ void xaccAccountSetPlaceholder (Account *account, gboolean val); +/** Get the "opening-balance" flag for an account. If this flag is set + * then the account is used for opening balance transactions. + * + * @param account The account whose flag should be retrieved. + * + * @return The current state of the account's "opening-balance" flag. */ +gboolean xaccAccountGetIsOpeningBalance (const Account *account); + +/** Set the "opening-balance" flag for an account. If this flag is set + * then the account is used for opening balance transactions. + * + * @param account The account whose flag should be set. + * + * @param val The new state for the account's "opening-balance" flag. */ +void xaccAccountSetIsOpeningBalance (Account *account, gboolean val); + /** Returns PLACEHOLDER_NONE if account is NULL or neither account nor * any descendant of account is a placeholder. If account is a * placeholder, returns PLACEHOLDER_THIS. Otherwise, if any @@ -1568,6 +1592,7 @@ const char * dxaccAccountGetQuoteTZ (const Account *account); #define ACCOUNT_NOTES_ "notes" #define ACCOUNT_BALANCE_ "balance" #define ACCOUNT_NOCLOSING_ "noclosing" +#define ACCOUNT_OPENING_BALANCE_ "opening-balance" #define ACCOUNT_CLEARED_ "cleared" #define ACCOUNT_RECONCILED_ "reconciled" #define ACCOUNT_PRESENT_ "present" diff --git a/libgnucash/engine/test/utest-Account.cpp b/libgnucash/engine/test/utest-Account.cpp index 7c146153d7..eab36c3253 100644 --- a/libgnucash/engine/test/utest-Account.cpp +++ b/libgnucash/engine/test/utest-Account.cpp @@ -546,7 +546,7 @@ test_gnc_account_create_and_destroy (void) GNCAccountType type; gnc_commodity *commo; gint commo_scu, mark; - gboolean non_std_scu, sort_dirty, bal_dirty, tax_rel, hide, hold; + gboolean non_std_scu, sort_dirty, bal_dirty, opening_balance, tax_rel, hide, hold; gint64 copy_num; gnc_numeric *start_bal, *start_clr_bal, *start_rec_bal; gnc_numeric *end_bal, *end_clr_bal, *end_rec_bal; @@ -571,6 +571,7 @@ test_gnc_account_create_and_destroy (void) "end-balance", &end_bal, "end-cleared-balance", &end_clr_bal, "end-reconciled-balance", &end_rec_bal, + "opening-balance", &opening_balance, "policy", &pol, "acct-mark", &mark, "tax-related", &tax_rel, @@ -599,6 +600,7 @@ test_gnc_account_create_and_destroy (void) g_assert (gnc_numeric_zero_p (*start_bal)); g_assert (gnc_numeric_zero_p (*start_clr_bal)); g_assert (gnc_numeric_zero_p (*start_rec_bal)); + g_assert (!opening_balance); g_assert (pol == xaccGetFIFOPolicy ()); g_assert (!mark); g_assert (!tax_rel); From a2aca9da66e9c5eeb38484629907f4bb8df2af1b Mon Sep 17 00:00:00 2001 From: Ralf Habacker Date: Fri, 23 Oct 2020 14:30:42 +0200 Subject: [PATCH 143/167] Do not create additional opening balance account on creating new gnucash file Without this patch an additional opening balance account is created by the assistant-hierarchy. --- gnucash/gnome/assistant-hierarchy.c | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) diff --git a/gnucash/gnome/assistant-hierarchy.c b/gnucash/gnome/assistant-hierarchy.c index 40160221df..761ce56370 100644 --- a/gnucash/gnome/assistant-hierarchy.c +++ b/gnucash/gnome/assistant-hierarchy.c @@ -1423,13 +1423,6 @@ on_finish (GtkAssistant *gtkassistant, ENTER (" "); com = gnc_currency_edit_get_currency (GNC_CURRENCY_EDIT(data->currency_selector)); - if (data->our_account_tree) - { - gnc_account_foreach_descendant (data->our_account_tree, - (AccountCb)starting_balance_helper, - data); - } - // delete before we suspend GUI events, and then muck with the model, // because the model doesn't seem to handle this correctly. if (data->initial_category) @@ -1452,6 +1445,13 @@ on_finish (GtkAssistant *gtkassistant, gnc_resume_gui_refresh (); + if (data->our_account_tree) + { + gnc_account_foreach_descendant (data->our_account_tree, + (AccountCb)starting_balance_helper, + data); + } + if (when_completed) { (*when_completed)(); From 2bdc7dd1c9bbad343f16d4045a738a7ba27286a7 Mon Sep 17 00:00:00 2001 From: Ralf Habacker Date: Fri, 23 Oct 2020 16:53:41 +0200 Subject: [PATCH 144/167] Update opening balance account on adding, editing and deleting accounts --- gnucash/gnome-utils/dialog-account.c | 3 +++ gnucash/gnome/gnc-plugin-page-account-tree.c | 12 ++++++++++++ 2 files changed, 15 insertions(+) diff --git a/gnucash/gnome-utils/dialog-account.c b/gnucash/gnome-utils/dialog-account.c index 3bf1d21ec9..072ddfc990 100644 --- a/gnucash/gnome-utils/dialog-account.c +++ b/gnucash/gnome-utils/dialog-account.c @@ -894,6 +894,9 @@ gnc_common_ok (AccountWindow *aw) return FALSE; } + /* update opening balance account */ + gnc_find_or_create_equity_account (root, EQUITY_OPENING_BALANCE, commodity); + LEAVE("passed"); return TRUE; } diff --git a/gnucash/gnome/gnc-plugin-page-account-tree.c b/gnucash/gnome/gnc-plugin-page-account-tree.c index 07654d1b76..fb2154dc4d 100644 --- a/gnucash/gnome/gnc-plugin-page-account-tree.c +++ b/gnucash/gnome/gnc-plugin-page-account-tree.c @@ -1669,6 +1669,11 @@ gnc_plugin_page_account_tree_cmd_delete_account (GtkAction *action, GncPluginPag gnc_account_n_children (account))) { do_delete_account (account, NULL, NULL, NULL); + + /* update opening balance account */ + gnc_find_or_create_equity_account (gnc_account_get_root(account), + EQUITY_OPENING_BALANCE, + xaccAccountGetCommodity (account)); return; } @@ -1703,8 +1708,15 @@ gnc_plugin_page_account_tree_cmd_delete_account (GtkAction *action, GncPluginPag adopt.subtrans.new_account, adopt.subacct.new_account, adopt.delete_res) == GTK_RESPONSE_ACCEPT) + { do_delete_account (account, adopt.subacct.new_account, adopt.subtrans.new_account, adopt.trans.new_account); + + /* update opening balance account */ + gnc_find_or_create_equity_account (gnc_account_get_root(account), + EQUITY_OPENING_BALANCE, + xaccAccountGetCommodity (account)); + } } static int From 63580d91ba0ef6de49c9c4f3a07771329e6ffdf7 Mon Sep 17 00:00:00 2001 From: Ralf Habacker Date: Wed, 28 Oct 2020 07:14:10 +0100 Subject: [PATCH 145/167] Add feature GNC_FEATURE_EQUITY_TYPE_OPENING_BALANCE When the above function is activated, the slot 'equity type' is used and set in relation to opening balances and the checkbox for marking the opening balance in the accounts dialog can be changed. --- gnucash/gnome-utils/dialog-account.c | 9 +++++++-- libgnucash/app-utils/gnc-ui-util.c | 20 ++++++++++++++++---- libgnucash/app-utils/gnc-ui-util.h | 5 +++++ libgnucash/engine/gnc-features.c | 1 + libgnucash/engine/gnc-features.h | 1 + 5 files changed, 30 insertions(+), 6 deletions(-) diff --git a/gnucash/gnome-utils/dialog-account.c b/gnucash/gnome-utils/dialog-account.c index 072ddfc990..3b69abdedf 100644 --- a/gnucash/gnome-utils/dialog-account.c +++ b/gnucash/gnome-utils/dialog-account.c @@ -218,9 +218,14 @@ gnc_account_opening_balance_button_update (AccountWindow *aw, gnc_commodity *com gtk_widget_set_sensitive (aw->opening_balance_button, FALSE); return; } - /* The opening balance flag can be edited, if there is no opening balance account - * or we are editing the only opening balance account and it has no splits assigned. + + /* The opening balance flag can be edited, if the associated feature is enabled and + * there is no opening balance account or we are editing the only opening balance account + * and it has no splits assigned. */ + if (!gnc_using_equity_type_opening_balance_account (gnc_get_current_book())) + return; + switch(aw->dialog_type) { case EDIT_ACCOUNT: diff --git a/libgnucash/app-utils/gnc-ui-util.c b/libgnucash/app-utils/gnc-ui-util.c index 86b61b296f..81aa506825 100644 --- a/libgnucash/app-utils/gnc-ui-util.c +++ b/libgnucash/app-utils/gnc-ui-util.c @@ -195,6 +195,15 @@ gnc_reverse_budget_balance (const Account *account, gboolean unreversed) return FALSE; } +gboolean gnc_using_equity_type_opening_balance_account (QofBook* book) +{ + return gnc_features_check_used (book, GNC_FEATURE_EQUITY_TYPE_OPENING_BALANCE); +} + +void gnc_set_use_equity_type_opening_balance_account (QofBook* book) +{ + gnc_features_set_used (book, GNC_FEATURE_EQUITY_TYPE_OPENING_BALANCE); +} gchar * gnc_get_default_directory (const gchar *section) @@ -960,13 +969,16 @@ gnc_find_or_create_equity_account (Account *root, gboolean base_name_exists; const char *base_name; char *name; + gboolean use_eq_op_feature; g_return_val_if_fail (equity_type >= 0, NULL); g_return_val_if_fail (equity_type < NUM_EQUITY_TYPES, NULL); g_return_val_if_fail (currency != NULL, NULL); g_return_val_if_fail (root != NULL, NULL); - if (equity_type == EQUITY_OPENING_BALANCE) + use_eq_op_feature = equity_type == EQUITY_OPENING_BALANCE && gnc_using_equity_type_opening_balance_account (gnc_get_current_book ()); + + if (use_eq_op_feature) { account = gnc_account_lookup_by_opening_balance (root, currency); if (account) @@ -993,7 +1005,7 @@ gnc_find_or_create_equity_account (Account *root, if (account && gnc_commodity_equiv (currency, xaccAccountGetCommodity (account))) { - if (equity_type == EQUITY_OPENING_BALANCE) + if (use_eq_op_feature) xaccAccountSetIsOpeningBalance (account, TRUE); return account; } @@ -1009,7 +1021,7 @@ gnc_find_or_create_equity_account (Account *root, if (account && gnc_commodity_equiv (currency, xaccAccountGetCommodity (account))) { - if (equity_type == EQUITY_OPENING_BALANCE) + if (use_eq_op_feature) xaccAccountSetIsOpeningBalance (account, TRUE); return account; } @@ -1042,7 +1054,7 @@ gnc_find_or_create_equity_account (Account *root, xaccAccountSetType (account, ACCT_TYPE_EQUITY); xaccAccountSetCommodity (account, currency); - if (equity_type == EQUITY_OPENING_BALANCE) + if (use_eq_op_feature) xaccAccountSetIsOpeningBalance (account, TRUE); xaccAccountBeginEdit (parent); diff --git a/libgnucash/app-utils/gnc-ui-util.h b/libgnucash/app-utils/gnc-ui-util.h index 881dd6a897..fa9839a302 100644 --- a/libgnucash/app-utils/gnc-ui-util.h +++ b/libgnucash/app-utils/gnc-ui-util.h @@ -56,6 +56,11 @@ gboolean gnc_using_unreversed_budgets (QofBook* book); * don't match, return FALSE. */ gboolean gnc_reverse_budget_balance (const Account *account, gboolean unreversed); +/* Backward compatibility ******************************************* + * Return that book's support opening balance accounts by equity type slot */ +void gnc_set_use_equity_type_opening_balance_account (QofBook* book); +gboolean gnc_using_equity_type_opening_balance_account (QofBook* book); + /* Default directory sections ***************************************/ #define GNC_PREFS_GROUP_OPEN_SAVE "dialogs.open-save" #define GNC_PREFS_GROUP_EXPORT "dialogs.export-accounts" diff --git a/libgnucash/engine/gnc-features.c b/libgnucash/engine/gnc-features.c index 163bd36f50..10ea1009cd 100644 --- a/libgnucash/engine/gnc-features.c +++ b/libgnucash/engine/gnc-features.c @@ -51,6 +51,7 @@ static gncFeature known_features[] = { GNC_FEATURE_REG_SORT_FILTER, "Store the register sort and filter settings in .gcm metadata file (requires at least GnuCash 3.3)"}, { GNC_FEATURE_BUDGET_UNREVERSED, "Store budget amounts unreversed (i.e. natural) signs (requires at least Gnucash 3.8)"}, { GNC_FEATURE_BUDGET_SHOW_EXTRA_ACCOUNT_COLS, "Show extra account columns in the Budget View (requires at least Gnucash 3.8)"}, + { GNC_FEATURE_EQUITY_TYPE_OPENING_BALANCE, GNC_FEATURE_EQUITY_TYPE_OPENING_BALANCE " (requires at least Gnucash 4.3)" }, { NULL }, }; diff --git a/libgnucash/engine/gnc-features.h b/libgnucash/engine/gnc-features.h index 0ceeee3eb3..030c02531e 100644 --- a/libgnucash/engine/gnc-features.h +++ b/libgnucash/engine/gnc-features.h @@ -55,6 +55,7 @@ extern "C" { #define GNC_FEATURE_REG_SORT_FILTER "Register sort and filter settings stored in .gcm file" #define GNC_FEATURE_BUDGET_UNREVERSED "Use natural signs in budget amounts" #define GNC_FEATURE_BUDGET_SHOW_EXTRA_ACCOUNT_COLS "Show extra account columns in the Budget View" +#define GNC_FEATURE_EQUITY_TYPE_OPENING_BALANCE "Use a dedicated opening balance account identified by an 'equity-type' slot" /** @} */ From 4b7bc94e9d26c2e9b4941affbd9ac59247dc8845 Mon Sep 17 00:00:00 2001 From: John Ralls Date: Tue, 17 Nov 2020 16:55:42 -0800 Subject: [PATCH 146/167] Implement Github-actions tests on macOS. --- .github/workflows/README.md | 7 + .github/workflows/mac-tests.yaml | 55 ++++ util/ci/macos-ci-deps/README.md | 24 ++ util/ci/macos-ci-deps/macos_bin.manifest | 28 +++ util/ci/macos-ci-deps/macos_include.manifest | 33 +++ util/ci/macos-ci-deps/macos_lib.manifest | 236 ++++++++++++++++++ util/ci/macos-ci-deps/macos_share.manifest | 7 + .../macos-ci-deps/make-macos-deps-tarball.sh | 24 ++ 8 files changed, 414 insertions(+) create mode 100644 .github/workflows/README.md create mode 100644 .github/workflows/mac-tests.yaml create mode 100644 util/ci/macos-ci-deps/README.md create mode 100644 util/ci/macos-ci-deps/macos_bin.manifest create mode 100644 util/ci/macos-ci-deps/macos_include.manifest create mode 100644 util/ci/macos-ci-deps/macos_lib.manifest create mode 100644 util/ci/macos-ci-deps/macos_share.manifest create mode 100755 util/ci/macos-ci-deps/make-macos-deps-tarball.sh diff --git a/.github/workflows/README.md b/.github/workflows/README.md new file mode 100644 index 0000000000..e127ac0929 --- /dev/null +++ b/.github/workflows/README.md @@ -0,0 +1,7 @@ +Github Actions Continuous Integration Testing Workflows. + +ci-tests.yml runs Ubuntu 18.04 and Ubuntu 20.04 using Github-provided virtual environments. The virtual environments are about twice as fast as Docker ones and getting Docker to run Ubuntu images was problematic. Note that updating Ubuntu 18.04 updates ICU4C from v60 to v65 and that causes conflicts with Boost, so don't. + +ci-docker.yml runs tests in a Docker container running Arch Linux. + +mac-tests.yml runs tests on macOS using a Github-provided virtual machine. Note that this test relies on a prebuilt tarball containing all of the dependencies. Instructions for building that tarball along with some support scripts may be found in utils/ci/macos-ci-deps. diff --git a/.github/workflows/mac-tests.yaml b/.github/workflows/mac-tests.yaml new file mode 100644 index 0000000000..7c903ab3f5 --- /dev/null +++ b/.github/workflows/mac-tests.yaml @@ -0,0 +1,55 @@ +name: mac-tests +on: [push] +jobs: + ci_tests_mac: + runs-on: macos-10.15 + name: macOS Tests + env: + TZ: America/Los_Angeles + steps: + - name: Checkout + uses: actions/checkout@v2 + - run: | + echo "PATH=$PATH:$HOME/gnucash/inst/bin" >> $GITHUB_ENV + echo "PREFIX=$HOME/gnucash/inst" >> $GITHUB_ENV + echo "SRCROOT=$HOME/gnucash/source" >> $GITHUB_ENV + - name: download dependency tarball + uses: carlosperate/download-file-action@v1.0.3 + id: dependencies + with: + file-url: 'https://downloads.sourceforge.net/gnucash/Dependencies/gnucash-4.x-mac-dependencies.tar.xz' + file-name: gnucash-dependencies.tar.xz + - name: download googletest + uses: carlosperate/download-file-action@v1.0.3 + + id: googletest + with: + file-url: 'https://github.com/google/googletest/archive/release-1.10.0.tar.gz' + file-name: googletest.tar.gz + - run: | + cd $HOME + mkdir gnucash + cd gnucash + tar -xf $GITHUB_WORKSPACE/gnucash-dependencies.tar.xz + mkdir source + cd source + tar -xf $GITHUB_WORKSPACE/googletest.tar.gz + mv googletest-* googletest + cd .. + ls source + - name: Configure GnuCash + run: | + mkdir build + cd build + cmake -GNinja -DCMAKE_INSTALL_PREFIX=$PREFIX -DCMAKE_PREFIX_PATH=$PREFIX -DWITH_PYTHON=ON -DGTEST_ROOT=$SRCROOT/googletest $GITHUB_WORKSPACE + - name: Build and Test GnuCash + run: | + cd build + ninja + ninja check + - uses: actions/upload-artifact@v2 + if: failure() + with: + name: TestLog + path: ${{ github.workspace }}/build/Testing/Temporary/LastTest.log + if-no-files-found: ignore diff --git a/util/ci/macos-ci-deps/README.md b/util/ci/macos-ci-deps/README.md new file mode 100644 index 0000000000..625b0e2143 --- /dev/null +++ b/util/ci/macos-ci-deps/README.md @@ -0,0 +1,24 @@ +For creating the macOS dependency tarball required by the Github CI tests. + +Reruirements: +* Administrator privs on your Mac. +* Project admin privs for https://sourceforge.net/projects/gnucash. +* You must be running the same or newer version of macOS as the Github runner. +* Xcode or command-line tools (install the latter with `sudo xcode-select -install`). +To build this tarball you must be running the same or newer macOS version as the Github VM. + +Procedure: +* Set up a Gtk-OSX build environment following the [GnuCash Quartz Build instructions](https://wiki.gnucash.org/wiki/MacOS/Quartz). +* Retrieve [jhbuildrc-custom](https://github.com/gnucash/gnucash-on-osx/jhbuildrc-custom) and put it in ~/.config. +* Set `modules = _modules_deps` on the appropriate line of `jhbuildrc-custom`. +* If you are not running the same version of macOS as the Github actions virtual environment change the `setup_SDK()` line at the bottom of `jhbuildrc-custom` to `setup_SDK('10.15')`, substituting the VM's macOS version for '10.15'. +* Create the directory `/Users/runner/` and make yourself the owner: + ``` + sudo mkdir /Users/runner + sudo chown me /Users/runner + mkdir /Users/runner/gnucash + ``` + Substituting your own userid for 'me'. +* Run `util/ci/macos-ci-deps/make-macos-deps-tarball.sh gnucash-4.2-mac-dependencies.tar.xz` from the root of the source directory, changing the tarball's name if appropriate. +* Upload the resulting tarball to the Dependencies folder in the Gnucash files section on SourceForge. +* If necessary modify `.github/workflows/mac-tests.yaml to reflect the tarball's URI. \ No newline at end of file diff --git a/util/ci/macos-ci-deps/macos_bin.manifest b/util/ci/macos-ci-deps/macos_bin.manifest new file mode 100644 index 0000000000..519b6cb902 --- /dev/null +++ b/util/ci/macos-ci-deps/macos_bin.manifest @@ -0,0 +1,28 @@ +cmake +ctest +glib-compile-resources +glib-compile-schemas +guild +guile +msgattrib +msgcat +msgcmp +msgcomm +msgconv +msgen +msgexec +msgfilter +msgfmt +msggrep +msginit +msgmerge +msgunfmt +msguniq +ninja +pkg-config +python3 +python3-config +python3.8 +python3.8-config +swig +xgettext diff --git a/util/ci/macos-ci-deps/macos_include.manifest b/util/ci/macos-ci-deps/macos_include.manifest new file mode 100644 index 0000000000..b02a3703e0 --- /dev/null +++ b/util/ci/macos-ci-deps/macos_include.manifest @@ -0,0 +1,33 @@ +aqbanking6 +atk-1.0 +boost +cairo +dbi +freetype2 +fribidi +gdk-pixbuf-2.0 +gio-unix-2.0 +glib-2.0 +gmp.h +gtk-3.0 +gtkmacintegration +guile +gwenhywfar5 +harfbuzz +libintl.h +libofx +libpng16 +libsoup-2.4 +libxml2 +libxslt +lzma +lzma.h +pango-1.0 +pixman-1 +pygobject-3.0 +python3.8 +unicase.h +unicode +uniconv.h +unictype.h +webkitgtk-4.0 diff --git a/util/ci/macos-ci-deps/macos_lib.manifest b/util/ci/macos-ci-deps/macos_lib.manifest new file mode 100644 index 0000000000..c51a5ed385 --- /dev/null +++ b/util/ci/macos-ci-deps/macos_lib.manifest @@ -0,0 +1,236 @@ +dbd +glib-2.0 +guile +libaqbanking.44.dylib +libaqbanking.dylib +libatk-1.0.0.dylib +libatk-1.0.dylib +libboost_chrono.dylib +libboost_date_time.dylib +libboost_filesystem.dylib +libboost_locale.dylib +libboost_program_options.dylib +libboost_regex.dylib +libboost_system.dylib +libboost_thread.dylib +libcairo-gobject.2.dylib +libcairo-gobject.dylib +libcairo-script-interpreter.2.dylib +libcairo-script-interpreter.dylib +libcairo.2.dylib +libcairo.dylib +libchipcard.6.dylib +libchipcard.dylib +libcord.1.dylib +libcord.dylib +libcroco-0.6.3.dylib +libcroco-0.6.dylib +libcrypto.1.1.dylib +libcrypto.dylib +libdbi.1.dylib +libdbi.dylib +libecpg.6.12.dylib +libecpg.6.dylib +libecpg.dylib +libecpg_compat.3.12.dylib +libecpg_compat.3.dylib +libecpg_compat.dylib +libenchant.1.dylib +libenchant.dylib +libepoxy.0.dylib +libepoxy.dylib +libexslt.0.dylib +libexslt.dylib +libffi.7.dylib +libffi.dylib +libfl.2.dylib +libfl.dylib +libfl_pic.2.dylib +libfl_pic.dylib +libfontconfig.1.dylib +libfontconfig.dylib +libfreetype.6.17.2.dylib +libfreetype.6.dylib +libfreetype.dylib +libfribidi.0.dylib +libfribidi.dylib +libgailutil-3.0.dylib +libgailutil-3.dylib +libgc.1.dylib +libgc.dylib +libgcrypt.20.dylib +libgcrypt.dylib +libgdk-3.0.dylib +libgdk-3.dylib +libgdk_pixbuf-2.0.0.dylib +libgdk_pixbuf-2.0.dylib +libgettextlib-0.20.2.dylib +libgettextlib.dylib +libgettextpo.0.dylib +libgettextpo.dylib +libgettextsrc-0.20.2.dylib +libgettextsrc.dylib +libgio-2.0.0.dylib +libgio-2.0.dylib +libgirepository-1.0.1.dylib +libgirepository-1.0.dylib +libglib-2.0.0.dylib +libglib-2.0.dylib +libgmodule-2.0.0.dylib +libgmodule-2.0.dylib +libgmp.10.dylib +libgmp.dylib +libgnutls.30.dylib +libgnutls.dylib +libgnutlsxx.28.dylib +libgnutlsxx.dylib +libgobject-2.0.0.dylib +libgobject-2.0.dylib +libgpg-error.0.dylib +libgpg-error.dylib +libgthread-2.0.0.dylib +libgthread-2.0.dylib +libgtk-3.0.dylib +libgtk-3.dylib +libgtkmacintegration-gtk3.2.dylib +libgtkmacintegration-gtk3.dylib +libguile-2.2.1.dylib +libguile-2.2.dylib +libgwengui-cpp.79.dylib +libgwengui-cpp.dylib +libgwengui-gtk3.79.dylib +libgwengui-gtk3.dylib +libgwenhywfar.79.dylib +libgwenhywfar.dylib +libharfbuzz-gobject.0.dylib +libharfbuzz-gobject.dylib +libharfbuzz-icu.0.dylib +libharfbuzz-icu.dylib +libharfbuzz-subset.0.dylib +libharfbuzz-subset.dylib +libharfbuzz.0.dylib +libharfbuzz.dylib +libhistory.8.0.dylib +libhistory.8.dylib +libhistory.dylib +libhogweed.5.0.dylib +libhogweed.5.dylib +libhogweed.dylib +libicudata.66.1.dylib +libicudata.66.dylib +libicudata.dylib +libicui18n.66.1.dylib +libicui18n.66.dylib +libicui18n.dylib +libicuio.66.1.dylib +libicuio.66.dylib +libicuio.dylib +libicutest.66.1.dylib +libicutest.66.dylib +libicutest.dylib +libicutu.66.1.dylib +libicutu.66.dylib +libicutu.dylib +libicuuc.66.1.dylib +libicuuc.66.dylib +libicuuc.dylib +libintl.8.dylib +libintl.dylib +libjavascriptcoregtk-4.0.18.17.10.dylib +libjavascriptcoregtk-4.0.18.dylib +libjavascriptcoregtk-4.0.dylib +libjpeg.9.dylib +libjpeg.dylib +libltdl.7.dylib +libltdl.dylib +liblzma.5.dylib +liblzma.dylib +libmysqlclient.18.dylib +libmysqlclient.dylib +libnettle.7.0.dylib +libnettle.7.dylib +libnettle.dylib +libofx.7.dylib +libofx.dylib +libosp.5.dylib +libosp.dylib +libpango-1.0.0.dylib +libpango-1.0.dylib +libpangocairo-1.0.0.dylib +libpangocairo-1.0.dylib +libpangoft2-1.0.0.dylib +libpangoft2-1.0.dylib +libpcre.1.dylib +libpcre.dylib +libpcrecpp.0.dylib +libpcrecpp.dylib +libpcreposix.0.dylib +libpcreposix.dylib +libpgtypes.3.12.dylib +libpgtypes.3.dylib +libpgtypes.dylib +libpixman-1.0.40.0.dylib +libpixman-1.0.dylib +libpixman-1.dylib +libpng.dylib +libpng16.16.dylib +libpng16.dylib +libpq.5.12.dylib +libpq.5.dylib +libpq.dylib +libpsl.5.dylib +libpsl.dylib +libpython3.8.dylib +libreadline.8.0.dylib +libreadline.8.dylib +libreadline.dylib +librsvg-2.2.dylib +librsvg-2.dylib +libsoup-2.4.1.dylib +libsoup-2.4.dylib +libsoup-gnome-2.4.1.dylib +libsoup-gnome-2.4.dylib +libsqlite3.0.dylib +libsqlite3.dylib +libssl.1.1.dylib +libssl.dylib +libtasn1.6.dylib +libtasn1.dylib +libtextstyle.0.dylib +libtextstyle.dylib +libtiff.5.dylib +libtiff.dylib +libtiffxx.5.dylib +libtiffxx.dylib +libunistring.2.dylib +libunistring.dylib +libvala-0.36.0.dylib +libvala-0.36.dylib +libwebkit2gtk-4.0.37.49.6.dylib +libwebkit2gtk-4.0.37.dylib +libwebkit2gtk-4.0.dylib +libwebp.7.dylib +libwebp.dylib +libwebpdecoder.3.dylib +libwebpdecoder.dylib +libwebpdemux.2.dylib +libwebpdemux.dylib +libwebpmux.3.dylib +libwebpmux.dylib +libxml2.2.dylib +libxml2.dylib +libxmlsec1-gcrypt.1.dylib +libxmlsec1-gcrypt.dylib +libxmlsec1-gnutls.1.dylib +libxmlsec1-gnutls.dylib +libxmlsec1-openssl.1.dylib +libxmlsec1-openssl.dylib +libxmlsec1.1.dylib +libxmlsec1.dylib +libxslt.1.dylib +libxslt.dylib +libz.1.2.11.dylib +libz.1.dylib +libz.dylib +pkgconfig +python3.8 diff --git a/util/ci/macos-ci-deps/macos_share.manifest b/util/ci/macos-ci-deps/macos_share.manifest new file mode 100644 index 0000000000..51e4d84c22 --- /dev/null +++ b/util/ci/macos-ci-deps/macos_share.manifest @@ -0,0 +1,7 @@ +cmake +cmake-3.17 +gettext +gettext-0.20.2 +guile +itstool +swig diff --git a/util/ci/macos-ci-deps/make-macos-deps-tarball.sh b/util/ci/macos-ci-deps/make-macos-deps-tarball.sh new file mode 100755 index 0000000000..3416a1fd97 --- /dev/null +++ b/util/ci/macos-ci-deps/make-macos-deps-tarball.sh @@ -0,0 +1,24 @@ +#!/bin/sh + +fn=$1 +if [[ "x$fn" = "x" ]]; then + fn="macos-dependencies.tar.xz" +fi +DIR=$(pwd) + +export PREFIX=/Users/runner/gnucash/inst +jhbuild bootstrap-gtk-osx +jhbuild build + +cd /Users/runner/gnucash +mv inst arch +mkdir inst +for i in 'bin' 'include' 'lib' 'share'; do + j="$DIR/util/ci/macos-ci-deps/macos_$i.manifest" + mkdir inst/$i + for k in `cat $j`; do + mv arch/$i/$k inst/$i + done +done + +tar -cJf $DIR/$fn inst From 562b4be2201df79fa96c05e5c86f1257a53868cb Mon Sep 17 00:00:00 2001 From: "Triyan W. Nugroho" Date: Sat, 21 Nov 2020 08:37:10 +0700 Subject: [PATCH 147/167] Update Indonesian translation for GnuCash. 5430 translated messages, 114 fuzzy translations, 4 untranslated messages. --- po/id.po | 10999 ++++++++++++++++++++++++++--------------------------- 1 file changed, 5428 insertions(+), 5571 deletions(-) diff --git a/po/id.po b/po/id.po index 3a3806c317..8b3b4491a8 100644 --- a/po/id.po +++ b/po/id.po @@ -1,5 +1,5 @@ -# Indonesian translations for GnuCash package -# Terjemahan bahasa inggris untuk paket GnuCash. +# Indonesian translations for GnuCash package. +# Terjemahan bahasa Indonesia untuk paket GnuCash. # Copyright (C) 2020 by the GnuCash developers and the translators listed below. # This file is distributed under the same license as the GnuCash package. # Triyan W. Nugroho , 2020. @@ -9,8 +9,8 @@ msgstr "" "Project-Id-Version: GnuCash 4.1\n" "Report-Msgid-Bugs-To: https://bugs.gnucash.org/enter_bug.cgi?" "product=GnuCash&component=Translations\n" -"POT-Creation-Date: 2020-10-14 01:49+0200\n" -"PO-Revision-Date: 2020-09-17 20:40+0700\n" +"POT-Creation-Date: 2020-11-21 07:43+0700\n" +"PO-Revision-Date: 2020-11-21 08:25+0700\n" "Last-Translator: Triyan W. Nugroho \n" "Language-Team: \n" "Language: id\n" @@ -22,7 +22,7 @@ msgstr "" #: bindings/guile/commodity-table.scm:36 msgid "ALL NON-CURRENCY" -msgstr "mata uang" +msgstr "SEMUA YANG BUKAN MATA UANG" #: borrowed/goffice/go-charmap-sel.c:70 msgid "Arabic" @@ -538,7 +538,7 @@ msgstr "" "\n" "Untuk menampilkannya\n" "pilih \"Lihat\" pada bilah menu dan centang \"Baris Ganda\" atau\n" -"centang \"Mode Baris Ganda\" di Preferensi:Bawaan Register." +"centang \"Mode Baris Ganda\" di Preferensi:Register Baku." #: doc/tip_of_the_day.list.c:44 msgid "" @@ -547,6 +547,10 @@ msgid "" "View menu, you can choose the register style Auto-Split Ledger or " "Transaction Journal." msgstr "" +"Untuk memasukkan transaksi multi-split seperti gaji dengan beberapa " +"pemotongan, klik tombol Split pada bilah alat. Alternatif lain, di menu " +"Lihat, Anda bisa memilih gaya register Buku Besar Split Otomatis atau Jurnal " +"Transaksi." #: doc/tip_of_the_day.list.c:49 msgid "" @@ -632,7 +636,8 @@ msgid "" msgstr "" "Untuk mentransfer dana antar akun dengan mata uang yang berbeda, klik pada " "tombol Transfer pada bilah alat register, pilih akun, dan opsi Transfer Mata " -"Uang untuk memasukkan kurs atau jumlah mata uang lain yang akan tersedia." +"Uang untuk memasukkan nilai tukar atau jumlah mata uang lain yang akan " +"tersedia." #: doc/tip_of_the_day.list.c:85 msgid "" @@ -641,7 +646,7 @@ msgid "" "use. Click the triangle at the far right of the column headings to change " "the display." msgstr "" -"Anda bisa menyetel layar Penyunting Sekuritas untuk menampilkan Sumber Data " +"Anda bisa mengatur layar Penyunting Sekuritas untuk menampilkan Sumber Data " "Harga dari sebuah sekuritas, yang akan memudahkan untuk melihat sumber " "daring mana yang digunakan oleh sekuritas Anda. Klik pada segitiga di sisi " "kanan dari judul kolom untuk mengubah tampilan." @@ -689,7 +694,7 @@ msgid "" msgstr "" "Penyunting transaksi terjadwal memiliki pengaturan frekuensi yang sangat " "fleksibel. Frekuensi dasar untuk menjadwalkan sebuah transaksi termasuk " -"harian, mingguan, dan bulanan. Tetapi skema lanjutan juga bisa disetel. " +"harian, mingguan, dan bulanan. Tetapi skema lanjutan juga bisa diatur. " "Beberapa contoh:\n" "\n" "Untuk menjadwalkan sebuah transaksi setiap tiga minggu, Anda bisa memilih " @@ -706,8 +711,8 @@ msgid "" msgstr "" "Jika Anda bekerja di malam hari, Anda harus menutup dan membuka kembali " "register yang Anda kerjakan setelah tengah malam, untuk mendapatkan tanggal " -"baru sebagai bawaan untuk transaksi baru. Anda tidak perlu memulai ulang " -"GnuCash." +"baru sebagai tanggal baku untuk transaksi-transaksi baru. Anda tidak perlu " +"memulai ulang GnuCash." #: doc/tip_of_the_day.list.c:115 msgid "" @@ -716,7 +721,7 @@ msgid "" "start the search from that account's register." msgstr "" "Untuk melakukan pencarian pada keseluruhan transaksi Anda, mulailah " -"pencarian (Sunting->Cari...) dari halaman hirarki akun utama. Untuk " +"pencarian (Sunting->Cari...) dari halaman hierarki akun utama. Untuk " "membatasi pencarian Anda ke sebuah akun tunggal, mulailah pencarian dari " "register akun tersebut." @@ -763,11 +768,11 @@ msgid_plural "" "selection made above, this book will be split into %d books." msgstr[0] "" "Tanggal transaksi terdahulu yang ditemukan di buku ini adalah %s. " -"Berdasarkan pada pilihan yang dibuat di atas, buku ini akan dipecah menjadi " +"Berdasarkan pada pilihan yang dibuat di atas, buku ini akan dipisah menjadi " "%d buku." msgstr[1] "" "Tanggal transaksi terdahulu yang ditemukan di buku ini adalah %s. " -"Berdasarkan pada pilihan yang dibuat di atas, buku ini akan dipecah menjadi " +"Berdasarkan pada pilihan yang dibuat di atas, buku ini akan dipisah menjadi " "%d buku." #. Translators: Run the assistant in your language to see GTK's translation of the button labels. @@ -827,7 +832,7 @@ msgid "Selected" msgstr "Terpilih" #: gnucash/gnome/assistant-hierarchy.c:767 -#: gnucash/gnome-utils/gnc-tree-view-account.c:2335 +#: gnucash/gnome-utils/gnc-tree-view-account.c:2366 msgid "Account Types" msgstr "Tipe Akun" @@ -864,16 +869,17 @@ msgid "No" msgstr "Tidak" #: gnucash/gnome/assistant-hierarchy.c:1335 -#: gnucash/gnome-utils/dialog-options.c:717 -#: gnucash/gnome-utils/gnc-tree-view-account.c:965 +#: gnucash/gnome-utils/dialog-options.c:729 +#: gnucash/gnome-utils/gnc-tree-view-account.c:988 #: gnucash/gtkbuilder/dialog-account.glade:272 msgid "Placeholder" msgstr "Placeholder" #: gnucash/gnome/assistant-hierarchy.c:1352 -#: gnucash/gnome-utils/dialog-account.c:313 -#: gnucash/gtkbuilder/dialog-account.glade:1838 -#: libgnucash/app-utils/gnc-ui-util.c:1072 +#: gnucash/gnome-utils/dialog-account.c:351 +#: gnucash/gnome-utils/gnc-tree-view-account.c:996 +#: gnucash/gtkbuilder/dialog-account.glade:1855 +#: libgnucash/app-utils/gnc-ui-util.c:1102 msgid "Opening Balance" msgstr "Saldo Awal" @@ -955,7 +961,7 @@ msgstr "Pinjaman" #: gnucash/gnome/assistant-loan.cpp:1457 #, c-format msgid "Loan Repayment Option: \"%s\"" -msgstr "Opsi Pembayaran Ulang Pinjaman: \"%s\"" +msgstr "Opsi Angsuran Pinjaman: \"%s\"" #. Translators: The following symbols will build the * #. * header line of exported CSV files: @@ -966,14 +972,14 @@ msgstr "Opsi Pembayaran Ulang Pinjaman: \"%s\"" #: gnucash/gtkbuilder/dialog-payment.glade:253 #: gnucash/gtkbuilder/dialog-payment.glade:374 #: gnucash/gtkbuilder/dialog-transfer.glade:138 -#: gnucash/gtkbuilder/gnc-plugin-page-register2.glade:475 +#: gnucash/gtkbuilder/gnc-plugin-page-register2.glade:522 #: gnucash/gtkbuilder/gnc-plugin-page-register.glade:366 #: gnucash/import-export/bi-import/dialog-bi-import-gui.c:148 #: gnucash/import-export/csv-exp/csv-transactions-export.c:613 #: gnucash/import-export/csv-exp/csv-transactions-export.c:622 #: gnucash/import-export/csv-imp/gnc-imp-props-price.cpp:49 #: gnucash/import-export/csv-imp/gnc-imp-props-tx.cpp:58 -#: gnucash/import-export/import-main-matcher.c:1034 +#: gnucash/import-export/import-main-matcher.c:1087 #: gnucash/import-export/import-match-picker.c:393 #: gnucash/import-export/import-match-picker.c:433 #: gnucash/import-export/qif-imp/assistant-qif-import.c:3700 @@ -1001,7 +1007,7 @@ msgstr "Opsi Pembayaran Ulang Pinjaman: \"%s\"" #: gnucash/report/reports/standard/owner-report.scm:50 #: gnucash/report/reports/standard/portfolio.scm:51 #: gnucash/report/reports/standard/register.scm:130 -#: gnucash/report/reports/standard/register.scm:382 +#: gnucash/report/reports/standard/register.scm:353 #: gnucash/report/reports/support/receipt.eguile.scm:143 #: gnucash/report/reports/support/taxinvoice.eguile.scm:268 #: gnucash/report/trep-engine.scm:161 gnucash/report/trep-engine.scm:940 @@ -1025,8 +1031,8 @@ msgstr "Tanggal" #: gnucash/register/ledger-core/split-register.c:2685 #: gnucash/report/reports/standard/new-owner-report.scm:294 #: gnucash/report/reports/standard/owner-report.scm:357 -#: libgnucash/engine/Account.cpp:144 libgnucash/engine/Account.cpp:152 -#: libgnucash/engine/Account.cpp:173 libgnucash/engine/gncOwner.c:814 +#: libgnucash/engine/Account.cpp:145 libgnucash/engine/Account.cpp:153 +#: libgnucash/engine/Account.cpp:174 libgnucash/engine/gncOwner.c:814 #: libgnucash/engine/gncOwner.c:847 libgnucash/engine/gncOwner.c:877 #: libgnucash/engine/gncOwner.c:890 msgid "Payment" @@ -1062,7 +1068,7 @@ msgstr "Pembayaran Eskrow" #: gnucash/register/ledger-core/split-register.c:2719 msgctxt "Action Column" msgid "Split" -msgstr "Pecah" +msgstr "Split" #: gnucash/gnome/assistant-stock-split.c:408 msgid "Error adding price." @@ -1074,7 +1080,7 @@ msgstr "Galat saat menambahkan harga." #: gnucash/import-export/aqb/gnc-ab-utils.c:541 #: gnucash/import-export/bi-import/dialog-bi-import-gui.c:151 #: gnucash/import-export/csv-imp/gnc-imp-props-tx.cpp:65 -#: gnucash/import-export/import-main-matcher.c:1035 +#: gnucash/import-export/import-main-matcher.c:1088 #: gnucash/import-export/import-match-picker.c:392 #: gnucash/import-export/qif-imp/dialog-account-picker.c:433 #: gnucash/register/ledger-core/split-register-model.c:341 @@ -1089,7 +1095,7 @@ msgstr "Galat saat menambahkan harga." #: gnucash/report/reports/standard/owner-report.scm:48 #: gnucash/report/reports/standard/portfolio.scm:253 #: gnucash/report/reports/standard/register.scm:143 -#: gnucash/report/reports/standard/register.scm:407 +#: gnucash/report/reports/standard/register.scm:378 #: gnucash/report/trep-engine.scm:1218 msgid "Account" msgstr "Akun" @@ -1109,7 +1115,7 @@ msgstr "Simbol" #: gnucash/report/reports/standard/general-ledger.scm:78 #: gnucash/report/reports/standard/general-ledger.scm:98 #: gnucash/report/reports/standard/register.scm:146 -#: gnucash/report/reports/standard/register.scm:412 +#: gnucash/report/reports/standard/register.scm:383 #: gnucash/report/trep-engine.scm:953 gnucash/report/trep-engine.scm:1078 #: gnucash/report/trep-engine.scm:1240 msgid "Shares" @@ -1120,8 +1126,8 @@ msgid "You don't have any stock accounts with balances!" msgstr "Anda tidak memiliki akun saham dengan saldo!" #: gnucash/gnome/business-gnome-utils.c:73 -#: gnucash/gnome/business-gnome-utils.c:260 gnucash/gnome/dialog-invoice.c:1462 -#: gnucash/gnome/dialog-invoice.c:1540 +#: gnucash/gnome/business-gnome-utils.c:260 gnucash/gnome/dialog-invoice.c:1476 +#: gnucash/gnome/dialog-invoice.c:1554 #: gnucash/gnome-utils/gnc-general-select.c:220 msgid "Select..." msgstr "Pilih..." @@ -1132,27 +1138,27 @@ msgid "Edit..." msgstr "Sunting..." #: gnucash/gnome/business-gnome-utils.c:219 gnucash/gnome/dialog-doclink.c:740 -#: gnucash/gnome/dialog-invoice.c:2586 gnucash/gnome/dialog-invoice.c:2811 -#: gnucash/gnome/dialog-invoice.c:2812 gnucash/gnome/dialog-invoice.c:3521 +#: gnucash/gnome/dialog-invoice.c:2600 gnucash/gnome/dialog-invoice.c:2825 +#: gnucash/gnome/dialog-invoice.c:2826 gnucash/gnome/dialog-invoice.c:3535 #: gnucash/gnome-search/dialog-search.c:1064 #: gnucash/gnome-utils/gnc-tree-view-split-reg.c:2998 #: gnucash/gtkbuilder/dialog-bi-import-gui.glade:147 #: gnucash/report/reports/standard/invoice.scm:787 -#: libgnucash/engine/Account.cpp:172 libgnucash/engine/gncInvoice.c:1082 +#: libgnucash/engine/Account.cpp:173 libgnucash/engine/gncInvoice.c:1082 msgid "Bill" msgstr "Tagihan" #: gnucash/gnome/business-gnome-utils.c:222 gnucash/gnome/dialog-doclink.c:744 -#: gnucash/gnome/dialog-invoice.c:2592 gnucash/gnome/dialog-invoice.c:2818 -#: gnucash/gnome/dialog-invoice.c:2819 +#: gnucash/gnome/dialog-invoice.c:2606 gnucash/gnome/dialog-invoice.c:2832 +#: gnucash/gnome/dialog-invoice.c:2833 msgid "Voucher" msgstr "Voucer" #: gnucash/gnome/business-gnome-utils.c:225 gnucash/gnome/dialog-doclink.c:748 -#: gnucash/gnome/dialog-invoice.c:3535 +#: gnucash/gnome/dialog-invoice.c:3549 #: gnucash/gnome/gnc-plugin-page-invoice.c:570 #: gnucash/gnome/gnc-plugin-page-register.c:633 -#: gnucash/gnome/gnc-plugin-page-report.c:1804 +#: gnucash/gnome/gnc-plugin-page-report.c:1848 #: gnucash/gnome-search/dialog-search.c:1080 #: gnucash/gnome-utils/gnc-tree-model-split-reg.c:2908 #: gnucash/gnome-utils/gnc-tree-view-split-reg.c:3073 @@ -1169,7 +1175,7 @@ msgstr "Voucer" #: gnucash/report/reports/standard/taxinvoice.scm:173 #: gnucash/report/reports/support/receipt.eguile.scm:91 #: gnucash/report/reports/support/taxinvoice.eguile.scm:106 -#: libgnucash/engine/Account.cpp:153 libgnucash/engine/gncInvoice.c:1080 +#: libgnucash/engine/Account.cpp:154 libgnucash/engine/gncInvoice.c:1080 msgid "Invoice" msgstr "Faktur" @@ -1179,7 +1185,7 @@ msgstr "Faktur" #: gnucash/import-export/csv-imp/gnc-imp-props-price.cpp:48 #: gnucash/import-export/csv-imp/gnc-imp-props-tx.cpp:56 #: gnucash/import-export/import-pending-matches.c:192 -#: gnucash/report/reports/standard/register.scm:228 +#: gnucash/report/reports/standard/register.scm:217 #: gnucash/report/trep-engine.scm:258 gnucash/report/trep-engine.scm:291 #: gnucash/report/trep-engine.scm:341 gnucash/report/trep-engine.scm:429 #: gnucash/report/trep-engine.scm:1020 libgnucash/engine/gncOwner.c:213 @@ -1266,7 +1272,7 @@ msgid "Term \"%s\" is in use. You cannot delete it." msgstr "Jangka \"%s\" sedang digunakan. Anda tidak dapat menghapusnya." #: gnucash/gnome/dialog-billterms.c:678 -#: gnucash/gnome-utils/dialog-tax-table.c:670 +#: gnucash/gnome-utils/dialog-tax-table.c:673 #, c-format msgid "Are you sure you want to delete \"%s\"?" msgstr "Apakah Anda ingin menghapus \"%s\"?" @@ -1315,21 +1321,23 @@ msgstr "Hapus komoditas?" #: gnucash/gnome/dialog-price-edit-db.c:206 #: gnucash/gnome/dialog-price-editor.c:232 gnucash/gnome/dialog-tax-info.c:1189 #: gnucash/gnome/gnc-plugin-budget.c:289 -#: gnucash/gnome/gnc-plugin-page-account-tree.c:1765 +#: gnucash/gnome/gnc-plugin-page-account-tree.c:1799 #: gnucash/gnome/gnc-plugin-page-invoice.c:184 #: gnucash/gnome/gnc-plugin-page-owner-tree.c:1111 #: gnucash/gnome/gnc-plugin-page-register2.c:1630 -#: gnucash/gnome/gnc-plugin-page-register.c:1984 +#: gnucash/gnome/gnc-plugin-page-register.c:1990 #: gnucash/gnome/gnc-split-reg.c:975 gnucash/gnome/gnc-split-reg.c:1013 #: gnucash/gnome/gnc-split-reg.c:1235 gnucash/gnome/gnc-split-reg.c:1503 #: gnucash/gnome/gnc-split-reg.c:1543 gnucash/gnome/window-reconcile2.c:2124 #: gnucash/gnome/window-reconcile.c:2345 #: gnucash/gnome-search/search-account.c:237 -#: gnucash/gnome-utils/dialog-account.c:679 -#: gnucash/gnome-utils/dialog-tax-table.c:600 +#: gnucash/gnome-utils/dialog-account.c:722 +#: gnucash/gnome-utils/dialog-options.c:224 +#: gnucash/gnome-utils/dialog-tax-table.c:603 #: gnucash/gnome-utils/gnc-file.c:118 gnucash/gnome-utils/gnc-file.c:366 #: gnucash/gnome-utils/gnc-file.c:664 gnucash/gnome-utils/gnc-gui-query.c:300 -#: gnucash/gnome-utils/gnc-main-window.c:1293 +#: gnucash/gnome-utils/gnc-main-window.c:1307 +#: gnucash/gnome-utils/gnc-main-window.c:1448 #: gnucash/gnome-utils/gnc-tree-control-split-reg.c:886 #: gnucash/gnome-utils/gnc-tree-control-split-reg.c:1023 #: gnucash/gnome-utils/gnc-tree-control-split-reg.c:1063 @@ -1339,7 +1347,7 @@ msgstr "Hapus komoditas?" #: gnucash/gtkbuilder/dialog-account.glade:383 #: gnucash/gtkbuilder/dialog-account.glade:817 #: gnucash/gtkbuilder/dialog-account.glade:1133 -#: gnucash/gtkbuilder/dialog-account.glade:1901 +#: gnucash/gtkbuilder/dialog-account.glade:1918 #: gnucash/gtkbuilder/dialog-account-picker.glade:174 #: gnucash/gtkbuilder/dialog-bi-import-gui.glade:39 #: gnucash/gtkbuilder/dialog-billterms.glade:791 @@ -1358,7 +1366,7 @@ msgstr "Hapus komoditas?" #: gnucash/gtkbuilder/dialog-fincalc.glade:122 #: gnucash/gtkbuilder/dialog-import.glade:46 #: gnucash/gtkbuilder/dialog-import.glade:334 -#: gnucash/gtkbuilder/dialog-import.glade:1018 +#: gnucash/gtkbuilder/dialog-import.glade:1034 #: gnucash/gtkbuilder/dialog-invoice.glade:675 #: gnucash/gtkbuilder/dialog-invoice.glade:1199 #: gnucash/gtkbuilder/dialog-job.glade:41 @@ -1388,12 +1396,12 @@ msgstr "Hapus komoditas?" #: gnucash/gtkbuilder/gnc-plugin-page-budget.glade:437 #: gnucash/gtkbuilder/gnc-plugin-page-budget.glade:882 #: gnucash/gtkbuilder/gnc-plugin-page-register2.glade:30 -#: gnucash/gtkbuilder/gnc-plugin-page-register2.glade:184 -#: gnucash/gtkbuilder/gnc-plugin-page-register2.glade:691 +#: gnucash/gtkbuilder/gnc-plugin-page-register2.glade:231 +#: gnucash/gtkbuilder/gnc-plugin-page-register2.glade:738 #: gnucash/gtkbuilder/gnc-plugin-page-register.glade:31 -#: gnucash/gtkbuilder/gnc-plugin-page-register.glade:588 -#: gnucash/gtkbuilder/gnc-plugin-page-register.glade:934 -#: gnucash/gtkbuilder/gnc-plugin-page-register.glade:1144 +#: gnucash/gtkbuilder/gnc-plugin-page-register.glade:582 +#: gnucash/gtkbuilder/gnc-plugin-page-register.glade:787 +#: gnucash/gtkbuilder/gnc-plugin-page-register.glade:1128 #: gnucash/gtkbuilder/gnc-tree-view-owner.glade:24 #: gnucash/gtkbuilder/window-autoclear.glade:22 #: gnucash/gtkbuilder/window-reconcile.glade:21 @@ -1414,7 +1422,7 @@ msgstr "_Batal" #: gnucash/gnome/dialog-commodities.c:218 #: gnucash/gnome/dialog-price-edit-db.c:207 -#: gnucash/gnome/gnc-plugin-page-account-tree.c:1766 +#: gnucash/gnome/gnc-plugin-page-account-tree.c:1800 #: gnucash/gnome/gnc-plugin-page-invoice.c:189 #: gnucash/gnome/gnc-plugin-page-owner-tree.c:1112 #: gnucash/gnome/gnc-plugin-page-sx-list.c:162 @@ -1457,7 +1465,7 @@ msgstr "Kredit harus bernilai positif atau Anda harus membiarkannya kosong." #: gnucash/gnome/dialog-customer.c:432 gnucash/gnome/dialog-employee.c:287 #: gnucash/gnome/dialog-job.c:242 gnucash/gnome/dialog-vendor.c:299 -#: gnucash/gnome-utils/dialog-account.c:1505 +#: gnucash/gnome-utils/dialog-account.c:1575 msgid "" msgstr "" @@ -1484,9 +1492,9 @@ msgid "Customer's Invoices" msgstr "Faktur Pelanggan" #: gnucash/gnome/dialog-customer.c:913 gnucash/gnome/dialog-employee.c:694 -#: gnucash/gnome/dialog-invoice.c:3287 gnucash/gnome/dialog-invoice.c:3296 -#: gnucash/gnome/dialog-invoice.c:3307 gnucash/gnome/dialog-invoice.c:3562 -#: gnucash/gnome/dialog-invoice.c:3568 gnucash/gnome/dialog-job.c:561 +#: gnucash/gnome/dialog-invoice.c:3301 gnucash/gnome/dialog-invoice.c:3310 +#: gnucash/gnome/dialog-invoice.c:3321 gnucash/gnome/dialog-invoice.c:3576 +#: gnucash/gnome/dialog-invoice.c:3582 gnucash/gnome/dialog-job.c:561 #: gnucash/gnome/gnc-plugin-page-owner-tree.c:237 #: gnucash/gnome/gnc-plugin-page-owner-tree.c:296 #: gnucash/gtkbuilder/dialog-payment.glade:61 @@ -1519,8 +1527,8 @@ msgstr "Nama Perusahaan" msgid "Contact" msgstr "Kontak" -#: gnucash/gnome/dialog-customer.c:938 gnucash/gnome/dialog-invoice.c:3432 -#: gnucash/gnome/dialog-invoice.c:3586 gnucash/gnome/dialog-job.c:591 +#: gnucash/gnome/dialog-customer.c:938 gnucash/gnome/dialog-invoice.c:3446 +#: gnucash/gnome/dialog-invoice.c:3600 gnucash/gnome/dialog-job.c:591 #: gnucash/gnome/dialog-order.c:888 gnucash/gnome/dialog-vendor.c:741 #: gnucash/import-export/customer-import/dialog-customer-import-gui.c:129 #: gnucash/report/reports/aging.scm:537 @@ -1649,7 +1657,7 @@ msgstr "Taut Dokumen Transaksi" #: gnucash/gnome/dialog-lot-viewer.c:953 gnucash/gnome/dialog-tax-info.c:1397 #: gnucash/gnome/gnc-split-reg.c:700 gnucash/gnome/reconcile-view.c:417 #: gnucash/gnome-utils/gnc-tree-model-budget.c:102 -#: gnucash/gnome-utils/gnc-tree-view-account.c:805 +#: gnucash/gnome-utils/gnc-tree-view-account.c:828 #: gnucash/gnome-utils/gnc-tree-view-split-reg.c:2812 #: gnucash/gtkbuilder/dialog-book-close.glade:163 #: gnucash/gtkbuilder/dialog-choose-owner.glade:97 @@ -1659,14 +1667,14 @@ msgstr "Taut Dokumen Transaksi" #: gnucash/import-export/csv-exp/csv-transactions-export.c:615 #: gnucash/import-export/csv-exp/csv-transactions-export.c:624 #: gnucash/import-export/csv-imp/gnc-imp-props-tx.cpp:60 -#: gnucash/import-export/import-main-matcher.c:1038 +#: gnucash/import-export/import-main-matcher.c:1091 #: gnucash/import-export/import-match-picker.c:395 #: gnucash/import-export/import-match-picker.c:435 #: gnucash/import-export/qif-imp/assistant-qif-import.c:3710 #: gnucash/import-export/qif-imp/assistant-qif-import.c:3761 #: gnucash/register/ledger-core/gncEntryLedgerModel.c:67 #: gnucash/register/ledger-core/split-register-model.c:295 -#: gnucash/report/reports/standard/account-summary.scm:408 +#: gnucash/report/reports/standard/account-summary.scm:409 #: gnucash/report/reports/standard/customer-summary.scm:73 #: gnucash/report/reports/standard/general-journal.scm:96 #: gnucash/report/reports/standard/general-ledger.scm:70 @@ -1678,7 +1686,7 @@ msgstr "Taut Dokumen Transaksi" #: gnucash/report/reports/standard/new-owner-report.scm:240 #: gnucash/report/reports/standard/owner-report.scm:54 #: gnucash/report/reports/standard/register.scm:138 -#: gnucash/report/reports/standard/register.scm:397 +#: gnucash/report/reports/standard/register.scm:368 #: gnucash/report/reports/support/taxinvoice.eguile.scm:270 #: gnucash/report/trep-engine.scm:215 gnucash/report/trep-engine.scm:945 #: gnucash/report/trep-engine.scm:1073 gnucash/report/trep-engine.scm:1198 @@ -1738,7 +1746,7 @@ msgstr "ID Pegawai" msgid "Employee Username" msgstr "Nama Pengguna Pegawai" -#: gnucash/gnome/dialog-employee.c:707 gnucash/gnome/dialog-invoice.c:3412 +#: gnucash/gnome/dialog-employee.c:707 gnucash/gnome/dialog-invoice.c:3426 #: gnucash/gnome-utils/gnc-tree-view-owner.c:364 msgid "Employee Name" msgstr "Nama Pegawai" @@ -1812,7 +1820,7 @@ msgid "Place Holder" msgstr "Placeholder" #: gnucash/gnome/dialog-find-account.c:388 -#: gnucash/gnome-utils/gnc-tree-view-account.c:957 +#: gnucash/gnome-utils/gnc-tree-view-account.c:980 #: gnucash/gtkbuilder/dialog-account.glade:322 msgid "Hidden" msgstr "Tersembunyi" @@ -1823,7 +1831,7 @@ msgstr "Tak Digunakan" #: gnucash/gnome/dialog-find-account.c:410 msgid "Balance Zero" -msgstr "" +msgstr "Nol Saldo" #: gnucash/gnome/dialog-find-account.c:421 msgid "Tax related" @@ -1869,7 +1877,7 @@ msgid "Share Price" msgstr "Harga Saham" #: gnucash/gnome/dialog-find-transactions2.c:124 -#: gnucash/gnome/dialog-invoice.c:3581 gnucash/gnome/dialog-lot-viewer.c:967 +#: gnucash/gnome/dialog-invoice.c:3595 gnucash/gnome/dialog-lot-viewer.c:967 #: gnucash/gnome/gnc-split-reg.c:694 gnucash/gnome/reconcile-view.c:413 #: gnucash/gnome-utils/gnc-tree-view-split-reg.c:2892 #: gnucash/gnome-utils/gnc-tree-view-split-reg.c:2904 @@ -1878,7 +1886,7 @@ msgstr "Harga Saham" #: gnucash/gtkbuilder/assistant-loan.glade:764 #: gnucash/gtkbuilder/dialog-transfer.glade:112 #: gnucash/import-export/csv-imp/gnc-imp-props-price.cpp:50 -#: gnucash/import-export/import-main-matcher.c:1037 +#: gnucash/import-export/import-main-matcher.c:1090 #: gnucash/import-export/import-match-picker.c:394 #: gnucash/import-export/import-match-picker.c:434 #: gnucash/import-export/qif-imp/assistant-qif-import.c:3721 @@ -1891,8 +1899,8 @@ msgstr "Harga Saham" #: gnucash/report/reports/standard/job-report.scm:45 #: gnucash/report/reports/standard/new-owner-report.scm:244 #: gnucash/report/reports/standard/owner-report.scm:59 -#: gnucash/report/reports/standard/register.scm:427 -#: gnucash/report/reports/standard/register.scm:676 +#: gnucash/report/reports/standard/register.scm:398 +#: gnucash/report/reports/standard/register.scm:647 #: gnucash/report/trep-engine.scm:207 gnucash/report/trep-engine.scm:1016 #: gnucash/report/trep-engine.scm:1067 gnucash/report/trep-engine.scm:1348 #: gnucash/report/trep-engine.scm:1364 gnucash/report/trep-engine.scm:2058 @@ -1909,14 +1917,14 @@ msgstr "Jumlah" #: gnucash/report/reports/standard/advanced-portfolio.scm:1080 #: gnucash/report/reports/standard/portfolio.scm:258 #: gnucash/report/reports/standard/register.scm:158 -#: gnucash/report/reports/standard/register.scm:436 +#: gnucash/report/reports/standard/register.scm:407 msgid "Value" msgstr "Nilai" #: gnucash/gnome/dialog-find-transactions2.c:128 #: gnucash/gnome/dialog-find-transactions.c:126 -#: gnucash/gnome/dialog-invoice.c:3332 gnucash/gnome/dialog-invoice.c:3366 -#: gnucash/gnome/dialog-invoice.c:3400 +#: gnucash/gnome/dialog-invoice.c:3346 gnucash/gnome/dialog-invoice.c:3380 +#: gnucash/gnome/dialog-invoice.c:3414 #: gnucash/gnome-utils/gnc-tree-view-split-reg.c:2720 #: gnucash/gtkbuilder/dialog-invoice.glade:93 #: gnucash/import-export/bi-import/dialog-bi-import-gui.c:161 @@ -1929,8 +1937,8 @@ msgstr "Tanggal Pos" #: gnucash/gnome/dialog-find-transactions.c:132 #: gnucash/gnome/dialog-find-transactions.c:171 #: gnucash/gnome/dialog-find-transactions.c:177 -#: gnucash/gnome/gnc-plugin-page-register.c:2476 -#: gnucash/gnome/gnc-plugin-page-register.c:4160 +#: gnucash/gnome/gnc-plugin-page-register.c:2482 +#: gnucash/gnome/gnc-plugin-page-register.c:4166 #: gnucash/gnome-search/dialog-search.c:866 #: gnucash/gnome-search/dialog-search.c:872 #: gnucash/import-export/csv-exp/csv-transactions-export.c:626 @@ -1944,7 +1952,7 @@ msgstr "Angka/Aksi" #: gnucash/gnome/dialog-find-transactions.c:133 #: gnucash/gnome/dialog-find-transactions.c:170 #: gnucash/gnome/dialog-find-transactions.c:178 -#: gnucash/gnome/gnc-plugin-page-register.c:2481 +#: gnucash/gnome/gnc-plugin-page-register.c:2487 #: gnucash/gnome/gnc-split-reg.c:703 gnucash/gnome-search/dialog-search.c:865 #: gnucash/gnome-search/dialog-search.c:873 #: gnucash/gnome-utils/gnc-tree-view-split-reg.c:2749 @@ -1968,8 +1976,8 @@ msgstr "Aksi" #: gnucash/gnome/dialog-find-transactions.c:136 #: gnucash/gnome/dialog-find-transactions.c:173 #: gnucash/gnome/dialog-find-transactions.c:179 -#: gnucash/gnome/gnc-plugin-page-register.c:2475 -#: gnucash/gnome/gnc-plugin-page-register.c:4159 +#: gnucash/gnome/gnc-plugin-page-register.c:2481 +#: gnucash/gnome/gnc-plugin-page-register.c:4165 #: gnucash/gnome-search/dialog-search.c:868 #: gnucash/gnome-search/dialog-search.c:874 #: gnucash/import-export/csv-exp/csv-transactions-export.c:614 @@ -1984,7 +1992,7 @@ msgstr "Nomor Transaksi" #: gnucash/gnome/dialog-find-transactions.c:137 #: gnucash/gnome/dialog-find-transactions.c:172 #: gnucash/gnome/dialog-find-transactions.c:180 -#: gnucash/gnome/gnc-plugin-page-register.c:2480 +#: gnucash/gnome/gnc-plugin-page-register.c:2486 #: gnucash/gnome/gnc-split-reg.c:691 gnucash/gnome-search/dialog-search.c:867 #: gnucash/gnome-search/dialog-search.c:875 #: gnucash/gnome-utils/gnc-tree-view-split-reg.c:2765 @@ -2013,14 +2021,14 @@ msgstr "Deskripsi, Catatan, atau Memo" #: gnucash/gtkbuilder/dialog-transfer.glade:215 #: gnucash/import-export/csv-exp/csv-transactions-export.c:626 #: gnucash/import-export/csv-imp/gnc-imp-props-tx.cpp:69 -#: gnucash/import-export/import-main-matcher.c:1039 +#: gnucash/import-export/import-main-matcher.c:1092 #: gnucash/import-export/import-match-picker.c:396 #: gnucash/import-export/import-match-picker.c:436 #: gnucash/register/ledger-core/split-register-model.c:355 #: gnucash/report/reports/standard/general-ledger.scm:71 #: gnucash/report/reports/standard/general-ledger.scm:91 #: gnucash/report/reports/standard/register.scm:140 -#: gnucash/report/reports/standard/register.scm:402 +#: gnucash/report/reports/standard/register.scm:373 #: gnucash/report/trep-engine.scm:244 gnucash/report/trep-engine.scm:971 #: gnucash/report/trep-engine.scm:1095 gnucash/report/trep-engine.scm:1208 #: gnucash/report/trep-engine.scm:1209 @@ -2030,7 +2038,7 @@ msgstr "Memo" #: gnucash/gnome/dialog-find-transactions2.c:155 #: gnucash/gnome/dialog-find-transactions.c:155 #: gnucash/gnome/gnc-split-reg.c:706 -#: gnucash/gnome-utils/gnc-tree-view-account.c:937 +#: gnucash/gnome-utils/gnc-tree-view-account.c:960 #: gnucash/gnome-utils/gnc-tree-view-owner.c:473 #: gnucash/gnome-utils/gnc-tree-view-split-reg.c:2814 #: gnucash/gtkbuilder/assistant-acct-period.glade:155 @@ -2047,7 +2055,7 @@ msgstr "Memo" #: gnucash/import-export/csv-imp/gnc-imp-props-tx.cpp:61 #: gnucash/import-export/customer-import/dialog-customer-import-gui.c:138 #: gnucash/register/ledger-core/split-register-model.c:491 -#: gnucash/report/reports/standard/account-summary.scm:436 +#: gnucash/report/reports/standard/account-summary.scm:437 #: gnucash/report/reports/standard/balsheet-eg.scm:195 #: gnucash/report/reports/standard/receipt.scm:38 #: gnucash/report/reports/standard/taxinvoice.scm:78 @@ -2139,18 +2147,18 @@ msgstr "HBCI Daring" msgid "You need to supply Billing Information." msgstr "Anda perlu menyediakan Informasi Penagihan." -#: gnucash/gnome/dialog-invoice.c:711 +#: gnucash/gnome/dialog-invoice.c:725 msgid "Are you sure you want to delete the selected entry?" msgstr "Anda yakin ingin menghapus entri yang dipilih?" -#: gnucash/gnome/dialog-invoice.c:713 +#: gnucash/gnome/dialog-invoice.c:727 msgid "" "This entry is attached to an order and will be deleted from that as well!" msgstr "" "Entri ini terlampir pada sebuah pesanan dan akan dihapus dari pesanan itu!" -#: gnucash/gnome/dialog-invoice.c:822 gnucash/gnome/dialog-invoice.c:3341 -#: gnucash/gnome/dialog-invoice.c:3375 gnucash/gnome/dialog-invoice.c:3409 +#: gnucash/gnome/dialog-invoice.c:836 gnucash/gnome/dialog-invoice.c:3355 +#: gnucash/gnome/dialog-invoice.c:3389 gnucash/gnome/dialog-invoice.c:3423 #: gnucash/gnome-utils/gnc-tree-view-split-reg.c:2736 #: gnucash/import-export/bi-import/dialog-bi-import-gui.c:162 #: gnucash/register/ledger-core/split-register-model.c:239 @@ -2167,161 +2175,161 @@ msgstr "" msgid "Due Date" msgstr "Tanggal Tenggat" -#: gnucash/gnome/dialog-invoice.c:823 gnucash/report/reports/aging.scm:388 +#: gnucash/gnome/dialog-invoice.c:837 gnucash/report/reports/aging.scm:388 #: gnucash/report/reports/standard/new-aging.scm:130 #: gnucash/report/reports/standard/new-owner-report.scm:961 #: gnucash/report/reports/standard/owner-report.scm:613 msgid "Post Date" msgstr "Tanggal Pos" -#: gnucash/gnome/dialog-invoice.c:824 +#: gnucash/gnome/dialog-invoice.c:838 msgid "Post to Account" msgstr "Pos ke Akun" -#: gnucash/gnome/dialog-invoice.c:825 +#: gnucash/gnome/dialog-invoice.c:839 msgid "Accumulate Splits?" -msgstr "Akumulasikan Pemecahan?" +msgstr "Akumulasikan Split?" -#: gnucash/gnome/dialog-invoice.c:917 +#: gnucash/gnome/dialog-invoice.c:931 msgid "The Invoice must have at least one Entry." msgstr "Faktur harus memiliki setidaknya satu Entri." -#: gnucash/gnome/dialog-invoice.c:937 +#: gnucash/gnome/dialog-invoice.c:951 msgid "Do you really want to post the invoice?" msgstr "Apakah Anda ingin mengepos faktur?" -#: gnucash/gnome/dialog-invoice.c:955 +#: gnucash/gnome/dialog-invoice.c:969 msgid "" "One or more of the entries are for accounts different from the invoice/bill " "currency. You will be asked a conversion rate for each." msgstr "" "Satu atau lebih entri ditujukan untuk akun yang berbeda dari mata uang " -"faktur/tagihan. Anda akan diminta memasukkan kurs untuk tiap entri." +"faktur/tagihan. Anda akan diminta memasukkan nilai tukar untuk tiap entri." -#: gnucash/gnome/dialog-invoice.c:1088 +#: gnucash/gnome/dialog-invoice.c:1102 msgid "The post action was canceled because not all exchange rates were given." -msgstr "Aksi pos dibatalkan karena tidak semua kurs diberikan." +msgstr "Aksi pos dibatalkan karena tidak semua nilai tukar diberikan." -#: gnucash/gnome/dialog-invoice.c:1372 +#: gnucash/gnome/dialog-invoice.c:1386 msgid "Total:" msgstr "Total:" -#: gnucash/gnome/dialog-invoice.c:1378 +#: gnucash/gnome/dialog-invoice.c:1392 msgid "Subtotal:" msgstr "Subtotal:" -#: gnucash/gnome/dialog-invoice.c:1379 +#: gnucash/gnome/dialog-invoice.c:1393 msgid "Tax:" msgstr "Pajak:" -#: gnucash/gnome/dialog-invoice.c:1383 +#: gnucash/gnome/dialog-invoice.c:1397 msgid "Total Cash:" msgstr "Total Tunai:" -#: gnucash/gnome/dialog-invoice.c:1384 +#: gnucash/gnome/dialog-invoice.c:1398 msgid "Total Charge:" msgstr "Total Biaya:" -#: gnucash/gnome/dialog-invoice.c:1853 gnucash/gnome/dialog-payment.c:1331 +#: gnucash/gnome/dialog-invoice.c:1867 gnucash/gnome/dialog-payment.c:1331 #: gnucash/gtkbuilder/dialog-invoice.glade:857 #: gnucash/report/reports/standard/invoice.scm:793 #: libgnucash/engine/gncInvoice.c:1088 msgid "Credit Note" msgstr "Nota Kredit" -#: gnucash/gnome/dialog-invoice.c:2049 +#: gnucash/gnome/dialog-invoice.c:2063 msgid "PAID" msgstr "LUNAS" -#: gnucash/gnome/dialog-invoice.c:2051 +#: gnucash/gnome/dialog-invoice.c:2065 #: gnucash/report/reports/standard/new-owner-report.scm:577 msgid "UNPAID" msgstr "BELUM LUNAS" -#: gnucash/gnome/dialog-invoice.c:2099 gnucash/gnome/dialog-invoice.c:2118 -#: gnucash/gnome/dialog-invoice.c:2137 +#: gnucash/gnome/dialog-invoice.c:2113 gnucash/gnome/dialog-invoice.c:2132 +#: gnucash/gnome/dialog-invoice.c:2151 msgid "New Credit Note" msgstr "Nota Kredit Baru" -#: gnucash/gnome/dialog-invoice.c:2100 +#: gnucash/gnome/dialog-invoice.c:2114 #: gnucash/gnome/gnc-plugin-page-owner-tree.c:292 #: gnucash/gnome-search/dialog-search.c:1082 #: gnucash/gtkbuilder/dialog-invoice.glade:642 msgid "New Invoice" msgstr "Faktur Baru" -#: gnucash/gnome/dialog-invoice.c:2105 gnucash/gnome/dialog-invoice.c:2124 -#: gnucash/gnome/dialog-invoice.c:2143 +#: gnucash/gnome/dialog-invoice.c:2119 gnucash/gnome/dialog-invoice.c:2138 +#: gnucash/gnome/dialog-invoice.c:2157 msgid "Edit Credit Note" msgstr "Sunting Nota Kredit" -#: gnucash/gnome/dialog-invoice.c:2106 +#: gnucash/gnome/dialog-invoice.c:2120 msgid "Edit Invoice" msgstr "Sunting Faktur" -#: gnucash/gnome/dialog-invoice.c:2109 gnucash/gnome/dialog-invoice.c:2128 -#: gnucash/gnome/dialog-invoice.c:2147 +#: gnucash/gnome/dialog-invoice.c:2123 gnucash/gnome/dialog-invoice.c:2142 +#: gnucash/gnome/dialog-invoice.c:2161 msgid "View Credit Note" msgstr "Lihat Nota Kredit" -#: gnucash/gnome/dialog-invoice.c:2110 +#: gnucash/gnome/dialog-invoice.c:2124 msgid "View Invoice" msgstr "Lihat Faktur" -#: gnucash/gnome/dialog-invoice.c:2119 +#: gnucash/gnome/dialog-invoice.c:2133 #: gnucash/gnome/gnc-plugin-page-owner-tree.c:291 #: gnucash/gnome-search/dialog-search.c:1066 msgid "New Bill" msgstr "Tagihan Baru" -#: gnucash/gnome/dialog-invoice.c:2125 +#: gnucash/gnome/dialog-invoice.c:2139 msgid "Edit Bill" msgstr "Sunting Tagihan" -#: gnucash/gnome/dialog-invoice.c:2129 +#: gnucash/gnome/dialog-invoice.c:2143 msgid "View Bill" msgstr "Lihat Tagihan" -#: gnucash/gnome/dialog-invoice.c:2138 +#: gnucash/gnome/dialog-invoice.c:2152 #: gnucash/gnome-search/dialog-search.c:1078 msgid "New Expense Voucher" msgstr "Voucer Pengeluaran Baru" -#: gnucash/gnome/dialog-invoice.c:2144 +#: gnucash/gnome/dialog-invoice.c:2158 msgid "Edit Expense Voucher" msgstr "Sunting Voucer Pengeluaran" -#: gnucash/gnome/dialog-invoice.c:2148 +#: gnucash/gnome/dialog-invoice.c:2162 msgid "View Expense Voucher" msgstr "Lihat Voucer Pengeluaran" -#: gnucash/gnome/dialog-invoice.c:2471 +#: gnucash/gnome/dialog-invoice.c:2485 msgid "Open Linked Document:" msgstr "Buka Dokumen Tertaut:" -#: gnucash/gnome/dialog-invoice.c:2585 gnucash/gnome/dialog-invoice.c:2810 +#: gnucash/gnome/dialog-invoice.c:2599 gnucash/gnome/dialog-invoice.c:2824 msgid "Bill Information" msgstr "Informasi Tagihan" -#: gnucash/gnome/dialog-invoice.c:2587 gnucash/gnome/dialog-invoice.c:2813 -#: gnucash/gnome/dialog-invoice.c:3382 +#: gnucash/gnome/dialog-invoice.c:2601 gnucash/gnome/dialog-invoice.c:2827 +#: gnucash/gnome/dialog-invoice.c:3396 msgid "Bill ID" msgstr "ID Tagihan" -#: gnucash/gnome/dialog-invoice.c:2591 gnucash/gnome/dialog-invoice.c:2817 +#: gnucash/gnome/dialog-invoice.c:2605 gnucash/gnome/dialog-invoice.c:2831 msgid "Voucher Information" msgstr "Informasi Voucer" -#: gnucash/gnome/dialog-invoice.c:2593 gnucash/gnome/dialog-invoice.c:2820 -#: gnucash/gnome/dialog-invoice.c:3416 +#: gnucash/gnome/dialog-invoice.c:2607 gnucash/gnome/dialog-invoice.c:2834 +#: gnucash/gnome/dialog-invoice.c:3430 msgid "Voucher ID" msgstr "ID Voucer" -#: gnucash/gnome/dialog-invoice.c:3149 +#: gnucash/gnome/dialog-invoice.c:3163 msgid "Date of duplicated entries" msgstr "Tanggal entri ganda" -#: gnucash/gnome/dialog-invoice.c:3204 +#: gnucash/gnome/dialog-invoice.c:3218 msgid "" "One or more selected invoices have already been posted.\n" "Re-check your selection." @@ -2329,54 +2337,54 @@ msgstr "" "Satu atau lebih faktur yang dipilih telah dipos.\n" "Periksa ulang pilihan Anda." -#: gnucash/gnome/dialog-invoice.c:3208 +#: gnucash/gnome/dialog-invoice.c:3222 msgid "Do you really want to post these invoices?" msgstr "Apakah Anda ingin mengepos faktur tersebut?" -#: gnucash/gnome/dialog-invoice.c:3286 gnucash/gnome/dialog-invoice.c:3567 +#: gnucash/gnome/dialog-invoice.c:3300 gnucash/gnome/dialog-invoice.c:3581 msgid "View/Edit Invoice" msgstr "Lihat/Sunting Faktur" -#: gnucash/gnome/dialog-invoice.c:3288 gnucash/gnome/dialog-invoice.c:3297 -#: gnucash/gnome/dialog-invoice.c:3308 +#: gnucash/gnome/dialog-invoice.c:3302 gnucash/gnome/dialog-invoice.c:3311 +#: gnucash/gnome/dialog-invoice.c:3322 #: gnucash/gnome/gnc-plugin-page-invoice.c:455 #: gnucash/gnome/gnc-plugin-page-register2.c:501 #: gnucash/gnome/gnc-plugin-page-register.c:624 msgid "Duplicate" -msgstr "Gandakan" +msgstr "Duplikat" -#: gnucash/gnome/dialog-invoice.c:3289 gnucash/gnome/dialog-invoice.c:3298 -#: gnucash/gnome/dialog-invoice.c:3309 +#: gnucash/gnome/dialog-invoice.c:3303 gnucash/gnome/dialog-invoice.c:3312 +#: gnucash/gnome/dialog-invoice.c:3323 #: gnucash/gnome/gnc-plugin-page-invoice.c:459 msgid "Post" msgstr "Pos" -#: gnucash/gnome/dialog-invoice.c:3290 gnucash/gnome/dialog-invoice.c:3299 -#: gnucash/gnome/dialog-invoice.c:3310 +#: gnucash/gnome/dialog-invoice.c:3304 gnucash/gnome/dialog-invoice.c:3313 +#: gnucash/gnome/dialog-invoice.c:3324 msgid "Printable Report" msgstr "Laporan yang Dapat Dicetak" -#: gnucash/gnome/dialog-invoice.c:3295 gnucash/gnome/dialog-invoice.c:3561 +#: gnucash/gnome/dialog-invoice.c:3309 gnucash/gnome/dialog-invoice.c:3575 msgid "View/Edit Bill" msgstr "Lihat/Sunting Tagihan" #. Translators: The terms 'Voucher' and 'Expense Voucher' are used #. interchangeably in gnucash and mean the same thing. -#: gnucash/gnome/dialog-invoice.c:3306 +#: gnucash/gnome/dialog-invoice.c:3320 msgid "View/Edit Voucher" msgstr "Lihat/Sunting Voucer" -#: gnucash/gnome/dialog-invoice.c:3320 +#: gnucash/gnome/dialog-invoice.c:3334 msgid "Invoice Owner" msgstr "Pemilik Faktur" -#: gnucash/gnome/dialog-invoice.c:3323 +#: gnucash/gnome/dialog-invoice.c:3337 #: gnucash/report/reports/standard/invoice.scm:327 msgid "Invoice Notes" msgstr "Catatan Faktur" -#: gnucash/gnome/dialog-invoice.c:3326 gnucash/gnome/dialog-invoice.c:3360 -#: gnucash/gnome/dialog-invoice.c:3394 gnucash/gnome/dialog-invoice.c:3423 +#: gnucash/gnome/dialog-invoice.c:3340 gnucash/gnome/dialog-invoice.c:3374 +#: gnucash/gnome/dialog-invoice.c:3408 gnucash/gnome/dialog-invoice.c:3437 #: gnucash/gnome/dialog-job.c:574 gnucash/gnome/dialog-job.c:587 #: gnucash/gnome/dialog-order.c:886 gnucash/gtkbuilder/dialog-invoice.glade:310 #: gnucash/gtkbuilder/dialog-invoice.glade:944 @@ -2385,18 +2393,18 @@ msgstr "Catatan Faktur" msgid "Billing ID" msgstr "ID Tagihan" -#: gnucash/gnome/dialog-invoice.c:3329 gnucash/gnome/dialog-invoice.c:3363 -#: gnucash/gnome/dialog-invoice.c:3397 +#: gnucash/gnome/dialog-invoice.c:3343 gnucash/gnome/dialog-invoice.c:3377 +#: gnucash/gnome/dialog-invoice.c:3411 msgid "Is Paid?" msgstr "Lunas?" -#: gnucash/gnome/dialog-invoice.c:3335 gnucash/gnome/dialog-invoice.c:3369 -#: gnucash/gnome/dialog-invoice.c:3403 +#: gnucash/gnome/dialog-invoice.c:3349 gnucash/gnome/dialog-invoice.c:3383 +#: gnucash/gnome/dialog-invoice.c:3417 msgid "Is Posted?" msgstr "Dipos?" -#: gnucash/gnome/dialog-invoice.c:3338 gnucash/gnome/dialog-invoice.c:3372 -#: gnucash/gnome/dialog-invoice.c:3406 gnucash/gnome/dialog-order.c:875 +#: gnucash/gnome/dialog-invoice.c:3352 gnucash/gnome/dialog-invoice.c:3386 +#: gnucash/gnome/dialog-invoice.c:3420 gnucash/gnome/dialog-order.c:875 #: gnucash/gtkbuilder/dialog-invoice.glade:67 #: gnucash/gtkbuilder/dialog-invoice.glade:762 #: gnucash/gtkbuilder/dialog-order.glade:135 @@ -2405,35 +2413,35 @@ msgstr "Dipos?" msgid "Date Opened" msgstr "Tanggal Dibuka" -#: gnucash/gnome/dialog-invoice.c:3344 gnucash/gnome/dialog-invoice.c:3378 +#: gnucash/gnome/dialog-invoice.c:3358 gnucash/gnome/dialog-invoice.c:3392 msgid "Company Name " msgstr "Nama Perusahaan " -#: gnucash/gnome/dialog-invoice.c:3348 +#: gnucash/gnome/dialog-invoice.c:3362 #: gnucash/gtkbuilder/dialog-invoice.glade:41 #: gnucash/gtkbuilder/dialog-invoice.glade:749 msgid "Invoice ID" msgstr "ID Faktur" -#: gnucash/gnome/dialog-invoice.c:3354 +#: gnucash/gnome/dialog-invoice.c:3368 msgid "Bill Owner" msgstr "Pemilik Tagihan" -#: gnucash/gnome/dialog-invoice.c:3357 +#: gnucash/gnome/dialog-invoice.c:3371 msgid "Bill Notes" msgstr "Catatan Tagihan" -#: gnucash/gnome/dialog-invoice.c:3388 +#: gnucash/gnome/dialog-invoice.c:3402 msgid "Voucher Owner" msgstr "Pemilik Voucer" -#: gnucash/gnome/dialog-invoice.c:3391 +#: gnucash/gnome/dialog-invoice.c:3405 msgid "Voucher Notes" msgstr "Catatan Voucer" -#: gnucash/gnome/dialog-invoice.c:3425 gnucash/gnome/dialog-invoice.c:3584 +#: gnucash/gnome/dialog-invoice.c:3439 gnucash/gnome/dialog-invoice.c:3598 #: gnucash/gnome/dialog-lot-viewer.c:860 gnucash/gnome/dialog-tax-info.c:1235 -#: gnucash/gnome-utils/gnc-tree-view-account.c:788 +#: gnucash/gnome-utils/gnc-tree-view-account.c:811 #: gnucash/gnome-utils/gnc-tree-view-owner.c:401 #: gnucash/gnome-utils/gnc-tree-view-price.c:420 #: gnucash/gnome-utils/gnc-tree-view-split-reg.c:2872 @@ -2445,7 +2453,7 @@ msgstr "Catatan Voucer" #: gnucash/gtkbuilder/dialog-payment.glade:280 #: gnucash/gtkbuilder/dialog-tax-info.glade:127 #: gnucash/register/ledger-core/split-register-model.c:362 -#: gnucash/report/reports/standard/account-summary.scm:407 +#: gnucash/report/reports/standard/account-summary.scm:408 #: gnucash/report/reports/standard/customer-summary.scm:72 #: gnucash/report/reports/standard/job-report.scm:43 #: gnucash/report/reports/standard/new-owner-report.scm:52 @@ -2454,26 +2462,26 @@ msgstr "Catatan Voucer" msgid "Type" msgstr "Tipe" -#: gnucash/gnome/dialog-invoice.c:3427 +#: gnucash/gnome/dialog-invoice.c:3441 #: gnucash/register/ledger-core/split-register-model.c:309 #: gnucash/report/reports/standard/new-owner-report.scm:819 msgid "Paid" msgstr "Lunas" -#: gnucash/gnome/dialog-invoice.c:3430 +#: gnucash/gnome/dialog-invoice.c:3444 msgid "Posted" msgstr "Dipos" -#: gnucash/gnome/dialog-invoice.c:3435 gnucash/gnome/dialog-invoice.c:3588 +#: gnucash/gnome/dialog-invoice.c:3449 gnucash/gnome/dialog-invoice.c:3602 msgid "Due" msgstr "Jatuh Tempo" -#: gnucash/gnome/dialog-invoice.c:3437 gnucash/gnome/dialog-lot-viewer.c:866 +#: gnucash/gnome/dialog-invoice.c:3451 gnucash/gnome/dialog-lot-viewer.c:866 #: gnucash/gnome/dialog-order.c:893 msgid "Opened" msgstr "Dibuka" -#: gnucash/gnome/dialog-invoice.c:3439 gnucash/gnome/dialog-lot-viewer.c:947 +#: gnucash/gnome/dialog-invoice.c:3453 gnucash/gnome/dialog-lot-viewer.c:947 #: gnucash/gnome/dialog-order.c:895 gnucash/gnome/reconcile-view.c:421 #: gnucash/gnome/reconcile-view.c:425 #: gnucash/gtkbuilder/dialog-payment.glade:473 @@ -2484,53 +2492,53 @@ msgstr "Dibuka" #: gnucash/report/reports/standard/general-journal.scm:95 #: gnucash/report/reports/standard/general-ledger.scm:89 #: gnucash/report/reports/standard/register.scm:136 -#: gnucash/report/reports/standard/register.scm:392 +#: gnucash/report/reports/standard/register.scm:363 #: gnucash/report/trep-engine.scm:944 gnucash/report/trep-engine.scm:1072 #: gnucash/report/trep-engine.scm:1180 msgid "Num" -msgstr "No" +msgstr "Num" -#: gnucash/gnome/dialog-invoice.c:3520 +#: gnucash/gnome/dialog-invoice.c:3534 msgid "Find Bill" msgstr "Cari Tagihan" -#: gnucash/gnome/dialog-invoice.c:3527 +#: gnucash/gnome/dialog-invoice.c:3541 msgid "Find Expense Voucher" msgstr "Cari Voucer Pengeluaran" -#: gnucash/gnome/dialog-invoice.c:3528 +#: gnucash/gnome/dialog-invoice.c:3542 #: gnucash/gnome-search/dialog-search.c:1076 #: gnucash/report/reports/standard/invoice.scm:789 msgid "Expense Voucher" msgstr "Voucer Pengeluaran" -#: gnucash/gnome/dialog-invoice.c:3534 +#: gnucash/gnome/dialog-invoice.c:3548 msgid "Find Invoice" msgstr "Cari Faktur" #. Translators: %d is the number of bills/credit notes due. This is a #. ngettext(3) message. -#: gnucash/gnome/dialog-invoice.c:3668 +#: gnucash/gnome/dialog-invoice.c:3682 #, c-format msgid "The following vendor document is due:" msgid_plural "The following %d vendor documents are due:" msgstr[0] "Dokumen vendor berikut jatuh tempo:" msgstr[1] "Dokumen %d vendor berikut jatuh tempo:" -#: gnucash/gnome/dialog-invoice.c:3672 +#: gnucash/gnome/dialog-invoice.c:3686 msgid "Due Bills Reminder" msgstr "Pengingat Tagihan Jatuh Tempo" #. Translators: %d is the number of invoices/credit notes due. This is a #. ngettext(3) message. -#: gnucash/gnome/dialog-invoice.c:3679 +#: gnucash/gnome/dialog-invoice.c:3693 #, c-format msgid "The following customer document is due:" msgid_plural "The following %d customer documents are due:" msgstr[0] "Dokumen pelanggan berikut telah jatuh tempo:" msgstr[1] "Dokumen %d pelanggan berikut telah jatuh tempo:" -#: gnucash/gnome/dialog-invoice.c:3683 +#: gnucash/gnome/dialog-invoice.c:3697 msgid "Due Invoices Reminder" msgstr "Pengingat Faktur Jatuh Tempo" @@ -2571,7 +2579,7 @@ msgstr "Hanya Aktif?" #: gnucash/gtkbuilder/dialog-job.glade:204 #: gnucash/register/ledger-core/split-register-model.c:369 msgid "Rate" -msgstr "" +msgstr "Suku Bunga" #: gnucash/gnome/dialog-job.c:578 gnucash/gnome-utils/gnc-tree-view-owner.c:357 #: gnucash/gtkbuilder/dialog-job.glade:102 @@ -2603,19 +2611,19 @@ msgstr "Tutup" #: gnucash/gnome/dialog-lot-viewer.c:886 #: gnucash/gtkbuilder/assistant-acct-period.glade:143 -#: gnucash/report/html-fonts.scm:69 -#: gnucash/report/reports/standard/register.scm:376 +#: gnucash/report/html-fonts.scm:93 +#: gnucash/report/reports/standard/register.scm:347 msgid "Title" msgstr "Judul" #: gnucash/gnome/dialog-lot-viewer.c:893 gnucash/gnome/dialog-lot-viewer.c:985 -#: gnucash/gnome-utils/gnc-tree-view-account.c:831 +#: gnucash/gnome-utils/gnc-tree-view-account.c:854 #: gnucash/gnome-utils/gnc-tree-view-owner.c:457 #: gnucash/gnome-utils/gnc-tree-view-owner.c:465 #: gnucash/gnome-utils/gnc-tree-view-split-reg.c:3112 #: gnucash/register/ledger-core/split-register-model.c:320 #: gnucash/register/ledger-core/split-register-model.c:484 -#: gnucash/report/reports/standard/account-summary.scm:421 +#: gnucash/report/reports/standard/account-summary.scm:422 #: gnucash/report/reports/standard/balance-forecast.scm:248 #: gnucash/report/reports/standard/job-report.scm:206 #: gnucash/report/reports/standard/new-owner-report.scm:58 @@ -2627,12 +2635,12 @@ msgstr "Saldo" #: gnucash/gnome/dialog-lot-viewer.c:899 msgid "Gains" -msgstr "Laba" +msgstr "Keuntungan" #: gnucash/gnome/dialog-lot-viewer.c:979 #: gnucash/report/reports/example/average-balance.scm:131 msgid "Gain/Loss" -msgstr "Laba/Rugi" +msgstr "Keuntungan/Kerugian" #: gnucash/gnome/dialog-lot-viewer.c:1043 #, c-format @@ -2725,7 +2733,7 @@ msgid "" "Please specify the conversion rate." msgstr "" "Akun transfer dan pos terasosiasi dengan mata uang lain. Silakan menentukan " -"kurs." +"nilai tukar." #: gnucash/gnome/dialog-payment.c:1269 gnucash/gnome/search-owner.c:211 #: gnucash/gnome-search/dialog-search.c:1068 @@ -2788,7 +2796,7 @@ msgid "" "The selected transaction doesn't have splits that can be assigned as a " "payment" msgstr "" -"Transaksi yang dipilih tidak memiliki pemecahan yang bisa ditetapkan sebagai " +"Transaksi yang dipilih tidak memiliki split yang bisa ditetapkan sebagai " "pembayaran" #: gnucash/gnome/dialog-payment.c:1589 @@ -2798,8 +2806,8 @@ msgid "" "Please select one, the others will be ignored.\n" "\n" msgstr "" -"Meskipun transaksi ini memiliki beberapa pemecahan yang bisa dianggap\n" -"sebagai 'pemecahan pembayaran', gnucash hanya bisa menangani satu saja.\n" +"Meskipun transaksi ini memiliki beberapa split yang bisa dianggap\n" +"sebagai 'split pembayaran', gnucash hanya bisa menangani satu saja.\n" "Silakan memilih satu, dan yang lain akan diabaikan.\n" "\n" @@ -2829,12 +2837,12 @@ msgid "" "%s\n" "Do you wish to continue and ignore these splits ?" msgstr "" -"Transaksi ini memiliki setidaknya satu pemecahan di dalam sebuah akun bisnis " +"Transaksi ini memiliki setidaknya satu split di dalam sebuah akun bisnis " "yang bukan menjadi bagian dari sebuah transaksi bisnis.\n" -"Jika Anda melanjutkan, pemecahan berikut akan diabaikan:\n" +"Jika Anda melanjutkan, split berikut akan diabaikan:\n" "\n" "%s\n" -"Apakah Anda ingin melanjutkan dan mengabaikan pemecahan tersebut?" +"Apakah Anda ingin melanjutkan dan mengabaikan split tersebut?" #. Translators: %d is the number of prices. This is a ngettext(3) message. #: gnucash/gnome/dialog-price-edit-db.c:193 @@ -2937,13 +2945,13 @@ msgstr "user" #: gnucash/gtkbuilder/dialog-print-check.glade:293 #: gnucash/gtkbuilder/gnc-date-format.glade:30 msgid "Custom" -msgstr "Kustom" +msgstr "Suai" #: gnucash/gnome/dialog-print-check.c:2602 -#: gnucash/gtkbuilder/dialog-preferences.glade:3314 +#: gnucash/gtkbuilder/dialog-preferences.glade:3431 #: gnucash/gtkbuilder/dialog-print-check.glade:264 msgid "Top" -msgstr "Puncak" +msgstr "Atas" #: gnucash/gnome/dialog-progress.c:484 gnucash/gnome/dialog-progress.c:533 msgid "(paused)" @@ -2972,23 +2980,23 @@ msgstr "Baris" msgid "Cols" msgstr "Kolom" -#: gnucash/gnome/dialog-report-style-sheet.c:171 +#: gnucash/gnome/dialog-report-style-sheet.c:172 #, c-format msgid "HTML Style Sheet Properties: %s" msgstr "Properti Lembar Gaya HTML: %s" -#: gnucash/gnome/dialog-report-style-sheet.c:265 +#: gnucash/gnome/dialog-report-style-sheet.c:269 msgid "You must provide a name for the new style sheet." msgstr "Anda harus memasukkan nama untuk lembar gaya yang baru." -#: gnucash/gnome/dialog-report-style-sheet.c:516 +#: gnucash/gnome/dialog-report-style-sheet.c:520 msgid "Style Sheet Name" msgstr "Nama Lembar Gaya" #: gnucash/gnome/dialog-sx-editor2.c:164 gnucash/gnome/dialog-sx-editor.c:167 #: gnucash/gnome/gnc-plugin-page-sx-list.c:150 #: gnucash/gnome/window-reconcile2.c:2161 gnucash/gnome/window-reconcile.c:2382 -#: gnucash/gnome-utils/gnc-main-window.c:270 +#: gnucash/gnome-utils/gnc-main-window.c:273 #: gnucash/gtkbuilder/dialog-billterms.glade:677 #: gnucash/gtkbuilder/dialog-commodities.glade:155 #: gnucash/gtkbuilder/dialog-price.glade:872 @@ -3004,12 +3012,12 @@ msgid "_Transaction" msgstr "_Transaksi" #: gnucash/gnome/dialog-sx-editor2.c:166 gnucash/gnome/dialog-sx-editor.c:169 -#: gnucash/gnome-utils/gnc-main-window.c:271 +#: gnucash/gnome-utils/gnc-main-window.c:274 msgid "_View" msgstr "_Lihat" #: gnucash/gnome/dialog-sx-editor2.c:167 gnucash/gnome/dialog-sx-editor.c:170 -#: gnucash/gnome-utils/gnc-main-window.c:272 +#: gnucash/gnome-utils/gnc-main-window.c:275 msgid "_Actions" msgstr "_Aksi" @@ -3022,12 +3030,12 @@ msgstr "" #: gnucash/gnome/dialog-sx-editor2.c:635 #, c-format msgid "Couldn't parse credit formula for split \"%s\"." -msgstr "" +msgstr "Tak dapat mengurai rumus kredit untuk split \"%s\"." #: gnucash/gnome/dialog-sx-editor2.c:657 #, c-format msgid "Couldn't parse debit formula for split \"%s\"." -msgstr "" +msgstr "Tak dapat mengurai rumus debit untuk split \"%s\"." #: gnucash/gnome/dialog-sx-editor2.c:690 gnucash/gnome/dialog-sx-editor.c:874 #: gnucash/gnome/dialog-sx-from-trans.c:261 @@ -3035,6 +3043,8 @@ msgid "" "The Scheduled Transaction Editor cannot automatically balance this " "transaction. Should it still be entered?" msgstr "" +"Penyunting Transaksi Terjadwal tak dapat menyeimbangkan transaksi ini secara " +"otomatis. Apakah Anda tetap ingin memasukannya?" #: gnucash/gnome/dialog-sx-editor2.c:711 gnucash/gnome/dialog-sx-editor.c:493 msgid "Please name the Scheduled Transaction." @@ -3064,11 +3074,11 @@ msgstr "" #: gnucash/gnome/dialog-sx-editor2.c:791 gnucash/gnome/dialog-sx-editor.c:543 msgid "Please provide a valid end selection." -msgstr "" +msgstr "Silakan memberikan pilihan akhir yang valid." #: gnucash/gnome/dialog-sx-editor2.c:809 gnucash/gnome/dialog-sx-editor.c:558 msgid "There must be some number of occurrences." -msgstr "" +msgstr "Harus ada sejumlah pengulangan." #: gnucash/gnome/dialog-sx-editor2.c:818 gnucash/gnome/dialog-sx-editor.c:566 #, c-format @@ -3124,30 +3134,30 @@ msgstr "" #: gnucash/gnome/dialog-sx-editor.c:676 #, c-format msgid "Couldn't parse %s for split \"%s\"." -msgstr "Tak dapat mengurai %s untuk pemecahan \"%s\"." +msgstr "Tak dapat mengurai %s untuk split \"%s\"." #: gnucash/gnome/dialog-sx-editor.c:739 #, c-format msgid "Split with memo %s has an invalid account." -msgstr "Pemecahan dengan memo %s memiliki akun yang tidak valid." +msgstr "Split dengan memo %s memiliki akun yang tidak valid." #: gnucash/gnome/dialog-sx-editor.c:742 msgid "Invalid Account in Split" -msgstr "Tak valid" +msgstr "Akun Tak Valid di Split" #: gnucash/gnome/dialog-sx-editor.c:754 #, c-format msgid "Split with memo %s has an unparseable Credit Formula." -msgstr "Pemecahan dengan memo %s memiliki Rumus Kredit yang tak dapat diurai." +msgstr "Split dengan memo %s memiliki Rumus Kredit yang tak dapat diurai." #: gnucash/gnome/dialog-sx-editor.c:757 gnucash/gnome/dialog-sx-editor.c:773 msgid "Unparsable Formula in Split" -msgstr "Rumus yang tak dapat diurai pada Pemecahan" +msgstr "Rumus yang Tak Dapat Diurai di Split" #: gnucash/gnome/dialog-sx-editor.c:770 #, c-format msgid "Split with memo %s has an unparseable Debit Formula." -msgstr "Pemecahan dengan memo %s memiliki Rumus Debit yang tak dapat diurai." +msgstr "Split dengan memo %s memiliki Rumus Debit yang tak dapat diurai." #: gnucash/gnome/dialog-sx-from-trans.c:557 msgid "" @@ -3162,6 +3172,8 @@ msgid "" "Cannot create a Scheduled Transaction from a Transaction currently being " "edited. Please Enter the Transaction before Scheduling." msgstr "" +"Tak dapat membuat Transaksi Terjadwal dari Transaksi yang sedang disunting. " +"Silakan masukkan Transaksi sebelum menjadwalkan." #: gnucash/gnome/dialog-sx-since-last-run.c:401 msgid "Ignored" @@ -3185,7 +3197,7 @@ msgid "Created" msgstr "Dibuat" #: gnucash/gnome/dialog-sx-since-last-run.c:468 -#: gnucash/gtkbuilder/dialog-preferences.glade:1590 +#: gnucash/gtkbuilder/dialog-preferences.glade:1707 #: gnucash/report/reports/standard/balsheet-pnl.scm:241 #: gnucash/report/trep-engine.scm:577 msgid "Never" @@ -3220,7 +3232,7 @@ msgid "Transaction" msgstr "Transaksi" #: gnucash/gnome/dialog-sx-since-last-run.c:1021 -#: gnucash/gtkbuilder/gnc-plugin-page-register2.glade:617 +#: gnucash/gtkbuilder/gnc-plugin-page-register2.glade:664 #: gnucash/gtkbuilder/gnc-plugin-page-register.glade:508 msgid "Status" msgstr "Status" @@ -3235,10 +3247,10 @@ msgstr "Tahun Valid Terakhir: " #: gnucash/gnome/dialog-tax-info.c:290 msgid "Form Line Data: " -msgstr "" +msgstr "Data Baris Formulir: " #: gnucash/gnome/dialog-tax-info.c:291 -#: gnucash/report/reports/standard/account-summary.scm:406 +#: gnucash/report/reports/standard/account-summary.scm:407 msgid "Code" msgstr "Kode" @@ -3334,17 +3346,17 @@ msgstr "Cari Vendor" #: gnucash/report/reports/standard/balsheet-pnl.scm:1264 #: gnucash/report/reports/standard/net-charts.scm:350 #: gnucash/report/reports/standard/net-charts.scm:420 -#: gnucash/report/report-utilities.scm:110 libgnucash/engine/Account.cpp:170 -#: libgnucash/engine/Account.cpp:4322 libgnucash/engine/Scrub.c:449 +#: gnucash/report/report-utilities.scm:122 libgnucash/engine/Account.cpp:171 +#: libgnucash/engine/Account.cpp:4369 libgnucash/engine/Scrub.c:464 msgid "Income" msgstr "Pendapatan" #: gnucash/gnome/gnc-budget-view.c:502 #: gnucash/import-export/qif-imp/qif-dialog-utils.scm:80 #: gnucash/import-export/qif-imp/qif-dialog-utils.scm:85 -#: gnucash/report/reports/standard/budget-income-statement.scm:520 +#: gnucash/report/reports/standard/budget-income-statement.scm:521 #: gnucash/report/reports/standard/income-statement.scm:512 -#: gnucash/report/report-utilities.scm:111 +#: gnucash/report/report-utilities.scm:123 msgid "Expenses" msgstr "Pengeluaran" @@ -3365,7 +3377,7 @@ msgstr "Tersisa ke Anggaran" #: gnucash/gnome/gnc-budget-view.c:1652 gnucash/gnome/window-reconcile2.c:1069 #: gnucash/gnome/window-reconcile.c:1122 -#: gnucash/gnome-utils/gnc-tree-view-account.c:900 +#: gnucash/gnome-utils/gnc-tree-view-account.c:923 #: gnucash/report/html-acct-table.scm:793 gnucash/report/reports/aging.scm:543 #: gnucash/report/reports/aging.scm:830 #: gnucash/report/reports/locale-specific/de_DE/taxtxf.scm:294 @@ -3373,8 +3385,8 @@ msgstr "Tersisa ke Anggaran" #: gnucash/report/reports/standard/budget-flow.scm:168 #: gnucash/report/reports/standard/budget-flow.scm:247 #: gnucash/report/reports/standard/budget.scm:511 -#: gnucash/report/reports/standard/customer-summary.scm:476 #: gnucash/report/reports/standard/customer-summary.scm:478 +#: gnucash/report/reports/standard/customer-summary.scm:480 #: gnucash/report/reports/standard/invoice.scm:104 #: gnucash/report/reports/standard/invoice.scm:252 #: gnucash/report/reports/standard/new-aging.scm:200 @@ -3412,7 +3424,7 @@ msgstr "Buka berkas GnuCash yang sudah ada" #: gnucash/gnome/gnc-plugin-basic-commands.c:121 #: gnucash/gnome-utils/gnc-file.c:100 gnucash/gnome-utils/gnc-file.c:666 -#: gnucash/gnome-utils/gnc-main-window.c:1294 +#: gnucash/gnome-utils/gnc-main-window.c:1308 #: gnucash/html/gnc-html-webkit1.c:1198 msgid "_Save" msgstr "_Simpan" @@ -3445,7 +3457,7 @@ msgstr "Ekspor _Akun" #: gnucash/gnome/gnc-plugin-basic-commands.c:138 msgid "Export the account hierarchy to a new GnuCash datafile" -msgstr "Ekspor hirarki akun ke berkas data GnuCash yang baru" +msgstr "Ekspor hierarki akun ke berkas data GnuCash yang baru" #: gnucash/gnome/gnc-plugin-basic-commands.c:145 #: gnucash/gnome/gnc-plugin-page-register2.c:255 @@ -3477,8 +3489,7 @@ msgstr "Opsi Laporan Pa_jak" #: gnucash/gnome/gnc-plugin-page-register2.c:268 #: gnucash/gnome/gnc-plugin-page-register.c:377 msgid "Setup relevant accounts for tax reports, e.g. US income tax" -msgstr "" -"Siapkan akun yang bersangkutan untuk laporan pajak, misal pajak pendapatan" +msgstr "Siapkan akun yang relevan untuk laporan pajak, misal pajak pendapatan" #: gnucash/gnome/gnc-plugin-basic-commands.c:164 msgid "_Scheduled Transactions" @@ -3502,11 +3513,11 @@ msgstr "Buat Transaksi Terjadwal sejak dijalankan terakhir" #: gnucash/gnome/gnc-plugin-basic-commands.c:176 msgid "_Mortgage & Loan Repayment..." -msgstr "Pe_mbayaran Cicilan Hipotek & Pinjaman..." +msgstr "Angsuran Hipotek & Pinja_man..." #: gnucash/gnome/gnc-plugin-basic-commands.c:177 msgid "Setup scheduled transactions for repayment of a loan" -msgstr "Siapkan transaksi terjadwal untuk pembayaran cicilan pinjaman" +msgstr "Siapkan transaksi terjadwal untuk pembayaran angsuran pinjaman" #: gnucash/gnome/gnc-plugin-basic-commands.c:180 #: gnucash/report/report-core.scm:71 @@ -3555,7 +3566,7 @@ msgstr "Tutup Buku pada akhir Periode" #: gnucash/gnome/gnc-plugin-basic-commands.c:211 msgid "_Import Map Editor" -msgstr "_Impor Penyunting Peta" +msgstr "Penyunting Peta _Impor" #: gnucash/gnome/gnc-plugin-basic-commands.c:212 msgid "View and Delete Bayesian and Non Bayesian information" @@ -3640,8 +3651,9 @@ msgstr "Pilih Anggaran" #: gnucash/gnome/gnc-plugin-budget.c:290 #: gnucash/gnome-search/search-account.c:238 -#: gnucash/gnome-utils/dialog-account.c:680 +#: gnucash/gnome-utils/dialog-account.c:723 #: gnucash/gnome-utils/gnc-gui-query.c:297 +#: gnucash/gnome-utils/gnc-main-window.c:1449 #: gnucash/gtkbuilder/assistant-xml-encoding.glade:217 #: gnucash/gtkbuilder/dialog-account.glade:35 #: gnucash/gtkbuilder/dialog-account.glade:832 @@ -3664,7 +3676,7 @@ msgstr "Pilih Anggaran" #: gnucash/gtkbuilder/dialog-import.glade:61 #: gnucash/gtkbuilder/dialog-import.glade:191 #: gnucash/gtkbuilder/dialog-import.glade:349 -#: gnucash/gtkbuilder/dialog-import.glade:1034 +#: gnucash/gtkbuilder/dialog-import.glade:1050 #: gnucash/gtkbuilder/dialog-invoice.glade:691 #: gnucash/gtkbuilder/dialog-invoice.glade:1214 #: gnucash/gtkbuilder/dialog-job.glade:57 @@ -3693,12 +3705,12 @@ msgstr "Pilih Anggaran" #: gnucash/gtkbuilder/gnc-plugin-page-budget.glade:451 #: gnucash/gtkbuilder/gnc-plugin-page-budget.glade:897 #: gnucash/gtkbuilder/gnc-plugin-page-register2.glade:45 -#: gnucash/gtkbuilder/gnc-plugin-page-register2.glade:199 -#: gnucash/gtkbuilder/gnc-plugin-page-register2.glade:706 +#: gnucash/gtkbuilder/gnc-plugin-page-register2.glade:246 +#: gnucash/gtkbuilder/gnc-plugin-page-register2.glade:753 #: gnucash/gtkbuilder/gnc-plugin-page-register.glade:46 -#: gnucash/gtkbuilder/gnc-plugin-page-register.glade:603 -#: gnucash/gtkbuilder/gnc-plugin-page-register.glade:949 -#: gnucash/gtkbuilder/gnc-plugin-page-register.glade:1159 +#: gnucash/gtkbuilder/gnc-plugin-page-register.glade:597 +#: gnucash/gtkbuilder/gnc-plugin-page-register.glade:802 +#: gnucash/gtkbuilder/gnc-plugin-page-register.glade:1143 #: gnucash/gtkbuilder/gnc-tree-view-owner.glade:39 #: gnucash/gtkbuilder/window-autoclear.glade:38 #: gnucash/gtkbuilder/window-reconcile.glade:36 @@ -3890,9 +3902,8 @@ msgid "Open the Find Expense Voucher dialog" msgstr "Buka dialog Cari Voucer Pengeluaran" #: gnucash/gnome/gnc-plugin-business.c:278 -#, fuzzy msgid "Business Linked Documents" -msgstr "_Tertaut" +msgstr "Dokumen Tertaut Bisnis" #: gnucash/gnome/gnc-plugin-business.c:279 msgid "View all Linked Business Documents" @@ -3972,7 +3983,7 @@ msgstr "Buat sebuah Akun baru" #: gnucash/gnome/gnc-plugin-page-account-tree.c:203 msgid "New Account _Hierarchy..." -msgstr "_Hirarki Akun Baru..." +msgstr "_Hierarki Akun Baru..." #: gnucash/gnome/gnc-plugin-page-account-tree.c:204 msgid "Extend the current book by merging with new account type categories" @@ -4043,11 +4054,11 @@ msgstr "Hapus akun yang dipilih" #: gnucash/gnome/gnc-plugin-page-account-tree.c:257 msgid "_Cascade Account Properties..." -msgstr "" +msgstr "_Buat Properti Akun Bertingkat..." #: gnucash/gnome/gnc-plugin-page-account-tree.c:258 msgid "Cascade selected properties for account" -msgstr "" +msgstr "Jadikan bertingkat properti yang dipilih untuk akun" #: gnucash/gnome/gnc-plugin-page-account-tree.c:262 #: gnucash/gnome/gnc-plugin-page-account-tree.c:267 @@ -4076,7 +4087,7 @@ msgstr "Nomori ulang anak dari akun terpilih" #: gnucash/gnome/gnc-plugin-page-owner-tree.c:185 #: gnucash/gnome/gnc-plugin-page-register2.c:340 #: gnucash/gnome/gnc-plugin-page-register.c:458 -#: gnucash/gnome-utils/gnc-main-window.c:342 +#: gnucash/gnome-utils/gnc-main-window.c:345 msgid "_Filter By..." msgstr "_Filter Berdasar..." @@ -4086,9 +4097,9 @@ msgstr "_Filter Berdasar..." #: gnucash/gnome/gnc-plugin-page-owner-tree.c:189 #: gnucash/gnome/gnc-plugin-page-register2.c:344 #: gnucash/gnome/gnc-plugin-page-register.c:462 -#: gnucash/gnome/gnc-plugin-page-report.c:1182 +#: gnucash/gnome/gnc-plugin-page-report.c:1226 #: gnucash/gnome/gnc-plugin-page-sx-list.c:169 -#: gnucash/gnome-utils/gnc-main-window.c:346 +#: gnucash/gnome-utils/gnc-main-window.c:349 msgid "_Refresh" msgstr "Sega_rkan" @@ -4097,9 +4108,9 @@ msgstr "Sega_rkan" #: gnucash/gnome/gnc-plugin-page-owner-tree.c:190 #: gnucash/gnome/gnc-plugin-page-register2.c:345 #: gnucash/gnome/gnc-plugin-page-register.c:463 -#: gnucash/gnome/gnc-plugin-page-report.c:1183 +#: gnucash/gnome/gnc-plugin-page-report.c:1227 #: gnucash/gnome/gnc-plugin-page-sx-list.c:170 -#: gnucash/gnome-utils/gnc-main-window.c:347 +#: gnucash/gnome-utils/gnc-main-window.c:350 msgid "Refresh this window" msgstr "Segarkan jendela ini" @@ -4119,11 +4130,13 @@ msgstr "Rekonsiliasi akun yang dipilih" #: gnucash/gnome/gnc-plugin-page-register2.c:362 #: gnucash/gnome/gnc-plugin-page-register.c:480 msgid "_Auto-clear..." -msgstr "Bersihk_an Otomatis..." +msgstr "Klir-otom_atis..." #: gnucash/gnome/gnc-plugin-page-account-tree.c:307 msgid "Automatically clear individual transactions, given a cleared amount" msgstr "" +"Klirkan secara otomatis transaksi-transaksi individual, dengan memberikan " +"jumlah kliring" #: gnucash/gnome/gnc-plugin-page-account-tree.c:311 #: gnucash/gnome/gnc-plugin-page-register2.c:352 @@ -4143,13 +4156,13 @@ msgstr "Transfer dana dari satu akun ke akun yang lain" #: gnucash/gnome/gnc-plugin-page-register2.c:367 #: gnucash/gnome/gnc-plugin-page-register.c:485 msgid "Stoc_k Split..." -msgstr "Pe_cah Saham..." +msgstr "Spli_t Saham..." #: gnucash/gnome/gnc-plugin-page-account-tree.c:317 #: gnucash/gnome/gnc-plugin-page-register2.c:368 #: gnucash/gnome/gnc-plugin-page-register.c:486 msgid "Record a stock split or a stock merger" -msgstr "Catat pecah saham atau gabung saham" +msgstr "Catat split saham atau gabung saham" #: gnucash/gnome/gnc-plugin-page-account-tree.c:321 #: gnucash/gnome/gnc-plugin-page-register2.c:372 @@ -4173,6 +4186,8 @@ msgid "" "Check for and repair unbalanced transactions and orphan splits in this " "account" msgstr "" +"Memeriksa dan memperbaiki transaksi tak seimbang dan split terlantar pada " +"akun ini" #: gnucash/gnome/gnc-plugin-page-account-tree.c:331 msgid "Check & Repair Su_baccounts" @@ -4183,6 +4198,8 @@ msgid "" "Check for and repair unbalanced transactions and orphan splits in this " "account and its subaccounts" msgstr "" +"Memeriksa dan memperbaiki transaksi tak seimbang dan split terlantar pada " +"akun ini dan sub-akun" #: gnucash/gnome/gnc-plugin-page-account-tree.c:337 msgid "Check & Repair A_ll" @@ -4193,6 +4210,8 @@ msgid "" "Check for and repair unbalanced transactions and orphan splits in all " "accounts" msgstr "" +"Memeriksa dan memperbaiki transaksi tak-seimbang dan split terlantar pada " +"semua akun" #: gnucash/gnome/gnc-plugin-page-account-tree.c:342 #: gnucash/gnome/gnc-plugin-register2.c:64 @@ -4226,20 +4245,24 @@ msgstr "Baru" msgid "Delete" msgstr "Hapus" -#: gnucash/gnome/gnc-plugin-page-account-tree.c:440 -#: gnucash/gnome/gnc-plugin-page-register.c:1934 +#: gnucash/gnome/gnc-plugin-page-account-tree.c:454 +#: gnucash/gnome/gnc-plugin-page-account-tree.c:2001 +#: gnucash/gnome/gnc-plugin-page-register.c:1939 +#: gnucash/gnome/gnc-plugin-page-register.c:5022 msgid "'Check & Repair' is currently running, do you want to abort it?" msgstr "" +"'Periksa & Perbaiki' saat ini sedang berjalan, apakah Anda ingin " +"membatalkannya?" -#: gnucash/gnome/gnc-plugin-page-account-tree.c:498 -#: gnucash/gnome/gnc-plugin-page-account-tree.c:504 +#: gnucash/gnome/gnc-plugin-page-account-tree.c:520 +#: gnucash/gnome/gnc-plugin-page-account-tree.c:526 #: gnucash/gnome-utils/gnc-tree-view-split-reg.c:2829 #: gnucash/gnome-utils/gnc-tree-view-split-reg.c:2831 #: gnucash/gnome-utils/gnc-tree-view-split-reg.c:2833 #: gnucash/gnome-utils/gnc-tree-view-split-reg.c:2835 #: gnucash/gnome-utils/gnc-tree-view-split-reg.c:2846 #: gnucash/gnome-utils/gnc-tree-view-split-reg.c:2850 -#: gnucash/gtkbuilder/dialog-preferences.glade:863 +#: gnucash/gtkbuilder/dialog-preferences.glade:980 #: gnucash/report/report-core.scm:78 #: gnucash/report/reports/example/average-balance.scm:92 #: gnucash/report/reports/example/average-balance.scm:296 @@ -4265,7 +4288,7 @@ msgstr "" msgid "Accounts" msgstr "Akun" -#: gnucash/gnome/gnc-plugin-page-account-tree.c:1407 +#: gnucash/gnome/gnc-plugin-page-account-tree.c:1429 #, c-format msgid "" "Account %s does not have the same currency as the one you're moving " @@ -4276,26 +4299,26 @@ msgstr "" "transaksinya.\n" "Apakah Anda yakin akan melakukan ini?" -#: gnucash/gnome/gnc-plugin-page-account-tree.c:1415 +#: gnucash/gnome/gnc-plugin-page-account-tree.c:1437 msgid "_Pick another account" msgstr "_Pilih akun lain" -#: gnucash/gnome/gnc-plugin-page-account-tree.c:1416 +#: gnucash/gnome/gnc-plugin-page-account-tree.c:1438 msgid "_Do it anyway" msgstr "_Lakukan saja" -#: gnucash/gnome/gnc-plugin-page-account-tree.c:1499 -#: gnucash/gnome/gnc-plugin-page-account-tree.c:1635 +#: gnucash/gnome/gnc-plugin-page-account-tree.c:1521 +#: gnucash/gnome/gnc-plugin-page-account-tree.c:1657 #: gnucash/gnome/gnc-plugin-page-owner-tree.c:1094 msgid "(no name)" msgstr "(tak ada nama)" -#: gnucash/gnome/gnc-plugin-page-account-tree.c:1510 +#: gnucash/gnome/gnc-plugin-page-account-tree.c:1532 #, c-format msgid "Deleting account %s" msgstr "Menghapus akun %s" -#: gnucash/gnome/gnc-plugin-page-account-tree.c:1625 +#: gnucash/gnome/gnc-plugin-page-account-tree.c:1647 msgid "" "The list below shows objects which make use of the account which you want to " "delete.\n" @@ -4309,42 +4332,42 @@ msgstr "" "memodifikasinya sehingga objek\n" "menggunakan akun yang lain" -#: gnucash/gnome/gnc-plugin-page-account-tree.c:1704 +#: gnucash/gnome/gnc-plugin-page-account-tree.c:1738 #, c-format msgid "The account %s will be deleted." msgstr "Akun %s akan dihapus." -#: gnucash/gnome/gnc-plugin-page-account-tree.c:1713 +#: gnucash/gnome/gnc-plugin-page-account-tree.c:1747 #, c-format msgid "All transactions in this account will be moved to the account %s." msgstr "Seluruh transaksi pada akun ini akan dipindahkan ke akun %s." -#: gnucash/gnome/gnc-plugin-page-account-tree.c:1720 +#: gnucash/gnome/gnc-plugin-page-account-tree.c:1754 #, c-format msgid "All transactions in this account will be deleted." msgstr "Seluruh transaksi pada akun ini akan dihapus." -#: gnucash/gnome/gnc-plugin-page-account-tree.c:1729 +#: gnucash/gnome/gnc-plugin-page-account-tree.c:1763 #, c-format msgid "Its sub-account will be moved to the account %s." msgstr "Sub-akunnya akan dipindahkan ke akun %s." -#: gnucash/gnome/gnc-plugin-page-account-tree.c:1735 +#: gnucash/gnome/gnc-plugin-page-account-tree.c:1769 #, c-format msgid "Its subaccount will be deleted." msgstr "Sub-akunnya akan dihapus." -#: gnucash/gnome/gnc-plugin-page-account-tree.c:1739 +#: gnucash/gnome/gnc-plugin-page-account-tree.c:1773 #, c-format msgid "All sub-account transactions will be moved to the account %s." msgstr "Seluruh transaksi sub-akun akan dipindahkan ke akun %s." -#: gnucash/gnome/gnc-plugin-page-account-tree.c:1746 +#: gnucash/gnome/gnc-plugin-page-account-tree.c:1780 #, c-format msgid "All sub-account transactions will be deleted." msgstr "Seluruh transaksi sub-akun akan dihapus." -#: gnucash/gnome/gnc-plugin-page-account-tree.c:1752 +#: gnucash/gnome/gnc-plugin-page-account-tree.c:1786 msgid "Are you sure you want to do this?" msgstr "Anda yakin ingin melakukan ini?" @@ -4408,7 +4431,7 @@ msgid "Refresh this window." msgstr "Segarkan jendela ini." #: gnucash/gnome/gnc-plugin-page-budget.c:210 -#: gnucash/gnome/gnc-plugin-page-report.c:1088 +#: gnucash/gnome/gnc-plugin-page-report.c:1132 #: gnucash/gtkbuilder/assistant-csv-export.glade:107 #: gnucash/gtkbuilder/dialog-print-check.glade:643 msgid "Options" @@ -4478,8 +4501,8 @@ msgstr "Salin" #: gnucash/gnome/gnc-plugin-page-invoice.c:135 #: gnucash/gnome/gnc-plugin-page-register2.c:240 #: gnucash/gnome/gnc-plugin-page-register.c:349 -#: gnucash/gnome/gnc-plugin-page-report.c:1177 -#: gnucash/gnome-utils/gnc-main-window.c:325 +#: gnucash/gnome/gnc-plugin-page-report.c:1221 +#: gnucash/gnome-utils/gnc-main-window.c:328 msgid "_Paste" msgstr "Tem_pel" @@ -4537,16 +4560,16 @@ msgstr "_Standar" #: gnucash/gnome/gnc-plugin-page-invoice.c:247 msgid "Keep normal invoice order" -msgstr "" +msgstr "Pertahankan pesanan faktur normal" #: gnucash/gnome/gnc-plugin-page-invoice.c:248 #: gnucash/gtkbuilder/assistant-stock-split.glade:123 -#: gnucash/gtkbuilder/dialog-account.glade:1744 +#: gnucash/gtkbuilder/dialog-account.glade:1761 #: gnucash/gtkbuilder/dialog-price.glade:175 #: gnucash/gtkbuilder/dialog-print-check.glade:701 -#: gnucash/gtkbuilder/gnc-plugin-page-register2.glade:79 -#: gnucash/gtkbuilder/gnc-plugin-page-register.glade:662 -#: gnucash/gtkbuilder/gnc-plugin-page-register.glade:985 +#: gnucash/gtkbuilder/gnc-plugin-page-register2.glade:94 +#: gnucash/gtkbuilder/gnc-plugin-page-register.glade:647 +#: gnucash/gtkbuilder/gnc-plugin-page-register.glade:861 msgid "_Date" msgstr "Ta_nggal" @@ -4555,7 +4578,7 @@ msgid "Sort by date" msgstr "Urut berdasarkan tanggal" #: gnucash/gnome/gnc-plugin-page-invoice.c:249 -#: gnucash/gtkbuilder/gnc-plugin-page-register.glade:681 +#: gnucash/gtkbuilder/gnc-plugin-page-register.glade:880 msgid "Date of _Entry" msgstr "Tanggal _Entri" @@ -4585,7 +4608,7 @@ msgid "Sort by price" msgstr "Urut berdasarkan harga" #: gnucash/gnome/gnc-plugin-page-invoice.c:252 -#: gnucash/gtkbuilder/gnc-plugin-page-register.glade:776 +#: gnucash/gtkbuilder/gnc-plugin-page-register.glade:975 msgid "Descri_ption" msgstr "Deskri_psi" @@ -4645,11 +4668,11 @@ msgstr "Buka D_okumen Tertaut" #: gnucash/gnome/gnc-plugin-page-invoice.c:310 msgid "_Use as Default Layout for Customer Documents" -msgstr "_Gunakan Sebagai Tata Letak untuk Dokumen Pelanggan" +msgstr "G_unakan Sebagai Tata Letak Baku untuk Dokumen Pelanggan" #: gnucash/gnome/gnc-plugin-page-invoice.c:311 msgid "_Reset Default Layout for Customer Documents" -msgstr "_Setel Ulang Tata Letak Bawaan untuk Dokumen Pelanggan" +msgstr "_Setel Ulang Tata Letak Baku untuk Dokumen Pelanggan" #: gnucash/gnome/gnc-plugin-page-invoice.c:317 msgid "_Print Bill" @@ -4681,11 +4704,11 @@ msgstr "_Bayar Tagihan" #: gnucash/gnome/gnc-plugin-page-invoice.c:331 msgid "_Use as Default Layout for Vendor Documents" -msgstr "_Gunakan Sebagai Tata Letak Bawaan untuk Dokumen Vendor" +msgstr "G_unakan Sebagai Tata Letak Baku untuk Dokumen Vendor" #: gnucash/gnome/gnc-plugin-page-invoice.c:332 msgid "_Reset Default Layout for Vendor Documents" -msgstr "_Setel Ulang Tata Letak Bawaan untuk Dokumen Vendor" +msgstr "_Setel Ulang Tata Letak Baku untuk Dokumen Vendor" #: gnucash/gnome/gnc-plugin-page-invoice.c:338 msgid "_Print Voucher" @@ -4717,11 +4740,11 @@ msgstr "_Bayar Voucer" #: gnucash/gnome/gnc-plugin-page-invoice.c:352 msgid "_Use as Default Layout for Employee Documents" -msgstr "_Gunakan Sebagai Tata Letak Bawaan untuk Dokumen Pegawai" +msgstr "G_unakan Sebagai Tata Letak Baku untuk Dokumen Pegawai" #: gnucash/gnome/gnc-plugin-page-invoice.c:353 msgid "_Reset Default Layout for Employee Documents" -msgstr "_Setel Ulang Tata Letak Bawaan untuk Dokumen Pegawai" +msgstr "_Setel Ulang Tata Letak Baku untuk Dokumen Pegawai" #: gnucash/gnome/gnc-plugin-page-invoice.c:359 msgid "_Print Credit Note" @@ -4799,16 +4822,16 @@ msgstr "Buka Dokumen Tertaut" msgid "" "Use the current layout as default for all customer invoices and credit notes" msgstr "" -"Gunakan tata letak saat ini sebagai bawaan untuk semua faktur pelanggan dan " -"nota kredit" +"Gunakan tata letak saat ini sebagai tata letak baku untuk semua faktur " +"pelanggan dan nota kredit" #: gnucash/gnome/gnc-plugin-page-invoice.c:389 msgid "" "Reset default layout for all customer invoices and credit notes back to " "built-in defaults and update the current page accordingly" msgstr "" -"Setel ulang tata letak bawaan untuk semua faktur pelanggan dan nota kredit " -"ke bawaan asal dan perbarui halaman saat ini" +"Setel ulang tata letak baku untuk semua faktur pelanggan dan nota kredit ke " +"tata letak bawaan dan perbarui halaman saat ini" #: gnucash/gnome/gnc-plugin-page-invoice.c:394 msgid "Make a printable bill" @@ -4849,16 +4872,16 @@ msgstr "Buka jendela laporan perusahaan untuk pemilik tagihan ini" #: gnucash/gnome/gnc-plugin-page-invoice.c:409 msgid "Use the current layout as default for all vendor bills and credit notes" msgstr "" -"Gunakan tata letak saat ini sebagai bawaan untuk semua tagihan vendor dan " -"nota kredit" +"Gunakan tata letak saat ini sebagai tata letak baku untuk semua tagihan " +"vendor dan nota kredit" #: gnucash/gnome/gnc-plugin-page-invoice.c:410 msgid "" "Reset default layout for all vendor bills and credit notes back to built-in " "defaults and update the current page accordingly" msgstr "" -"Setel ulang tata letak bawaan untuk semua tagihan vendor dan nota kredit ke " -"bawaan asal dan perbarui halaman saat ini" +"Setel ulang tata letak baku untuk semua tagihan vendor dan nota kredit ke " +"tata letak bawaan dan perbarui halaman saat ini" #: gnucash/gnome/gnc-plugin-page-invoice.c:415 msgid "Make a printable voucher" @@ -4900,16 +4923,16 @@ msgstr "Buka jendela laporan perusahaan untuk pemilik voucer ini" msgid "" "Use the current layout as default for all employee vouchers and credit notes" msgstr "" -"Gunakan tata letak saat ini sebagai bawaan untuk semua voucer pegawai dan " -"nota kredit" +"Gunakan tata letak saat ini sebagai tata letak baku untuk semua voucer " +"pegawai dan nota kredit" #: gnucash/gnome/gnc-plugin-page-invoice.c:431 msgid "" "Reset default layout for all employee vouchers and credit notes back to " "built-in defaults and update the current page accordingly" msgstr "" -"Setel ulang tata letak bawaan untuk semua voucer pegawai dan nota kredit ke " -"bawaan asal dan perbarui halaman saat ini" +"Setel ulang tata letak baku untuk semua voucer pegawai dan nota kredit ke " +"tata letak bawaan dan perbarui halaman saat ini" #: gnucash/gnome/gnc-plugin-page-invoice.c:436 msgid "Make a printable credit note" @@ -4948,10 +4971,8 @@ msgid "Open a company report window for the owner of this credit note" msgstr "Buka jendela laporan perusahaan untuk pemilik nota kredit ini" #: gnucash/gnome/gnc-plugin-page-invoice.c:445 -#, fuzzy -#| msgid "_Manage Document Link..." msgid "Manage Document Link..." -msgstr "_Kelola Taut Dokumen..." +msgstr "Kelola Taut Dokumen..." #: gnucash/gnome/gnc-plugin-page-invoice.c:452 #: gnucash/gnome/gnc-plugin-page-register2.c:498 @@ -5156,29 +5177,29 @@ msgstr "_Hapus Transaksi" #: gnucash/gnome/gnc-plugin-page-register2.c:199 #: gnucash/gnome/gnc-plugin-page-register.c:308 msgid "Cu_t Split" -msgstr "Po_tong Pemecahan" +msgstr "Po_tong Split" #: gnucash/gnome/gnc-plugin-page-register2.c:200 #: gnucash/gnome/gnc-plugin-page-register.c:309 msgid "_Copy Split" -msgstr "_Salin Pemecahan" +msgstr "_Salin Split" #: gnucash/gnome/gnc-plugin-page-register2.c:201 #: gnucash/gnome/gnc-plugin-page-register.c:310 msgid "_Paste Split" -msgstr "Tem_pel Pemecahan" +msgstr "Tem_pel Split" #: gnucash/gnome/gnc-plugin-page-register2.c:202 #: gnucash/gnome/gnc-plugin-page-register.c:311 msgid "Dup_licate Split" -msgstr "_Gandakan Pemecahan" +msgstr "_Gandakan Split" #: gnucash/gnome/gnc-plugin-page-register2.c:203 #: gnucash/gnome/gnc-plugin-page-register.c:312 #: gnucash/gnome/gnc-split-reg.c:1504 #: gnucash/gnome-utils/gnc-tree-control-split-reg.c:1024 msgid "_Delete Split" -msgstr "_Hapus Pemecahan" +msgstr "_Hapus Split" #: gnucash/gnome/gnc-plugin-page-register2.c:204 #: gnucash/gnome/gnc-plugin-page-register.c:313 @@ -5208,27 +5229,27 @@ msgstr "Hapus transaksi saat ini" #: gnucash/gnome/gnc-plugin-page-register2.c:209 #: gnucash/gnome/gnc-plugin-page-register.c:321 msgid "Cut the selected split into clipboard" -msgstr "Potong pemecahan yang dipilih ke papan klip" +msgstr "Potong split yang dipilih ke papan klip" #: gnucash/gnome/gnc-plugin-page-register2.c:210 #: gnucash/gnome/gnc-plugin-page-register.c:322 msgid "Copy the selected split into clipboard" -msgstr "Salin pemecahan yang dipilih ke papan klip" +msgstr "Salin split yang dipilih ke papan klip" #: gnucash/gnome/gnc-plugin-page-register2.c:211 #: gnucash/gnome/gnc-plugin-page-register.c:323 msgid "Paste the split from the clipboard" -msgstr "Tempel pemecahan dari papan klip" +msgstr "Tempel split dari papan klip" #: gnucash/gnome/gnc-plugin-page-register2.c:212 #: gnucash/gnome/gnc-plugin-page-register.c:324 msgid "Make a copy of the current split" -msgstr "Buat sebuah salinan untuk pemecahan saat ini" +msgstr "Buat sebuah salinan untuk split saat ini" #: gnucash/gnome/gnc-plugin-page-register2.c:213 #: gnucash/gnome/gnc-plugin-page-register.c:325 msgid "Delete the current split" -msgstr "Hapus pemecahan saat ini" +msgstr "Hapus split saat ini" #: gnucash/gnome/gnc-plugin-page-register2.c:223 #: gnucash/gnome/gnc-plugin-page-register.c:332 @@ -5237,47 +5258,47 @@ msgstr "_Cetak Cek..." #: gnucash/gnome/gnc-plugin-page-register2.c:230 #: gnucash/gnome/gnc-plugin-page-register.c:339 -#: gnucash/gnome/gnc-plugin-page-report.c:1167 -#: gnucash/gnome-utils/gnc-main-window.c:315 +#: gnucash/gnome/gnc-plugin-page-report.c:1211 +#: gnucash/gnome-utils/gnc-main-window.c:318 msgid "Cu_t" msgstr "Po_tong" #: gnucash/gnome/gnc-plugin-page-register2.c:231 #: gnucash/gnome/gnc-plugin-page-register.c:340 -#: gnucash/gnome/gnc-plugin-page-report.c:1168 -#: gnucash/gnome-utils/gnc-main-window.c:316 +#: gnucash/gnome/gnc-plugin-page-report.c:1212 +#: gnucash/gnome-utils/gnc-main-window.c:319 msgid "Cut the current selection and copy it to clipboard" msgstr "Potong pilihan saat ini dan salin ke papan klip" #: gnucash/gnome/gnc-plugin-page-register2.c:235 #: gnucash/gnome/gnc-plugin-page-register.c:344 -#: gnucash/gnome/gnc-plugin-page-report.c:1172 -#: gnucash/gnome-utils/gnc-main-window.c:320 +#: gnucash/gnome/gnc-plugin-page-report.c:1216 +#: gnucash/gnome-utils/gnc-main-window.c:323 msgid "_Copy" msgstr "_Salin" #: gnucash/gnome/gnc-plugin-page-register2.c:236 #: gnucash/gnome/gnc-plugin-page-register.c:345 -#: gnucash/gnome/gnc-plugin-page-report.c:1173 -#: gnucash/gnome-utils/gnc-main-window.c:321 +#: gnucash/gnome/gnc-plugin-page-report.c:1217 +#: gnucash/gnome-utils/gnc-main-window.c:324 msgid "Copy the current selection to clipboard" msgstr "Salin pilihan saat ini ke papan klip" #: gnucash/gnome/gnc-plugin-page-register2.c:241 #: gnucash/gnome/gnc-plugin-page-register.c:350 -#: gnucash/gnome/gnc-plugin-page-report.c:1178 -#: gnucash/gnome-utils/gnc-main-window.c:326 +#: gnucash/gnome/gnc-plugin-page-report.c:1222 +#: gnucash/gnome-utils/gnc-main-window.c:329 msgid "Paste the clipboard content at the cursor position" msgstr "Tempel isi papan klip pada posisi kursor" #: gnucash/gnome/gnc-plugin-page-register2.c:300 msgid "Remo_ve All Splits" -msgstr "B_uang Semua Pemecahan" +msgstr "B_uang Semua Split" #: gnucash/gnome/gnc-plugin-page-register2.c:301 #: gnucash/gnome/gnc-plugin-page-register.c:410 msgid "Remove all splits in the current transaction" -msgstr "Buang semua pemecahan pada transaksi saat ini" +msgstr "Buang semua split pada transaksi saat ini" #: gnucash/gnome/gnc-plugin-page-register2.c:305 #: gnucash/gnome/gnc-plugin-page-register.c:414 @@ -5347,8 +5368,8 @@ msgid "" "Automatically clear individual transactions, so as to reach a certain " "cleared amount" msgstr "" -"Bersihkan transaksi invididual secara otomatis, sehingga mencapai sejumlah " -"nilai terselesaikan" +"Klirkan secara otomatis transaksi-transaksi invididual, untuk mencapai " +"sejumlah nilai kliring" #: gnucash/gnome/gnc-plugin-page-register2.c:377 #: gnucash/gnome/gnc-plugin-page-register.c:495 @@ -5363,12 +5384,12 @@ msgstr "Pindah ke transaksi kosong di bagian bawah register" #: gnucash/gnome/gnc-plugin-page-register2.c:382 #: gnucash/gnome/gnc-plugin-page-register.c:505 msgid "Edit E_xchange Rate" -msgstr "Sunting K_urs" +msgstr "Sunting Nilai _Tukar" #: gnucash/gnome/gnc-plugin-page-register2.c:383 #: gnucash/gnome/gnc-plugin-page-register.c:506 msgid "Edit the exchange rate for the current transaction" -msgstr "Sunting kurs untuk transaksi saat ini" +msgstr "Sunting nilai tukar untuk transaksi saat ini" #. Translators: This is a menu item that will open a register tab for the #. account of the first other account in the current transaction's split list @@ -5453,12 +5474,12 @@ msgstr "Tampilkan tanggal dimasukkan dan direkonsiliasi" #: gnucash/gnome/gnc-plugin-page-register2.c:436 #: gnucash/gnome/gnc-plugin-page-register.c:559 msgid "S_plit Transaction" -msgstr "_Pecah Transaksi" +msgstr "S_plit Transaksi" #: gnucash/gnome/gnc-plugin-page-register2.c:437 #: gnucash/gnome/gnc-plugin-page-register.c:560 msgid "Show all splits in the current transaction" -msgstr "Tampilkan semua pemecahan pada transaksi saat ini" +msgstr "Tampilkan semua split pada transaksi saat ini" #: gnucash/gnome/gnc-plugin-page-register2.c:448 #: gnucash/gnome/gnc-plugin-page-register.c:571 @@ -5473,31 +5494,31 @@ msgstr "Tampilkan transaksi dalam satu atau dua baris" #: gnucash/gnome/gnc-plugin-page-register2.c:453 #: gnucash/gnome/gnc-plugin-page-register.c:576 msgid "_Auto-Split Ledger" -msgstr "Otom_atis Pecah Buku Besar" +msgstr "Buku Bes_ar Split-Otomatis" #: gnucash/gnome/gnc-plugin-page-register2.c:454 #: gnucash/gnome/gnc-plugin-page-register.c:577 msgid "" "Show transactions on one or two lines and expand the current transaction" msgstr "" -"Tampilkan transaksi pada satu atau dua baris dan perluas transaksi saat ini" +"Tampilkan transaksi pada satu atau dua baris dan ekspansi transaksi saat ini" #: gnucash/gnome/gnc-plugin-page-register2.c:458 #: gnucash/gnome/gnc-plugin-page-register.c:581 -#: gnucash/gtkbuilder/dialog-preferences.glade:2657 +#: gnucash/gtkbuilder/dialog-preferences.glade:2774 msgid "Transaction _Journal" msgstr "_Jurnal Transaksi" #: gnucash/gnome/gnc-plugin-page-register2.c:459 #: gnucash/gnome/gnc-plugin-page-register.c:582 msgid "Show expanded transactions with all splits" -msgstr "Tampilkan transaksi diperluas dengan semua pemecahan" +msgstr "Tampilkan transaksi diekspansi dengan semua split" #: gnucash/gnome/gnc-plugin-page-register2.c:502 #: gnucash/gnome/gnc-plugin-page-register.c:625 #: gnucash/gnome-search/dialog-search.c:1096 msgid "Split" -msgstr "Pecah" +msgstr "Split" #: gnucash/gnome/gnc-plugin-page-register2.c:503 #: gnucash/gnome/gnc-plugin-page-register.c:626 @@ -5511,9 +5532,9 @@ msgstr "Jadwal" #: gnucash/gnome/gnc-plugin-page-register2.c:507 #: gnucash/gnome/gnc-plugin-page-register.c:630 -#: gnucash/gnome/window-autoclear.c:91 +#: gnucash/gnome/window-autoclear.c:88 msgid "Auto-clear" -msgstr "Bersihkan Otomatis" +msgstr "Klir-otomatis" #: gnucash/gnome/gnc-plugin-page-register2.c:681 msgid "" @@ -5530,13 +5551,13 @@ msgstr "Jurnal2 Umum" #. Translators: %s is the name #. of the tab page #: gnucash/gnome/gnc-plugin-page-register2.c:1620 -#: gnucash/gnome/gnc-plugin-page-register.c:1974 +#: gnucash/gnome/gnc-plugin-page-register.c:1980 #, c-format msgid "Save changes to %s?" msgstr "Simpan perubahan ke %s?" #: gnucash/gnome/gnc-plugin-page-register2.c:1624 -#: gnucash/gnome/gnc-plugin-page-register.c:1978 +#: gnucash/gnome/gnc-plugin-page-register.c:1984 msgid "" "This register has pending changes to a transaction. Would you like to save " "the changes to this transaction, discard the transaction, or cancel the " @@ -5547,12 +5568,12 @@ msgstr "" "atau membatalkan operasi?" #: gnucash/gnome/gnc-plugin-page-register2.c:1627 -#: gnucash/gnome/gnc-plugin-page-register.c:1981 +#: gnucash/gnome/gnc-plugin-page-register.c:1987 msgid "_Discard Transaction" msgstr "_Abaikan Transaksi" #: gnucash/gnome/gnc-plugin-page-register2.c:1631 -#: gnucash/gnome/gnc-plugin-page-register.c:1985 +#: gnucash/gnome/gnc-plugin-page-register.c:1991 msgid "_Save Transaction" msgstr "_Simpan Transaksi" @@ -5561,35 +5582,35 @@ msgstr "_Simpan Transaksi" #: gnucash/gnome/gnc-plugin-page-register2.c:1707 #: gnucash/gnome/gnc-plugin-page-register2.c:1730 #: gnucash/gnome/gnc-plugin-page-register2.c:1778 -#: gnucash/gnome/gnc-plugin-page-register.c:2018 -#: gnucash/gnome/gnc-plugin-page-register.c:2053 -#: gnucash/gnome/gnc-plugin-page-register.c:2066 -#: gnucash/gnome/gnc-plugin-page-register.c:2129 -#: gnucash/gnome/gnc-plugin-page-register.c:2234 -#: gnucash/gnome/gnc-plugin-page-register.c:2372 +#: gnucash/gnome/gnc-plugin-page-register.c:2024 +#: gnucash/gnome/gnc-plugin-page-register.c:2059 +#: gnucash/gnome/gnc-plugin-page-register.c:2072 +#: gnucash/gnome/gnc-plugin-page-register.c:2135 +#: gnucash/gnome/gnc-plugin-page-register.c:2240 +#: gnucash/gnome/gnc-plugin-page-register.c:2378 msgid "unknown" msgstr "tak diketahui" #: gnucash/gnome/gnc-plugin-page-register2.c:1681 #: gnucash/gnome/gnc-plugin-page-register2.c:2416 #: gnucash/gnome/gnc-plugin-page-register.c:906 -#: gnucash/gnome/gnc-plugin-page-register.c:2039 -#: gnucash/gnome/gnc-plugin-page-register.c:3511 +#: gnucash/gnome/gnc-plugin-page-register.c:2045 +#: gnucash/gnome/gnc-plugin-page-register.c:3517 #: gnucash/report/reports/standard/general-journal.scm:36 msgid "General Journal" msgstr "Jurnal Umum" #: gnucash/gnome/gnc-plugin-page-register2.c:1683 #: gnucash/gnome/gnc-plugin-page-register2.c:2422 -#: gnucash/gnome/gnc-plugin-page-register.c:2041 -#: gnucash/gnome/gnc-plugin-page-register.c:3517 +#: gnucash/gnome/gnc-plugin-page-register.c:2047 +#: gnucash/gnome/gnc-plugin-page-register.c:3523 msgid "Portfolio" msgstr "Portofolio" #: gnucash/gnome/gnc-plugin-page-register2.c:1685 #: gnucash/gnome/gnc-plugin-page-register2.c:2428 -#: gnucash/gnome/gnc-plugin-page-register.c:2043 -#: gnucash/gnome/gnc-plugin-page-register.c:3523 +#: gnucash/gnome/gnc-plugin-page-register.c:2049 +#: gnucash/gnome/gnc-plugin-page-register.c:3529 msgid "Search Results" msgstr "Hasil Pencarian" @@ -5598,35 +5619,35 @@ msgid "General Journal Report" msgstr "Laporan Jurnal Umum" #: gnucash/gnome/gnc-plugin-page-register2.c:2424 -#: gnucash/gnome/gnc-plugin-page-register.c:3519 +#: gnucash/gnome/gnc-plugin-page-register.c:3525 msgid "Portfolio Report" msgstr "Laporan Portofolio" #: gnucash/gnome/gnc-plugin-page-register2.c:2430 -#: gnucash/gnome/gnc-plugin-page-register.c:3525 +#: gnucash/gnome/gnc-plugin-page-register.c:3531 msgid "Search Results Report" msgstr "Laporan Hasil Pencarian" #: gnucash/gnome/gnc-plugin-page-register2.c:2434 -#: gnucash/gnome/gnc-plugin-page-register.c:3529 -#: gnucash/gtkbuilder/dialog-preferences.glade:2567 +#: gnucash/gnome/gnc-plugin-page-register.c:3535 +#: gnucash/gtkbuilder/dialog-preferences.glade:2684 #: gnucash/report/reports/standard/general-journal.scm:37 #: gnucash/report/reports/standard/register.scm:64 msgid "Register" msgstr "Register" #: gnucash/gnome/gnc-plugin-page-register2.c:2436 -#: gnucash/report/reports/standard/register.scm:378 +#: gnucash/report/reports/standard/register.scm:349 msgid "Register Report" msgstr "Laporan Register" #: gnucash/gnome/gnc-plugin-page-register2.c:2452 -#: gnucash/gnome/gnc-plugin-page-register.c:3547 +#: gnucash/gnome/gnc-plugin-page-register.c:3553 msgid "and subaccounts" msgstr "dan sub-akun" #: gnucash/gnome/gnc-plugin-page-register2.c:2484 -#: gnucash/gnome/gnc-plugin-page-register.c:3576 +#: gnucash/gnome/gnc-plugin-page-register.c:3582 #: gnucash/gnome-utils/gnc-tree-model-split-reg.c:2874 #: gnucash/gnome-utils/gnc-tree-model-split-reg.c:2893 #: gnucash/gnome-utils/gnc-tree-model-split-reg.c:2911 @@ -5638,64 +5659,64 @@ msgstr "dan sub-akun" #: gnucash/register/ledger-core/split-register.c:2658 #: gnucash/register/ledger-core/split-register.c:2676 #: gnucash/report/reports/standard/general-journal.scm:83 -#: gnucash/report/reports/standard/register.scm:372 -#: gnucash/report/reports/standard/trial-balance.scm:595 +#: gnucash/report/reports/standard/register.scm:343 +#: gnucash/report/reports/standard/trial-balance.scm:596 #: gnucash/report/trep-engine.scm:1357 gnucash/report/trep-engine.scm:1374 -#: libgnucash/engine/Account.cpp:177 +#: libgnucash/engine/Account.cpp:178 msgid "Credit" msgstr "Kredit" #: gnucash/gnome/gnc-plugin-page-register2.c:2487 -#: gnucash/gnome/gnc-plugin-page-register.c:3580 +#: gnucash/gnome/gnc-plugin-page-register.c:3586 #: gnucash/gnome-utils/gnc-tree-view-split-reg.c:3099 #: gnucash/gnome-utils/gnc-tree-view-split-reg.c:3104 #: gnucash/gtkbuilder/dialog-payment.glade:296 #: gnucash/register/ledger-core/split-register.c:2521 #: gnucash/report/reports/standard/general-journal.scm:82 -#: gnucash/report/reports/standard/register.scm:370 -#: gnucash/report/reports/standard/trial-balance.scm:592 +#: gnucash/report/reports/standard/register.scm:341 +#: gnucash/report/reports/standard/trial-balance.scm:593 #: gnucash/report/trep-engine.scm:1354 gnucash/report/trep-engine.scm:1371 -#: libgnucash/engine/Account.cpp:157 +#: libgnucash/engine/Account.cpp:158 msgid "Debit" msgstr "Debit" #: gnucash/gnome/gnc-plugin-page-register2.c:2653 -#: gnucash/gnome/gnc-plugin-page-register.c:3713 +#: gnucash/gnome/gnc-plugin-page-register.c:3719 msgid "Print checks from multiple accounts?" msgstr "Cetak cek dari banyak akun?" #: gnucash/gnome/gnc-plugin-page-register2.c:2655 -#: gnucash/gnome/gnc-plugin-page-register.c:3715 +#: gnucash/gnome/gnc-plugin-page-register.c:3721 msgid "" "This search result contains splits from more than one account. Do you want " "to print the checks even though they are not all from the same account?" msgstr "" -"Hasil pencarian ini berisi pemecahan dari satu atau lebih akun. Apakah Anda " +"Hasil pencarian ini berisi split dari satu atau lebih akun. Apakah Anda " "ingin mencetak cek meskipun bukan dari akun yang sama?" #: gnucash/gnome/gnc-plugin-page-register2.c:2665 -#: gnucash/gnome/gnc-plugin-page-register.c:3725 +#: gnucash/gnome/gnc-plugin-page-register.c:3731 msgid "_Print checks" msgstr "_Cetak cek" #: gnucash/gnome/gnc-plugin-page-register2.c:2684 -#: gnucash/gnome/gnc-plugin-page-register.c:3744 +#: gnucash/gnome/gnc-plugin-page-register.c:3750 msgid "" "You can only print checks from a bank account register or search results." msgstr "" "Anda hanya bisa mencetak cek dari register akun bank atau hasil pencarian." #: gnucash/gnome/gnc-plugin-page-register2.c:2896 -#: gnucash/gnome/gnc-plugin-page-register.c:3941 +#: gnucash/gnome/gnc-plugin-page-register.c:3947 msgid "You cannot void a transaction with reconciled or cleared splits." msgstr "" -"Anda tidak bisa membatalkan sebuah transaksi dengan pemecahan yang " -"direkonsiliasi atau diselesaikan." +"Anda tidak bisa membatalkan sebuah transaksi dengan split yang " +"direkonsiliasi atau klir." #. Translators: The %s is the name of the plugin page #: gnucash/gnome/gnc-plugin-page-register2.c:3039 -#: gnucash/gnome/gnc-plugin-page-register.c:4212 -#: gnucash/gnome-utils/gnc-tree-view-account.c:2296 +#: gnucash/gnome/gnc-plugin-page-register.c:4218 +#: gnucash/gnome-utils/gnc-tree-view-account.c:2327 #: gnucash/gnome-utils/gnc-tree-view-owner.c:1175 #, c-format msgid "Filter %s by..." @@ -5722,10 +5743,10 @@ msgstr "Lompat ke tagihan, faktur, atau voucer tertaut" #: gnucash/gnome/gnc-plugin-page-register.c:409 msgid "Remo_ve Other Splits" -msgstr "Buan_g Pemecahan Lain" +msgstr "Buan_g Split Lain" #: gnucash/gnome/gnc-plugin-page-register.c:454 -#: gnucash/gnome-utils/gnc-main-window.c:338 +#: gnucash/gnome-utils/gnc-main-window.c:341 msgid "_Sort By..." msgstr "_Urutkan Berdasar..." @@ -5734,10 +5755,8 @@ msgid "_Go to Date" msgstr "Per_gi ke Tanggal" #: gnucash/gnome/gnc-plugin-page-register.c:501 -#, fuzzy -#| msgid "Move to the blank entry at the bottom of the credit note" msgid "Move to the split at the specified date" -msgstr "Pindah ke entri kosong di bagian bawah nota kredit" +msgstr "Pindahkan ke split pada tanggal yang ditentukan" #: gnucash/gnome/gnc-plugin-page-register.c:828 msgid "" @@ -5747,93 +5766,93 @@ msgstr "" "Anda telah mencoba membuka sebuah akun di register lama ketika sedang dibuka " "di register baru." -#: gnucash/gnome/gnc-plugin-page-register.c:3378 +#: gnucash/gnome/gnc-plugin-page-register.c:3384 msgid "Filter By:" msgstr "Filter Berdasar:" -#: gnucash/gnome/gnc-plugin-page-register.c:3392 +#: gnucash/gnome/gnc-plugin-page-register.c:3398 msgid "Start Date:" msgstr "Tanggal Mulai:" -#: gnucash/gnome/gnc-plugin-page-register.c:3398 +#: gnucash/gnome/gnc-plugin-page-register.c:3404 msgid "Show previous number of days:" msgstr "Tampilkan jumlah hari sebelumnya:" -#: gnucash/gnome/gnc-plugin-page-register.c:3405 +#: gnucash/gnome/gnc-plugin-page-register.c:3411 msgid "End Date:" msgstr "Tanggal Akhir:" -#: gnucash/gnome/gnc-plugin-page-register.c:3415 +#: gnucash/gnome/gnc-plugin-page-register.c:3421 #: gnucash/report/trep-engine.scm:124 gnucash/report/trep-engine.scm:398 msgid "Unreconciled" msgstr "Tak-direkonsiliasi" -#: gnucash/gnome/gnc-plugin-page-register.c:3417 +#: gnucash/gnome/gnc-plugin-page-register.c:3423 #: gnucash/gnome-search/search-reconciled.c:218 -#: gnucash/gnome-utils/gnc-tree-view-account.c:852 +#: gnucash/gnome-utils/gnc-tree-view-account.c:875 #: gnucash/report/trep-engine.scm:125 gnucash/report/trep-engine.scm:403 msgid "Cleared" -msgstr "Selesai" +msgstr "Klir" -#: gnucash/gnome/gnc-plugin-page-register.c:3419 +#: gnucash/gnome/gnc-plugin-page-register.c:3425 #: gnucash/gnome-search/search-reconciled.c:221 -#: gnucash/gnome-utils/gnc-tree-view-account.c:866 +#: gnucash/gnome-utils/gnc-tree-view-account.c:889 #: gnucash/import-export/csv-imp/gnc-imp-props-tx.cpp:70 #: gnucash/import-export/import-match-picker.c:437 #: gnucash/report/trep-engine.scm:126 gnucash/report/trep-engine.scm:408 msgid "Reconciled" msgstr "Direkonsiliasi" -#: gnucash/gnome/gnc-plugin-page-register.c:3421 +#: gnucash/gnome/gnc-plugin-page-register.c:3427 #: gnucash/gnome-search/search-reconciled.c:224 #: gnucash/report/trep-engine.scm:127 msgid "Frozen" msgstr "Dibekukan" -#: gnucash/gnome/gnc-plugin-page-register.c:3423 +#: gnucash/gnome/gnc-plugin-page-register.c:3429 #: gnucash/gnome-search/search-reconciled.c:227 #: gnucash/report/trep-engine.scm:128 msgid "Voided" msgstr "Dibatalkan" -#: gnucash/gnome/gnc-plugin-page-register.c:3427 -#: gnucash/gnome/gnc-plugin-page-register.c:3429 +#: gnucash/gnome/gnc-plugin-page-register.c:3433 +#: gnucash/gnome/gnc-plugin-page-register.c:3435 msgid "Hide:" msgstr "Sembunyikan:" -#: gnucash/gnome/gnc-plugin-page-register.c:3429 +#: gnucash/gnome/gnc-plugin-page-register.c:3435 msgid "Show:" msgstr "Tampilkan:" -#: gnucash/gnome/gnc-plugin-page-register.c:3513 -#: gnucash/gnome/gnc-plugin-page-register.c:3531 +#: gnucash/gnome/gnc-plugin-page-register.c:3519 +#: gnucash/gnome/gnc-plugin-page-register.c:3537 #: gnucash/report/reports/standard/transaction.scm:33 msgid "Transaction Report" msgstr "Laporan Transaksi" -#: gnucash/gnome/gnc-plugin-page-register.c:3948 +#: gnucash/gnome/gnc-plugin-page-register.c:3954 #: gnucash/gnome/gnc-split-reg.c:1160 #: gnucash/gnome-utils/gnc-tree-control-split-reg.c:68 #, c-format msgid "This transaction is marked read-only with the comment: '%s'" msgstr "Transaksi ini ditandai hanya-baca dengan komentar: '%s'" -#: gnucash/gnome/gnc-plugin-page-register.c:4028 +#: gnucash/gnome/gnc-plugin-page-register.c:4034 #: gnucash/gnome/gnc-split-reg.c:1131 #: gnucash/gnome-utils/gnc-tree-control-split-reg.c:1121 msgid "A reversing entry has already been created for this transaction." msgstr "Entri balik telah dibuat untuk transaksi ini." -#: gnucash/gnome/gnc-plugin-page-register.c:4035 +#: gnucash/gnome/gnc-plugin-page-register.c:4041 msgid "Reverse Transaction" msgstr "Transaksi Terbalik" -#: gnucash/gnome/gnc-plugin-page-register.c:4036 +#: gnucash/gnome/gnc-plugin-page-register.c:4042 msgid "New Transaction Information" msgstr "Informasi Transaksi Baru" #. Translators: The %s is the name of the plugin page -#: gnucash/gnome/gnc-plugin-page-register.c:4124 +#: gnucash/gnome/gnc-plugin-page-register.c:4130 #, c-format msgid "Sort %s by..." msgstr "Urutkan %s berdasar..." @@ -5841,45 +5860,45 @@ msgstr "Urutkan %s berdasar..." #. Translators: %s refer to the following in #. order: invoice type, invoice ID, owner name, #. posted date, amount -#: gnucash/gnome/gnc-plugin-page-register.c:4702 +#: gnucash/gnome/gnc-plugin-page-register.c:4708 #, c-format msgid "%s %s from %s, posted %s, amount %s" msgstr "%s %s dari %s, dipos %s, jumlah %s" -#: gnucash/gnome/gnc-plugin-page-register.c:4711 +#: gnucash/gnome/gnc-plugin-page-register.c:4717 msgid "Select document" msgstr "Pilih dokumen" -#: gnucash/gnome/gnc-plugin-page-register.c:4712 +#: gnucash/gnome/gnc-plugin-page-register.c:4718 msgid "Several documents are linked with this transaction. Please choose one:" msgstr "" "Beberapa dokumen tertaut dengan transaksi ini. Silakan pilih salah satu:" -#: gnucash/gnome/gnc-plugin-page-register.c:4713 +#: gnucash/gnome/gnc-plugin-page-register.c:4719 #: gnucash/gnome-search/dialog-search.c:323 #: gnucash/gnome-utils/gnc-cell-renderer-date.c:172 msgid "Select" msgstr "Pilih" -#: gnucash/gnome/gnc-plugin-page-register.c:4761 +#: gnucash/gnome/gnc-plugin-page-register.c:4767 msgid "Go to Date" msgstr "Pergi ke Tanggal" -#: gnucash/gnome/gnc-plugin-page-register.c:5016 +#: gnucash/gnome/gnc-plugin-page-register.c:5045 #, c-format msgid "Checking splits in current register: %u of %u" -msgstr "Memeriksa pemecahan di register saat ini: %u dari %u" +msgstr "Memeriksa split di register saat ini: %u dari %u" -#: gnucash/gnome/gnc-plugin-page-report.c:287 -#: gnucash/gnome/gnc-plugin-page-report.c:288 +#: gnucash/gnome/gnc-plugin-page-report.c:300 +#: gnucash/gnome/gnc-plugin-page-report.c:301 msgid "The numeric ID of the report." msgstr "Nomor ID laporan." -#: gnucash/gnome/gnc-plugin-page-report.c:1086 +#: gnucash/gnome/gnc-plugin-page-report.c:1130 msgid "Print" msgstr "Cetak" -#: gnucash/gnome/gnc-plugin-page-report.c:1087 +#: gnucash/gnome/gnc-plugin-page-report.c:1131 #: gnucash/gnome-utils/dialog-file-access.c:319 #: gnucash/gnome-utils/gnc-file.c:109 gnucash/gnome-utils/gnc-file.c:351 msgid "Export" @@ -5887,21 +5906,21 @@ msgstr "Ekspor" #. Translators: This string is meant to be a short alternative for "Save Report Configuration" #. * to be used as toolbar button label. -#: gnucash/gnome/gnc-plugin-page-report.c:1091 +#: gnucash/gnome/gnc-plugin-page-report.c:1135 msgid "Save Config" msgstr "Simpan Konfigurasi" #. Translators: This string is meant to be a short alternative for "Save Report Configuration As..." #. * to be used as toolbar button label. -#: gnucash/gnome/gnc-plugin-page-report.c:1094 +#: gnucash/gnome/gnc-plugin-page-report.c:1138 msgid "Save Config As..." msgstr "Simpan Konfigurasi Sebagai..." -#: gnucash/gnome/gnc-plugin-page-report.c:1095 +#: gnucash/gnome/gnc-plugin-page-report.c:1139 msgid "Make Pdf" msgstr "Buat PDF" -#: gnucash/gnome/gnc-plugin-page-report.c:1147 +#: gnucash/gnome/gnc-plugin-page-report.c:1191 #, c-format msgid "" "Update the current report's saved configuration. The report configuration " @@ -5910,7 +5929,7 @@ msgstr "" "Perbarui konfigurasi tersimpan untuk laporan saat ini. Konfigurasi laporan " "akan disimpan pada berkas %s. " -#: gnucash/gnome/gnc-plugin-page-report.c:1150 +#: gnucash/gnome/gnc-plugin-page-report.c:1194 #, c-format msgid "" "Add the current report's configuration to the `Reports->Saved Report " @@ -5919,98 +5938,98 @@ msgstr "" "Tambahkan konfigurasi laporan saat ini ke menu `Laporan->Konfigurasi Laporan " "Tersimpan'. Konfigurasi laporan akan disimpan pada berkas %s. " -#: gnucash/gnome/gnc-plugin-page-report.c:1156 +#: gnucash/gnome/gnc-plugin-page-report.c:1200 msgid "_Print Report..." msgstr "_Cetak Laporan..." -#: gnucash/gnome/gnc-plugin-page-report.c:1157 +#: gnucash/gnome/gnc-plugin-page-report.c:1201 msgid "Print the current report" msgstr "Cetak laporan saat ini" -#: gnucash/gnome/gnc-plugin-page-report.c:1161 +#: gnucash/gnome/gnc-plugin-page-report.c:1205 msgid "Export as P_DF..." msgstr "Ekspor sebagai P_DF..." -#: gnucash/gnome/gnc-plugin-page-report.c:1162 +#: gnucash/gnome/gnc-plugin-page-report.c:1206 msgid "Export the current report as a PDF document" msgstr "Ekspor laporan saat ini sebagai dokumen PDF" -#: gnucash/gnome/gnc-plugin-page-report.c:1187 +#: gnucash/gnome/gnc-plugin-page-report.c:1231 msgid "Save _Report Configuration" msgstr "Simpan Konfigurasi Lapo_ran" -#: gnucash/gnome/gnc-plugin-page-report.c:1191 +#: gnucash/gnome/gnc-plugin-page-report.c:1235 msgid "Save Report Configuration As..." msgstr "Simpan Konfigurasi Laporan Sebagai..." -#: gnucash/gnome/gnc-plugin-page-report.c:1195 +#: gnucash/gnome/gnc-plugin-page-report.c:1239 msgid "Export _Report" msgstr "Ekspor Lapo_ran" -#: gnucash/gnome/gnc-plugin-page-report.c:1196 +#: gnucash/gnome/gnc-plugin-page-report.c:1240 msgid "Export HTML-formatted report to file" msgstr "Ekspor laporan berformat HTML ke suatu berkas" -#: gnucash/gnome/gnc-plugin-page-report.c:1200 +#: gnucash/gnome/gnc-plugin-page-report.c:1244 msgid "_Report Options" msgstr "Opsi Lapo_ran" -#: gnucash/gnome/gnc-plugin-page-report.c:1201 -#: gnucash/report/html-utilities.scm:252 +#: gnucash/gnome/gnc-plugin-page-report.c:1245 +#: gnucash/report/html-utilities.scm:276 msgid "Edit report options" msgstr "Sunting opsi laporan" -#: gnucash/gnome/gnc-plugin-page-report.c:1206 +#: gnucash/gnome/gnc-plugin-page-report.c:1250 msgid "Back" msgstr "Kembali" -#: gnucash/gnome/gnc-plugin-page-report.c:1207 +#: gnucash/gnome/gnc-plugin-page-report.c:1251 msgid "Move back one step in the history" msgstr "Kembali satu langkah pada riwayat" -#: gnucash/gnome/gnc-plugin-page-report.c:1211 +#: gnucash/gnome/gnc-plugin-page-report.c:1255 msgid "Forward" msgstr "Maju" -#: gnucash/gnome/gnc-plugin-page-report.c:1212 +#: gnucash/gnome/gnc-plugin-page-report.c:1256 msgid "Move forward one step in the history" msgstr "Maju satu langkah pada riwayat" -#: gnucash/gnome/gnc-plugin-page-report.c:1216 +#: gnucash/gnome/gnc-plugin-page-report.c:1260 msgid "Reload" msgstr "Muat Ulang" -#: gnucash/gnome/gnc-plugin-page-report.c:1217 +#: gnucash/gnome/gnc-plugin-page-report.c:1261 msgid "Reload the current page" msgstr "Muat ulang halaman saat ini" -#: gnucash/gnome/gnc-plugin-page-report.c:1221 +#: gnucash/gnome/gnc-plugin-page-report.c:1265 msgid "Stop" msgstr "Berhenti" -#: gnucash/gnome/gnc-plugin-page-report.c:1222 +#: gnucash/gnome/gnc-plugin-page-report.c:1266 msgid "Cancel outstanding HTML requests" msgstr "Batalkan permintaan HTML yang belum diselesaikan" -#: gnucash/gnome/gnc-plugin-page-report.c:1469 -#: gnucash/gnome/gnc-plugin-page-report.c:1502 +#: gnucash/gnome/gnc-plugin-page-report.c:1513 +#: gnucash/gnome/gnc-plugin-page-report.c:1546 msgid "HTML" msgstr "HTML" -#: gnucash/gnome/gnc-plugin-page-report.c:1472 +#: gnucash/gnome/gnc-plugin-page-report.c:1516 msgid "Choose export format" msgstr "Pilih format ekspor" -#: gnucash/gnome/gnc-plugin-page-report.c:1473 +#: gnucash/gnome/gnc-plugin-page-report.c:1517 msgid "Choose the export format for this report:" msgstr "Pilih format ekspor untuk laporan ini:" -#: gnucash/gnome/gnc-plugin-page-report.c:1513 +#: gnucash/gnome/gnc-plugin-page-report.c:1557 #, c-format msgid "Save %s To File" msgstr "Simpan %s Ke Berkas" -#: gnucash/gnome/gnc-plugin-page-report.c:1542 +#: gnucash/gnome/gnc-plugin-page-report.c:1586 #, c-format msgid "" "You cannot save to that filename.\n" @@ -6021,19 +6040,19 @@ msgstr "" "\n" "%s" -#: gnucash/gnome/gnc-plugin-page-report.c:1552 +#: gnucash/gnome/gnc-plugin-page-report.c:1596 msgid "You cannot save to that file." msgstr "Anda tidak dapat menyimpan ke berkas itu." -#: gnucash/gnome/gnc-plugin-page-report.c:1561 +#: gnucash/gnome/gnc-plugin-page-report.c:1605 #: gnucash/gnome-utils/gnc-file.c:1300 gnucash/gnome-utils/gnc-file.c:1547 #: gnucash/import-export/csv-exp/assistant-csv-export.c:741 #, c-format msgid "The file %s already exists. Are you sure you want to overwrite it?" msgstr "Berkas %s sudah ada. Anda yakin ingin menimpanya?" -#: gnucash/gnome/gnc-plugin-page-report.c:1676 -#: gnucash/gnome/gnc-plugin-page-report.c:1700 gnucash/gnucash-commands.cpp:224 +#: gnucash/gnome/gnc-plugin-page-report.c:1720 +#: gnucash/gnome/gnc-plugin-page-report.c:1744 gnucash/gnucash-commands.cpp:224 #: gnucash/gnucash-commands.cpp:252 msgid "" "This report must be upgraded to return a document object with export-string " @@ -6042,22 +6061,22 @@ msgstr "" "Laporan ini harus ditingkatkan untuk mengembalikan sebuah objek dokumen " "dengan string-ekspor atau galat-ekspor." -#: gnucash/gnome/gnc-plugin-page-report.c:1710 +#: gnucash/gnome/gnc-plugin-page-report.c:1754 #, c-format msgid "Could not open the file %s. The error is: %s" msgstr "Tidak bisa membuka berkas %s. Pesan kesalahannya: %s" -#: gnucash/gnome/gnc-plugin-page-report.c:1750 +#: gnucash/gnome/gnc-plugin-page-report.c:1794 msgid "GnuCash-Report" msgstr "Laporan-GnuCash" -#: gnucash/gnome/gnc-plugin-page-report.c:1796 +#: gnucash/gnome/gnc-plugin-page-report.c:1840 #: gnucash/gtkbuilder/business-prefs.glade:26 #: gnucash/report/reports/standard/invoice.scm:903 msgid "Printable Invoice" msgstr "Faktur yang Bisa Dicetak" -#: gnucash/gnome/gnc-plugin-page-report.c:1797 +#: gnucash/gnome/gnc-plugin-page-report.c:1841 #: gnucash/gtkbuilder/business-prefs.glade:29 #: gnucash/report/reports/standard/taxinvoice.scm:295 #: gnucash/report/reports/standard/taxinvoice.scm:297 @@ -6066,17 +6085,17 @@ msgstr "Faktur yang Bisa Dicetak" msgid "Tax Invoice" msgstr "Faktur Pajak" -#: gnucash/gnome/gnc-plugin-page-report.c:1798 +#: gnucash/gnome/gnc-plugin-page-report.c:1842 #: gnucash/gtkbuilder/business-prefs.glade:32 #: gnucash/report/reports/standard/invoice.scm:912 msgid "Easy Invoice" msgstr "Faktur Mudah" -#: gnucash/gnome/gnc-plugin-page-report.c:1799 +#: gnucash/gnome/gnc-plugin-page-report.c:1843 #: gnucash/gtkbuilder/business-prefs.glade:35 #: gnucash/report/reports/standard/invoice.scm:921 msgid "Fancy Invoice" -msgstr "Faktur Keren" +msgstr "Faktur Lengkap" #: gnucash/gnome/gnc-plugin-page-sx-list.c:136 msgid "_Scheduled" @@ -6203,7 +6222,7 @@ msgstr "Masa Depan:" #: gnucash/gnome/gnc-split-reg2.c:804 gnucash/gnome/gnc-split-reg.c:2358 msgid "Cleared:" -msgstr "Kliring:" +msgstr "Klir:" #: gnucash/gnome/gnc-split-reg2.c:805 gnucash/gnome/gnc-split-reg.c:2359 msgid "Reconciled:" @@ -6262,7 +6281,7 @@ msgstr "" #: gnucash/gnome/gnc-split-reg.c:679 msgid "Standard Order" -msgstr "Pesanan Standar" +msgstr "Urutan Standar" #: gnucash/gnome/gnc-split-reg.c:685 msgid "Date of Entry" @@ -6292,19 +6311,19 @@ msgstr "Difilter" #: gnucash/gnome/gnc-split-reg.c:913 #, c-format msgid "Cut the split '%s' from the transaction '%s'?" -msgstr "Potong pemecahan '%s' dari transaksi '%s'?" +msgstr "Potong split '%s' dari transaksi '%s'?" #: gnucash/gnome/gnc-split-reg.c:914 msgid "" "You would be removing a reconciled split! This is not a good idea as it will " "cause your reconciled balance to be off." msgstr "" -"Anda akan membuang sebuah pemecahan direkonsiliasi! Ini bukan ide yang bagus " +"Anda akan membuang sebuah split direkonsiliasi! Ini bukan ide yang bagus " "karena akan menyebabkan saldo direkonsiliasi Anda dimatikan." #: gnucash/gnome/gnc-split-reg.c:917 msgid "You cannot cut this split." -msgstr "Anda tidak dapat memotong pemecahan ini." +msgstr "Anda tidak dapat memotong split ini." #: gnucash/gnome/gnc-split-reg.c:918 msgid "" @@ -6313,6 +6332,11 @@ msgid "" "from this window, or you may navigate to a register that shows another side " "of this same transaction and remove the split from that register." msgstr "" +"Ini adalah split yang menghubungkan transaksi ini ke register. Anda tidak " +"dapat menghapusnya dari jendela register ini. Anda dapat menghapus seluruh " +"transaksi dari jendela ini, atau Anda dapat menavigasi ke register yang " +"menunjukkan sisi lain dari transaksi yang sama ini dan menghapus split dari " +"register itu." #: gnucash/gnome/gnc-split-reg.c:948 gnucash/gnome/gnc-split-reg.c:1476 #: gnucash/gnome-utils/gnc-tree-control-split-reg.c:996 @@ -6326,7 +6350,7 @@ msgstr "(tak ada deskripsi)" #: gnucash/gnome/gnc-split-reg.c:976 msgid "_Cut Split" -msgstr "_Potong Pemecahan" +msgstr "_Potong Split" #: gnucash/gnome/gnc-split-reg.c:990 msgid "Cut the current transaction?" @@ -6337,9 +6361,8 @@ msgid "" "You would be removing a transaction with reconciled splits! This is not a " "good idea as it will cause your reconciled balance to be off." msgstr "" -"Anda akan membuang sebuah transaksi dengan pemecahan direkonsiliasi! Ini " -"bukan ide yang bagus karena akan menyebabkan saldo direkonsiliasi Anda " -"dimatikan." +"Anda akan membuang sebuah transaksi dengan split direkonsiliasi! Ini bukan " +"ide yang bagus karena akan menyebabkan saldo direkonsiliasi Anda dimatikan." #: gnucash/gnome/gnc-split-reg.c:1014 msgid "_Cut Transaction" @@ -6357,12 +6380,13 @@ msgid "" "for this book. This setting can be changed in File->Properties->Accounts." msgstr "" "Data pada transaksi ini lebih lama daripada \"Ambang Batas Hanya-Baca\" yang " -"disetel untuk buku ini. Setelan ini dapat diubah di Berkas->Properti->Akun." +"disetel untuk buku ini. Pengaturan ini dapat diubah di Berkas->Properti-" +">Akun." #: gnucash/gnome/gnc-split-reg.c:1208 #: gnucash/gnome-utils/gnc-tree-control-split-reg.c:840 msgid "Remove the splits from this transaction?" -msgstr "Hapus pemecahan dari transaksi ini?" +msgstr "Hapus split dari transaksi ini?" #: gnucash/gnome/gnc-split-reg.c:1209 #: gnucash/gnome-utils/gnc-tree-control-split-reg.c:841 @@ -6370,14 +6394,14 @@ msgid "" "This transaction contains reconciled splits. Modifying it is not a good idea " "because that will cause your reconciled balance to be off." msgstr "" -"Transaksi ini berisi pemecahan direkonsiliasi. Mengubahnya bukan ide bagus " +"Transaksi ini berisi split direkonsiliasi. Mengubahnya bukan ide bagus " "karena akan menyebabkan saldo direkonsiliasi Anda dimatikan." #. Translators: This is the confirmation button in a warning dialog #: gnucash/gnome/gnc-split-reg.c:1238 #: gnucash/gnome-utils/gnc-tree-control-split-reg.c:887 msgid "_Remove Splits" -msgstr "_Buang Pemecahan" +msgstr "_Buang Split" #: gnucash/gnome/gnc-split-reg.c:1299 msgid "Change a Transaction Linked Document" @@ -6387,7 +6411,7 @@ msgstr "Ubah Dokumen Tertaut Transaksi" #: gnucash/gnome-utils/gnc-tree-control-split-reg.c:963 #, c-format msgid "Delete the split '%s' from the transaction '%s'?" -msgstr "Hapus pemecahan '%s' dari transaksi '%s'?" +msgstr "Hapus split '%s' dari transaksi '%s'?" #: gnucash/gnome/gnc-split-reg.c:1441 #: gnucash/gnome-utils/gnc-tree-control-split-reg.c:964 @@ -6395,13 +6419,13 @@ msgid "" "You would be deleting a reconciled split! This is not a good idea as it will " "cause your reconciled balance to be off." msgstr "" -"Anda akan menghapus sebuah pemecahan direkonsiliasi! Ini bukan ide yang " -"bagus karena akan menyebabkan saldo direkonsiliasi Anda dimatikan." +"Anda akan menghapus sebuah split direkonsiliasi! Ini bukan ide yang bagus " +"karena akan menyebabkan saldo direkonsiliasi Anda dimatikan." #: gnucash/gnome/gnc-split-reg.c:1444 #: gnucash/gnome-utils/gnc-tree-control-split-reg.c:967 msgid "You cannot delete this split." -msgstr "Anda tidak dapat menghapus pemecahan ini." +msgstr "Anda tidak dapat menghapus split ini." #: gnucash/gnome/gnc-split-reg.c:1445 #: gnucash/gnome-utils/gnc-tree-control-split-reg.c:968 @@ -6411,6 +6435,11 @@ msgid "" "from this window, or you may navigate to a register that shows another side " "of this same transaction and delete the split from that register." msgstr "" +"Ini adalah split yang menghubungkan transaksi ini ke register. Anda tidak " +"dapat menghapusnya dari jendela register ini. Anda dapat menghapus seluruh " +"transaksi dari jendela ini, atau Anda dapat menavigasi ke register yang " +"menunjukkan sisi lain dari transaksi yang sama dan menghapus split dari " +"register itu." #: gnucash/gnome/gnc-split-reg.c:1520 #: gnucash/gnome-utils/gnc-tree-control-split-reg.c:1040 @@ -6423,9 +6452,8 @@ msgid "" "You would be deleting a transaction with reconciled splits! This is not a " "good idea as it will cause your reconciled balance to be off." msgstr "" -"Anda akan menghapus sebuah transaksi dengan pemecahan direkonsiliasi! Ini " -"bukan ide yang bagus karena akan menyebabkan saldo direkonsiliasi Anda " -"dimatikan." +"Anda akan menghapus sebuah transaksi dengan split direkonsiliasi! Ini bukan " +"ide yang bagus karena akan menyebabkan saldo direkonsiliasi Anda dimatikan." #: gnucash/gnome/gnc-split-reg.c:1716 #, c-format @@ -6437,7 +6465,7 @@ msgid "" "Select OK to temporarily clear filter and proceed,\n" "otherwise the last active cell will be selected." msgstr "" -"Target pemecahan saat ini tersembunyi pada register ini.\n" +"Target split saat ini tersembunyi pada register ini.\n" "\n" "%s\n" "\n" @@ -6541,10 +6569,12 @@ msgid "" "Exchange by CSV/FinTS(former HBCI) or import SWIFT-MT9xx/QIF/OFX data " "including Transaction Matching" msgstr "" +"Ganti dengan CSV/FinTS(former HBCI) atau impor data SWIFT-MT9xx/QIF/OFX " +"termasuk Pencocokan Transaksi" #: gnucash/gnome/gnucash.appdata.xml.in.in:23 msgid "Perform financial calculations, such as a loan repayment" -msgstr "Melakukan perhitungan finansial, seperti cicilan pinjaman" +msgstr "Melakukan perhitungan finansial, seperti angsuran pinjaman" #: gnucash/gnome/gnucash.appdata.xml.in.in:33 msgid "GnuCash Project" @@ -6634,17 +6664,9 @@ msgstr "Tak ada harga: %s" msgid "Business" msgstr "Bisnis" -#: gnucash/gnome/window-autoclear.c:138 -msgid "Searching for splits to clear ..." -msgstr "Mencari pemecachan untuk dibersihkan..." - -#: gnucash/gnome/window-autoclear.c:241 -msgid "Cannot uniquely clear splits. Found multiple possibilities." -msgstr "Tak dapat membersihkan pemecahan. Ditemukan beberapa kemungkinan." - -#: gnucash/gnome/window-autoclear.c:248 -msgid "The selected amount cannot be cleared." -msgstr "Jumlah yang dipilih tidak bisa diselesaikan." +#: gnucash/gnome/window-autoclear.c:115 +msgid "Cleared Transactions" +msgstr "Transaksi Klir" #: gnucash/gnome/window-reconcile2.c:417 gnucash/gnome/window-reconcile.c:458 msgid "Interest Payment" @@ -6711,7 +6733,7 @@ msgid "Reconciled Balance" msgstr "Saldo Direkonsiliasi" #: gnucash/gnome/window-reconcile2.c:1798 gnucash/gnome/window-reconcile.c:1991 -#: gnucash/report/reports/standard/cash-flow.scm:310 +#: gnucash/report/reports/standard/cash-flow.scm:312 msgid "Difference" msgstr "Selisih" @@ -6743,7 +6765,7 @@ msgstr "_Akun" #: gnucash/gnome/window-reconcile2.c:2103 #: gnucash/gnome/window-reconcile2.c:2184 gnucash/gnome/window-reconcile.c:2324 #: gnucash/gnome/window-reconcile.c:2405 -#: gnucash/gnome-utils/gnc-main-window.c:278 +#: gnucash/gnome-utils/gnc-main-window.c:281 #: gnucash/gtkbuilder/dialog-account.glade:1117 #: gnucash/gtkbuilder/dialog-bi-import-gui.glade:23 #: gnucash/gtkbuilder/dialog-book-close.glade:22 @@ -6752,13 +6774,13 @@ msgstr "_Akun" #: gnucash/gtkbuilder/dialog-customer-import-gui.glade:25 #: gnucash/gtkbuilder/dialog-custom-report.glade:28 #: gnucash/gtkbuilder/dialog-employee.glade:23 -#: gnucash/gtkbuilder/dialog-import.glade:1001 +#: gnucash/gtkbuilder/dialog-import.glade:1017 #: gnucash/gtkbuilder/dialog-invoice.glade:658 #: gnucash/gtkbuilder/dialog-job.glade:24 #: gnucash/gtkbuilder/dialog-options.glade:21 #: gnucash/gtkbuilder/dialog-order.glade:25 #: gnucash/gtkbuilder/dialog-order.glade:441 -#: gnucash/gtkbuilder/dialog-preferences.glade:142 +#: gnucash/gtkbuilder/dialog-preferences.glade:258 #: gnucash/gtkbuilder/dialog-print-check.glade:316 #: gnucash/gtkbuilder/dialog-search.glade:21 #: gnucash/gtkbuilder/dialog-sx.glade:763 @@ -6814,18 +6836,18 @@ msgid "Edit the main account for this register" msgstr "Sunting akun utama untuk register ini" #: gnucash/gnome/window-reconcile2.c:2147 gnucash/gnome/window-reconcile.c:2368 -#: gnucash/gnome-utils/gnc-main-window.c:353 +#: gnucash/gnome-utils/gnc-main-window.c:356 msgid "_Check & Repair" msgstr "_Periksa & Perbaiki" #: gnucash/gnome/window-reconcile2.c:2156 gnucash/gnome/window-reconcile.c:2377 -#: gnucash/gtkbuilder/dialog-account.glade:1730 +#: gnucash/gtkbuilder/dialog-account.glade:1747 msgid "_Balance" msgstr "_Saldo" #: gnucash/gnome/window-reconcile2.c:2157 gnucash/gnome/window-reconcile.c:2378 msgid "Add a new balancing entry to the account" -msgstr "" +msgstr "Tambahkan entri saldo baru ke akun" #: gnucash/gnome/window-reconcile2.c:2162 gnucash/gnome/window-reconcile.c:2383 msgid "Edit the current transaction" @@ -6887,8 +6909,8 @@ msgid "" "WARNING! Account contains splits whose reconcile date is after statement " "date. Reconciliation may be difficult." msgstr "" -"PERINGATAN! Akun berisi pemecahan yang tanggal rekonsiliasinya setelah " -"tanggal pernyataan. Rekonsiliasi bisa menjadi sulit." +"PERINGATAN! Akun berisi split yang tanggal rekonsiliasinya setelah tanggal " +"pernyataan. Rekonsiliasi bisa menjadi sulit." #: gnucash/gnome/window-reconcile.c:1855 msgid "" @@ -6897,8 +6919,8 @@ msgid "" "the case, you may use Find Transactions to find them, unreconcile, and re-" "reconcile." msgstr "" -"Akun ini memiliki pemecahan yang mana Tanggal Rekonsiliasi adalah setelah " -"tanggal pernyataan rekonsiliasi ini. Pemecahan itu mungkin akan menyebabkan " +"Akun ini memiliki split yang mana Tanggal Rekonsiliasi adalah setelah " +"tanggal pernyataan rekonsiliasi ini. Split tersebut mungkin akan menyebabkan " "rekonsiliasi menjadi sulit. Jika itu terjadi, Anda bisa menggunakan Cari " "Transaksi untuk mencarinya, batalkan rekonsiliasi, dan rekonsiliasi ulang." @@ -6937,7 +6959,7 @@ msgstr "Transaksi Baru" #: gnucash/gnome-search/dialog-search.c:1098 msgid "New Split" -msgstr "Pemecahan Baru" +msgstr "Split Baru" #: gnucash/gnome-search/dialog-search.c:1107 msgctxt "" @@ -6978,7 +7000,7 @@ msgid "matches no accounts" msgstr "tidak ada akun yang cocok" #: gnucash/gnome-search/search-account.c:195 -#: gnucash/report/reports/standard/cash-flow.scm:254 +#: gnucash/report/reports/standard/cash-flow.scm:256 msgid "Selected Accounts" msgstr "Akun yang Dipilih" @@ -7093,7 +7115,7 @@ msgstr "memiliki kredit" #: gnucash/gnome-search/search-reconciled.c:215 msgid "Not Cleared" -msgstr "Belum Diselesaikan" +msgstr "Belum Klir" #: gnucash/gnome-search/search-string.c:169 msgid "You need to enter some search text." @@ -7149,6 +7171,26 @@ msgid "" "Press \"Next\" now to select the correct character encoding for your data " "file.\n" msgstr "" +"\n" +"Berkas yang akan dimuat berasal dari GnuCash versi yang lebih lama. Format " +"berkas pada versi yang lebih lama tidak memiliki spesifikasi detail mengenai " +"enkoding karakter yang sedang digunakan. Ini berarti teks pada berkas data " +"Anda dapat dibaca dalam beberapa cara yang ambigu. Ambiguitas ini tak dapat " +"diatasi secara otomatis, tetapi format berkas baru pada GnuCash 2.0.0 akan " +"menyertakan semua spesifikasi yang diperlukan sehingga Anda tidak perlu " +"melalui langkah ini lagi.\n" +"\n" +"GnuCash akan mencoba menebak enkoding karakter yang tepat untuk berkas data " +"Anda. Pada halaman berikutnya, GnuCash akan menampilkan hasil teks yang " +"menggunakan tebakan ini. Anda perlu memeriksa apakah kata-kata sudah " +"ditampilkan sesuai yang diharapkan. Bisa jadi tidak ada masalah apapun dan " +"Anda bisa menekan \"Berikutnya\", atau kata-kata yang ditampilkan berisi " +"karakter yang tak diharapkan, sehingga Anda perlu memilih enkoding karakter " +"yang lain. Anda mungkin perlu menyunting daftar enkoding karakter dengan " +"klik pada tombol terkait.\n" +"\n" +"Tekan \"Berikutnya\" sekarang untuk memilih enkoding karakter yang tepat " +"untuk berkas data Anda.\n" #: gnucash/gnome-utils/assistant-xml-encoding.c:198 msgid "Ambiguous character encoding" @@ -7298,63 +7340,75 @@ msgstr "Pengkodean ini telah ditambahkan pada daftar." msgid "This is an invalid encoding." msgstr "Ini adalah pengkodean yang tidak valid." -#: gnucash/gnome-utils/dialog-account.c:488 +#: gnucash/gnome-utils/dialog-account.c:531 msgid "Could not create opening balance." msgstr "Tak dapat membuat saldo awal." -#: gnucash/gnome-utils/dialog-account.c:696 +#: gnucash/gnome-utils/dialog-account.c:739 msgid "Give the children the same type?" msgstr "Berikan tipe yang sama untuk anak?" -#: gnucash/gnome-utils/dialog-account.c:707 +#: gnucash/gnome-utils/dialog-account.c:750 #, c-format msgid "" "The children of the edited account have to be changed to type \"%s\" to make " "them compatible." msgstr "" +"Anak dari akun yang disunting harus diubah ke tipe \"%s\" untuk " +"menjadikannya kompatibel." -#: gnucash/gnome-utils/dialog-account.c:718 +#: gnucash/gnome-utils/dialog-account.c:761 msgid "_Show children accounts" msgstr "Tam_pilkan akun anak" -#: gnucash/gnome-utils/dialog-account.c:788 +#: gnucash/gnome-utils/dialog-account.c:831 msgid "The account must be given a name." msgstr "Akun harus diberi nama." -#: gnucash/gnome-utils/dialog-account.c:814 +#: gnucash/gnome-utils/dialog-account.c:857 msgid "There is already an account with that name." msgstr "Sudah ada akun dengan nama itu." -#: gnucash/gnome-utils/dialog-account.c:823 +#: gnucash/gnome-utils/dialog-account.c:866 msgid "You must choose a valid parent account." msgstr "Anda harus memilih akun induk yang valid." -#: gnucash/gnome-utils/dialog-account.c:832 +#: gnucash/gnome-utils/dialog-account.c:875 msgid "You must select an account type." msgstr "Anda harus memilih sebuah tipe akun." -#: gnucash/gnome-utils/dialog-account.c:841 +#: gnucash/gnome-utils/dialog-account.c:884 msgid "" "The selected account type is incompatible with the one of the selected " "parent." msgstr "Tipe akun yang dipilih tidak kompatibel dengan induk yang dipilih." -#: gnucash/gnome-utils/dialog-account.c:853 +#: gnucash/gnome-utils/dialog-account.c:896 msgid "You must choose a commodity." msgstr "Anda harus memilih sebuah komoditas." -#: gnucash/gnome-utils/dialog-account.c:909 +#: gnucash/gnome-utils/dialog-account.c:955 msgid "You must enter a valid opening balance or leave it blank." msgstr "Anda harus memasukkan saldo awal yang valid atau membiarkannya kosong." -#: gnucash/gnome-utils/dialog-account.c:933 +#: gnucash/gnome-utils/dialog-account.c:979 msgid "" "You must select a transfer account or choose the opening balances equity " "account." msgstr "" "Anda harus memilih sebuah akun transfer atau memilih akun ekuitas saldo awal." -#: gnucash/gnome-utils/dialog-account.c:1350 +#: gnucash/gnome-utils/dialog-account.c:1331 +msgid "" +"An account with opening balance already exists for the desired currency." +msgstr "" +"Sudah ada sebuah akun dengan saldo awal untuk mata uang yang diinginkan." + +#: gnucash/gnome-utils/dialog-account.c:1332 +msgid "Cannot change currency" +msgstr "Tak dapat mengubah mata uang" + +#: gnucash/gnome-utils/dialog-account.c:1419 msgid "" "This Account contains Transactions.\n" "Changing this option is not possible." @@ -7362,42 +7416,46 @@ msgstr "" "Akun ini memiliki Transaksi.\n" "Mengubah opsi ini tidak dimungkinkan." -#: gnucash/gnome-utils/dialog-account.c:1539 +#: gnucash/gnome-utils/dialog-account.c:1609 msgid "Edit Account" msgstr "Sunting Akun" -#: gnucash/gnome-utils/dialog-account.c:1542 +#: gnucash/gnome-utils/dialog-account.c:1612 #, c-format msgid "(%d) New Accounts" msgstr "(%d) Akun Baru" -#: gnucash/gnome-utils/dialog-account.c:1552 +#: gnucash/gnome-utils/dialog-account.c:1622 #: gnucash/gtkbuilder/dialog-account.glade:1100 #: gnucash/gtkbuilder/dialog-account-picker.glade:158 msgid "New Account" msgstr "Akun Baru" -#: gnucash/gnome-utils/dialog-account.c:2113 +#: gnucash/gnome-utils/dialog-account.c:2183 #, c-format msgid "" "Renumber the immediate sub-accounts of %s? This will replace the account " "code field of each child account with a newly generated code." msgstr "" +"Nomori ulang sub-akun terdekat dari %s? Ini akan mengganti bidang kode akun " +"untuk tiap akun anak dengan kode baru yang dibuat." -#: gnucash/gnome-utils/dialog-account.c:2218 +#: gnucash/gnome-utils/dialog-account.c:2288 #, c-format msgid "" "Set the account color for account '%s' including all sub-accounts to the " "selected color" msgstr "" +"Setel warna akun untuk akun '%s' termasuk semua sub-akun ke warna yang " +"dipilih" -#: gnucash/gnome-utils/dialog-account.c:2245 +#: gnucash/gnome-utils/dialog-account.c:2315 #, c-format msgid "" "Set the account placeholder value for account '%s' including all sub-accounts" -msgstr "" +msgstr "Setel nilai placeholder akun untuk akun '%s' termasuk semua sub-akun" -#: gnucash/gnome-utils/dialog-account.c:2259 +#: gnucash/gnome-utils/dialog-account.c:2329 #, c-format msgid "" "Set the account hidden value for account '%s' including all sub-accounts" @@ -7406,17 +7464,20 @@ msgstr "Setel nilai tersembunyi untuk akun '%s' termasuk semua sub-akun" #: gnucash/gnome-utils/dialog-book-close.c:294 msgid "Please select an Equity account to hold the total Period Income." msgstr "" +"Silakan pilih sebuah akun Ekuitas untuk menampung total Pendapatan Periode." #: gnucash/gnome-utils/dialog-book-close.c:301 msgid "Please select an Equity account to hold the total Period Expense." msgstr "" +"Silakan pilih sebuah akun Ekuitas untuk menampung total Pengeluaran Periode." #: gnucash/gnome-utils/dialog-commodity.c:174 -#, fuzzy msgid "" "\n" "Please select a commodity to match" -msgstr "Pilih foto untuk orang ini" +msgstr "" +"\n" +"Silakan pilih sebuah komoditas untuk dicocokkan" #: gnucash/gnome-utils/dialog-commodity.c:181 msgid "" @@ -7435,6 +7496,8 @@ msgid "" "\n" "Exchange code (ISIN, CUSIP or similar): " msgstr "" +"\n" +"Nomor identifikasi (ISIN, CUSIP atau yang semisalnya): " #: gnucash/gnome-utils/dialog-commodity.c:189 msgid "" @@ -7445,26 +7508,22 @@ msgstr "" "Mnemonik (Simbol atau yang serupa): " #: gnucash/gnome-utils/dialog-commodity.c:288 -#, fuzzy msgid "Select security/currency" -msgstr "Keamanan" +msgstr "Pilih sekuritas/mata uang" #: gnucash/gnome-utils/dialog-commodity.c:289 #: gnucash/gtkbuilder/dialog-account.glade:1257 -#, fuzzy msgid "_Security/currency" -msgstr "mata uang" +msgstr "_Sekuritas/mata uang" #: gnucash/gnome-utils/dialog-commodity.c:293 -#, fuzzy msgid "Select security" -msgstr "Keamanan" +msgstr "Pilih sekuritas" #: gnucash/gnome-utils/dialog-commodity.c:294 #: gnucash/gtkbuilder/dialog-price.glade:146 -#, fuzzy msgid "_Security" -msgstr "Keamanan" +msgstr "_Sekuritas" #: gnucash/gnome-utils/dialog-commodity.c:298 msgid "Select currency" @@ -7476,7 +7535,7 @@ msgid "Cu_rrency" msgstr "Ma_ta Uang" #: gnucash/gnome-utils/dialog-commodity.c:773 -#: gnucash/gnome-utils/dialog-options.c:701 +#: gnucash/gnome-utils/dialog-options.c:713 #: gnucash/gnome-utils/gnc-tree-view-owner.c:412 #: gnucash/gnome-utils/gnc-tree-view-price.c:402 #: gnucash/gtkbuilder/dialog-customer.glade:511 @@ -7484,7 +7543,7 @@ msgstr "Ma_ta Uang" #: gnucash/gtkbuilder/dialog-transfer.glade:424 #: gnucash/gtkbuilder/dialog-transfer.glade:437 #: gnucash/gtkbuilder/dialog-vendor.glade:507 -#: libgnucash/engine/Account.cpp:4321 +#: libgnucash/engine/Account.cpp:4368 msgid "Currency" msgstr "Mata Uang" @@ -7519,7 +7578,7 @@ msgstr "Anda tidak bisa membuat mata uang nasional baru." #: gnucash/gnome-utils/dialog-commodity.c:1298 #, c-format msgid "%s is a reserved commodity type. Please use something else." -msgstr "" +msgstr "%s adalah tipe komoditas yang dicadangkan. Silakan gunakan yang lain." #: gnucash/gnome-utils/dialog-commodity.c:1313 msgid "That commodity already exists." @@ -7534,27 +7593,29 @@ msgstr "" "untuk komoditas." #: gnucash/gnome-utils/dialog-doclink-utils.c:237 -#, fuzzy msgid "Path head for files is," -msgstr "Amplituda Kepala GMR" +msgstr "Tajuk path untuk berkas adalah," #: gnucash/gnome-utils/dialog-doclink-utils.c:239 -#, fuzzy msgid "Path head does not exist," -msgstr "tidak ada" +msgstr "Tajuk path tidak ada," #: gnucash/gnome-utils/dialog-doclink-utils.c:242 #, c-format msgid "Path head not set, using '%s' for relative paths" -msgstr "" +msgstr "Tajuk path tidak disetel, menggunakan '%s' untuk path relatif" #: gnucash/gnome-utils/dialog-doclink-utils.c:426 msgid "Existing" msgstr "Sudah Ada" -#: gnucash/gnome-utils/dialog-dup-trans.c:250 +#: gnucash/gnome-utils/dialog-dup-trans.c:148 +msgid "Use +- keys to increment/decrement number" +msgstr "Gunakan tombol +- untuk menambah/mengurangi nomor" + +#: gnucash/gnome-utils/dialog-dup-trans.c:297 msgid "Action/Number" -msgstr "" +msgstr "Aksi/Nomor" #: gnucash/gnome-utils/dialog-file-access.c:303 msgid "Open..." @@ -7578,26 +7639,53 @@ msgstr "Simpan Sebagai..." msgid "_Save As" msgstr "_Simpan Sebagai" -#: gnucash/gnome-utils/dialog-options.c:641 +#: gnucash/gnome-utils/dialog-options.c:226 +#: gnucash/gnome-utils/gnc-main-window.c:305 +#: gnucash/gtkbuilder/dialog-billterms.glade:729 +#: gnucash/gtkbuilder/dialog-commodities.glade:173 +#: gnucash/gtkbuilder/dialog-custom-report.glade:45 +#: gnucash/gtkbuilder/dialog-doclink.glade:546 +#: gnucash/gtkbuilder/dialog-fincalc.glade:107 +#: gnucash/gtkbuilder/dialog-find-account.glade:68 +#: gnucash/gtkbuilder/dialog-imap-editor.glade:80 +#: gnucash/gtkbuilder/dialog-import.glade:496 +#: gnucash/gtkbuilder/dialog-lot-viewer.glade:89 +#: gnucash/gtkbuilder/dialog-order.glade:42 +#: gnucash/gtkbuilder/dialog-preferences.glade:147 +#: gnucash/gtkbuilder/dialog-preferences.glade:274 +#: gnucash/gtkbuilder/dialog-price.glade:939 +#: gnucash/gtkbuilder/dialog-query-view.glade:22 +#: gnucash/gtkbuilder/dialog-report.glade:272 +#: gnucash/gtkbuilder/dialog-report.glade:679 +#: gnucash/gtkbuilder/dialog-search.glade:52 +#: gnucash/gtkbuilder/dialog-tax-table.glade:254 +#: gnucash/gtkbuilder/dialog-totd.glade:56 +#: gnucash/gtkbuilder/gnc-plugin-page-budget.glade:736 +#: gnucash/import-export/aqb/dialog-ab.glade:43 +msgid "_Close" +msgstr "_Tutup" + +#: gnucash/gnome-utils/dialog-options.c:653 msgid "" "Because no accounts have been set up yet, you will need to return to this " "dialog (via File->Properties), after account setup, if you want to set a " "default gain/loss account." -msgstr "d" +msgstr "" +"Dikarenakan belum ada akun yang telah disiapkan, Anda perlu kembali ke " +"dialog ini (melalui Berkas->Properti), setelah penyiapan akun, jika Anda " +"ingin menyetel sebuah akun keuntungan/kerugian baku." -#: gnucash/gnome-utils/dialog-options.c:685 -#, fuzzy +#: gnucash/gnome-utils/dialog-options.c:697 msgid "Select no account" -msgstr "Pilih sebuah akun" +msgstr "Pilih tak satupun akun" -#: gnucash/gnome-utils/dialog-options.c:718 -#: gnucash/gnome-utils/gnc-tree-view-account.c:966 -#, fuzzy +#: gnucash/gnome-utils/dialog-options.c:730 +#: gnucash/gnome-utils/gnc-tree-view-account.c:989 msgctxt "Column header for 'Placeholder'" msgid "P" msgstr "P" -#: gnucash/gnome-utils/dialog-options.c:785 +#: gnucash/gnome-utils/dialog-options.c:797 msgid "" "There are no income or expense accounts of the specified\n" "book currency; you will have to return to this dialog\n" @@ -7607,118 +7695,99 @@ msgstr "" "Tidak ada akun pendapatan atau pengeluaran untuk mata uang buku\n" "yang ditentukan; Anda harus kembali ke dialog ini\n" "(melalui Berkas->Properti), setelah menyiapkan akun, untuk memilih\n" -"sebuah akun laba/rugi bawaan." +"sebuah akun keuntungan/kerugian baku." -#: gnucash/gnome-utils/dialog-options.c:854 +#: gnucash/gnome-utils/dialog-options.c:865 #: gnucash/import-export/qif-imp/dialog-account-picker.c:299 #, c-format msgid "" "The account %s is a placeholder account and does not allow transactions. " "Please choose a different account." msgstr "" +"Akun %s adalah sebuah akun placeholder dan tidak mengizinkan transaksi. " +"Silakan pilih akun yang lain." -#: gnucash/gnome-utils/dialog-options.c:1284 -#, fuzzy +#: gnucash/gnome-utils/dialog-options.c:1292 msgid "Book currency" -msgstr "mata uang" +msgstr "Mata uang buku" -#: gnucash/gnome-utils/dialog-options.c:1309 +#: gnucash/gnome-utils/dialog-options.c:1317 msgid "Default lot tracking policy" -msgstr "" +msgstr "Kebijakan pelacakan lot baku" -#: gnucash/gnome-utils/dialog-options.c:1333 -#, fuzzy +#: gnucash/gnome-utils/dialog-options.c:1340 msgid "Default gain/loss account" -msgstr "tipe akun: Keuntungan & Kerugian" +msgstr "Akun keuntungan/kerugian baku" -#: gnucash/gnome-utils/dialog-options.c:1501 -#: gnucash/gnome-utils/dialog-options.c:1647 -#, fuzzy +#: gnucash/gnome-utils/dialog-options.c:1506 +#: gnucash/gnome-utils/dialog-options.c:1650 msgid "Select All" msgstr "Pilih Semua" -#: gnucash/gnome-utils/dialog-options.c:1503 -#, fuzzy -msgid "Select all accounts." -msgstr "Semua Akun" - #: gnucash/gnome-utils/dialog-options.c:1508 -#: gnucash/gnome-utils/dialog-options.c:1654 -#, fuzzy +msgid "Select all accounts." +msgstr "Pilih semua akun." + +#: gnucash/gnome-utils/dialog-options.c:1513 +#: gnucash/gnome-utils/dialog-options.c:1657 msgid "Clear All" msgstr "Bersihkan Semua" -#: gnucash/gnome-utils/dialog-options.c:1510 -msgid "Clear the selection and unselect all accounts." -msgstr "" - #: gnucash/gnome-utils/dialog-options.c:1515 -#, fuzzy +msgid "Clear the selection and unselect all accounts." +msgstr "Bersihkan pilihan dan pilih tak satupun akun." + +#: gnucash/gnome-utils/dialog-options.c:1520 msgid "Select Children" -msgstr "Urutkan anak-anak" +msgstr "Pilih Anak" -#: gnucash/gnome-utils/dialog-options.c:1517 -#, fuzzy +#: gnucash/gnome-utils/dialog-options.c:1522 msgid "Select all descendents of selected account." -msgstr "Pilih semua jawaban atas pesan yang sedang dipilih" +msgstr "Pilih semua turunan dari akun yang dipilih." -#: gnucash/gnome-utils/dialog-options.c:1523 -#: gnucash/gnome-utils/dialog-options.c:1661 -#, fuzzy +#: gnucash/gnome-utils/dialog-options.c:1528 +#: gnucash/gnome-utils/dialog-options.c:1664 msgid "Select Default" -msgstr "" -"Sebagai alternatif, Anda bisa menambahkan 'Net Class' dimana Anda bisa " -"menentukan sejumlah opsi. Buka *Setup* -> *Design Rules* -> *Net Classes " -"Editor* dan tambahkan sebuah _class_ baru dengan nama 'power'. Ubah lebar " -"jalur dari 8 mil (0.0080) ke 24 mil (0.0240). Lalu, tambahkan semuanya " -"kecuali 'ground' ke _class_ 'power' (pilih 'default' di sebelah kiri dan " -"'power' di sebelah kanan, dan klik tombol panah)." +msgstr "Pilih Baku" -#: gnucash/gnome-utils/dialog-options.c:1525 -#, fuzzy +#: gnucash/gnome-utils/dialog-options.c:1530 msgid "Select the default account selection." -msgstr "Pilih sebuah akun" +msgstr "Pilih pemilihan akun baku." -#: gnucash/gnome-utils/dialog-options.c:1542 -#, fuzzy +#: gnucash/gnome-utils/dialog-options.c:1547 msgid "Show Hidden Accounts" -msgstr "Tampilkan berkas tersembunyi pada _hasil" +msgstr "Tampilkan Akun Tersembunyi" -#: gnucash/gnome-utils/dialog-options.c:1544 +#: gnucash/gnome-utils/dialog-options.c:1549 msgid "Show accounts that have been marked hidden." -msgstr "" +msgstr "Tampilkan akun yang telah ditandai tersembunyi." -#: gnucash/gnome-utils/dialog-options.c:1649 +#: gnucash/gnome-utils/dialog-options.c:1652 msgid "Select all entries." msgstr "Pilih semua entri." -#: gnucash/gnome-utils/dialog-options.c:1656 +#: gnucash/gnome-utils/dialog-options.c:1659 msgid "Clear the selection and unselect all entries." -msgstr "" +msgstr "Bersihkan pilihan dan pilih tak satupun entri." -#: gnucash/gnome-utils/dialog-options.c:1663 -#, fuzzy +#: gnucash/gnome-utils/dialog-options.c:1666 msgid "Select the default selection." -msgstr "Pilihan bawaan pada riwayat aktivitas" +msgstr "Pilih pemilihan baku." -#: gnucash/gnome-utils/dialog-options.c:1856 -#, fuzzy +#: gnucash/gnome-utils/dialog-options.c:1860 msgid "Reset defaults" -msgstr "" -"Anda dapat kembali ke pengaturan sebelumnya dengan menekan tombol Reset ke Baku." +msgstr "Setel ulang ke baku" -#: gnucash/gnome-utils/dialog-options.c:1858 -#, fuzzy +#: gnucash/gnome-utils/dialog-options.c:1862 msgid "Reset all values to their defaults." -msgstr "Tata ulang semua kunci dalam SKEMA ke nilai baku" +msgstr "Setel ulang semua nilai ke nilai baku." -#: gnucash/gnome-utils/dialog-options.c:2253 +#: gnucash/gnome-utils/dialog-options.c:2263 msgid "Page" msgstr "Halaman" -#: gnucash/gnome-utils/dialog-options.c:2879 -#: gnucash/gnome-utils/dialog-preferences.c:1374 +#: gnucash/gnome-utils/dialog-options.c:2890 +#: gnucash/gnome-utils/dialog-preferences.c:1465 #: gnucash/gtkbuilder/dialog-fincalc.glade:254 #: gnucash/gtkbuilder/dialog-fincalc.glade:269 #: gnucash/gtkbuilder/dialog-fincalc.glade:284 @@ -7727,23 +7796,23 @@ msgstr "Halaman" msgid "Clear" msgstr "Bersihkan" -#: gnucash/gnome-utils/dialog-options.c:2880 +#: gnucash/gnome-utils/dialog-options.c:2891 msgid "Clear any selected image file." -msgstr "" +msgstr "Bersihkan pilihan berkas gambar." -#: gnucash/gnome-utils/dialog-options.c:2882 +#: gnucash/gnome-utils/dialog-options.c:2893 msgid "Select image" msgstr "Pilih gambar" -#: gnucash/gnome-utils/dialog-options.c:2884 +#: gnucash/gnome-utils/dialog-options.c:2895 msgid "Select an image file." msgstr "Pilih sebuah berkas gambar." -#: gnucash/gnome-utils/dialog-options.c:3065 +#: gnucash/gnome-utils/dialog-options.c:3075 msgid "Pixels" msgstr "Piksel" -#: gnucash/gnome-utils/dialog-options.c:3071 +#: gnucash/gnome-utils/dialog-options.c:3081 msgid "Percent" msgstr "Persen" @@ -7753,21 +7822,17 @@ msgstr "Persen" #. names with other account names that are more suitable for your #. language - just keep in mind to have exactly two %s in your #. translation. -#: gnucash/gnome-utils/dialog-preferences.c:165 +#: gnucash/gnome-utils/dialog-preferences.c:166 #, c-format msgid "Income%sSalary%sTaxable" msgstr "Pendapatan%sGaji%sKena Pajak" -#: gnucash/gnome-utils/dialog-preferences.c:826 -#, fuzzy +#: gnucash/gnome-utils/dialog-preferences.c:899 msgid "Path does not exist, " -msgstr "" -"Pengaya beautifier: path konfigurasi \"%s\" tidak ada, entri \"%s\" " -"dinonaktifkan" +msgstr "Path tidak ada, " -#: gnucash/gnome-utils/dialog-preferences.c:882 -#: gnucash/gnome-utils/dialog-preferences.c:1371 -#, fuzzy +#: gnucash/gnome-utils/dialog-preferences.c:955 +#: gnucash/gnome-utils/dialog-preferences.c:1462 msgid "Select a folder" msgstr "Pilih folder" @@ -7785,39 +7850,37 @@ msgstr "" "\" telah digunakan." #: gnucash/gnome-utils/dialog-tax-table.c:140 -#, fuzzy msgid "Percentage amount must be between -100 and 100." -msgstr "Nilai persen harus di antara 0 dan 100" +msgstr "Nilai persentase harus di antara -100 dan 100." #: gnucash/gnome-utils/dialog-tax-table.c:149 -#, fuzzy msgid "You must choose a Tax Account." -msgstr "Anda harus mengisi tanggal." +msgstr "Anda harus memilih Akun Pajak." -#: gnucash/gnome-utils/dialog-tax-table.c:630 +#: gnucash/gnome-utils/dialog-tax-table.c:633 msgid "Rename" msgstr "Ganti Nama" -#: gnucash/gnome-utils/dialog-tax-table.c:631 +#: gnucash/gnome-utils/dialog-tax-table.c:634 msgid "Please enter new name" msgstr "Masukkan nama baru" -#: gnucash/gnome-utils/dialog-tax-table.c:632 +#: gnucash/gnome-utils/dialog-tax-table.c:635 #: gnucash/gtkbuilder/dialog-tax-table.glade:72 msgid "_Rename" msgstr "U_bah Nama" -#: gnucash/gnome-utils/dialog-tax-table.c:638 +#: gnucash/gnome-utils/dialog-tax-table.c:641 #, c-format msgid "Tax table name \"%s\" already exists." msgstr "Nama tabel pajak \"%s\" sudah ada." -#: gnucash/gnome-utils/dialog-tax-table.c:662 +#: gnucash/gnome-utils/dialog-tax-table.c:665 #, c-format msgid "Tax table \"%s\" is in use. You cannot delete it." msgstr "Tabel pajak \"%s\" sedang digunakan. Anda tidak dapat menghapusnya." -#: gnucash/gnome-utils/dialog-tax-table.c:710 +#: gnucash/gnome-utils/dialog-tax-table.c:713 msgid "" "You cannot remove the last entry from the tax table. Try deleting the tax " "table if you want to do that." @@ -7825,10 +7888,9 @@ msgstr "" "Anda tidak dapat menghapus entri terakhir dari tabel pajak. Cobalah " "menghapus tabel pajak jika Anda ingin melakukannya." -#: gnucash/gnome-utils/dialog-tax-table.c:717 -#, fuzzy +#: gnucash/gnome-utils/dialog-tax-table.c:720 msgid "Are you sure you want to delete this entry?" -msgstr "Anda yakin ingin menghapus daftar kontak ini?" +msgstr "Apakah Anda yakin ingin menghapus entri ini?" #: gnucash/gnome-utils/dialog-transfer.c:599 msgid "Show the income and expense accounts" @@ -7856,10 +7918,12 @@ msgid "" "You must specify an account to transfer from, or to, or both, for this " "transaction. Otherwise, it will not be recorded." msgstr "" +"Anda harus menentukan sebuah akun sebagai sumber transfer, tujuan transfer, " +"atau keduanya, untuk transaksi ini. Jika tidak, ia tidak akan dicatat." #: gnucash/gnome-utils/dialog-transfer.c:1437 msgid "You can't transfer from and to the same account!" -msgstr "" +msgstr "Anda tak dapat transfer dari dan ke akun yang sama!" #: gnucash/gnome-utils/dialog-transfer.c:1448 #: gnucash/gnome-utils/gnc-tree-control-split-reg.c:1958 @@ -7867,95 +7931,85 @@ msgstr "" #: gnucash/register/ledger-core/split-register.c:1976 #, c-format msgid "The account %s does not allow transactions." -msgstr "" +msgstr "Akun %s tak mengizinkan transaksi." #: gnucash/gnome-utils/dialog-transfer.c:1464 msgid "" "You can't transfer from a non-currency account. Try reversing the \"from\" " "and \"to\" accounts and making the \"amount\" negative." msgstr "" +"Anda tak dapat melakukan transfer dari akun yang bukan mata uang. Coba " +"membalik akun \"dari\" dan \"ke\" dan ubah \"jumlah\" menjadi negatif." #: gnucash/gnome-utils/dialog-transfer.c:1482 msgid "You must enter a valid price." -msgstr "" +msgstr "Anda harus memasukkan harga yang valid." #: gnucash/gnome-utils/dialog-transfer.c:1494 -#, fuzzy msgid "You must enter a valid `to' amount." -msgstr "Isi berapa yang ingin Anda konversi." +msgstr "Anda harus memasukkan jumlah 'ke' yang valid." #: gnucash/gnome-utils/dialog-transfer.c:1722 -#, fuzzy msgid "You must enter an amount to transfer." -msgstr "Isi berapa yang ingin Anda konversi." +msgstr "Anda harus memasukkan jumlah untuk ditransfer." #: gnucash/gnome-utils/dialog-transfer.c:1968 #: gnucash/gtkbuilder/dialog-employee.glade:623 -#, fuzzy msgid "Credit Account" -msgstr "transfer kredit" +msgstr "Akun Kredit" #: gnucash/gnome-utils/dialog-transfer.c:1972 -#, fuzzy msgid "Debit Account" -msgstr "aksi: penarikan langsung" +msgstr "Akun Debit" #: gnucash/gnome-utils/dialog-transfer.c:1990 -#, fuzzy msgid "Transfer From" -msgstr "Transfer berkas Bluetooth dari %s" +msgstr "Transfer Dari" #: gnucash/gnome-utils/dialog-transfer.c:1994 -#, fuzzy msgid "Transfer To" -msgstr "Transfer" +msgstr "Transfer Ke" #: gnucash/gnome-utils/dialog-transfer.c:2051 -#, fuzzy msgid "Debit Amount" -msgstr "aksi: penarikan langsung" +msgstr "Jumlah Debit" #: gnucash/gnome-utils/dialog-transfer.c:2056 #: gnucash/gtkbuilder/dialog-transfer.glade:564 -#, fuzzy msgid "To Amount" -msgstr "jumlah" +msgstr "Jumlah Ke" #: gnucash/gnome-utils/dialog-utils.c:435 msgid "" "The entered date is out of the range 01/01/1400 - 31/12/9999, resetting to " "this year" msgstr "" +"Tanggal yang dimasukkan di luar rentang 01/01/1400 - 31/12/9999, menyetel " +"ulang ke tahun ini" #: gnucash/gnome-utils/dialog-utils.c:437 -#, fuzzy msgid "Date out of range" -msgstr "Kadaluwarsa" +msgstr "Tanggal di luar rentang" #: gnucash/gnome-utils/dialog-utils.c:765 -#, fuzzy msgid "Remember and don't _ask me again." -msgstr "&Jangan tanya saya lagi." +msgstr "Ingat dan jangan t_anya saya lagi." #: gnucash/gnome-utils/dialog-utils.c:766 -#, fuzzy msgid "Don't _tell me again." -msgstr "Jangan beritahu saya lagi" +msgstr "Jangan beri_tahu saya lagi." #: gnucash/gnome-utils/dialog-utils.c:769 -#, fuzzy msgid "Remember and don't ask me again this _session." -msgstr "&Jangan tanya saya lagi." +msgstr "Ingat dan jangan tanya saya lagi _sesi ini." #: gnucash/gnome-utils/dialog-utils.c:770 -#, fuzzy msgid "Don't tell me again this _session." -msgstr "&Jangan tanya saya lagi." +msgstr "Jangan beritahu saya lagi _sesi ini." #: gnucash/gnome-utils/gnc-account-sel.c:475 -#, fuzzy msgid "New..." -msgstr "_Baru…" +msgstr "Baru..." #: gnucash/gnome-utils/gnc-autosave.c:99 msgid "Save file automatically?" @@ -7982,7 +8036,23 @@ msgid_plural "" "\n" "Should your file be saved automatically?" msgstr[0] "" +"Berkas data Anda harus disimpan ke harddisk untuk menyimpan perubahan Anda. " +"GnuCash memiliki fitur untuk menyimpan berkas secara otomatis setiap %d " +"menit, seperti jika Anda menekan tombol \"Simpan\" setiap waktu. \n" +"\n" +"Anda bisa mengubah interval waktunya atau mematikan fitur ini pada Sunting-" +">Preferensi->Umum->Interval waktu simpan-otomatis. \n" +"\n" +"Apakah Anda ingin berkas disimpan secara otomatis?" msgstr[1] "" +"Berkas data Anda harus disimpan ke harddisk untuk menyimpan perubahan Anda. " +"GnuCash memiliki fitur untuk menyimpan berkas secara otomatis setiap %d " +"menit, seperti jika Anda menekan tombol \"Simpan\" setiap waktu. \n" +"\n" +"Anda bisa mengubah interval waktunya atau mematikan fitur ini pada Sunting-" +">Preferensi->Umum->Interval waktu simpan-otomatis. \n" +"\n" +"Apakah Anda ingin berkas disimpan secara otomatis?" #: gnucash/gnome-utils/gnc-autosave.c:121 msgid "_Yes, this time" @@ -8005,11 +8075,11 @@ msgstr "Tidak, kali i_ni" #: gnucash/gnome-utils/gnc-period-select.c:86 #: libgnucash/app-utils/date-utilities.scm:940 msgid "Today" -msgstr "Hari Ini" +msgstr "Hari ini" #: gnucash/gnome-utils/gnc-cell-view.c:73 msgid "Use Shift combined with Return or Keypad Enter to finish editing" -msgstr "" +msgstr "Gunakan Shift dan Return atau Enter untuk menyelesaikan penyuntingan" #: gnucash/gnome-utils/gnc-date-delta.c:224 #: gnucash/report/reports/standard/price-scatter.scm:139 @@ -8089,14 +8159,14 @@ msgstr "Frekuensi" msgid "(unnamed)" msgstr "(tanpa nama)" -#: gnucash/gnome-utils/gnc-file.c:94 gnucash/gnome-utils/gnc-main-window.c:282 +#: gnucash/gnome-utils/gnc-file.c:94 gnucash/gnome-utils/gnc-main-window.c:285 #: gnucash/import-export/bi-import/gnc-plugin-bi-import.c:57 #: gnucash/import-export/customer-import/gnc-plugin-customer-import.c:57 msgid "_Import" msgstr "_Impor" #: gnucash/gnome-utils/gnc-file.c:96 gnucash/gnome-utils/gnc-file.c:335 -#: gnucash/gtkbuilder/dialog-preferences.glade:2151 +#: gnucash/gtkbuilder/dialog-preferences.glade:2268 #: gnucash/import-export/qif-imp/gnc-plugin-qif-import.c:140 msgid "Import" msgstr "Impor" @@ -8106,7 +8176,7 @@ msgstr "Impor" msgid "Save" msgstr "Simpan" -#: gnucash/gnome-utils/gnc-file.c:106 gnucash/gnome-utils/gnc-main-window.c:283 +#: gnucash/gnome-utils/gnc-file.c:106 gnucash/gnome-utils/gnc-main-window.c:286 msgid "_Export" msgstr "_Ekspor" @@ -8121,7 +8191,7 @@ msgstr "(null)" #: gnucash/gnome-utils/gnc-file.c:280 #, c-format msgid "No suitable backend was found for %s." -msgstr "" +msgstr "Tak ada backend yang sesuai untuk %s." #: gnucash/gnome-utils/gnc-file.c:285 #, c-format @@ -8164,6 +8234,9 @@ msgid "" "another user, in which case you should not open the database. Do you want to " "proceed with opening the database?" msgstr "" +"GnuCash tak bisa mendapatkan kunci untuk %s. Basis data mungkin sedang " +"digunakan oleh pengguna lain, sehingga Anda seharusnya tidak membuka basis " +"data itu. Apakah Anda ingin melanjutkan membuka basis data?" #: gnucash/gnome-utils/gnc-file.c:336 #, c-format @@ -8172,6 +8245,9 @@ msgid "" "another user, in which case you should not import the database. Do you want " "to proceed with importing the database?" msgstr "" +"GnuCash tak bisa mendapatkan kunci untuk %s. Basis data mungkin sedang " +"digunakan oleh pengguna lain, sehingga Anda seharusnya tidak mengimpor basis " +"data itu. Apakah Anda ingin melanjutkan mengimpor basis data?" #: gnucash/gnome-utils/gnc-file.c:344 #, c-format @@ -8180,6 +8256,9 @@ msgid "" "another user, in which case you should not save the database. Do you want to " "proceed with saving the database?" msgstr "" +"GnuCash tak bisa mendapatkan kunci untuk %s. Basis data mungkin sedang " +"digunakan oleh pengguna lain, sehingga Anda seharusnya tidak menyimpan basis " +"data itu. Apakah Anda ingin melanjutkan menyimpan basis data?" #: gnucash/gnome-utils/gnc-file.c:352 #, c-format @@ -8188,6 +8267,9 @@ msgid "" "another user, in which case you should not export the database. Do you want " "to proceed with exporting the database?" msgstr "" +"GnuCash tak bisa mendapatkan kunci untuk %s. Basis data mungkin sedang " +"digunakan oleh pengguna lain, sehingga Anda seharusnya tidak mengekspor " +"basis data itu. Apakah Anda ingin melanjutkan mengekspor basis data?" #: gnucash/gnome-utils/gnc-file.c:377 #, c-format @@ -8381,7 +8463,7 @@ msgid "Save changes to the file?" msgstr "Simpan perubahan pada berkas?" #: gnucash/gnome-utils/gnc-file.c:656 -#: gnucash/gnome-utils/gnc-main-window.c:1287 +#: gnucash/gnome-utils/gnc-main-window.c:1301 #, c-format msgid "If you don't save, changes from the past %d minute will be discarded." msgid_plural "" @@ -8432,7 +8514,7 @@ msgstr "_Buat Berkas Baru" msgid "Open _Anyway" msgstr "Tetap Buk_a" -#: gnucash/gnome-utils/gnc-file.c:857 gnucash/gnome-utils/gnc-main-window.c:307 +#: gnucash/gnome-utils/gnc-file.c:857 gnucash/gnome-utils/gnc-main-window.c:310 msgid "_Quit" msgstr "_Keluar" @@ -8473,9 +8555,11 @@ msgid "" "Reverting will discard all unsaved changes to %s. Are you sure you want to " "proceed ?" msgstr "" +"Mengembalikan akan membuang semua perubahan %s yang belum disimpan. Apakah " +"Anda yakin ingin melanjutkan?" #: gnucash/gnome-utils/gnc-file.c:1680 -#: gnucash/gnome-utils/gnc-main-window.c:1255 +#: gnucash/gnome-utils/gnc-main-window.c:1269 msgid "" msgstr "" @@ -8500,12 +8584,12 @@ msgstr "" msgid "Expected location" msgstr "Lokasi yang diharapkan" -#: gnucash/gnome-utils/gnc-gnome-utils.c:446 -#: gnucash/gnome-utils/gnc-gnome-utils.c:486 +#: gnucash/gnome-utils/gnc-gnome-utils.c:460 +#: gnucash/gnome-utils/gnc-gnome-utils.c:500 msgid "GnuCash could not find the linked document." msgstr "GnuCash tak dapat menemukan dokumen tertaut." -#: gnucash/gnome-utils/gnc-gnome-utils.c:516 +#: gnucash/gnome-utils/gnc-gnome-utils.c:530 msgid "GnuCash could not open the linked document:" msgstr "GnuCash tak dapat membuka dokumen tertaut:" @@ -8516,235 +8600,211 @@ msgstr "GnuCash tak dapat membuka dokumen tertaut:" msgid "Enter a user name and password to connect to: %s" msgstr "Masukkan nama pengguna dan kata sandi untuk menghubungkan ke: %s" -#: gnucash/gnome-utils/gnc-main-window.c:130 +#: gnucash/gnome-utils/gnc-main-window.c:131 #, c-format msgid "Changes will be saved automatically in %u seconds" msgstr "Perubahan akan disimpan secara otomatis dalam %u detik" -#: gnucash/gnome-utils/gnc-main-window.c:269 +#: gnucash/gnome-utils/gnc-main-window.c:272 msgid "_File" msgstr "_Berkas" -#: gnucash/gnome-utils/gnc-main-window.c:273 +#: gnucash/gnome-utils/gnc-main-window.c:276 msgid "Tra_nsaction" msgstr "Tra_nsaksi" -#: gnucash/gnome-utils/gnc-main-window.c:274 +#: gnucash/gnome-utils/gnc-main-window.c:277 msgid "_Reports" msgstr "Lapo_ran" -#: gnucash/gnome-utils/gnc-main-window.c:275 +#: gnucash/gnome-utils/gnc-main-window.c:278 msgid "_Tools" msgstr "Ala_t" -#: gnucash/gnome-utils/gnc-main-window.c:276 +#: gnucash/gnome-utils/gnc-main-window.c:279 msgid "E_xtensions" msgstr "E_kstensi" -#: gnucash/gnome-utils/gnc-main-window.c:277 +#: gnucash/gnome-utils/gnc-main-window.c:280 msgid "_Windows" msgstr "_Jendela" -#: gnucash/gnome-utils/gnc-main-window.c:285 +#: gnucash/gnome-utils/gnc-main-window.c:288 msgid "_Print..." msgstr "_Cetak..." -#: gnucash/gnome-utils/gnc-main-window.c:286 +#: gnucash/gnome-utils/gnc-main-window.c:289 msgid "Print the currently active page" msgstr "Cetak halaman yang sedang aktif" -#: gnucash/gnome-utils/gnc-main-window.c:292 +#: gnucash/gnome-utils/gnc-main-window.c:295 msgid "Pa_ge Setup..." -msgstr "Sete_lan Halaman..." +msgstr "Pen_gaturan Halaman..." -#: gnucash/gnome-utils/gnc-main-window.c:293 +#: gnucash/gnome-utils/gnc-main-window.c:296 msgid "Specify the page size and orientation for printing" msgstr "Tentukan ukuran halaman dan orientasi untuk dicetak" -#: gnucash/gnome-utils/gnc-main-window.c:297 +#: gnucash/gnome-utils/gnc-main-window.c:300 msgid "Proper_ties" msgstr "Proper_ti" -#: gnucash/gnome-utils/gnc-main-window.c:298 +#: gnucash/gnome-utils/gnc-main-window.c:301 msgid "Edit the properties of the current file" msgstr "Sunting properti berkas saat ini" -#: gnucash/gnome-utils/gnc-main-window.c:302 -#: gnucash/gtkbuilder/dialog-billterms.glade:729 -#: gnucash/gtkbuilder/dialog-commodities.glade:173 -#: gnucash/gtkbuilder/dialog-custom-report.glade:45 -#: gnucash/gtkbuilder/dialog-doclink.glade:546 -#: gnucash/gtkbuilder/dialog-fincalc.glade:107 -#: gnucash/gtkbuilder/dialog-find-account.glade:68 -#: gnucash/gtkbuilder/dialog-imap-editor.glade:80 -#: gnucash/gtkbuilder/dialog-import.glade:496 -#: gnucash/gtkbuilder/dialog-lot-viewer.glade:89 -#: gnucash/gtkbuilder/dialog-order.glade:42 -#: gnucash/gtkbuilder/dialog-preferences.glade:158 -#: gnucash/gtkbuilder/dialog-price.glade:939 -#: gnucash/gtkbuilder/dialog-query-view.glade:22 -#: gnucash/gtkbuilder/dialog-report.glade:272 -#: gnucash/gtkbuilder/dialog-report.glade:679 -#: gnucash/gtkbuilder/dialog-search.glade:52 -#: gnucash/gtkbuilder/dialog-tax-table.glade:254 -#: gnucash/gtkbuilder/dialog-totd.glade:56 -#: gnucash/gtkbuilder/gnc-plugin-page-budget.glade:736 -#: gnucash/import-export/aqb/dialog-ab.glade:43 -msgid "_Close" -msgstr "_Tutup" - -#: gnucash/gnome-utils/gnc-main-window.c:303 +#: gnucash/gnome-utils/gnc-main-window.c:306 msgid "Close the currently active page" msgstr "Tutup jendela yang sedang aktif" -#: gnucash/gnome-utils/gnc-main-window.c:308 +#: gnucash/gnome-utils/gnc-main-window.c:311 msgid "Quit this application" msgstr "Keluar dari aplikasi" -#: gnucash/gnome-utils/gnc-main-window.c:330 +#: gnucash/gnome-utils/gnc-main-window.c:333 msgid "Pr_eferences" msgstr "Pr_eferensi" -#: gnucash/gnome-utils/gnc-main-window.c:331 +#: gnucash/gnome-utils/gnc-main-window.c:334 msgid "Edit the global preferences of GnuCash" msgstr "Sunting preferensi global GnuCash" -#: gnucash/gnome-utils/gnc-main-window.c:339 +#: gnucash/gnome-utils/gnc-main-window.c:342 msgid "Select sorting criteria for this page view" msgstr "Pilih kriteria pengurutan untuk tampilan halaman ini" -#: gnucash/gnome-utils/gnc-main-window.c:343 +#: gnucash/gnome-utils/gnc-main-window.c:346 msgid "Select the account types that should be displayed." msgstr "Pilih tipe-tipe akun yang akan ditampilkan." -#: gnucash/gnome-utils/gnc-main-window.c:355 +#: gnucash/gnome-utils/gnc-main-window.c:358 msgid "Reset _Warnings..." msgstr "Setel Ulang _Peringatan..." -#: gnucash/gnome-utils/gnc-main-window.c:356 +#: gnucash/gnome-utils/gnc-main-window.c:359 msgid "Reset the state of all warning messages so they will be shown again." msgstr "" "Setel ulang status semua pesan peringatan sehingga mereka akan ditampilkan " "kembali." -#: gnucash/gnome-utils/gnc-main-window.c:360 +#: gnucash/gnome-utils/gnc-main-window.c:363 msgid "Re_name Page" msgstr "Ganti _Nama Halaman" -#: gnucash/gnome-utils/gnc-main-window.c:361 +#: gnucash/gnome-utils/gnc-main-window.c:364 msgid "Rename this page." msgstr "Ganti nama halaman ini." -#: gnucash/gnome-utils/gnc-main-window.c:368 +#: gnucash/gnome-utils/gnc-main-window.c:371 msgid "_New Window" msgstr "Je_ndela Baru" -#: gnucash/gnome-utils/gnc-main-window.c:369 +#: gnucash/gnome-utils/gnc-main-window.c:372 msgid "Open a new top-level GnuCash window." msgstr "Buka jendela tingkat-atas baru GnuCash." -#: gnucash/gnome-utils/gnc-main-window.c:373 +#: gnucash/gnome-utils/gnc-main-window.c:376 msgid "New Window with _Page" msgstr "Jendela Baru dengan _Halaman" -#: gnucash/gnome-utils/gnc-main-window.c:374 +#: gnucash/gnome-utils/gnc-main-window.c:377 msgid "Move the current page to a new top-level GnuCash window." msgstr "Pindahkan halaman saat ini ke jendela tingkat-atas GnuCash." -#: gnucash/gnome-utils/gnc-main-window.c:381 +#: gnucash/gnome-utils/gnc-main-window.c:384 msgid "Tutorial and Concepts _Guide" msgstr "Tutorial dan Panduan _Konsep" -#: gnucash/gnome-utils/gnc-main-window.c:382 +#: gnucash/gnome-utils/gnc-main-window.c:385 msgid "Open the GnuCash Tutorial" msgstr "Buka Tutorial GnuCash" -#: gnucash/gnome-utils/gnc-main-window.c:386 +#: gnucash/gnome-utils/gnc-main-window.c:389 msgid "_Contents" msgstr "_Isi" -#: gnucash/gnome-utils/gnc-main-window.c:387 +#: gnucash/gnome-utils/gnc-main-window.c:390 msgid "Open the GnuCash Help" msgstr "Buka Bantuan GnuCash" -#: gnucash/gnome-utils/gnc-main-window.c:391 +#: gnucash/gnome-utils/gnc-main-window.c:394 msgid "_About" msgstr "Tent_ang" -#: gnucash/gnome-utils/gnc-main-window.c:392 +#: gnucash/gnome-utils/gnc-main-window.c:395 msgid "About GnuCash" msgstr "Tent_ang GnuCash" -#: gnucash/gnome-utils/gnc-main-window.c:404 +#: gnucash/gnome-utils/gnc-main-window.c:407 msgid "_Toolbar" msgstr "Bilah Ala_t" -#: gnucash/gnome-utils/gnc-main-window.c:405 +#: gnucash/gnome-utils/gnc-main-window.c:408 msgid "Show/hide the toolbar on this window" msgstr "Tampilkan/sembunyikan bilah alat di jendela ini" -#: gnucash/gnome-utils/gnc-main-window.c:409 +#: gnucash/gnome-utils/gnc-main-window.c:412 msgid "Su_mmary Bar" msgstr "Bilah Ri_ngkasan" -#: gnucash/gnome-utils/gnc-main-window.c:410 +#: gnucash/gnome-utils/gnc-main-window.c:413 msgid "Show/hide the summary bar on this window" msgstr "Tampilkan/sembunyikan bilah ringkasan di jendela ini" -#: gnucash/gnome-utils/gnc-main-window.c:414 +#: gnucash/gnome-utils/gnc-main-window.c:417 msgid "Stat_us Bar" msgstr "Bilah Stat_us" -#: gnucash/gnome-utils/gnc-main-window.c:415 +#: gnucash/gnome-utils/gnc-main-window.c:418 msgid "Show/hide the status bar on this window" msgstr "Tampilkan/sembunyikan bilah status di jendela ini" -#: gnucash/gnome-utils/gnc-main-window.c:427 +#: gnucash/gnome-utils/gnc-main-window.c:430 msgid "Window _1" msgstr "Jendela _1" -#: gnucash/gnome-utils/gnc-main-window.c:428 +#: gnucash/gnome-utils/gnc-main-window.c:431 msgid "Window _2" msgstr "Jendela _2" -#: gnucash/gnome-utils/gnc-main-window.c:429 +#: gnucash/gnome-utils/gnc-main-window.c:432 msgid "Window _3" msgstr "Jendela _3" -#: gnucash/gnome-utils/gnc-main-window.c:430 +#: gnucash/gnome-utils/gnc-main-window.c:433 msgid "Window _4" msgstr "Jendela _4" -#: gnucash/gnome-utils/gnc-main-window.c:431 +#: gnucash/gnome-utils/gnc-main-window.c:434 msgid "Window _5" msgstr "Jendela _5" -#: gnucash/gnome-utils/gnc-main-window.c:432 +#: gnucash/gnome-utils/gnc-main-window.c:435 msgid "Window _6" msgstr "Jendela _6" -#: gnucash/gnome-utils/gnc-main-window.c:433 +#: gnucash/gnome-utils/gnc-main-window.c:436 msgid "Window _7" msgstr "Jendela _7" -#: gnucash/gnome-utils/gnc-main-window.c:434 +#: gnucash/gnome-utils/gnc-main-window.c:437 msgid "Window _8" msgstr "Jendela _8" -#: gnucash/gnome-utils/gnc-main-window.c:435 +#: gnucash/gnome-utils/gnc-main-window.c:438 msgid "Window _9" msgstr "Jendela _9" -#: gnucash/gnome-utils/gnc-main-window.c:436 +#: gnucash/gnome-utils/gnc-main-window.c:439 msgid "Window _0" msgstr "Jendela _0" -#: gnucash/gnome-utils/gnc-main-window.c:1239 +#: gnucash/gnome-utils/gnc-main-window.c:1253 #, c-format msgid "Save changes to file %s before closing?" msgstr "Simpan perubahan pada berkas %s sebelum ditutup?" -#: gnucash/gnome-utils/gnc-main-window.c:1242 +#: gnucash/gnome-utils/gnc-main-window.c:1256 #, c-format msgid "" "If you don't save, changes from the past %d hours and %d minutes will be " @@ -8753,7 +8813,7 @@ msgstr "" "Jika Anda tidak menyimpannya, perubahan dari %d jam dan %d menit sebelumnya " "akan dibuang." -#: gnucash/gnome-utils/gnc-main-window.c:1244 +#: gnucash/gnome-utils/gnc-main-window.c:1258 #, c-format msgid "" "If you don't save, changes from the past %d days and %d hours will be " @@ -8762,59 +8822,72 @@ msgstr "" "Jika Anda tidak menyimpannya, perubahan dari %d hari dan %d jam sebelumnya " "akan dibuang." -#: gnucash/gnome-utils/gnc-main-window.c:1292 +#: gnucash/gnome-utils/gnc-main-window.c:1306 msgid "Close _Without Saving" msgstr "Tutup _Tanpa Menyimpan" +#: gnucash/gnome-utils/gnc-main-window.c:1437 +msgid "This window is closing and will not be restored." +msgstr "Jendela ini sedang menutup dan tidak akan dikembalikan." + +#: gnucash/gnome-utils/gnc-main-window.c:1443 +msgid "Close Window?" +msgstr "Tutup Jendela?" + #. Translators: This string is shown in the window title if this #. document is, well, read-only. -#: gnucash/gnome-utils/gnc-main-window.c:1523 +#: gnucash/gnome-utils/gnc-main-window.c:1569 msgid "(read-only)" msgstr "(hanya-baca)" -#: gnucash/gnome-utils/gnc-main-window.c:1531 +#: gnucash/gnome-utils/gnc-main-window.c:1577 msgid "Unsaved Book" msgstr "Buku Belum Disimpan" -#: gnucash/gnome-utils/gnc-main-window.c:1691 +#: gnucash/gnome-utils/gnc-main-window.c:1737 msgid "Last modified on %a, %b %d, %Y at %I:%M %p" msgstr "Perubahan terakhir pada %a, %b %d, %Y jam %I:%M %p" #. Translators: This message appears in the status bar after opening the file. -#: gnucash/gnome-utils/gnc-main-window.c:1694 +#: gnucash/gnome-utils/gnc-main-window.c:1740 #, c-format msgid "File %s opened. %s" msgstr "Berkas %s dibuka. %s" -#: gnucash/gnome-utils/gnc-main-window.c:2778 +#: gnucash/gnome-utils/gnc-main-window.c:2793 +msgctxt "lower case key for short cut to 'Accounts'" +msgid "a" +msgstr "a" + +#: gnucash/gnome-utils/gnc-main-window.c:2883 msgid "Unable to save to database." msgstr "Tak dapat menyimpan ke basis data." -#: gnucash/gnome-utils/gnc-main-window.c:2780 +#: gnucash/gnome-utils/gnc-main-window.c:2885 msgid "Unable to save to database: Book is marked read-only." msgstr "Tak dapat menyimpan ke basis data: Buku ditandai hanya-baca." -#: gnucash/gnome-utils/gnc-main-window.c:4122 +#: gnucash/gnome-utils/gnc-main-window.c:4231 msgid "Book Options" msgstr "Opsi Buku" #. Translators: %s will be replaced with the current year -#: gnucash/gnome-utils/gnc-main-window.c:4507 +#: gnucash/gnome-utils/gnc-main-window.c:4616 #, c-format msgid "Copyright © 1997-%s The GnuCash contributors." msgstr "Hak Cipta © 1997-%s para kontributor GnuCash." -#: gnucash/gnome-utils/gnc-main-window.c:4519 +#: gnucash/gnome-utils/gnc-main-window.c:4628 #: gnucash/gnome-utils/gnc-splash.c:97 msgid "Version" msgstr "Versi" -#: gnucash/gnome-utils/gnc-main-window.c:4520 -#: gnucash/gnome-utils/gnc-splash.c:98 gnucash/gnucash-core-app.cpp:505 +#: gnucash/gnome-utils/gnc-main-window.c:4629 +#: gnucash/gnome-utils/gnc-splash.c:98 gnucash/gnucash-core-app.cpp:502 msgid "Build ID" msgstr "Build ID" -#: gnucash/gnome-utils/gnc-main-window.c:4528 +#: gnucash/gnome-utils/gnc-main-window.c:4637 msgid "Accounting for personal and small business finance." msgstr "Program akuntansi untuk mengelola keuangan personal dan usaha kecil." @@ -8822,11 +8895,11 @@ msgstr "Program akuntansi untuk mengelola keuangan personal dan usaha kecil." #. * Enter your name or that of your team and an email contact for feedback. #. * The string can have multiple rows, so you can also add a list of #. * contributors. -#: gnucash/gnome-utils/gnc-main-window.c:4537 +#: gnucash/gnome-utils/gnc-main-window.c:4646 msgid "translator-credits" msgstr "Triyan W. Nugroho , 2020" -#: gnucash/gnome-utils/gnc-main-window.c:4540 +#: gnucash/gnome-utils/gnc-main-window.c:4649 msgid "Visit the GnuCash website." msgstr "Kunjungi situs web GnuCash." @@ -8961,17 +9034,17 @@ msgstr "Seimbangkan secara _manual" #: gnucash/gnome-utils/gnc-tree-control-split-reg.c:289 #: gnucash/register/ledger-core/split-register-control.c:140 msgid "Let GnuCash _add an adjusting split" -msgstr "Izinkan GnuCash men_ambahkan sebuah pemecahan penyesuaian" +msgstr "Izinkan GnuCash men_ambahkan sebuah split penyesuaian" #: gnucash/gnome-utils/gnc-tree-control-split-reg.c:294 #: gnucash/register/ledger-core/split-register-control.c:145 msgid "Adjust current account _split total" -msgstr "_Sesuaikan total pemecahan akun saat ini" +msgstr "_Sesuaikan total split akun saat ini" #: gnucash/gnome-utils/gnc-tree-control-split-reg.c:300 #: gnucash/register/ledger-core/split-register-control.c:151 msgid "Adjust _other account split total" -msgstr "Sesuaikan t_otal pemecahan akun lain" +msgstr "Sesuaikan t_otal split akun lain" #: gnucash/gnome-utils/gnc-tree-control-split-reg.c:311 #: gnucash/register/ledger-core/split-register-control.c:162 @@ -8983,14 +9056,14 @@ msgstr "_Seimbangkan Ulang" #: gnucash/register/ledger-core/split-register-control.c:1312 #: gnucash/register/ledger-core/split-register-control.c:1325 msgid "This register does not support editing exchange rates." -msgstr "Register ini tidak mendukung penyuntingan kurs." +msgstr "Register ini tidak mendukung penyuntingan nilai tukar." #: gnucash/gnome-utils/gnc-tree-control-split-reg.c:421 #: gnucash/register/ledger-core/split-register-control.c:1366 #: gnucash/register/ledger-core/split-register-control.c:1441 msgid "" "You need to expand the transaction in order to modify its exchange rates." -msgstr "" +msgstr "Anda perlu mengekspansi transaksi untuk mengubah nilai tukarnya." #: gnucash/gnome-utils/gnc-tree-control-split-reg.c:461 #: gnucash/register/ledger-core/split-register-control.c:1413 @@ -9001,13 +9074,15 @@ msgstr "Kedua mata uang yang bersangkutan setara satu sama lain." #: gnucash/gnome-utils/gnc-tree-control-split-reg.c:1253 #: gnucash/register/ledger-core/split-register.c:515 msgid "New Split Information" -msgstr "Informasi Pemecahan Baru" +msgstr "Informasi Split Baru" #: gnucash/gnome-utils/gnc-tree-control-split-reg.c:1303 msgid "" "This is the split anchoring this transaction to the register. You can not " "duplicate it from this register window." msgstr "" +"Ini adalah split yang menghubungkan transaksi ini ke register. Anda tidak " +"dapat menduplikasinya dari jendela register ini." #: gnucash/gnome-utils/gnc-tree-control-split-reg.c:1357 #: gnucash/gnome-utils/gnc-tree-util-split-reg.c:477 @@ -9023,6 +9098,9 @@ msgid "" "Threshold\" set for this book. This setting can be changed in File-" ">Properties->Accounts." msgstr "" +"Tanggal yang dimasukkan pada transaksi yang diduplikasi lebih lama daripada " +"\"Ambang Batas Hanya-Baca\" yang disetel untuk buku ini. Pengaturan ini " +"dapat diubah di Berkas->Properti->Akun." #. Translators: This message will be presented when a user * #. * attempts to record a transaction without splits @@ -9045,9 +9123,8 @@ msgstr "_Kembali" #: gnucash/gnome-utils/gnc-tree-control-split-reg.c:1780 #: gnucash/register/ledger-core/split-register-control.c:1830 -#, fuzzy msgid "Mark split as unreconciled?" -msgstr "_Tandai" +msgstr "Tandai split sebagai tak direkonsiliasi?" #: gnucash/gnome-utils/gnc-tree-control-split-reg.c:1782 #: gnucash/register/ledger-core/split-register-control.c:1832 @@ -9055,38 +9132,46 @@ msgid "" "You are about to mark a reconciled split as unreconciled. Doing so might " "make future reconciliation difficult! Continue with this change?" msgstr "" +"Anda akan menandai sebuah split yang direkonsiliasi menjadi tak " +"direkonsiliasi. Hal itu mungkin akan menjadikan rekonsiliasi yang akan " +"datang menjadi sulit! Lanjutkan dengan perubahan ini?" #: gnucash/gnome-utils/gnc-tree-control-split-reg.c:1826 #: gnucash/register/ledger-core/split-register-control.c:1849 msgid "_Unreconcile" -msgstr "" +msgstr "Tak Direk_onsiliasi" #: gnucash/gnome-utils/gnc-tree-control-split-reg.c:1911 #: gnucash/register/ledger-core/split-register-model.c:2226 -#, fuzzy msgid "Change reconciled split?" -msgstr "pecah" +msgstr "Ubah split yang direkonsiliasi?" #: gnucash/gnome-utils/gnc-tree-control-split-reg.c:1913 msgid "" "You are about to change a reconciled split. Doing so might make future " "reconciliation difficult! Continue with this change?" msgstr "" +"Anda akan mengubah sebuah split yang direkonsiliasi. Hal itu mungkin akan " +"menjadikan rekonsiliasi yang akan datang menjadi sulit! Lanjutkan dengan " +"perubahan ini?" #: gnucash/gnome-utils/gnc-tree-control-split-reg.c:1918 msgid "Change split linked to a reconciled split?" -msgstr "" +msgstr "Ubah split yang tertaut ke sebuah split yang direkonsiliasi?" #: gnucash/gnome-utils/gnc-tree-control-split-reg.c:1920 msgid "" "You are about to change a split that is linked to a reconciled split. Doing " "so might make future reconciliation difficult! Continue with this change?" msgstr "" +"Anda akan mengubah sebuah split yang tertaut ke sebuah split yang " +"direkonsiliasi. Hal itu mungkin akan menjadikan rekonsiliasi yang akan " +"datang menjadi sulit! Lanjutkan dengan perubahan ini?" #: gnucash/gnome-utils/gnc-tree-control-split-reg.c:1934 #: gnucash/register/ledger-core/split-register-model.c:2250 msgid "Chan_ge Split" -msgstr "Simpa_n Pemecahan" +msgstr "Uba_h Split" #: gnucash/gnome-utils/gnc-tree-control-split-reg.c:1959 #: gnucash/register/ledger-core/gncEntryLedger.c:86 @@ -9097,51 +9182,45 @@ msgstr "Akun %s tidak ada. Apakah Anda ingin membuatnya?" #: gnucash/gnome-utils/gnc-tree-control-split-reg.c:2121 msgid "You can not paste from the general journal to a register." -msgstr "" +msgstr "Anda tidak dapat menempel dari jurnal umum ke register." -#: gnucash/gnome-utils/gnc-tree-model-account.c:753 +#: gnucash/gnome-utils/gnc-tree-model-account.c:754 msgid "New top level account" msgstr "Akun tingkat atas baru" #: gnucash/gnome-utils/gnc-tree-model-split-reg.c:2855 #: gnucash/register/ledger-core/split-register.c:2620 -#, fuzzy msgctxt "Action Column" msgid "Deposit" -msgstr "aksi: deposito" +msgstr "Setoran" #: gnucash/gnome-utils/gnc-tree-model-split-reg.c:2856 #: gnucash/register/ledger-core/split-register.c:2621 -#, fuzzy msgid "Withdraw" -msgstr "penarikan" +msgstr "Penarikan" #: gnucash/gnome-utils/gnc-tree-model-split-reg.c:2857 #: gnucash/register/ledger-core/split-register.c:2622 -#, fuzzy msgid "Check" -msgstr "Centang" +msgstr "Cek" #: gnucash/gnome-utils/gnc-tree-model-split-reg.c:2859 #: gnucash/gnome-utils/gnc-tree-model-split-reg.c:2890 #: gnucash/register/ledger-core/split-register.c:2624 #: gnucash/register/ledger-core/split-register.c:2655 -#, fuzzy msgid "ATM Deposit" -msgstr "aksi: ATM" +msgstr "Setoran ATM" #: gnucash/gnome-utils/gnc-tree-model-split-reg.c:2860 #: gnucash/register/ledger-core/split-register.c:2625 #: gnucash/register/ledger-core/split-register.c:2656 -#, fuzzy msgid "ATM Draw" -msgstr "aksi: ATM" +msgstr "Penarikan ATM" #: gnucash/gnome-utils/gnc-tree-model-split-reg.c:2861 #: gnucash/register/ledger-core/split-register.c:2626 -#, fuzzy msgid "Teller" -msgstr "aksi: Kasir" +msgstr "Kasir" #: gnucash/gnome-utils/gnc-tree-model-split-reg.c:2862 #: gnucash/gnome-utils/gnc-tree-view-split-reg.c:2970 @@ -9150,10 +9229,9 @@ msgstr "aksi: Kasir" #: gnucash/register/ledger-core/gncEntryLedgerModel.c:529 #: gnucash/register/ledger-core/gncEntryLedgerModel.c:1093 #: gnucash/register/ledger-core/split-register.c:2627 -#: libgnucash/engine/Account.cpp:150 libgnucash/engine/Account.cpp:164 -#, fuzzy +#: libgnucash/engine/Account.cpp:151 libgnucash/engine/Account.cpp:165 msgid "Charge" -msgstr "Kiat-kiat seperti \"Jangan biarkan muatan baterai terlalu rendah\"." +msgstr "Biaya" #: gnucash/gnome-utils/gnc-tree-model-split-reg.c:2864 #: gnucash/register/ledger-core/split-register.c:2629 @@ -9161,9 +9239,8 @@ msgstr "Kiat-kiat seperti \"Jangan biarkan muatan baterai terlalu rendah\"." #: gnucash/report/reports/standard/receipt.scm:210 #: gnucash/report/reports/support/receipt.eguile.scm:278 #: gnucash/report/reports/support/receipt.eguile.scm:285 -#, fuzzy msgid "Receipt" -msgstr "Kirim nota pesan diterima ke “%s”" +msgstr "Kuitansi" #: gnucash/gnome-utils/gnc-tree-model-split-reg.c:2865 #: gnucash/gnome-utils/gnc-tree-model-split-reg.c:2879 @@ -9177,11 +9254,10 @@ msgstr "Kirim nota pesan diterima ke “%s”" #: gnucash/register/ledger-core/split-register.c:2680 #: gnucash/register/ledger-core/split-register.c:2691 #: gnucash/register/ledger-core/split-register.c:2723 -#: libgnucash/engine/Account.cpp:145 libgnucash/engine/Account.cpp:166 -#: libgnucash/engine/Account.cpp:174 libgnucash/engine/Account.cpp:175 -#, fuzzy +#: libgnucash/engine/Account.cpp:146 libgnucash/engine/Account.cpp:167 +#: libgnucash/engine/Account.cpp:175 libgnucash/engine/Account.cpp:176 msgid "Increase" -msgstr "Perbesar ukuran teks" +msgstr "Tambah" #: gnucash/gnome-utils/gnc-tree-model-split-reg.c:2866 #: gnucash/gnome-utils/gnc-tree-model-split-reg.c:2880 @@ -9195,11 +9271,10 @@ msgstr "Perbesar ukuran teks" #: gnucash/register/ledger-core/split-register.c:2681 #: gnucash/register/ledger-core/split-register.c:2692 #: gnucash/register/ledger-core/split-register.c:2724 -#: libgnucash/engine/Account.cpp:146 libgnucash/engine/Account.cpp:154 -#: libgnucash/engine/Account.cpp:155 libgnucash/engine/Account.cpp:165 -#, fuzzy +#: libgnucash/engine/Account.cpp:147 libgnucash/engine/Account.cpp:155 +#: libgnucash/engine/Account.cpp:156 libgnucash/engine/Account.cpp:166 msgid "Decrease" -msgstr "Perkecil ukuran teks" +msgstr "Kurang" #: gnucash/gnome-utils/gnc-tree-model-split-reg.c:2868 #: gnucash/register/ledger-core/split-register.c:2633 @@ -9234,9 +9309,8 @@ msgstr "Deposit Otomatis" #: gnucash/gnome-utils/gnc-tree-model-split-reg.c:2873 #: gnucash/register/ledger-core/split-register.c:2638 -#, fuzzy msgid "Wire" -msgstr "Tambahkan outline kawat untuk semua geometri" +msgstr "Kawat" #: gnucash/gnome-utils/gnc-tree-model-split-reg.c:2875 #: gnucash/register/ledger-core/split-register.c:2640 @@ -9261,8 +9335,8 @@ msgstr "Penarikan Langsung" #: gnucash/register/ledger-core/split-register.c:2693 #: gnucash/register/ledger-core/split-register.c:2698 #: gnucash/register/ledger-core/split-register.c:2725 -#: libgnucash/engine/Account.cpp:147 libgnucash/engine/Account.cpp:148 -#: libgnucash/engine/Account.cpp:149 +#: libgnucash/engine/Account.cpp:148 libgnucash/engine/Account.cpp:149 +#: libgnucash/engine/Account.cpp:150 msgid "Buy" msgstr "Beli" @@ -9284,8 +9358,8 @@ msgstr "Beli" #: gnucash/register/ledger-core/split-register.c:2694 #: gnucash/register/ledger-core/split-register.c:2699 #: gnucash/register/ledger-core/split-register.c:2726 -#: libgnucash/engine/Account.cpp:167 libgnucash/engine/Account.cpp:168 -#: libgnucash/engine/Account.cpp:169 +#: libgnucash/engine/Account.cpp:168 libgnucash/engine/Account.cpp:169 +#: libgnucash/engine/Account.cpp:170 msgid "Sell" msgstr "Jual" @@ -9305,23 +9379,23 @@ msgstr "Penarikan ATM" #: gnucash/gnome-utils/gnc-tree-model-split-reg.c:2921 #: gnucash/gnome-utils/gnc-tree-view-split-reg.c:2981 #: gnucash/register/ledger-core/split-register.c:2686 -#: libgnucash/engine/Account.cpp:171 +#: libgnucash/engine/Account.cpp:172 msgid "Rebate" msgstr "Potongan" #: gnucash/gnome-utils/gnc-tree-model-split-reg.c:2922 #: gnucash/register/ledger-core/split-register.c:2687 msgid "Paycheck" -msgstr "" +msgstr "Gaji" #: gnucash/gnome-utils/gnc-tree-model-split-reg.c:2935 #: gnucash/import-export/qif-imp/qif-dialog-utils.scm:72 #: gnucash/import-export/qif-imp/qif-dialog-utils.scm:76 #: gnucash/register/ledger-core/split-register.c:2700 -#: gnucash/report/reports/standard/balance-sheet.scm:502 +#: gnucash/report/reports/standard/balance-sheet.scm:503 #: gnucash/report/reports/standard/balsheet-pnl.scm:1099 -#: gnucash/report/reports/standard/budget-balance-sheet.scm:723 -#: libgnucash/app-utils/gnc-ui-util.c:1017 libgnucash/engine/Account.cpp:4324 +#: gnucash/report/reports/standard/budget-balance-sheet.scm:724 +#: libgnucash/app-utils/gnc-ui-util.c:1044 libgnucash/engine/Account.cpp:4371 msgid "Equity" msgstr "Ekuitas" @@ -9342,7 +9416,7 @@ msgstr "Ekuitas" #: gnucash/report/reports/standard/price-scatter.scm:312 #: gnucash/report/reports/standard/price-scatter.scm:326 #: gnucash/report/reports/standard/register.scm:150 -#: gnucash/report/reports/standard/register.scm:422 +#: gnucash/report/reports/standard/register.scm:393 #: gnucash/report/trep-engine.scm:955 gnucash/report/trep-engine.scm:1079 #: gnucash/report/trep-engine.scm:1262 msgid "Price" @@ -9351,43 +9425,39 @@ msgstr "Harga" #: gnucash/gnome-utils/gnc-tree-model-split-reg.c:2945 #: gnucash/register/ledger-core/split-register.c:2710 msgid "Dividend" -msgstr "" +msgstr "Dividen" #: gnucash/gnome-utils/gnc-tree-model-split-reg.c:2948 #: gnucash/register/ledger-core/split-register.c:2713 msgid "LTCG" -msgstr "" +msgstr "LTCG" #: gnucash/gnome-utils/gnc-tree-model-split-reg.c:2950 #: gnucash/register/ledger-core/split-register.c:2715 msgid "STCG" -msgstr "" +msgstr "STCG" #: gnucash/gnome-utils/gnc-tree-model-split-reg.c:2953 #: gnucash/register/ledger-core/split-register.c:2718 -#, fuzzy msgid "Dist" -msgstr "aksi: distribusi" +msgstr "Dist" #: gnucash/gnome-utils/gnc-tree-util-split-reg.c:45 -#: gnucash/import-export/import-main-matcher.c:1344 -#: gnucash/report/reports/standard/register.scm:229 +#: gnucash/import-export/import-main-matcher.c:1395 +#: gnucash/report/reports/standard/register.scm:218 #: libgnucash/engine/Split.c:1592 libgnucash/engine/Split.c:1609 -#, fuzzy msgid "-- Split Transaction --" -msgstr "transaksi" +msgstr "-- Transaksi Split --" #: gnucash/gnome-utils/gnc-tree-util-split-reg.c:46 -#, fuzzy msgid "-- Stock Split --" -msgstr "pecah" +msgstr "-- Split Saham --" #. Translators: This is a date format, see i.e. #. https://www.gnu.org/software/libc/manual/html_node/Formatting-Calendar-Time.html #: gnucash/gnome-utils/gnc-tree-util-split-reg.c:436 #: gnucash/register/ledger-core/gncEntryLedgerModel.c:576 #: gnucash/register/ledger-core/split-register-model.c:1000 -#, fuzzy msgid "%A %d %B %Y" msgstr "%A %d %B %Y" @@ -9397,18 +9467,22 @@ msgid "" "Threshold\" set for this book. This setting can be changed in File-" ">Properties->Accounts." msgstr "" +"Tanggal yang dimasukkan pada transaksi baru lebih lama daripada \"Ambang " +"Batas Hanya-Baca\" yang disetel untuk buku ini. Pengaturan ini dapat diubah " +"di Berkas->Properti->Akun." #: gnucash/gnome-utils/gnc-tree-util-split-reg.c:861 msgid "" "Exchange Rate Canceled, using existing rate or default 1 to 1 rate if this " "is a new transaction." msgstr "" +"Nilai Tukar Dibatalkan, menggunakan nilai tukar yang telah ada atau nilai " +"tukar baku 1 ke 1 jika ini adalah transaksi baru." #: gnucash/gnome-utils/gnc-tree-util-split-reg.c:1122 #: gnucash/register/ledger-core/split-register.c:2081 -#, fuzzy msgid "Recalculate Transaction" -msgstr "transaksi" +msgstr "Hitung Ulang Transaksi" #: gnucash/gnome-utils/gnc-tree-util-split-reg.c:1123 #: gnucash/register/ledger-core/split-register.c:2082 @@ -9416,15 +9490,16 @@ msgid "" "The values entered for this transaction are inconsistent. Which value would " "you like to have recalculated?" msgstr "" +"Nilai yang dimasukkan untuk transaksi ini tidak konsisten. Nilai yang mana " +"yang Anda inginkan untuk dihitung ulang?" #: gnucash/gnome-utils/gnc-tree-util-split-reg.c:1130 #: gnucash/gnome-utils/gnc-tree-util-split-reg.c:1132 #: gnucash/gtkbuilder/assistant-stock-split.glade:137 #: gnucash/register/ledger-core/split-register.c:2088 #: gnucash/register/ledger-core/split-register.c:2091 -#, fuzzy msgid "_Shares" -msgstr "saham" +msgstr "_Saham" #: gnucash/gnome-utils/gnc-tree-util-split-reg.c:1130 #: gnucash/gnome-utils/gnc-tree-util-split-reg.c:1137 @@ -9448,26 +9523,26 @@ msgstr "_Nilai" msgid "_Recalculate" msgstr "_Hitung Ulang" -#: gnucash/gnome-utils/gnc-tree-view-account.c:782 +#: gnucash/gnome-utils/gnc-tree-view-account.c:805 #: gnucash/gtkbuilder/assistant-csv-trans-import.glade:1005 #: gnucash/import-export/csv-exp/csv-transactions-export.c:613 #: gnucash/import-export/csv-exp/csv-transactions-export.c:627 #: gnucash/report/reports/locale-specific/de_DE/taxtxf.scm:291 #: gnucash/report/reports/standard/general-ledger.scm:72 #: gnucash/report/reports/standard/general-ledger.scm:92 -#: gnucash/report/reports/standard/trial-balance.scm:598 +#: gnucash/report/reports/standard/trial-balance.scm:599 #: gnucash/report/trep-engine.scm:147 gnucash/report/trep-engine.scm:981 #: gnucash/report/trep-engine.scm:1074 msgid "Account Name" msgstr "Nama Akun" -#: gnucash/gnome-utils/gnc-tree-view-account.c:793 +#: gnucash/gnome-utils/gnc-tree-view-account.c:816 #: gnucash/gnome-utils/gnc-tree-view-split-reg.c:2916 #: gnucash/gtkbuilder/dialog-price.glade:574 msgid "Commodity" msgstr "Komoditas" -#: gnucash/gnome-utils/gnc-tree-view-account.c:799 +#: gnucash/gnome-utils/gnc-tree-view-account.c:822 #: gnucash/report/options-utilities.scm:197 #: gnucash/report/reports/standard/account-summary.scm:115 #: gnucash/report/reports/standard/general-ledger.scm:74 @@ -9477,127 +9552,122 @@ msgstr "Komoditas" msgid "Account Code" msgstr "Kode Akun" -#: gnucash/gnome-utils/gnc-tree-view-account.c:811 -#, fuzzy +#: gnucash/gnome-utils/gnc-tree-view-account.c:834 msgid "Last Num" -msgstr "%A yang lalu" +msgstr "Num Terakhir" -#: gnucash/gnome-utils/gnc-tree-view-account.c:817 -#, fuzzy +#: gnucash/gnome-utils/gnc-tree-view-account.c:840 msgid "Present" -msgstr "Sajikan" +msgstr "Sekarang" -#: gnucash/gnome-utils/gnc-tree-view-account.c:824 -#, fuzzy +#: gnucash/gnome-utils/gnc-tree-view-account.c:847 msgid "Present (Report)" -msgstr "Lapo_rkan" +msgstr "Sekarang (Laporan)" -#: gnucash/gnome-utils/gnc-tree-view-account.c:838 -#, fuzzy +#: gnucash/gnome-utils/gnc-tree-view-account.c:861 msgid "Balance (Report)" -msgstr "neraca saldo" +msgstr "Saldo (Laporan)" -#: gnucash/gnome-utils/gnc-tree-view-account.c:845 -#, fuzzy +#: gnucash/gnome-utils/gnc-tree-view-account.c:868 msgid "Balance (Period)" -msgstr "_Periode:" +msgstr "Saldo (Periode)" -#: gnucash/gnome-utils/gnc-tree-view-account.c:859 -#, fuzzy +#: gnucash/gnome-utils/gnc-tree-view-account.c:882 msgid "Cleared (Report)" -msgstr "Lapo_rkan" +msgstr "Klir (Laporan)" -#: gnucash/gnome-utils/gnc-tree-view-account.c:873 -#, fuzzy +#: gnucash/gnome-utils/gnc-tree-view-account.c:896 msgid "Reconciled (Report)" -msgstr "Lapo_rkan" +msgstr "Direkonsiliasi (Laporan)" -#: gnucash/gnome-utils/gnc-tree-view-account.c:880 -#, fuzzy +#: gnucash/gnome-utils/gnc-tree-view-account.c:903 msgid "Last Reconcile Date" -msgstr "penarikan" +msgstr "Tanggal Rekonsiliasi Terakhir" -#: gnucash/gnome-utils/gnc-tree-view-account.c:886 +#: gnucash/gnome-utils/gnc-tree-view-account.c:909 msgid "Future Minimum" msgstr "Minimum yang Akan Datang" -#: gnucash/gnome-utils/gnc-tree-view-account.c:893 +#: gnucash/gnome-utils/gnc-tree-view-account.c:916 msgid "Future Minimum (Report)" msgstr "Minimum yang Akan Datang (Laporan)" -#: gnucash/gnome-utils/gnc-tree-view-account.c:907 +#: gnucash/gnome-utils/gnc-tree-view-account.c:930 msgid "Total (Report)" msgstr "Total (Laporan)" -#: gnucash/gnome-utils/gnc-tree-view-account.c:914 +#: gnucash/gnome-utils/gnc-tree-view-account.c:937 msgid "Total (Period)" msgstr "Total (Periode)" -#: gnucash/gnome-utils/gnc-tree-view-account.c:923 +#: gnucash/gnome-utils/gnc-tree-view-account.c:946 msgctxt "Column header for 'Color'" msgid "C" msgstr "W" -#: gnucash/gnome-utils/gnc-tree-view-account.c:931 -#: gnucash/gnome-utils/gnc-tree-view-account.c:934 +#: gnucash/gnome-utils/gnc-tree-view-account.c:954 +#: gnucash/gnome-utils/gnc-tree-view-account.c:957 msgid "Account Color" msgstr "Warna Akun" -#: gnucash/gnome-utils/gnc-tree-view-account.c:944 +#: gnucash/gnome-utils/gnc-tree-view-account.c:967 msgid "Tax Info" msgstr "Informas Pajak" -#: gnucash/gnome-utils/gnc-tree-view-account.c:958 +#: gnucash/gnome-utils/gnc-tree-view-account.c:981 msgctxt "Column header for 'Hidden'" msgid "H" msgstr "S" +#: gnucash/gnome-utils/gnc-tree-view-account.c:997 +msgctxt "Column header for 'Opening Balance'" +msgid "O" +msgstr "O" + #. Translators: %s is a currency mnemonic. -#: gnucash/gnome-utils/gnc-tree-view-account.c:1787 -#, fuzzy, c-format +#: gnucash/gnome-utils/gnc-tree-view-account.c:1818 +#, c-format msgid "Present (%s)" -msgstr "Dipresentasi Pada" +msgstr "Sekarang (%s)" #. Translators: %s is a currency mnemonic. -#: gnucash/gnome-utils/gnc-tree-view-account.c:1790 +#: gnucash/gnome-utils/gnc-tree-view-account.c:1821 #: gnucash/gnome-utils/gnc-tree-view-owner.c:924 -#, fuzzy, c-format +#, c-format msgid "Balance (%s)" -msgstr "seimbangkan" +msgstr "Saldo (%s)" #. Translators: %s is a currency mnemonic. -#: gnucash/gnome-utils/gnc-tree-view-account.c:1793 -#, fuzzy, c-format +#: gnucash/gnome-utils/gnc-tree-view-account.c:1824 +#, c-format msgid "Cleared (%s)" -msgstr "Senarai ubah dibersihkan" +msgstr "Klir (%s)" #. Translators: %s is a currency mnemonic. -#: gnucash/gnome-utils/gnc-tree-view-account.c:1796 -#, fuzzy, c-format +#: gnucash/gnome-utils/gnc-tree-view-account.c:1827 +#, c-format msgid "Reconciled (%s)" -msgstr "status transaksi: rekonsiliasi" +msgstr "Direkonsiliasi (%s)" #. Translators: %s is a currency mnemonic. -#: gnucash/gnome-utils/gnc-tree-view-account.c:1799 +#: gnucash/gnome-utils/gnc-tree-view-account.c:1830 #, c-format msgid "Future Minimum (%s)" msgstr "Minimum yang Akan Datang (%s)" #. Translators: %s is a currency mnemonic. -#: gnucash/gnome-utils/gnc-tree-view-account.c:1802 -#, fuzzy, c-format +#: gnucash/gnome-utils/gnc-tree-view-account.c:1833 +#, c-format msgid "Total (%s)" -msgstr "Total %s" +msgstr "Total (%s)" #: gnucash/gnome-utils/gnc-tree-view-commodity.c:357 -#, fuzzy msgid "Namespace" -msgstr "Namespace:" +msgstr "Namespace" #: gnucash/gnome-utils/gnc-tree-view-commodity.c:374 -#, fuzzy msgid "Print Name" -msgstr "Untuk mencetak:" +msgstr "Cetak Nama" #: gnucash/gnome-utils/gnc-tree-view-commodity.c:380 msgid "Display symbol" @@ -9611,7 +9681,7 @@ msgstr "Nama Unik" #. National Securities Identifying Number. #: gnucash/gnome-utils/gnc-tree-view-commodity.c:393 msgid "ISIN/CUSIP" -msgstr "" +msgstr "ISIN/CUSIP" #: gnucash/gnome-utils/gnc-tree-view-commodity.c:399 msgid "Fraction" @@ -9622,7 +9692,6 @@ msgid "Get Quotes" msgstr "Dapatkan Harga Penawaran" #: gnucash/gnome-utils/gnc-tree-view-commodity.c:407 -#, fuzzy msgctxt "Column letter for 'Get Quotes'" msgid "Q" msgstr "Q" @@ -9630,20 +9699,17 @@ msgstr "Q" #: gnucash/gnome-utils/gnc-tree-view-commodity.c:413 #: gnucash/gnome-utils/gnc-tree-view-price.c:414 #: gnucash/gtkbuilder/dialog-price.glade:646 -#, fuzzy msgid "Source" msgstr "Sumber" #: gnucash/gnome-utils/gnc-tree-view-commodity.c:418 -#, fuzzy msgid "Timezone" -msgstr "Zona waktu" +msgstr "Zona Waktu" #: gnucash/gnome-utils/gnc-tree-view-owner.c:353 #: gnucash/gtkbuilder/dialog-customer.glade:132 -#, fuzzy msgid "Customer Number" -msgstr "Nasabah Kunci" +msgstr "Nomor Pelanggan" #: gnucash/gnome-utils/gnc-tree-view-owner.c:361 #: gnucash/gtkbuilder/dialog-vendor.glade:133 @@ -9659,7 +9725,7 @@ msgstr "Nomor Pegawai" #: gnucash/report/reports/aging.scm:47 gnucash/report/reports/aging.scm:681 #: gnucash/report/reports/standard/new-aging.scm:51 msgid "Address Name" -msgstr "" +msgstr "Nama Alamat" #: gnucash/gnome-utils/gnc-tree-view-owner.c:422 #: gnucash/import-export/customer-import/dialog-customer-import-gui.c:131 @@ -9731,7 +9797,7 @@ msgstr "Bilah Status" #: gnucash/gnome-utils/gnc-tree-view-split-reg.c:1247 #: gnucash/report/reports/standard/balsheet-eg.scm:386 -#: libgnucash/engine/Scrub.c:392 +#: libgnucash/engine/Scrub.c:407 msgid "Imbalance" msgstr "Tak-seimbang" @@ -9791,7 +9857,7 @@ msgstr "Referensi / Aksi" #: gnucash/gnome-utils/gnc-tree-view-split-reg.c:2767 msgid "T-Number" -msgstr "" +msgstr "Nomor-T" #: gnucash/gnome-utils/gnc-tree-view-split-reg.c:2773 msgid "Number / Action" @@ -9812,14 +9878,12 @@ msgstr "Deskripsi / Catatan / Memo" #: gnucash/gnome-utils/gnc-tree-view-split-reg.c:2848 #: gnucash/import-export/csv-exp/csv-transactions-export.c:625 #: gnucash/import-export/csv-imp/gnc-imp-props-tx.cpp:63 -#, fuzzy msgid "Void Reason" -msgstr "Alasan:" +msgstr "Alasan Dibatalkan" #: gnucash/gnome-utils/gnc-tree-view-split-reg.c:2852 -#, fuzzy msgid "Accounts / Void Reason" -msgstr "Akun" +msgstr "Akun / Alasan Dibatalkan" #: gnucash/gnome-utils/gnc-tree-view-split-reg.c:2862 msgid "R" @@ -9831,19 +9895,19 @@ msgstr "Jumlah / Nilai" #: gnucash/gnome-utils/gnc-tree-view-split-reg.c:2948 #: gnucash/import-export/csv-imp/gnc-imp-props-tx.cpp:67 -#: libgnucash/engine/Account.cpp:162 +#: libgnucash/engine/Account.cpp:163 msgid "Withdrawal" msgstr "Penarikan" #: gnucash/gnome-utils/gnc-tree-view-split-reg.c:2953 -#: libgnucash/engine/Account.cpp:163 +#: libgnucash/engine/Account.cpp:164 msgid "Spend" -msgstr "" +msgstr "Pembelanjaan" #: gnucash/gnome-utils/gnc-tree-view-split-reg.c:3003 #: gnucash/gnome-utils/gnc-tree-view-split-reg.c:3010 #: gnucash/report/reports/standard/reconcile-report.scm:89 -#: libgnucash/engine/Account.cpp:161 +#: libgnucash/engine/Account.cpp:162 msgid "Funds Out" msgstr "Dana Keluar" @@ -9854,15 +9918,14 @@ msgstr "Rumus Kredit" #: gnucash/gnome-utils/gnc-tree-view-split-reg.c:3033 #: gnucash/import-export/csv-imp/gnc-imp-props-tx.cpp:66 -#: libgnucash/engine/Account.cpp:142 +#: libgnucash/engine/Account.cpp:143 msgid "Deposit" msgstr "Deposito" #: gnucash/gnome-utils/gnc-tree-view-split-reg.c:3038 -#: libgnucash/engine/Account.cpp:143 -#, fuzzy +#: libgnucash/engine/Account.cpp:144 msgid "Receive" -msgstr "Siap untuk Menerima Berkas" +msgstr "Penerimaan" #: gnucash/gnome-utils/gnc-tree-view-split-reg.c:3061 #: gnucash/report/reports/standard/balsheet-pnl.scm:1268 @@ -9870,7 +9933,7 @@ msgstr "Siap untuk Menerima Berkas" #: gnucash/report/reports/standard/customer-summary.scm:326 #: gnucash/report/reports/standard/net-charts.scm:371 #: gnucash/report/reports/standard/net-charts.scm:420 -#: libgnucash/engine/Account.cpp:151 libgnucash/engine/Account.cpp:4323 +#: libgnucash/engine/Account.cpp:152 libgnucash/engine/Account.cpp:4370 #: libgnucash/engine/gncInvoice.c:1084 msgid "Expense" msgstr "Pengeluaran" @@ -9878,7 +9941,7 @@ msgstr "Pengeluaran" #: gnucash/gnome-utils/gnc-tree-view-split-reg.c:3084 #: gnucash/gnome-utils/gnc-tree-view-split-reg.c:3091 #: gnucash/report/reports/standard/reconcile-report.scm:86 -#: libgnucash/engine/Account.cpp:141 +#: libgnucash/engine/Account.cpp:142 msgid "Funds In" msgstr "Dana Masuk" @@ -9921,7 +9984,7 @@ msgstr "Masukkan catatan transaksi" #: gnucash/gnome-utils/gnc-tree-view-split-reg.c:3215 #: gnucash/register/ledger-core/split-register-model.c:1330 msgid "Enter a description of the split" -msgstr "Masukkan deskripsi pemecahan" +msgstr "Masukkan deskripsi split" #: gnucash/gnome-utils/gnc-tree-view-split-reg.c:3202 #: gnucash/register/ledger-core/split-register-model.c:1135 @@ -9989,7 +10052,7 @@ msgstr "Masukkan rumus debit untuk transaksi sesungguhnya" #: gnucash/gnome-utils/gnc-tree-view-sx-list.c:140 #: gnucash/gtkbuilder/dialog-sx.glade:1041 -#: gnucash/report/html-utilities.scm:268 +#: gnucash/report/html-utilities.scm:292 msgid "Enabled" msgstr "Diaktifkan" @@ -10000,11 +10063,11 @@ msgstr "E" #: gnucash/gnome-utils/gnc-tree-view-sx-list.c:152 msgid "Last Occur" -msgstr "" +msgstr "Terjadi Terakhir" #: gnucash/gnome-utils/gnc-tree-view-sx-list.c:157 msgid "Next Occur" -msgstr "" +msgstr "Terjadi Berikutnya" #: gnucash/gnome-utils/window-main-summarybar.c:306 #, c-format @@ -10014,12 +10077,12 @@ msgstr "%s, Total:" #: gnucash/gnome-utils/window-main-summarybar.c:309 #, c-format msgid "%s, Non Currency Commodities Total:" -msgstr "" +msgstr "%s, Total Komoditas Bukan Mata Uang:" #: gnucash/gnome-utils/window-main-summarybar.c:312 -#, fuzzy, c-format +#, c-format msgid "%s, Grand Total:" -msgstr "Total %s" +msgstr "%s, Total Keseluruhan:" #: gnucash/gnome-utils/window-main-summarybar.c:316 #, c-format @@ -10032,7 +10095,7 @@ msgstr "Aset Bersih:" #: gnucash/gnome-utils/window-main-summarybar.c:422 msgid "Profits:" -msgstr "Keuntungan:" +msgstr "Laba:" #: gnucash/gnucash-cli.cpp:91 msgid "Price Quotes Retrieval Options" @@ -10049,19 +10112,18 @@ msgstr "" "Jalankan perintah yang berhubungan dengan harga penawaran. Saat ini hanya " "satu perintah yang didukung.\n" "\n" -" get: \tDapatkan harga saat ini untuk semua mata uang asing dan saham pada " +" get: Dapatkan harga saat ini untuk semua mata uang asing dan saham pada " "berkas data GnuCash.\n" #: gnucash/gnucash-cli.cpp:97 msgid "" "Regular expression determining which namespace commodities will be retrieved " "for" -msgstr "" +msgstr "Ekspresi reguler yang menentukan komoditas namespace yang akan diambil" #: gnucash/gnucash-cli.cpp:101 -#, fuzzy msgid "Report Generation Options" -msgstr "Lapo_rkan" +msgstr "Opsi Pembuatan Laporan" #: gnucash/gnucash-cli.cpp:104 msgid "" @@ -10072,48 +10134,45 @@ msgid "" "be specified to describe some saved options.\n" " run: \tRun the named report in the given GnuCash datafile.\n" msgstr "" +"Jalankan perintah-perintah terkait laporan. Perintah berikut didukung.\n" +"\n" +" list: Tampilkan daftar laporan yang tersedia.\n" +" show: Menjelaskan opsi-opsi yang diubah pada laporan. Sebuah berkas data " +"perlu ditentukan untuk menjelaskan beberapa opsi tersimpan.\n" +" run: Menjalankan laporan pada berkas data GnuCash yang diberikan.\n" #: gnucash/gnucash-cli.cpp:110 -#, fuzzy msgid "Name of the report to run\n" -msgstr "Jalankan Dengan…" +msgstr "Nama laporan yang akan dijalankan\n" #: gnucash/gnucash-cli.cpp:112 -#, fuzzy msgid "Specify export type\n" -msgstr "Ekspor" +msgstr "Tentukan tipe ekspor\n" #: gnucash/gnucash-cli.cpp:114 -#, fuzzy msgid "Output file for report\n" -msgstr "BERKAS-FONTA BERKAS-KELUARAN" +msgstr "Berkas keluaran untuk laporan\n" #: gnucash/gnucash-cli.cpp:129 msgid "Unknown quotes command '{1}'" -msgstr "" +msgstr "Perintah kutipan tak diketahui '{1}'" #: gnucash/gnucash-cli.cpp:136 gnucash/gnucash-cli.cpp:150 #: gnucash/gnucash.cpp:364 -#, fuzzy msgid "Missing data file parameter" -msgstr "Digest hilang dari data yang diamplopkan" +msgstr "Parameter berkas data tidak ada" #: gnucash/gnucash-cli.cpp:174 -#, fuzzy msgid "Missing --name parameter" -msgstr "PARAMETER" +msgstr "Parameter --name tidak ada" #: gnucash/gnucash-cli.cpp:182 -#, fuzzy msgid "Unknown report command '{1}'" -msgstr "" -"Perintah tidak dikenal %s\n" -"\n" +msgstr "Perintah laporan tak diketahui '{1}'" #: gnucash/gnucash-cli.cpp:188 -#, fuzzy msgid "Missing command or option" -msgstr "Opsi baris perintah salah." +msgstr "Perintah atau opsi tidak ada" #: gnucash/gnucash-commands.cpp:91 msgid "No quotes retrieved. Finance::Quote isn't installed properly." @@ -10122,104 +10181,98 @@ msgstr "" "benar." #: gnucash/gnucash-core-app.cpp:85 -#, fuzzy msgid "This is a development version. It may or may not work." msgstr "" -"Sistem mungkin berjalan tidak sempurna apabila entri ini diubah atau dihapus." +"Ini adalah versi pengembangan. Ada kemungkinan ini tidak bekerja dengan baik." #: gnucash/gnucash-core-app.cpp:86 msgid "Report bugs and other problems to gnucash-devel@gnucash.org" -msgstr "" +msgstr "Laporkan kutu dan permasalahan lain ke gnucash-devel@gnucash.org" #. Translators: {1} will be replaced with a URL #: gnucash/gnucash-core-app.cpp:88 msgid "You can also lookup and file bug reports at {1}" -msgstr "" +msgstr "Anda juga bisa melihat dan membuat laporan kutu di {1}" #. Translators: {1} will be replaced with a URL #: gnucash/gnucash-core-app.cpp:90 msgid "To find the last stable version, please refer to {1}" -msgstr "" +msgstr "Untuk mendapatkan versi stabil terakhir, silakan mengacu ke {1}" -#: gnucash/gnucash-core-app.cpp:467 +#: gnucash/gnucash-core-app.cpp:464 msgid "- GnuCash, accounting for personal and small business finance" -msgstr "" +msgstr "- GnuCash, program akuntansi untuk keuangan personal dan usaha kecil" -#: gnucash/gnucash-core-app.cpp:469 -#, fuzzy +#: gnucash/gnucash-core-app.cpp:466 msgid "{1} [options] [datafile]" -msgstr "-1" +msgstr "{1} [opsi] [berkas_data]" -#: gnucash/gnucash-core-app.cpp:497 -#, fuzzy +#: gnucash/gnucash-core-app.cpp:494 msgid "GnuCash {1}" -msgstr "1×1 (Bujur sangkar)" +msgstr "GnuCash {1}" -#: gnucash/gnucash-core-app.cpp:498 -#, fuzzy +#: gnucash/gnucash-core-app.cpp:495 msgid "GnuCash {1} development version" -msgstr "Versi 1" +msgstr "GnuCash {1} versi pengembangan" + +#: gnucash/gnucash-core-app.cpp:523 +msgid "Common Options" +msgstr "Opsi-opsi Umum" #: gnucash/gnucash-core-app.cpp:526 -#, fuzzy -msgid "Common Options" -msgstr "_Biasa" - -#: gnucash/gnucash-core-app.cpp:529 -#, fuzzy msgid "Show this help message" -msgstr "Tampilkan bantuan" +msgstr "Tampilkan pesan bantuan ini" -#: gnucash/gnucash-core-app.cpp:531 -#, fuzzy +#: gnucash/gnucash-core-app.cpp:528 msgid "Show GnuCash version" -msgstr "Tampilkan versi aplikasi" +msgstr "Tampilkan versi GnuCash" -#: gnucash/gnucash-core-app.cpp:533 +#: gnucash/gnucash-core-app.cpp:530 msgid "" "Enable debugging mode: provide deep detail in the logs.\n" "This is equivalent to: --log \"=info\" --log \"qof=info\" --log \"gnc=info\"" msgstr "" +"Aktifkan mode awakutu: menyediakan pesan detail di log.\n" +"Sama dengan: --log \"=info\" --log \"qof=info\" --log \"gnc=info\"" -#: gnucash/gnucash-core-app.cpp:535 +#: gnucash/gnucash-core-app.cpp:532 msgid "Enable extra/development/debugging features." -msgstr "" +msgstr "Aktifkan fitur-fitur eksta/pengembangan/awakutu." -#: gnucash/gnucash-core-app.cpp:537 +#: gnucash/gnucash-core-app.cpp:534 msgid "" "Log level overrides, of the form \"modulename={debug,info,warn,crit," "error}\"\n" "Examples: \"--log qof=debug\" or \"--log gnc.backend.file.sx=info\"\n" "This can be invoked multiple times." msgstr "" +"Timpaan level log, dalam bentuk \"modulename={debug,info,warn,crit,error}\"\n" +"Contoh: \"--log qof=debug\" atau \"--log gnc.backend.file.sx=info\"\n" +"Ini dapat dipanggil beberapa kali." -#: gnucash/gnucash-core-app.cpp:539 +#: gnucash/gnucash-core-app.cpp:536 msgid "" "File to log into; defaults to \"/tmp/gnucash.trace\"; can be \"stderr\" or " "\"stdout\"." msgstr "" +"Berkas untuk menyimpan log; berkas baku adalah \"/tmp/gnucash.trace\"; bisa " +"berupa \"stderr\" atau \"stdout\"." -#: gnucash/gnucash-core-app.cpp:541 +#: gnucash/gnucash-core-app.cpp:538 msgid "" "Set the prefix for gsettings schemas for gsettings queries. This can be " "useful to have a different settings tree while debugging." msgstr "" +"Setel prefiks skema gsettings untuk kueri gsettings. Mungkin berguna untuk " +"memiliki pohon pengaturan yang berbeda ketika pengawakutuan." + +#: gnucash/gnucash-core-app.cpp:540 +msgid "Hidden Options" +msgstr "Opsi-opsi Tersembunyi" #: gnucash/gnucash-core-app.cpp:543 -#, fuzzy -msgid "Hidden Options" -msgstr "" -"Di samping fitur-fitur dasar yang mungkin Anda harapkan dari sebuah emulator " -"terminal, ia memiliki beberapa fitur tambahan yang menarik, seperti multi-" -"tab dalam satu jendela, bilah alat yang bisa dikustomasi, dan kemampuan " -"untuk mengkonfigurasi hampir semua aspek aplikasi melalui opsi-opsi " -"tersembunyi. Seperti yang bisa dilihat pada cuplikan layar di atas, " -"rilis ini juga mendukung transparansi sejati menggunakan manajer kompositor " -"Xfwm4 yang terintegrasi." - -#: gnucash/gnucash-core-app.cpp:546 msgid "[datafile]" -msgstr "" +msgstr "[berkas_data]" #: gnucash/gnucash.cpp:224 msgid "Checking Finance::Quote..." @@ -10230,24 +10283,20 @@ msgid "Loading data..." msgstr "Memuat data..." #: gnucash/gnucash.cpp:329 -#, fuzzy msgid "Application Options" -msgstr "Opsi Aplikasi:" +msgstr "Opsi-opsi Aplikasi" #: gnucash/gnucash.cpp:332 -#, fuzzy msgid "Do not load the last file opened" -msgstr "Tanggal dan waktu kapan berkas terakhir dibuka." +msgstr "Jangan memuat berkas yang terakhir dibuka" #: gnucash/gnucash.cpp:334 -#, fuzzy msgid "Show help for gtk options" -msgstr "Menampilkan opsi bantuan" +msgstr "Tampilkan bantuan untuk opsi-opsi gtk" #: gnucash/gnucash.cpp:336 -#, fuzzy msgid "Deprecated Options" -msgstr "Tak berlaku lagi" +msgstr "Opsi-opsi Usang" #: gnucash/gnucash.cpp:339 msgid "" @@ -10267,6 +10316,10 @@ msgid "" "Please use 'gnucash-cli --quotes get --namespace ' " "instead." msgstr "" +"Ekspresi reguler yang menentukan komoditas namespace yang akan diambil.\n" +"Ingat bahwa opsi ini telah usang dan akan dihapus di GnuCash 5.0.\n" +"Silakan gunakan 'gnucash-cli --quotes get --namespace " +"'." #: gnucash/gnucash.cpp:360 msgid "" @@ -10382,6 +10435,9 @@ msgid "" "closed. The numbers are the X and Y coordinates of the top left corner of " "the window followed by the width and height of the window." msgstr "" +"Pengaturan ini menjelaskan ukuran dan posisi jendela ketika ditutup terakhir " +"kali. Angka ini adalah koordinat X dan Y sudut kiri atas jendela diikuti " +"dengan lebar dan tinggi jendela." #: gnucash/gschemas/org.gnucash.dialogs.business.gschema.xml.in:24 #: gnucash/gschemas/org.gnucash.dialogs.business.gschema.xml.in:39 @@ -10417,6 +10473,8 @@ msgid "" "If set to active then tax is included by default in entries of this type. " "This setting is inherited by new customers and vendors." msgstr "" +"Jika disetel aktif, pajak akan disertakan secara baku pada entri dengan tipe " +"ini. Pengaturan ini diwarisi oleh pelanggan dan vendor baru." #: gnucash/gschemas/org.gnucash.dialogs.business.gschema.xml.in:112 #: gnucash/gschemas/org.gnucash.dialogs.business.gschema.xml.in:154 @@ -10425,6 +10483,7 @@ msgstr "Bayar otomatis saat mengepos." #: gnucash/gschemas/org.gnucash.dialogs.business.gschema.xml.in:113 #: gnucash/gtkbuilder/business-prefs.glade:196 +#, fuzzy msgid "" "At post time, automatically attempt to pay customer documents with " "outstanding pre-payments and counter documents. The pre-payments and " @@ -10432,6 +10491,11 @@ msgid "" "are documents with opposite sign. For example for an invoice, customer " "credit notes and negative invoices are considered counter documents." msgstr "" +"Pada saat pos, secara otomatis mencoba untuk membayar dokumen pelanggan " +"dengan pra-pembayaran yang luar biasa dan dokumen counter. Pra-pembayaran " +"dan dokumen jelas harus melawan pelanggan yang sama. Dokumen counter dokumen " +"dengan tanda berlawanan. Misalnya untuk faktur, nota kredit pelanggan dan " +"faktur negatif dianggap dokumen counter." #: gnucash/gschemas/org.gnucash.dialogs.business.gschema.xml.in:117 msgid "Show invoices due reminder at startup" @@ -10446,7 +10510,7 @@ msgid "" msgstr "" "Jika aktif, saat mulai GnuCash akan memeriksa apakah ada faktur yang segera " "jatuh tempo. Jika ada, dialog pengingat akan ditampilkan. Definisi \"segera" -"\" diatur oleh setelan \"Hari Sebelumnya\". Jika tidak, GnuCash tidak " +"\" diatur oleh pengaturan \"Hari Sebelumnya\". Jika tidak, GnuCash tidak " "memeriksa faktur jatuh tempo." #: gnucash/gschemas/org.gnucash.dialogs.business.gschema.xml.in:122 @@ -10460,7 +10524,7 @@ msgid "" "active." msgstr "" "Bidang ini menentukan jumlah hari sebelumnya dimana GnuCash akan memeriksa " -"faktur jatuh tempo. Nilainya hanya digunakan jika setelan \"Beritahu saat " +"faktur jatuh tempo. Nilainya hanya digunakan jika pengaturan \"Beritahu saat " "jatuh tempo\" aktif." #: gnucash/gschemas/org.gnucash.dialogs.business.gschema.xml.in:127 @@ -10499,7 +10563,7 @@ msgstr "" #: gnucash/gschemas/org.gnucash.dialogs.business.gschema.xml.in:142 msgid "Accumulate multiple splits into one" -msgstr "Akumulasikan beberapa pemecahan menjadi satu" +msgstr "Akumulasikan beberapa split menjadi satu" #: gnucash/gschemas/org.gnucash.dialogs.business.gschema.xml.in:143 msgid "" @@ -10508,11 +10572,12 @@ msgid "" "overridden per invoice in the Posting dialog." msgstr "" "Jika bidang ini aktif, maka beberapa entri pada sebuah faktur yang transfer " -"ke akun yang sama akan diakumulasikan menjadi sebuah pemecahan tunggal. " -"Bidang ini dapat ditimpa per faktur pada dialog Pos." +"ke akun yang sama akan diakumulasikan menjadi sebuah split tunggal. Bidang " +"ini dapat ditimpa per faktur pada dialog Pos." #: gnucash/gschemas/org.gnucash.dialogs.business.gschema.xml.in:155 #: gnucash/gtkbuilder/business-prefs.glade:273 +#, fuzzy msgid "" "At post time, automatically attempt to pay vendor documents with outstanding " "pre-payments and counter documents. The pre-payments and documents obviously " @@ -10520,6 +10585,11 @@ msgid "" "opposite sign. For example for a bill, vendor credit notes and negative " "bills are considered counter documents." msgstr "" +"Pada saat posting, otomatis mencoba untuk membayar dokumen penjual dengan " +"pra-pembayaran yang luar biasa dan dokumen counter. Pra-pembayaran dan " +"dokumen jelas harus melawan vendor yang sama. Dokumen counter dokumen dengan " +"tanda berlawanan. Misalnya untuk tagihan, catatan penjual kredit dan tagihan " +"negatif dianggap dokumen counter." #: gnucash/gschemas/org.gnucash.dialogs.business.gschema.xml.in:159 msgid "Show bills due reminder at startup" @@ -10534,7 +10604,7 @@ msgid "" msgstr "" "Jika aktif, saat mulai GnuCash akan memeriksa untuk melihat apakah ada " "tagihan yang segera akan jatuh tempo. Jika ada, ia akan menampilkan sebuah " -"dialog pengingat. Definisi dari \"segera\" diatur oleh setelan \"Hari " +"dialog pengingat. Definisi dari \"segera\" diatur oleh pengaturan \"Hari " "Sebelumnya\". Jika tidak, GnuCash tidak akan memeriksa tagihan yang jatuh " "tempo." @@ -10549,18 +10619,20 @@ msgid "" "active." msgstr "" "Bidang ini menentukan jumlah hari sebelumnya dimana GnuCash akan memeriksa " -"tagihan jatuh tempo. Nilainya hanya digunakan jika setelan \"Beritahu saat " -"jatuh tempo\" aktif." +"tagihan jatuh tempo. Nilainya hanya digunakan jika pengaturan \"Beritahu " +"saat jatuh tempo\" aktif." #: gnucash/gschemas/org.gnucash.dialogs.checkprinting.gschema.xml.in:5 msgid "GUID of predefined check format to use" -msgstr "" +msgstr "GUID dengan format pemeriksaan standar untuk digunakan" #: gnucash/gschemas/org.gnucash.dialogs.checkprinting.gschema.xml.in:6 msgid "" "This value specifies the predefined check format to use. The number is the " "guid of a known check format." msgstr "" +"Nilai ini menentukan format pemeriksaan standar untuk digunakan. Nomornya " +"adalah guid dari format pemeriksaan yang umum." #: gnucash/gschemas/org.gnucash.dialogs.checkprinting.gschema.xml.in:10 msgid "Which check position to print" @@ -10572,6 +10644,10 @@ msgid "" "specifies which check position to print. The possible values are 0, 1 and 2, " "corresponding to the top, middle and bottom checks on the page." msgstr "" +"Pada cek yang sudah tercetak sebelumnya yang berisi beberapa cek per " +"halaman, pengaturan ini menentukan posisi cek yang akan dicetak. Nilai yang " +"mungkin adalah 0, 1, dan 2, yang sesuai dengan cek bagian atas, tengah dan " +"bawah pada halaman." #: gnucash/gschemas/org.gnucash.dialogs.checkprinting.gschema.xml.in:15 #: gnucash/gschemas/org.gnucash.dialogs.checkprinting.gschema.xml.in:16 @@ -10585,10 +10661,11 @@ msgstr "Format tanggal yang digunakan" #: gnucash/gschemas/org.gnucash.dialogs.checkprinting.gschema.xml.in:21 msgid "This is the numerical identifier of the predefined date format to use." msgstr "" +"Ini adalah pengenal numerik dari format tanggal standar untuk digunakan." #: gnucash/gschemas/org.gnucash.dialogs.checkprinting.gschema.xml.in:25 msgid "Custom date format" -msgstr "Format tanggal suai" +msgstr "Format tanggal tersuai" #: gnucash/gschemas/org.gnucash.dialogs.checkprinting.gschema.xml.in:26 msgid "" @@ -10597,24 +10674,30 @@ msgid "" "any valid strftime string; for more information about this format, read the " "manual page of strftime by \"man 3 strftime\"." msgstr "" +"Jika format tanggal disetel untuk mengindikasikan sebuah format tanggal " +"tersuai, nilai ini digunakan sebagai argumen ke strftime untuk membuat " +"tanggal yang akan dicetak. Bisa berupa string strftime yang valid; untuk " +"informasi mengenai format ini, baca halaman manual strftime dengan perintah " +"\"man 3 strftime\"." #: gnucash/gschemas/org.gnucash.dialogs.checkprinting.gschema.xml.in:30 msgid "Units in which the custom coordinates are expressed" -msgstr "Satuan yang digunakan oleh koordinat suai" +msgstr "Satuan yang digunakan oleh koordinat tersuai" #: gnucash/gschemas/org.gnucash.dialogs.checkprinting.gschema.xml.in:31 msgid "Units in which the custom coordinates are expressed (inches, mm, ...)." -msgstr "Satuan yang digunakan oleh koordinat suai (inci, mm, ...)." +msgstr "Satuan yang digunakan oleh koordinat tersuai (inci, mm, ...)." #: gnucash/gschemas/org.gnucash.dialogs.checkprinting.gschema.xml.in:35 msgid "Position of payee name" -msgstr "" +msgstr "Posisi nama penerima pembayaran" #: gnucash/gschemas/org.gnucash.dialogs.checkprinting.gschema.xml.in:36 msgid "" "This value contains the X,Y coordinates for the start of the payee line on " "the check." msgstr "" +"Nilai ini berisi koordinat X,Y untuk awal baris penerima pembayaran di cek." #: gnucash/gschemas/org.gnucash.dialogs.checkprinting.gschema.xml.in:40 msgid "Position of date line" @@ -10626,6 +10709,8 @@ msgid "" "the check. Coordinates are from the lower left corner of the specified check " "position." msgstr "" +"Nilai ini berisi koordinat X,Y untuk permulaan baris tanggal di cek. " +"Koordinat dihitung dari sudut kiri bawah dari posisi cek yang ditentukan." #: gnucash/gschemas/org.gnucash.dialogs.checkprinting.gschema.xml.in:45 msgid "Position of check amount in words" @@ -10637,6 +10722,9 @@ msgid "" "line on the check. Coordinates are from the lower left corner of the " "specified check position." msgstr "" +"Nilai ini berisi koordinat X,Y untuk permulaan baris jumlah yang tertulis di " +"cek. Koordinat dihitung dari sudut kiri bawah dari posisi cek yang " +"ditentukan." #: gnucash/gschemas/org.gnucash.dialogs.checkprinting.gschema.xml.in:50 msgid "Position of check amount in numbers" @@ -10648,10 +10736,12 @@ msgid "" "amount line on the check. Coordinates are from the lower left corner of the " "specified check position." msgstr "" +"Nilai ini berisi koordinat X,Y untuk permulaan baris jumlah numerik di cek. " +"Koordinat dihitung dari sudut kiri bawah dari posisi cek yang ditentukan." #: gnucash/gschemas/org.gnucash.dialogs.checkprinting.gschema.xml.in:55 msgid "Position of payee address" -msgstr "" +msgstr "Posisi alamat penerima pembayaran" #: gnucash/gschemas/org.gnucash.dialogs.checkprinting.gschema.xml.in:56 msgid "" @@ -10659,6 +10749,9 @@ msgid "" "line on the check. Coordinates are from the lower left corner of the " "specified check position." msgstr "" +"Nilai ini berisi koordinat X, Y untuk permulaan baris alamat penerima " +"pembayaran di cek. Koordinat dihitung dari sudut kiri bawah dari posisi cek " +"yang ditentukan." #: gnucash/gschemas/org.gnucash.dialogs.checkprinting.gschema.xml.in:60 msgid "Position of notes line" @@ -10670,6 +10763,8 @@ msgid "" "the check. Coordinates are from the lower left corner of the specified check " "position." msgstr "" +"Nilai ini berisi koordinat X,Y untuk permulaan baris catatan di cek. " +"Koordinat dihitung dari sudut kiri bawah dari posisi cek yang ditentukan." #: gnucash/gschemas/org.gnucash.dialogs.checkprinting.gschema.xml.in:65 msgid "Position of memo line" @@ -10681,16 +10776,20 @@ msgid "" "the check. Coordinates are from the lower left corner of the specified check " "position." msgstr "" +"Nilai ini berisi koordinat X,Y untuk permulaan baris memo di cek. Koordinat " +"dihitung dari sudut kiri bawah dari posisi cek yang ditentukan." #: gnucash/gschemas/org.gnucash.dialogs.checkprinting.gschema.xml.in:70 msgid "Offset for complete check" -msgstr "" +msgstr "Ofset untuk cek lengkap" #: gnucash/gschemas/org.gnucash.dialogs.checkprinting.gschema.xml.in:71 msgid "" "This value contains the X,Y offset for the complete check. Coordinates are " "from the lower left corner of the specified check position." msgstr "" +"Nilai ini berisi ofset X,Y untuk cek lengkap. Koordinat dihitung dari sudut " +"kiri bawah posisi cek." #: gnucash/gschemas/org.gnucash.dialogs.checkprinting.gschema.xml.in:75 msgid "Rotation angle" @@ -10702,7 +10801,7 @@ msgstr "Besaran sudut untuk memutar cek." #: gnucash/gschemas/org.gnucash.dialogs.checkprinting.gschema.xml.in:80 msgid "Position of split's amount in numbers" -msgstr "" +msgstr "Posisi jumlah split dalam angka" #: gnucash/gschemas/org.gnucash.dialogs.checkprinting.gschema.xml.in:81 msgid "" @@ -10710,11 +10809,12 @@ msgid "" "line on the check. Coordinates are from the lower left corner of the " "specified check position." msgstr "" +"Nilai ini berisi koordinat X,Y untuk permulaan baris jumlah split di cek. " +"Koordinat dihitung dari sudut kiri bawah pada posisi cek." #: gnucash/gschemas/org.gnucash.dialogs.checkprinting.gschema.xml.in:85 -#, fuzzy msgid "Position of split's memo line" -msgstr "Posisi panel pratinjau memo (vertikal)" +msgstr "Posisi baris memo split" #: gnucash/gschemas/org.gnucash.dialogs.checkprinting.gschema.xml.in:86 msgid "" @@ -10722,10 +10822,12 @@ msgid "" "line on the check. Coordinates are from the lower left corner of the " "specified check position." msgstr "" +"Nilai ini berisi koordinat X,Y untuk permulaan baris memo split di cek. " +"Koordinat dihitung dari sudut kiri bawah pada posisi cek." #: gnucash/gschemas/org.gnucash.dialogs.checkprinting.gschema.xml.in:90 msgid "Position of split's account line" -msgstr "" +msgstr "Posisi baris akun split" #: gnucash/gschemas/org.gnucash.dialogs.checkprinting.gschema.xml.in:91 msgid "" @@ -10733,40 +10835,42 @@ msgid "" "line on the check. Coordinates are from the lower left corner of the " "specified check position." msgstr "" +"Nilai ini berisi koordinat X,Y untuk permulaan baris akun split di cek. " +"Koordinat dihitung dari sudut kiri bawah pada posisi cek." #: gnucash/gschemas/org.gnucash.dialogs.checkprinting.gschema.xml.in:95 -#, fuzzy msgid "Print the date format below the date." -msgstr "Format Tanggal/Waktu" +msgstr "Cetak format tanggal di bawah tanggal." #: gnucash/gschemas/org.gnucash.dialogs.checkprinting.gschema.xml.in:96 msgid "" "Each time the date is printed, print the date format immediately below in 8 " "point type using the characters Y, M, and D." msgstr "" +"Setiap kali tanggal dicetak, cetak format tanggal tepat di bawahnya dalam " +"tipe 8 poin menggunakan karakter Y, M, dan D." #: gnucash/gschemas/org.gnucash.dialogs.checkprinting.gschema.xml.in:100 -#, fuzzy msgid "The default check printing font" -msgstr "Jenis huruf yang digunakan ketika mencetak" +msgstr "Fonta pencetakan cek baku" #: gnucash/gschemas/org.gnucash.dialogs.checkprinting.gschema.xml.in:101 msgid "" "The default font to use when printing checks. This value will be overridden " "by any font specified in a check description file." msgstr "" +"Fonta baku untuk digunakan saat mencetak cek. Nilai ini akan ditimpa oleh " +"fonta yang ditentukan pada berkas deskripsi cek." #: gnucash/gschemas/org.gnucash.dialogs.checkprinting.gschema.xml.in:105 #: gnucash/gschemas/org.gnucash.dialogs.checkprinting.gschema.xml.in:106 -#, fuzzy msgid "Print '***' before and after text." -msgstr "Banyaknya Baris Konteks Sebelum/Setelah" +msgstr "Cetak '***' sebelum dan setelah teks." #: gnucash/gschemas/org.gnucash.dialogs.commodities.gschema.xml.in:5 #: gnucash/gschemas/org.gnucash.dialogs.commodities.gschema.xml.in:6 -#, fuzzy msgid "Show currencies in this dialog" -msgstr "Mata Uang" +msgstr "Tampilkan mata uang di dialog ini" #: gnucash/gschemas/org.gnucash.dialogs.export.csv.gschema.xml.in:12 #: gnucash/gschemas/org.gnucash.dialogs.gschema.xml.in:142 @@ -10777,9 +10881,8 @@ msgstr "Mata Uang" #: gnucash/gschemas/org.gnucash.dialogs.import.qif.gschema.xml.in:27 #: gnucash/import-export/aqb/gschemas/org.gnucash.dialogs.import.hbci.gschema.xml.in:55 #: gnucash/import-export/ofx/gschemas/org.gnucash.dialogs.import.ofx.gschema.xml.in:5 -#, fuzzy msgid "Last pathname used" -msgstr "Terakhir Dipakai" +msgstr "Nama path terakhir yang digunakan" #: gnucash/gschemas/org.gnucash.dialogs.export.csv.gschema.xml.in:13 #: gnucash/gschemas/org.gnucash.dialogs.gschema.xml.in:143 @@ -10800,32 +10903,31 @@ msgstr "" #: gnucash/gschemas/org.gnucash.dialogs.export.csv.gschema.xml.in:17 msgid "Window geometry" -msgstr "" +msgstr "Geometri jendela" #: gnucash/gschemas/org.gnucash.dialogs.export.csv.gschema.xml.in:18 -#, fuzzy msgid "The position of paned window when it was last closed." -msgstr "Posisi jendela (x dan y) dari jendela yang terakhir ditutup." +msgstr "Posisi jendela berpanel saat terakhir ditutup." #: gnucash/gschemas/org.gnucash.dialogs.gschema.xml.in:102 #: gnucash/gschemas/org.gnucash.dialogs.gschema.xml.in:103 #: gnucash/gschemas/org.gnucash.dialogs.gschema.xml.in:184 #: gnucash/gschemas/org.gnucash.dialogs.gschema.xml.in:185 -#, fuzzy msgid "Position of the horizontal pane divider." -msgstr "Posisi panel pratinjau kontak (horisontal)" +msgstr "Posisi pemisah panel horizontal." #: gnucash/gschemas/org.gnucash.dialogs.gschema.xml.in:135 msgid "" "This setting indicates whether to search in all items in the current class, " "or only in 'active' items in the current class." msgstr "" +"Pengaturan ini menentukan apakah melakukan pencarian pada semua item di " +"kelas saat ini, atau hanya pada item 'aktif' di kelas saat ini." #: gnucash/gschemas/org.gnucash.dialogs.gschema.xml.in:189 #: gnucash/gschemas/org.gnucash.dialogs.gschema.xml.in:190 -#, fuzzy msgid "Position of the vertical pane divider." -msgstr "Posisi vertikal bagi panel tag" +msgstr "Posisi pemisah panel vertikal." #: gnucash/gschemas/org.gnucash.dialogs.gschema.xml.in:204 msgid "Show the new user window" @@ -10840,7 +10942,7 @@ msgstr "" #: gnucash/gschemas/org.gnucash.dialogs.gschema.xml.in:219 msgid "New hierarchy window on \"New File\"" -msgstr "Jendela hirarki baru pada \"Berkas Baru\"" +msgstr "Jendela hierarki baru pada \"Berkas Baru\"" #: gnucash/gschemas/org.gnucash.dialogs.gschema.xml.in:220 msgid "" @@ -10854,26 +10956,31 @@ msgstr "" #: gnucash/gschemas/org.gnucash.dialogs.gschema.xml.in:228 msgid "Default to 'new search' if fewer than this number of items is returned" msgstr "" +"Kembali ke baku 'pencarian baru' jika lebih sedikit dari jumlah item ini " +"yang dikembalikan" #: gnucash/gschemas/org.gnucash.dialogs.import.generic.gschema.xml.in:5 msgid "Enable SKIP transaction action" -msgstr "" +msgstr "Aktifkan tindakan transaksi SKIP" #: gnucash/gschemas/org.gnucash.dialogs.import.generic.gschema.xml.in:6 -#: gnucash/gtkbuilder/dialog-preferences.glade:1915 +#: gnucash/gtkbuilder/dialog-preferences.glade:2032 msgid "" "Enable the SKIP action in the transaction matcher. If enabled, a transaction " "whose best match's score is in the yellow zone (above the Auto-ADD threshold " "but below the Auto-CLEAR threshold) will be skipped by default." msgstr "" +"Aktifkan tindakan ABAIKAN di pencocokan transaksi. Jika diaktifkan, " +"transaksi dengan skor kecocokan terbaik yang berada di zona kuning (di atas " +"ambang batas Auto-TAMBAH tetapi di bawah ambang batas Auto-KLIR) secara baku " +"akan dilewatkan." #: gnucash/gschemas/org.gnucash.dialogs.import.generic.gschema.xml.in:10 -#, fuzzy msgid "Enable UPDATE match action" -msgstr "Eksekusi aksi mutakhirkan" +msgstr "Aktifkan tindakan kecocokan UPDATE" #: gnucash/gschemas/org.gnucash.dialogs.import.generic.gschema.xml.in:11 -#: gnucash/gtkbuilder/dialog-preferences.glade:1934 +#: gnucash/gtkbuilder/dialog-preferences.glade:2051 msgid "" "Enable the UPDATE AND RECONCILE action in the transaction matcher. If " "enabled, a transaction whose best match's score is above the Auto-CLEAR " @@ -10881,11 +10988,15 @@ msgid "" "transaction will cause the existing transaction to be updated and cleared by " "default." msgstr "" +"Aktifkan tindakan UPDATE DAN RECONCILE di pencocokan transaksi. Jika " +"diaktifkan, transaksi dengan skor kecocokan terbaik yang berada di atas " +"ambang batas Auto-CLEAR dan memiliki tanggal atau jumlah yang berbeda dari " +"transaksi yang ada yang cocok akan menyebabkan transaksi yang ada secara " +"baku diperbarui dan dibersihkan." #: gnucash/gschemas/org.gnucash.dialogs.import.generic.gschema.xml.in:15 -#, fuzzy msgid "Use bayesian matching" -msgstr "Klik ganda pada strategi yang cocok untuk dipakai" +msgstr "Gunakan pencocokan bayesian" #: gnucash/gschemas/org.gnucash.dialogs.import.generic.gschema.xml.in:16 msgid "" @@ -10893,11 +11004,13 @@ msgid "" "existing transactions. Otherwise a less sophisticated rule-based matching " "mechanism will be used." msgstr "" +"Memungkinkan pencocokan bayesian ketika mencocokkan transaksi impor terhadap " +"transaksi yang ada. Jika tidak, mekanisme pencocokan berbasis aturan yang " +"kurang canggih akan digunakan." #: gnucash/gschemas/org.gnucash.dialogs.import.generic.gschema.xml.in:20 -#, fuzzy msgid "Minimum score to be displayed" -msgstr "Nilai:" +msgstr "Skor minimum untuk ditampilkan" #: gnucash/gschemas/org.gnucash.dialogs.import.generic.gschema.xml.in:21 msgid "" @@ -10909,7 +11022,7 @@ msgstr "" #: gnucash/gschemas/org.gnucash.dialogs.import.generic.gschema.xml.in:25 msgid "Add matching transactions below this score" -msgstr "" +msgstr "Tambahkan transaksi yang cocok di bawah skor ini" #: gnucash/gschemas/org.gnucash.dialogs.import.generic.gschema.xml.in:26 msgid "" @@ -10918,10 +11031,15 @@ msgid "" "zone (above the display minimum score but below or equal to the Add match " "score) will be added to the GnuCash file by default." msgstr "" +"Bidang ini menentukan ambang batas bawah di mana sebuah transaksi yang cocok " +"akan ditambahkan secara otomatis. Transaksi yang skor kecocokan terbaiknya " +"berada pada zona merah (di atas skor minimum tampilan tetapi di bawah atau " +"sama dengan skor kecocokan Tambah) secara baku akan ditambahkan ke berkas " +"GnuCash." #: gnucash/gschemas/org.gnucash.dialogs.import.generic.gschema.xml.in:30 msgid "Clear matching transactions above this score" -msgstr "" +msgstr "Bersihkan transaksi yang cocok di atas skor ini" #: gnucash/gschemas/org.gnucash.dialogs.import.generic.gschema.xml.in:31 msgid "" @@ -10930,10 +11048,14 @@ msgid "" "green zone (above or equal to this Clear threshold) will be cleared by " "default." msgstr "" +"Bidang ini menentukan ambang batas atas di mana sebuah transaksi yang cocok " +"secara baku akan dibersihkan. Transaksi yang skor kecocokan terbaiknya " +"berada pada zona hijau (di atas atau sama dengan ambang batas Bersihkan ini) " +"secara baku akan dibersihkan." #: gnucash/gschemas/org.gnucash.dialogs.import.generic.gschema.xml.in:35 msgid "Maximum ATM fee amount in your area" -msgstr "" +msgstr "Jumlah biaya maksimum ATM di daerah Anda" #: gnucash/gschemas/org.gnucash.dialogs.import.generic.gschema.xml.in:36 msgid "" @@ -10947,43 +11069,56 @@ msgid "" "whatever is the maximum such fee in your area (in units of your local " "currency), so the transaction will be recognised as a match." msgstr "" +"Bidang ini menentukan biaya tambahan yang diperhitungkan ketika mencocokkan " +"transaksi impor. Di beberapa tempat ATM komersial (bukan milik lembaga " +"keuangan) dipasang di tempat-tempat seperti toko-toko. ATM ini menambahkan " +"biaya mereka secara langsung ke jumlah, bukannya muncul sebagai transaksi " +"yang terpisah atau dalam biaya perbankan bulanan Anda. Misalnya, Anda " +"menarik $100, dan Anda akan dikenakan biaya $101,50 ditambah biaya Interac. " +"Jika Anda memasukkan $100 tersebut secara manual, jumlahnya tidak akan " +"cocok. Anda harus menetapkan ini senilai biaya maksimum di daerah Anda " +"(dalam satuan mata uang lokal Anda), sehingga transaksi akan dikenali " +"sebagai cocok." #. Preferences->Online Banking:Generic #: gnucash/gschemas/org.gnucash.dialogs.import.generic.gschema.xml.in:40 -#: gnucash/gtkbuilder/dialog-preferences.glade:2125 -#, fuzzy +#: gnucash/gtkbuilder/dialog-preferences.glade:2242 msgid "Automatically create new commodities" -msgstr "Jangan buat dan daftarkan sumber daya secara otomatis" +msgstr "Buat komoditas baru secara otomatis" #: gnucash/gschemas/org.gnucash.dialogs.import.generic.gschema.xml.in:41 -#: gnucash/gtkbuilder/dialog-preferences.glade:2131 +#: gnucash/gtkbuilder/dialog-preferences.glade:2248 msgid "" "Enables the automatic creation of new commodities if any unknown commodity " "is encountered during import. Otherwise the user will be asked what to do " "with each unknown commodity." msgstr "" +"Memungkinkan pembuatan otomatis komoditas baru jika ada komoditas yang tidak " +"dikenal yang ditemui selama impor. Jika tidak, pengguna akan ditanya apa " +"yang harus dilakukan dengan tiap-tiap komoditas yang tidak dikenal." #: gnucash/gschemas/org.gnucash.dialogs.import.generic.gschema.xml.in:58 -#, fuzzy msgid "Display or hide reconciled matches" -msgstr "Sembunyikan yang cocok" +msgstr "Menampilkan atau menyembunyikan kecocokan yang direkonsiliasi" #: gnucash/gschemas/org.gnucash.dialogs.import.generic.gschema.xml.in:59 msgid "" "Shows or hides transactions from the match picker which are already of some " "reconciled state." msgstr "" +"Menampilkan atau menyembunyikan transaksi dari pemilih kecocokan yang sudah " +"dalam keadaan direkonsiliasi." #: gnucash/gschemas/org.gnucash.dialogs.import.qif.gschema.xml.in:5 #: gnucash/gschemas/org.gnucash.dialogs.import.qif.gschema.xml.in:10 msgid "Default QIF transaction status" -msgstr "" +msgstr "Status transaksi QIF baku" #: gnucash/gschemas/org.gnucash.dialogs.import.qif.gschema.xml.in:6 #: gnucash/gschemas/org.gnucash.dialogs.import.qif.gschema.xml.in:11 #: gnucash/gschemas/org.gnucash.dialogs.import.qif.gschema.xml.in:16 msgid "Default status for QIF transaction when not specified in QIF file." -msgstr "" +msgstr "Status transaksi QIF baku ketika tidak ditentukan di dalam berkas QIF." #: gnucash/gschemas/org.gnucash.dialogs.import.qif.gschema.xml.in:15 #: gnucash/gtkbuilder/dialog-account-picker.glade:56 @@ -10991,6 +11126,8 @@ msgid "" "When the status is not specified in a QIF file, the transactions are marked " "as reconciled." msgstr "" +"Ketika status tidak ditentukan di dalam berkas QIF, transaksi ditandai " +"sebagai direkonsiliasi." #: gnucash/gschemas/org.gnucash.dialogs.import.qif.gschema.xml.in:32 msgid "Show documentation" @@ -11003,7 +11140,7 @@ msgstr "Tampilkan halaman dokumentasi pada asisten Impor QIF." #: gnucash/gschemas/org.gnucash.dialogs.reconcile.gschema.xml.in:5 msgid "Pre-select cleared transactions" -msgstr "" +msgstr "Pra-pilih transaksi klir" #: gnucash/gschemas/org.gnucash.dialogs.reconcile.gschema.xml.in:6 msgid "" @@ -11011,11 +11148,13 @@ msgid "" "already selected in the reconcile dialog. Otherwise no transactions will be " "initially selected." msgstr "" +"Jika aktif, semua transaksi yang ditandai sebagai klir di dalam register " +"akan ditampilkan secara telah terpilih di dalam dialog rekonsiliasi. Jika " +"tidak, tak ada transaksi yang terpilih di awal." #: gnucash/gschemas/org.gnucash.dialogs.reconcile.gschema.xml.in:10 -#, fuzzy msgid "Prompt for interest charges" -msgstr "bunga" +msgstr "Tanyakan biaya bunga" #: gnucash/gschemas/org.gnucash.dialogs.reconcile.gschema.xml.in:11 #: gnucash/gtkbuilder/dialog-account.glade:1480 @@ -11025,32 +11164,40 @@ msgid "" "only enabled for Bank, Credit, Mutual, Asset, Receivable, Payable, and " "Liability accounts." msgstr "" +"Sebelum merekonsiliasi akun yang membebankan atau membayar bunga, tanya " +"pengguna untuk memasukkan transaksi untuk pembayaran atau biaya bunga. Saat " +"ini hanya diaktifkan untuk akun Bank, Kredit, Reksadana, Aset, Piutang, " +"Utang, dan Liabilitas." #: gnucash/gschemas/org.gnucash.dialogs.reconcile.gschema.xml.in:15 -#, fuzzy msgid "Prompt for credit card payment" -msgstr "Kartu Kredit" +msgstr "Tanyakan untuk pembayaran kartu kredit" #: gnucash/gschemas/org.gnucash.dialogs.reconcile.gschema.xml.in:16 msgid "" "If active, after reconciling a credit card account, prompt the user to enter " "a credit card payment. Otherwise do not prompt the user for this." msgstr "" +"Jika aktif, setelah rekonsiliasi akun kartu kredit, tanya pengguna untuk " +"memasukkan pembayaran kartu kredit. Jika tidak, tidak ada pertanyaan kepada " +"pengguna untuk ini." #: gnucash/gschemas/org.gnucash.dialogs.reconcile.gschema.xml.in:20 -#, fuzzy msgid "Always reconcile to today" -msgstr "penarikan" +msgstr "Selalu rekonsiliasi ke hari ini" #: gnucash/gschemas/org.gnucash.dialogs.reconcile.gschema.xml.in:21 msgid "" "If active, always open the reconcile dialog using today's date for the " "statement date, regardless of previous reconciliations." msgstr "" +"Jika aktif, selalu membuka dialog rekonsiliasi menggunakan tanggal hari ini " +"untuk tanggal laporan, terlepas dari rekonsiliasi sebelumnya." #: gnucash/gschemas/org.gnucash.dialogs.sxs.gschema.xml.in:17 msgid "Run \"since last run\" dialog when a file is opened." msgstr "" +"Jalankan dialog \"sejak dijalankan terakhir\" ketika suatu berkas dibuka." #: gnucash/gschemas/org.gnucash.dialogs.sxs.gschema.xml.in:18 msgid "" @@ -11059,10 +11206,17 @@ msgid "" "the initial opening of the data file when GnuCash starts. If this setting is " "active, run the \"since last run\" process, otherwise it is not run." msgstr "" +"Pengaturan ini mengontrol apakah pemrosesan \"sejak dijalankan terakhir\" " +"untuk transaksi terjadwal dijalankan secara otomatis ketika berkas data " +"dibuka. Ini termasuk pembukaan awal berkas data saat GnuCash dimulai. Jika " +"pengaturan ini aktif, jalankan proses \"sejak dijalankan terakhir\", jika " +"tidak, maka tidak dijalankan." #: gnucash/gschemas/org.gnucash.dialogs.sxs.gschema.xml.in:22 msgid "Show \"since last run\" notification dialog when a file is opened." msgstr "" +"Tampilkan dialog pemberitahuan \"sejak dijalankan terakhir\" ketika suatu " +"berkas dibuka." #: gnucash/gschemas/org.gnucash.dialogs.sxs.gschema.xml.in:23 msgid "" @@ -11072,10 +11226,15 @@ msgid "" "opening of the data file when GnuCash starts. If this setting is active, " "show the dialog, otherwise it is not shown." msgstr "" +"Pengaturan ini mengontrol apakah dialog hanya-notifikasi \"sejak dijalankan " +"terakhir\" untuk transaksi terjadwal ditampilkan saat berkas data dibuka " +"(jika pemrosesan \"sejak dijalankan terakhir\" diaktifkan ketika berkas " +"dibuka). Ini termasuk pembukaan awal berkas data saat GnuCash dimulai. Jika " +"pengaturan ini aktif, tampilkan dialog, jika tidak maka tidak ditampilkan." #: gnucash/gschemas/org.gnucash.dialogs.sxs.gschema.xml.in:30 msgid "Set the \"auto create\" flag by default" -msgstr "" +msgstr "Setel bendera \"buat otomatis\" secara baku" #: gnucash/gschemas/org.gnucash.dialogs.sxs.gschema.xml.in:31 msgid "" @@ -11084,16 +11243,19 @@ msgid "" "transaction creation, or at any later time by editing the scheduled " "transaction." msgstr "" +"Jika aktif, setiap transaksi terjadwal yang baru dibuat akan memiliki " +"bendera 'buat otomatis' yang secara baku akan disetel aktif. Pengguna dapat " +"mengubah bendera ini pada saat pembuatan transaksi, atau di lain waktu " +"dengan menyunting transaksi terjadwal." #: gnucash/gschemas/org.gnucash.dialogs.sxs.gschema.xml.in:35 #: gnucash/gschemas/org.gnucash.dialogs.sxs.gschema.xml.in:36 msgid "How many days in advance to notify the user." -msgstr "" +msgstr "Berapa hari di muka untuk memberitahu pengguna." #: gnucash/gschemas/org.gnucash.dialogs.sxs.gschema.xml.in:47 -#, fuzzy msgid "Set the \"notify\" flag by default" -msgstr "Setel path pencarian baku" +msgstr "Setel bendera \"beritahu\" secara baku" #: gnucash/gschemas/org.gnucash.dialogs.sxs.gschema.xml.in:48 msgid "" @@ -11102,11 +11264,16 @@ msgid "" "creation, or at any later time by editing the scheduled transaction. This " "setting only has meaning if the create-auto setting is active." msgstr "" +"Jika aktif, setiap transaksi terjadwal yang baru dibuat akan memiliki " +"bendera 'beritahu' yang secara baku akan disetel. Pengguna dapat mengubah " +"bendera ini pada saat pembuatan transaksi, atau di lain waktu dengan " +"menyunting transaksi terjadwal. Pengaturan ini hanya bisa digunakan jika " +"pengaturan buat-otomatis aktif." #: gnucash/gschemas/org.gnucash.dialogs.sxs.gschema.xml.in:52 #: gnucash/gschemas/org.gnucash.dialogs.sxs.gschema.xml.in:53 msgid "How many days in advance to remind the user." -msgstr "" +msgstr "Berapa hari di muka untuk mengingatkan pengguna." #: gnucash/gschemas/org.gnucash.dialogs.totd.gschema.xml.in:5 #: gnucash/gschemas/org.gnucash.dialogs.totd.gschema.xml.in:6 @@ -11126,13 +11293,13 @@ msgstr "" "ditampilkan. Jika tidak, dialog tidak ditampilkan." #: gnucash/gschemas/org.gnucash.general.finance-quote.gschema.xml.in:5 -#: gnucash/gtkbuilder/dialog-preferences.glade:3497 +#: gnucash/gtkbuilder/dialog-preferences.glade:3614 msgid "Alpha Vantage API key" msgstr "Kunci API Alpha Vantage" #: gnucash/gschemas/org.gnucash.general.finance-quote.gschema.xml.in:6 -#: gnucash/gtkbuilder/dialog-preferences.glade:3496 -#: gnucash/gtkbuilder/dialog-preferences.glade:3508 +#: gnucash/gtkbuilder/dialog-preferences.glade:3613 +#: gnucash/gtkbuilder/dialog-preferences.glade:3625 msgid "" "To retrieve online quotes from Alphavantage, this key needs to be set. A key " "can be retrieved from the Alpha Vantage website." @@ -11184,12 +11351,13 @@ msgstr "" #: gnucash/gschemas/org.gnucash.gschema.xml.in:25 msgid "Transaction Linked Files head path" -msgstr "" +msgstr "Path kepala Berkas Tertaut Transaksi" #: gnucash/gschemas/org.gnucash.gschema.xml.in:26 msgid "" "This is the path head for the Transaction Linked Files with relative paths" msgstr "" +"Ini adalah tajuk path untuk Berkas Tertaut Transaksi dengan path relatif" #: gnucash/gschemas/org.gnucash.gschema.xml.in:30 msgid "Compress the data file" @@ -11216,7 +11384,7 @@ msgid "Auto-save time interval" msgstr "Selang waktu simpan-otomatis" #: gnucash/gschemas/org.gnucash.gschema.xml.in:41 -#: gnucash/gtkbuilder/dialog-preferences.glade:1527 +#: gnucash/gtkbuilder/dialog-preferences.glade:1644 msgid "" "The number of minutes until saving of the data file to harddisk will be " "started automatically. If zero, no saving will be started automatically." @@ -11225,13 +11393,13 @@ msgstr "" "otomatis. Jika nol, penyimpanan tidak dimulai secara otomatis." #: gnucash/gschemas/org.gnucash.gschema.xml.in:45 -#: gnucash/gtkbuilder/dialog-preferences.glade:1644 +#: gnucash/gtkbuilder/dialog-preferences.glade:1761 msgid "Enable timeout on \"Save changes on closing\" question" msgstr "" "Aktifkan waktu habis pada pertanyaan \"Simpan perubahaan saat menutup\"" #: gnucash/gschemas/org.gnucash.gschema.xml.in:46 -#: gnucash/gtkbuilder/dialog-preferences.glade:1648 +#: gnucash/gtkbuilder/dialog-preferences.glade:1765 msgid "" "If enabled, the \"Save changes on closing\" question will only wait a " "limited number of seconds for an answer. If the user didn't answer within " @@ -11248,7 +11416,7 @@ msgid "Time to wait for answer" msgstr "Waktu untuk menunggu jawaban" #: gnucash/gschemas/org.gnucash.gschema.xml.in:51 -#: gnucash/gtkbuilder/dialog-preferences.glade:1683 +#: gnucash/gtkbuilder/dialog-preferences.glade:1800 msgid "" "The number of seconds to wait before the question window will be closed and " "the changes saved automatically." @@ -11259,7 +11427,7 @@ msgstr "" #: gnucash/gschemas/org.gnucash.gschema.xml.in:55 #: gnucash/gschemas/org.gnucash.gschema.xml.in:56 msgid "Display negative amounts in red" -msgstr "Tampilkan nilai negatif dalam warna merah." +msgstr "Tampilkan nilai negatif dalam warna merah" #: gnucash/gschemas/org.gnucash.gschema.xml.in:60 msgid "Automatically insert a decimal point" @@ -11290,7 +11458,7 @@ msgid "Force prices to display as decimals even if they must be rounded." msgstr "Paksa harga ditampilkan sebagai desimal meskipun harus dibulatkan." #: gnucash/gschemas/org.gnucash.gschema.xml.in:71 -#: gnucash/gtkbuilder/dialog-preferences.glade:1087 +#: gnucash/gtkbuilder/dialog-preferences.glade:1204 msgid "" "If active, GnuCash will round prices as necessary to display them as " "decimals instead of displaying the exact fraction if the fractional part " @@ -11301,7 +11469,7 @@ msgstr "" "ditampilkan secara tepat sebagai desimal." #: gnucash/gschemas/org.gnucash.gschema.xml.in:75 -#: gnucash/gtkbuilder/dialog-preferences.glade:1596 +#: gnucash/gtkbuilder/dialog-preferences.glade:1713 msgid "Do not create log/backup files." msgstr "Jangan buat berkas log/cadangan." @@ -11315,14 +11483,20 @@ msgid "" "keep old files for a number of days. How many days is defined in key 'retain-" "days'" msgstr "" +"Pengaturan ini menentukan apa yang harus dilakukan dengan berkas cadangan/" +"log yang sudah tua. \"selamanya\" berarti menyimpan semua berkas lama. " +"\"tidak pernah\" berarti tidak ada berkas cadangan/log yang disimpan. Setiap " +"kali Anda menyimpan, berkas versi lama akan dihapus. \"hari\" berarti " +"menyimpan berkas-berkas tua untuk beberapa hari. Berapa lama harinya " +"didefinisikan di dalam kunci 'retain-days'" #: gnucash/gschemas/org.gnucash.gschema.xml.in:80 -#: gnucash/gtkbuilder/dialog-preferences.glade:1614 +#: gnucash/gtkbuilder/dialog-preferences.glade:1731 msgid "Delete old log/backup files after this many days (0 = never)." msgstr "Hapus berkas log/cadangan setelah sejumlah hari ini (0 = tak pernah)." #: gnucash/gschemas/org.gnucash.gschema.xml.in:85 -#: gnucash/gtkbuilder/dialog-preferences.glade:1632 +#: gnucash/gtkbuilder/dialog-preferences.glade:1749 msgid "Do not delete log/backup files." msgstr "Jangan menghapus berkas log/cadangan." @@ -11339,9 +11513,9 @@ msgstr "" "akan dihapus (0 = tak pernah)." #: gnucash/gschemas/org.gnucash.gschema.xml.in:95 -#: gnucash/gtkbuilder/dialog-preferences.glade:519 +#: gnucash/gtkbuilder/dialog-preferences.glade:636 msgid "Don't sign reverse any accounts." -msgstr "" +msgstr "Jangan menggunakan tanda terbalik pada akun." #: gnucash/gschemas/org.gnucash.gschema.xml.in:96 #: gnucash/gschemas/org.gnucash.gschema.xml.in:101 @@ -11354,22 +11528,31 @@ msgid "" "status of the account. The setting \"none\" doesn't reverse the sign on any " "balances." msgstr "" +"Pengaturan ini memungkinkan akun tertentu menggunakan tanda terbalik untuk " +"saldo mereka dari positif ke negatif, atau sebaliknya. Pengaturan " +"\"pendapatan-pengeluaran\" adalah untuk pengguna yang ingin melihat " +"pengeluaran negatif dan pendapatan positif. Pengaturan \"kredit\" adalah " +"untuk pengguna yang ingin melihat saldo mencerminkan status debit/kredit " +"dari akun tersebut. Pengaturan \"tidak ada\" tidak membalikkan tanda pada " +"saldo." #: gnucash/gschemas/org.gnucash.gschema.xml.in:100 -#: gnucash/gtkbuilder/dialog-preferences.glade:538 +#: gnucash/gtkbuilder/dialog-preferences.glade:655 msgid "" "Sign reverse balances on the following: Credit Card, Payable, Liability, " "Equity, and Income." msgstr "" +"Tandai terbalik saldo berikut: Kartu Kredit, Utang, Liabilitas, Ekuitas, dan " +"Pendapatan." #: gnucash/gschemas/org.gnucash.gschema.xml.in:105 -#: gnucash/gtkbuilder/dialog-preferences.glade:557 +#: gnucash/gtkbuilder/dialog-preferences.glade:674 msgid "Sign reverse balances on income and expense accounts." -msgstr "" +msgstr "Tandai terbalik saldo pada akun pendapatan dan pengeluaran." #: gnucash/gschemas/org.gnucash.gschema.xml.in:110 msgid "Use account colors in the account hierarchy" -msgstr "Gunakan warna akun pada hirarki akun" +msgstr "Gunakan warna akun pada hierarki akun" #: gnucash/gschemas/org.gnucash.gschema.xml.in:111 msgid "" @@ -11377,13 +11560,13 @@ msgid "" "account's custom color if set. This can serve as a visual aid to quickly " "identify accounts." msgstr "" -"Jika aktif, hirarki akun akan mewarnai akun menggunakan warna kustom jika " +"Jika aktif, hierarki akun akan mewarnai akun menggunakan warna tersuai jika " "disetel. Hal ini bisa menjadi bantuan visual untuk mengidentifikasi akun " "secara cepat." #: gnucash/gschemas/org.gnucash.gschema.xml.in:115 msgid "Use account colors in the tabs of open account registers" -msgstr "" +msgstr "Gunakan warna akun di tab register akun yang terbuka" #: gnucash/gschemas/org.gnucash.gschema.xml.in:116 msgid "" @@ -11391,6 +11574,9 @@ msgid "" "custom color if set. This can serve as a visual aid to quickly identify " "accounts." msgstr "" +"Jika aktif, tab register akun akan diwarnai menggunakan warna tersuai akun " +"jika disetel. Hal ini bisa menjadi bantuan visual untuk mengidentifikasi " +"akun secara cepat." #: gnucash/gschemas/org.gnucash.gschema.xml.in:120 msgid "Use formal account labels" @@ -11432,11 +11618,14 @@ msgid "" "tab is longer than this value (the test is approximate) then the tab label " "will have the middle cut and replaced with an ellipsis." msgstr "" +"Kunci ini menentukan lebar maksimum tab buku catatan. Jika teks di dalam tab " +"lebih panjang daripada nilai ini (tes ini perkiraan) maka label tab akan " +"dipotong di tengah dan diganti dengan elipsis." #: gnucash/gschemas/org.gnucash.gschema.xml.in:135 -#: gnucash/gtkbuilder/dialog-preferences.glade:803 +#: gnucash/gtkbuilder/dialog-preferences.glade:920 msgid "Use the system locale currency for all newly created accounts." -msgstr "" +msgstr "Gunakan mata uang lokal sistem untuk semua akun yang baru dibuat." #: gnucash/gschemas/org.gnucash.gschema.xml.in:136 #: gnucash/gschemas/org.gnucash.gschema.xml.in:141 @@ -11447,9 +11636,13 @@ msgid "" "the user's locale setting. If set to \"other\", GnuCash will use the setting " "specified by the currency-other key." msgstr "" +"Pengaturan ini menentukan sumber mata uang baku untuk akun baru. Jika " +"disetel ke \"lokal\" maka GnuCash akan mengambil mata uang baku dari " +"pengaturan lokal pengguna. Jika disetel ke \"lainnya\", GnuCash akan " +"menggunakan pengaturan yang ditentukan oleh kunci currency-other." #: gnucash/gschemas/org.gnucash.gschema.xml.in:140 -#: gnucash/gtkbuilder/dialog-preferences.glade:783 +#: gnucash/gtkbuilder/dialog-preferences.glade:900 msgid "Use the specified currency for all newly created accounts." msgstr "" "Gunakan mata uang yang telah ditentukan untuk semua akun yang baru dibuat." @@ -11464,9 +11657,9 @@ msgid "" "currency-choice setting is set to \"other\". This field must contain the " "three letter ISO 4217 code for a currency (e.g. USD, GBP, RUB)." msgstr "" -"Setelan ini menentukan mata uang bawaan yang digunakan untuk akun baru jika " -"setelan pilihan mata uang diatur pada \"lainnya\". Bidang ini harus berisi " -"tiga huruf kode ISO 4217 untuk mata uang (misal USD, GBP, IDR)." +"Pengaturan ini menentukan mata uang baku yang digunakan untuk akun baru jika " +"pengaturan pilihan mata uang disetel pada \"lainnya\". Bidang ini harus " +"berisi tiga huruf kode ISO 4217 untuk mata uang (misal USD, GBP, IDR)." #: gnucash/gschemas/org.gnucash.gschema.xml.in:150 msgid "Use 24 hour time format" @@ -11490,11 +11683,16 @@ msgid "" "Continental Europe style dates, \"iso\" for ISO 8601 standard dates , \"uk\" " "for United Kingdom style dates, and \"us\" for United States style dates." msgstr "" +"Pengaturan ini digunakan untuk memilih cara menampilkan tanggal di GnuCash. " +"Nilai yang mungkin untuk pengaturan ini adalah \"lokal\" untuk menggunakan " +"pengaturan sistem lokal, \"ce\" untuk menampilkan tanggal dengan gaya Benua " +"Eropa, \"iso\" untuk tanggal standar ISO 8601, \"uk\" untuk gaya tanggal " +"Kerajaan Inggris, dan \"us\" untuk gaya tanggal Amerika Serikat." #: gnucash/gschemas/org.gnucash.gschema.xml.in:160 -#: gnucash/gtkbuilder/dialog-preferences.glade:981 +#: gnucash/gtkbuilder/dialog-preferences.glade:1098 msgid "In the current calendar year" -msgstr "" +msgstr "Pada tahun kalender saat ini" #: gnucash/gschemas/org.gnucash.gschema.xml.in:161 #: gnucash/gschemas/org.gnucash.gschema.xml.in:166 @@ -11503,35 +11701,42 @@ msgid "" "within the current calendar year or close to the current date based on a " "sliding window starting a set number of months backwards in time." msgstr "" +"Ketika tanggal dimasukkan tanpa tahun, tanggal tersebut bisa dilengkapi " +"sehingga akan berada di dalam tahun kalender saat ini atau dekat dengan " +"tanggal saat ini berdasarkan pada jendela geser memulai sejumlah bulan " +"mundur dalam waktu." #: gnucash/gschemas/org.gnucash.gschema.xml.in:165 msgid "" "In a sliding 12-month window starting a configurable number of months before " "the current month" msgstr "" +"Dalam jendela geser 12-bulan memulai sejumlah bulan sebelum bulan berjalan" #: gnucash/gschemas/org.gnucash.gschema.xml.in:170 msgid "Maximum number of months to go back." -msgstr "" +msgstr "Jumlah maksimum bulan untuk kembali." #: gnucash/gschemas/org.gnucash.gschema.xml.in:171 -#: gnucash/gtkbuilder/dialog-preferences.glade:1007 +#: gnucash/gtkbuilder/dialog-preferences.glade:1124 msgid "" "Dates will be completed so that they are close to the current date. Enter " "the maximum number of months to go backwards in time when completing dates." msgstr "" +"Tanggal akan dilengkapi sehingga dekat dengan tanggal saat ini. Masukkan " +"jumlah maksimum bulan untuk mundur dalam waktu ketika melengkapi tanggal." #: gnucash/gschemas/org.gnucash.gschema.xml.in:175 msgid "Show Horizontal Grid Lines" -msgstr "Tampilkan Garis Kisi Horisontal" +msgstr "Tampilkan Garis Kisi Horizontal" #: gnucash/gschemas/org.gnucash.gschema.xml.in:176 msgid "" "If active, horizontal grid lines will be shown on table displays. Otherwise " "no horizontal grid lines will be shown." msgstr "" -"Jika aktif, garis kisi horisontal akan ditampilkan pada tampilan tabel. Jika " -"tidak, garis kisi horisontal tidak ditampilkan." +"Jika aktif, garis kisi horizontal akan ditampilkan pada tampilan tabel. Jika " +"tidak, garis kisi horizontal tidak ditampilkan." #: gnucash/gschemas/org.gnucash.gschema.xml.in:180 msgid "Show Vertical Grid Lines" @@ -11558,7 +11763,7 @@ msgstr "" "tidak, layar splash tidak ditampilkan." #: gnucash/gschemas/org.gnucash.gschema.xml.in:190 -#: gnucash/gtkbuilder/dialog-preferences.glade:3231 +#: gnucash/gtkbuilder/dialog-preferences.glade:3348 msgid "Display the notebook tabs at the top of the window." msgstr "Tampilkan tab buku catatan pada bagian atas jendela." @@ -11576,22 +11781,22 @@ msgstr "" "\"bawah\", dan \"kanan\". Nilai baku adalah \"atas\"." #: gnucash/gschemas/org.gnucash.gschema.xml.in:195 -#: gnucash/gtkbuilder/dialog-preferences.glade:3250 +#: gnucash/gtkbuilder/dialog-preferences.glade:3367 msgid "Display the notebook tabs at the bottom of the window." msgstr "Tampilkan tab buku catatan pada bagian bawah jendela." #: gnucash/gschemas/org.gnucash.gschema.xml.in:200 -#: gnucash/gtkbuilder/dialog-preferences.glade:3269 +#: gnucash/gtkbuilder/dialog-preferences.glade:3386 msgid "Display the notebook tabs at the left of the window." msgstr "Tampilkan tab buku catatan pada bagian kiri jendela." #: gnucash/gschemas/org.gnucash.gschema.xml.in:205 -#: gnucash/gtkbuilder/dialog-preferences.glade:3288 +#: gnucash/gtkbuilder/dialog-preferences.glade:3405 msgid "Display the notebook tabs at the right of the window." msgstr "Tampilkan tab buku catatan pada bagian kanan jendela." #: gnucash/gschemas/org.gnucash.gschema.xml.in:210 -#: gnucash/gtkbuilder/dialog-preferences.glade:3320 +#: gnucash/gtkbuilder/dialog-preferences.glade:3437 msgid "Display the summary bar at the top of the page." msgstr "Tampilkan bilah ikhtisar pada bagian atas halaman." @@ -11607,30 +11812,35 @@ msgstr "" "baku adalah \"bawah\"." #: gnucash/gschemas/org.gnucash.gschema.xml.in:215 -#: gnucash/gtkbuilder/dialog-preferences.glade:3339 +#: gnucash/gtkbuilder/dialog-preferences.glade:3456 msgid "Display the summary bar at the bottom of the page." msgstr "Tampilkan bilah ikhtisar pada bagian bawah halaman." #: gnucash/gschemas/org.gnucash.gschema.xml.in:220 -#: gnucash/gtkbuilder/dialog-preferences.glade:3189 +#: gnucash/gtkbuilder/dialog-preferences.glade:3306 msgid "Closing a tab moves to the most recently visited tab." msgstr "" +"Menutup sebuah tab memindahkannya ke tab yang baru-baru ini dikunjungi." #: gnucash/gschemas/org.gnucash.gschema.xml.in:221 msgid "" "If active, closing a tab moves to the most recently visited tab. Otherwise " "closing a tab moves one tab to the left." msgstr "" +"Jika aktif, menutup sebuah tab akan memindahkannya ke tab yang baru-baru ini " +"dikunjungi. Jika tidak, menutup sebuah tab akan memindahkan satu tab ke kiri." #: gnucash/gschemas/org.gnucash.gschema.xml.in:225 -#: gnucash/gtkbuilder/dialog-preferences.glade:1292 +#: gnucash/gtkbuilder/dialog-preferences.glade:1409 msgid "" "Set book option on new files to use split \"action\" field for \"Num\" field " "on registers/reports" msgstr "" +"Setel opsi buku pada berkas baru untuk menggunakan bidang \"aksi\" yang " +"terpisah untuk bidang \"Num\" pada register/laporan" #: gnucash/gschemas/org.gnucash.gschema.xml.in:226 -#: gnucash/gtkbuilder/dialog-preferences.glade:1298 +#: gnucash/gtkbuilder/dialog-preferences.glade:1415 msgid "" "If selected, the default book option for new files is set so that the 'Num' " "cell on registers shows/updates the split 'action' field and the transaction " @@ -11639,10 +11849,16 @@ msgid "" "files is set so that the 'Num' cell on registers shows/updates the " "transaction 'num' field." msgstr "" +"Jika dipilih, opsi buku secara baku untuk berkas baru akan disetel sehingga " +"sel 'Num' pada register menampilkan/memperbarui bidang 'aksi' yang terpisah " +"dan bidang 'num' transaksi ditampilkan pada baris kedua pada mode dua baris " +"(dan tidak terlihat dalam mode satu baris). Jika tidak, opsi buku secara " +"baku untuk berkas baru disetel sehingga sel 'Num' pada register menampilkan/" +"memperbarui bidang 'num' transaksi." #: gnucash/gschemas/org.gnucash.gschema.xml.in:235 msgid "Color the register using a gnucash specific color theme" -msgstr "" +msgstr "Warnai register menggunakan tema warna spesifik gnucash" #: gnucash/gschemas/org.gnucash.gschema.xml.in:236 msgid "" @@ -11652,35 +11868,45 @@ msgid "" "css file to be stored in the gnucash used config directory. More information " "can be found in the gnucash FAQ." msgstr "" +"Ketika diaktifkan, register akan menggunakan tema warna spesifik GnuCash " +"(hijau/kuning). Jika tidak, tema warna sistem akan digunakan. Terlepas dari " +"pengaturan ini, pengguna dapat selalu menimpa tema warna melalui berkas css " +"spesifik gnucash untuk disimpan direktori konfigurasi gnucash. Informasi " +"lebih lanjut dapat ditemukan di halaman FAQ gnucash." #: gnucash/gschemas/org.gnucash.gschema.xml.in:240 msgid "Superseded by \"use-gnucash-color-theme\"" -msgstr "" +msgstr "Digantikan oleh \"use-gnucash-color-theme\"" #: gnucash/gschemas/org.gnucash.gschema.xml.in:241 msgid "" "This option is temporarily kept around for backwards compatibility. It will " "be removed in a future version." msgstr "" +"Opsi ini sementara dipertahankan untuk kompatibilitas ke belakang. Opsi ini " +"akan dihapus pada versi di masa mendatang." #: gnucash/gschemas/org.gnucash.gschema.xml.in:245 msgid "\"Enter\" key moves to bottom of register" -msgstr "" +msgstr "Tombol \"Enter\" memindahkan ke bagian bawah register" #: gnucash/gschemas/org.gnucash.gschema.xml.in:246 msgid "" "If active, pressing the enter key will move to the bottom of the register. " "Otherwise pressing the enter key will move to the next transaction line." msgstr "" +"Jika aktif, menekan tombol enter akan memindahkan ke bagian bawah register. " +"Jika tidak, menekan tombol enter akan memindahkan ke baris transaksi " +"berikutnya." #: gnucash/gschemas/org.gnucash.gschema.xml.in:250 #: gnucash/gschemas/org.gnucash.gschema.xml.in:251 msgid "Automatically raise the list of accounts or actions during input" -msgstr "" +msgstr "Naikkan secara otomatis daftar akun atau aksi selama masukan" #: gnucash/gschemas/org.gnucash.gschema.xml.in:255 msgid "Move to Transfer field when memorised transaction auto filled" -msgstr "" +msgstr "Pindah ke bidang Transfer ketika transaksi yang diingat diisi otomatis" #: gnucash/gschemas/org.gnucash.gschema.xml.in:256 msgid "" @@ -11688,6 +11914,9 @@ msgid "" "cursor will move to the Transfer field. If not active then it skips to the " "value field." msgstr "" +"Jika aktif maka setelah transaksi yang diingat diisi secara otomatis, kursor " +"akan berpindah ke bidang Transfer. Jika tidak aktif, maka akan melompat ke " +"bidang nilai." #: gnucash/gschemas/org.gnucash.gschema.xml.in:260 msgid "Create a new window for each new register" @@ -11717,7 +11946,7 @@ msgstr "" #: gnucash/gschemas/org.gnucash.gschema.xml.in:270 msgid "Show horizontal borders in a register" -msgstr "Tampilkan garis tepi horisontal pada register" +msgstr "Tampilkan garis tepi horizontal pada register" #: gnucash/gschemas/org.gnucash.gschema.xml.in:271 msgid "" @@ -11725,7 +11954,7 @@ msgid "" "between cells will be indicated with a heavy line. Otherwise the border " "between cells will not be marked." msgstr "" -"Tampilkan garis tepi horisontal antar baris pada register. Jika aktif, garis " +"Tampilkan garis tepi horizontal antar baris pada register. Jika aktif, garis " "tepi antar sel akan diindikasikan dengan sebuah garis tebal. Jika tidak, " "garis tepi antar sel tidak akan diberi tanda." @@ -11755,9 +11984,13 @@ msgid "" "bottom of the register after the blank transaction. Otherwise the blank " "transaction will be at the bottom of the register after all transactions." msgstr "" +"Tampilkan transaksi masa mendatang setelah transaksi kosong di register. " +"Jika aktif, maka transaksi dengan tanggal di masa mendatang akan ditampilkan " +"di bagian bawah register setelah transaksi kosong. Jika tidak, transaksi " +"kosong akan berada di bagian bawah register setelah semua transaksi." #: gnucash/gschemas/org.gnucash.gschema.xml.in:285 -#: gnucash/gtkbuilder/dialog-preferences.glade:2625 +#: gnucash/gtkbuilder/dialog-preferences.glade:2742 msgid "Show all transactions on one line. (Two in double line mode.)" msgstr "Tampilkan semua transaksi dalam satu baris. (Dua pada mode dua baris.)" @@ -11772,18 +12005,28 @@ msgid "" "transaction to show all splits. The \"journal\" setting shows all " "transactions in expanded form." msgstr "" +"Bidang ini menentukan gaya tampilan baku saat membuka jendela register baru. " +"Nilai yang mungkin adalah \"buku\", \"buku-otomatis\" dan \"jurnal\". " +"Pengaturan \"buku\" artinya menampilkan setiap transaksi pada satu atau dua " +"baris. Pengaturan \"buku-otomatis\" juga melakukan hal yang sama, tetapi " +"juga mengekspansi hanya transaksi saat ini untuk menampilkan semua split. " +"Pengaturan \"jurnal\" artinya menampilkan semua transaksi dalam bentuk " +"terekspansi." #: gnucash/gschemas/org.gnucash.gschema.xml.in:290 -#: gnucash/gtkbuilder/dialog-preferences.glade:2644 +#: gnucash/gtkbuilder/dialog-preferences.glade:2761 msgid "" "Automatically expand the current transaction to show all splits. All other " "transactions are shown on one line. (Two in double line mode.)" msgstr "" +"Ekspansi transaksi saat ini secara otomatis untuk menampilkan semua split. " +"Semua transaksi lain ditampilkan dalam satu baris. (Dua dalam mode dua " +"baris.)" #: gnucash/gschemas/org.gnucash.gschema.xml.in:295 -#: gnucash/gtkbuilder/dialog-preferences.glade:2663 +#: gnucash/gtkbuilder/dialog-preferences.glade:2780 msgid "All transactions are expanded to show all splits." -msgstr "" +msgstr "Semua transaksi diekspansi untuk menampilkan semua split." #: gnucash/gschemas/org.gnucash.gschema.xml.in:300 msgid "" @@ -11800,10 +12043,14 @@ msgid "" "register is first opened. The setting can be changed at any time via the " "\"View->Double Line\" menu item." msgstr "" +"Tampilkan baris kedua dengan \"Aksi\", \"Catatan\", dan \"Dokumen Tertaut\" " +"untuk setiap transaksi di register. Ini adalah pengaturan baku untuk " +"register yang pertama kali dibuka. Pengaturan dapat diubah setiap saat " +"melalui item menu \"Lihat->Dua Baris\"." #: gnucash/gschemas/org.gnucash.gschema.xml.in:305 msgid "Only display leaf account names." -msgstr "" +msgstr "Hanya menampilkan nama akun daun." #: gnucash/gschemas/org.gnucash.gschema.xml.in:306 msgid "" @@ -11812,26 +12059,30 @@ msgid "" "including the path in the account tree. Activating this option implies that " "you use unique leaf names." msgstr "" +"Tampilkan hanya nama-nama akun daun di dalam register dan di dalam popup " +"pemilihan akun. Perilaku yang baku adalah menampilkan nama lengkap, termasuk " +"path di pohon akun. Mengaktifkan opsi ini berarti Anda akan menggunakan nama-" +"nama daun yang unik." #: gnucash/gschemas/org.gnucash.gschema.xml.in:310 msgid "Show the entered and reconcile dates" msgstr "Tampilkan tanggal dimasukkan dan direkonsiliasi" #: gnucash/gschemas/org.gnucash.gschema.xml.in:311 -#: gnucash/gtkbuilder/dialog-preferences.glade:2807 +#: gnucash/gtkbuilder/dialog-preferences.glade:2924 msgid "" "Show the date when the transaction was entered below the posted date and " "reconciled date on split row." msgstr "" "Tampilkan tanggal ketika transaksi dimasukkan di bawah tanggal pos dan " -"tanggal rekonsiliasi pada baris pemecahan." +"tanggal rekonsiliasi pada baris terpisah." #: gnucash/gschemas/org.gnucash.gschema.xml.in:315 msgid "Show entered and reconciled dates on selection" msgstr "Tampilkan tanggal dimasukkan dan direkonsiliasi pada pilihan" #: gnucash/gschemas/org.gnucash.gschema.xml.in:316 -#: gnucash/gtkbuilder/dialog-preferences.glade:2855 +#: gnucash/gtkbuilder/dialog-preferences.glade:2972 msgid "Show the entered date and reconciled date on transaction selection." msgstr "" "Tampilkan tanggal dimasukkan dan direkonsiliasi pada pilihan transaksi." @@ -11841,27 +12092,28 @@ msgid "Show the calendar buttons" msgstr "Tampilkan tombol kalender" #: gnucash/gschemas/org.gnucash.gschema.xml.in:321 -#: gnucash/gtkbuilder/dialog-preferences.glade:2823 +#: gnucash/gtkbuilder/dialog-preferences.glade:2940 msgid "Show the calendar buttons Cancel, Today and Select." msgstr "Tampilkan tombol kalender Batal, Hari Ini dan Pilih." #: gnucash/gschemas/org.gnucash.gschema.xml.in:325 msgid "Move the selection to the blank split on expand" -msgstr "" +msgstr "Pindahkan pemilihan ke split kosong saat ekspansi" #: gnucash/gschemas/org.gnucash.gschema.xml.in:326 -#: gnucash/gtkbuilder/dialog-preferences.glade:2839 +#: gnucash/gtkbuilder/dialog-preferences.glade:2956 msgid "" "This will move the selection to the blank split when the transaction is " "expanded." msgstr "" +"Ini akan memindahkan pemilihan ke split kosong ketika transaksi diekspansi." #: gnucash/gschemas/org.gnucash.gschema.xml.in:330 msgid "Number of transactions to show in a register." msgstr "Jumlah transaksi yang ditampilkan pada register." #: gnucash/gschemas/org.gnucash.gschema.xml.in:331 -#: gnucash/gtkbuilder/dialog-preferences.glade:2694 +#: gnucash/gtkbuilder/dialog-preferences.glade:2811 msgid "" "Show this many transactions in a register. A value of zero means show all " "transactions." @@ -11875,13 +12127,13 @@ msgstr "Jumlah karakter untuk lengkapi otomatis." #. Register2 feature #: gnucash/gschemas/org.gnucash.gschema.xml.in:336 -#: gnucash/gtkbuilder/dialog-preferences.glade:2784 +#: gnucash/gtkbuilder/dialog-preferences.glade:2901 msgid "" "This sets the number of characters before auto complete starts for " "description, notes and memo fields." msgstr "" -"Mengatur jumlah karakter sebelum lengkapi otomatis dimulai untuk deskripsi, " -"catatan dan bidang memo." +"Mengatur jumlah karakter sebelum lengkapi otomatis dimulai untuk bidang " +"deskripsi, catatan dan memo." #: gnucash/gschemas/org.gnucash.gschema.xml.in:343 msgid "Create a new window for each new report" @@ -11896,9 +12148,9 @@ msgstr "" "tidak, laporan baru akan dibuka sebagai tab pada jendela utama." #: gnucash/gschemas/org.gnucash.gschema.xml.in:348 -#: gnucash/gtkbuilder/dialog-preferences.glade:3058 +#: gnucash/gtkbuilder/dialog-preferences.glade:3175 msgid "Use the system locale currency for all newly created reports." -msgstr "" +msgstr "Gunakan mata uang lokal sistem untuk semua laporan yang baru dibuat." #: gnucash/gschemas/org.gnucash.gschema.xml.in:349 #: gnucash/gschemas/org.gnucash.gschema.xml.in:359 @@ -11908,9 +12160,13 @@ msgid "" "locale setting. If set to \"other\", GnuCash will use the setting specified " "by the currency-other key." msgstr "" +"Pengaturan ini menentukan mata uang baku yang digunakan pada laporan. Jika " +"disetel ke \"lokal\" maka GnuCash akan mengambil mata uang baku dari " +"pengaturan lokal pengguna. Jika disetel ke \"lainnya\", GnuCash akan " +"menggunakan pengaturan yang ditentukan oleh kunci currency-other." #: gnucash/gschemas/org.gnucash.gschema.xml.in:353 -#: gnucash/gtkbuilder/dialog-preferences.glade:3038 +#: gnucash/gtkbuilder/dialog-preferences.glade:3155 msgid "Use the specified currency for all newly created reports." msgstr "" "Gunakan mata uang yang telah ditentukan untuk semua laporan yang baru dibuat." @@ -11921,15 +12177,19 @@ msgstr "Mata uang baku untuk laporan baru" #: gnucash/gschemas/org.gnucash.gschema.xml.in:363 msgid "Zoom factor to use by default for reports." -msgstr "" +msgstr "Faktor perbesaran yang digunakan secara baku untuk laporan." #: gnucash/gschemas/org.gnucash.gschema.xml.in:364 -#: gnucash/gtkbuilder/dialog-preferences.glade:3073 +#: gnucash/gtkbuilder/dialog-preferences.glade:3190 msgid "" "On high resolution screens reports tend to be hard to read. This option " "allows you to scale reports up by the set factor. For example setting this " "to 2.0 will display reports at twice their typical size." msgstr "" +"Pada layar resolusi tinggi laporan cenderung sulit untuk dibaca. Opsi ini " +"memungkinkan Anda untuk mengatur skala laporan berdasarkan faktor set. " +"Misalnya mengatur ke 2.0 akan menampilkan laporan sebesar dua kali ukuran " +"sesungguhnya." #: gnucash/gschemas/org.gnucash.gschema.xml.in:373 msgid "PDF export file name format" @@ -11946,6 +12206,13 @@ msgid "" "in filenames, such as '/', will be replaced with underscores '_' in the " "resulting file name.)" msgstr "" +"Pengaturan ini memilih nama berkas untuk ekspor PDF. Ini adalah string " +"sprintf(3) dengan tiga argumen: \"%1$s\" adalah nama laporan seperti \"Faktur" +"\". \"%2$s\" adalah nomor laporan, yang untuk laporan faktur adalah nomor " +"faktur. \"%3$s\" adalah tanggal laporan, diformat sesuai dengan pengaturan " +"filename-date-format. (Catatan: Setiap karakter yang tidak diperbolehkan " +"dalam nama berkas, seperti '/', akan diganti dengan garis bawah '_' dalam " +"nama berkas yang dihasilkan.)" #: gnucash/gschemas/org.gnucash.gschema.xml.in:378 msgid "PDF export file name date format choice" @@ -11959,6 +12226,11 @@ msgid "" "standard dates , \"uk\" for United Kingdom style dates, and \"us\" for " "United States style dates." msgstr "" +"Pengaturan ini memilih cara penggunaan tanggal dalam nama berkas ekspor PDF. " +"Nilai yang mungkin untuk pengaturan ini adalah \"lokal\" untuk menggunakan " +"pengaturan sistem lokal, \"ce\" untuk gaya tanggal Benua Eropa, \"iso\" " +"untuk standar tanggal ISO 8601, \"uk\" untuk gaya tanggal Inggris, dan \"us" +"\" untuk gaya tanggal Amerika Serikat." #: gnucash/gschemas/org.gnucash.gschema.xml.in:385 msgid "Allow file incompatibility with older versions." @@ -11971,6 +12243,11 @@ msgid "" "read by an older version again. Otherwise gnucash will write data files only " "in formats that can be read by older versions as well." msgstr "" +"Jika aktif, gnucash akan diizinkan untuk sengaja mematahkan kompatibilitas " +"berkas dengan versi lama, sehingga berkas data yang disimpan dalam versi ini " +"tidak dapat dibaca lagi oleh versi yang lebih lama. Jika tidak, gnucash akan " +"menulis berkas data hanya dalam format yang juga dapat dibaca oleh versi " +"yang lebih lama." #: gnucash/gschemas/org.gnucash.history.gschema.xml.in:5 msgid "Number of files in history" @@ -12022,60 +12299,75 @@ msgstr "" "selanjutnya." #: gnucash/gschemas/org.gnucash.warnings.gschema.xml.in:9 -#: gnucash/gschemas/org.gnucash.warnings.gschema.xml.in:107 +#: gnucash/gschemas/org.gnucash.warnings.gschema.xml.in:112 msgid "Print checks from multiple accounts" -msgstr "" +msgstr "Cetak cek dari beberapa akun" #: gnucash/gschemas/org.gnucash.warnings.gschema.xml.in:10 -#: gnucash/gschemas/org.gnucash.warnings.gschema.xml.in:108 +#: gnucash/gschemas/org.gnucash.warnings.gschema.xml.in:113 msgid "" "This dialog is presented if you try to print checks from multiple accounts " "at the same time." msgstr "" +"Dialog ini ditampilkan jika Anda mencoba untuk mencetak cek dari beberapa " +"akun pada satu waktu." #: gnucash/gschemas/org.gnucash.warnings.gschema.xml.in:14 -#: gnucash/gschemas/org.gnucash.warnings.gschema.xml.in:112 -#, fuzzy -msgid "Commit changes to a invoice entry" -msgstr "Tampilkan perubahan yang diperkenalkan oleh komit yang dipilih" +#: gnucash/gschemas/org.gnucash.warnings.gschema.xml.in:117 +msgid "Confirm Window Close" +msgstr "Konfirmasi Tutup Jendela" #: gnucash/gschemas/org.gnucash.warnings.gschema.xml.in:15 -#: gnucash/gschemas/org.gnucash.warnings.gschema.xml.in:113 +#: gnucash/gschemas/org.gnucash.warnings.gschema.xml.in:118 +msgid "This dialog is presented when there is more than one window." +msgstr "Dialog ini ditampilkan ketika ada lebih dari satu jendela." + +#: gnucash/gschemas/org.gnucash.warnings.gschema.xml.in:19 +#: gnucash/gschemas/org.gnucash.warnings.gschema.xml.in:122 +msgid "Commit changes to a invoice entry" +msgstr "Komit perubahan ke entri faktur" + +#: gnucash/gschemas/org.gnucash.warnings.gschema.xml.in:20 +#: gnucash/gschemas/org.gnucash.warnings.gschema.xml.in:123 msgid "" "This dialog is presented when you attempt to move out of a modified invoice " "entry. The changed data must be either saved or discarded." msgstr "" +"Dialog ini ditampilkan ketika Anda mencoba untuk keluar dari entri faktur " +"yang dimodifikasi. Data yang diubah harus disimpan atau dibuang." -#: gnucash/gschemas/org.gnucash.warnings.gschema.xml.in:19 -#: gnucash/gschemas/org.gnucash.warnings.gschema.xml.in:117 +#: gnucash/gschemas/org.gnucash.warnings.gschema.xml.in:24 +#: gnucash/gschemas/org.gnucash.warnings.gschema.xml.in:127 msgid "Duplicating a changed invoice entry" -msgstr "" +msgstr "Duplikasi entri faktur yang diubah" -#: gnucash/gschemas/org.gnucash.warnings.gschema.xml.in:20 -#: gnucash/gschemas/org.gnucash.warnings.gschema.xml.in:118 +#: gnucash/gschemas/org.gnucash.warnings.gschema.xml.in:25 +#: gnucash/gschemas/org.gnucash.warnings.gschema.xml.in:128 msgid "" "This dialog is presented when you attempt to duplicate a modified invoice " "entry. The changed data must be saved or the duplication canceled." msgstr "" +"Dialog ini ditampilkan ketika Anda mencoba untuk menduplikasi entri faktur " +"yang dimodifikasi. Data yang diubah harus disimpan atau duplikasi dibatalkan." -#: gnucash/gschemas/org.gnucash.warnings.gschema.xml.in:24 -#: gnucash/gschemas/org.gnucash.warnings.gschema.xml.in:122 +#: gnucash/gschemas/org.gnucash.warnings.gschema.xml.in:29 +#: gnucash/gschemas/org.gnucash.warnings.gschema.xml.in:132 msgid "Delete a commodity" msgstr "Hapus komoditas" -#: gnucash/gschemas/org.gnucash.warnings.gschema.xml.in:25 -#: gnucash/gschemas/org.gnucash.warnings.gschema.xml.in:123 +#: gnucash/gschemas/org.gnucash.warnings.gschema.xml.in:30 +#: gnucash/gschemas/org.gnucash.warnings.gschema.xml.in:133 msgid "This dialog is presented before allowing you to delete a commodity." msgstr "" "Dialog ini ditampilkan sebelum memungkinkan Anda menghapus sebuah komoditas." -#: gnucash/gschemas/org.gnucash.warnings.gschema.xml.in:29 -#: gnucash/gschemas/org.gnucash.warnings.gschema.xml.in:127 +#: gnucash/gschemas/org.gnucash.warnings.gschema.xml.in:34 +#: gnucash/gschemas/org.gnucash.warnings.gschema.xml.in:137 msgid "Delete a commodity with price quotes" msgstr "Hapus komoditas dengan harga penawaran" -#: gnucash/gschemas/org.gnucash.warnings.gschema.xml.in:30 -#: gnucash/gschemas/org.gnucash.warnings.gschema.xml.in:128 +#: gnucash/gschemas/org.gnucash.warnings.gschema.xml.in:35 +#: gnucash/gschemas/org.gnucash.warnings.gschema.xml.in:138 msgid "" "This dialog is presented before allowing you to delete a commodity that has " "price quotes attached. Deleting the commodity will delete the quotes as well." @@ -12084,13 +12376,13 @@ msgstr "" "memiliki harga penawaran. Menghapus komoditas juga akan menghapus harga " "penawaran." -#: gnucash/gschemas/org.gnucash.warnings.gschema.xml.in:34 -#: gnucash/gschemas/org.gnucash.warnings.gschema.xml.in:132 +#: gnucash/gschemas/org.gnucash.warnings.gschema.xml.in:39 +#: gnucash/gschemas/org.gnucash.warnings.gschema.xml.in:142 msgid "Delete multiple price quotes" msgstr "Hapus beberapa harga penawaran" -#: gnucash/gschemas/org.gnucash.warnings.gschema.xml.in:35 -#: gnucash/gschemas/org.gnucash.warnings.gschema.xml.in:133 +#: gnucash/gschemas/org.gnucash.warnings.gschema.xml.in:40 +#: gnucash/gschemas/org.gnucash.warnings.gschema.xml.in:143 msgid "" "This dialog is presented before allowing you to delete multiple price quotes " "at one time." @@ -12098,189 +12390,218 @@ msgstr "" "Dialog ini ditampilkan sebelum memungkinkan Anda menghapus beberapa harga " "penawaran dalam satu waktu." -#: gnucash/gschemas/org.gnucash.warnings.gschema.xml.in:39 -#: gnucash/gschemas/org.gnucash.warnings.gschema.xml.in:137 +#: gnucash/gschemas/org.gnucash.warnings.gschema.xml.in:44 +#: gnucash/gschemas/org.gnucash.warnings.gschema.xml.in:147 msgid "Replace existing price" msgstr "Ganti harga yang sudah ada" -#: gnucash/gschemas/org.gnucash.warnings.gschema.xml.in:40 -#: gnucash/gschemas/org.gnucash.warnings.gschema.xml.in:138 +#: gnucash/gschemas/org.gnucash.warnings.gschema.xml.in:45 +#: gnucash/gschemas/org.gnucash.warnings.gschema.xml.in:148 msgid "" "This dialog is presented before allowing you to replace an existing price." msgstr "" "Dialog ini ditampilkan sebelum memungkinkan Anda mengganti harga yang sudah " "ada." -#: gnucash/gschemas/org.gnucash.warnings.gschema.xml.in:44 -#: gnucash/gschemas/org.gnucash.warnings.gschema.xml.in:142 +#: gnucash/gschemas/org.gnucash.warnings.gschema.xml.in:49 +#: gnucash/gschemas/org.gnucash.warnings.gschema.xml.in:152 msgid "Edit account payable/accounts receivable register" msgstr "Sunting register akun utang/akun piutang" -#: gnucash/gschemas/org.gnucash.warnings.gschema.xml.in:45 -#: gnucash/gschemas/org.gnucash.warnings.gschema.xml.in:143 +#: gnucash/gschemas/org.gnucash.warnings.gschema.xml.in:50 +#: gnucash/gschemas/org.gnucash.warnings.gschema.xml.in:153 msgid "" "This dialog is presented before allowing you to edit an accounts payable/" "accounts receivable account. These account types are reserved for the " "business features and should rarely be manipulated manually." msgstr "" +"Dialog ini ditampilkan sebelum mengizinkan Anda untuk menyunting akun utang/" +"piutang. Tipe akun ini disediakan untuk fitur-fitur bisnis dan sebaiknya " +"tidak dimanipulasi secara manual." -#: gnucash/gschemas/org.gnucash.warnings.gschema.xml.in:49 -#: gnucash/gschemas/org.gnucash.warnings.gschema.xml.in:147 +#: gnucash/gschemas/org.gnucash.warnings.gschema.xml.in:54 +#: gnucash/gschemas/org.gnucash.warnings.gschema.xml.in:157 msgid "Read only register" msgstr "Register hanya baca" -#: gnucash/gschemas/org.gnucash.warnings.gschema.xml.in:50 -#: gnucash/gschemas/org.gnucash.warnings.gschema.xml.in:148 +#: gnucash/gschemas/org.gnucash.warnings.gschema.xml.in:55 +#: gnucash/gschemas/org.gnucash.warnings.gschema.xml.in:158 msgid "This dialog is presented when a read-only register is opened." msgstr "Dialog ini ditampilkan ketika register hanya-baca dibuka." -#: gnucash/gschemas/org.gnucash.warnings.gschema.xml.in:54 -#: gnucash/gschemas/org.gnucash.warnings.gschema.xml.in:152 +#: gnucash/gschemas/org.gnucash.warnings.gschema.xml.in:59 +#: gnucash/gschemas/org.gnucash.warnings.gschema.xml.in:162 msgid "Change contents of reconciled split" -msgstr "Ubah isi pemecahan direkonsiliasi" +msgstr "Ubah isi split direkonsiliasi" -#: gnucash/gschemas/org.gnucash.warnings.gschema.xml.in:55 -#: gnucash/gschemas/org.gnucash.warnings.gschema.xml.in:153 +#: gnucash/gschemas/org.gnucash.warnings.gschema.xml.in:60 +#: gnucash/gschemas/org.gnucash.warnings.gschema.xml.in:163 msgid "" "This dialog is presented before allowing you to change the contents of a " "reconciled split. Allowing these changes can make it hard to perform future " "reconciliations." msgstr "" +"Dialog ini ditampilkan sebelum mengizinkan Anda mengubah isi split " +"direkonsiliasi. Mengizinkan perubahan itu bisa menjadikannya sulit untuk " +"melakukan rekonsiliasi yang akan datang." -#: gnucash/gschemas/org.gnucash.warnings.gschema.xml.in:59 -#: gnucash/gschemas/org.gnucash.warnings.gschema.xml.in:157 +#: gnucash/gschemas/org.gnucash.warnings.gschema.xml.in:64 +#: gnucash/gschemas/org.gnucash.warnings.gschema.xml.in:167 msgid "Mark transaction split as unreconciled" -msgstr "Tandai pemecahan transaksi sebagai tak direkonsiliasi" +msgstr "Tandai split transaksi sebagai tak direkonsiliasi" -#: gnucash/gschemas/org.gnucash.warnings.gschema.xml.in:60 -#: gnucash/gschemas/org.gnucash.warnings.gschema.xml.in:158 +#: gnucash/gschemas/org.gnucash.warnings.gschema.xml.in:65 +#: gnucash/gschemas/org.gnucash.warnings.gschema.xml.in:168 msgid "" "This dialog is presented before allowing you to mark a transaction split as " "unreconciled. Doing so will throw off the reconciled value of the register " "and can make it hard to perform future reconciliations." msgstr "" +"Dialog ini akan ditampilkan sebelum mengizinkan Anda untuk menandai sebuah " +"split transaksi sebagai tak direkonsiliasi. Melakukan hal ini akan membuang " +"semua nilai direkonsiliasi dari register dan bisa mempersulit rekonsiliasi " +"di masa depan." -#: gnucash/gschemas/org.gnucash.warnings.gschema.xml.in:64 -#: gnucash/gschemas/org.gnucash.warnings.gschema.xml.in:162 +#: gnucash/gschemas/org.gnucash.warnings.gschema.xml.in:69 +#: gnucash/gschemas/org.gnucash.warnings.gschema.xml.in:172 msgid "Remove a split from a transaction" -msgstr "Hapus pemecahan dari transaksi" +msgstr "Hapus split dari transaksi" -#: gnucash/gschemas/org.gnucash.warnings.gschema.xml.in:65 -#: gnucash/gschemas/org.gnucash.warnings.gschema.xml.in:163 +#: gnucash/gschemas/org.gnucash.warnings.gschema.xml.in:70 +#: gnucash/gschemas/org.gnucash.warnings.gschema.xml.in:173 msgid "" "This dialog is presented before allowing you to remove a split from a " "transaction." msgstr "" -"Dialog ini ditampilkan sebelum memungkinkan Anda menghapus pemecahan dari " -"sebuah transaksi" +"Dialog ini ditampilkan sebelum memungkinkan Anda menghapus sebuah split dari " +"suatu transaksi." -#: gnucash/gschemas/org.gnucash.warnings.gschema.xml.in:69 -#: gnucash/gschemas/org.gnucash.warnings.gschema.xml.in:167 +#: gnucash/gschemas/org.gnucash.warnings.gschema.xml.in:74 +#: gnucash/gschemas/org.gnucash.warnings.gschema.xml.in:177 msgid "Remove a reconciled split from a transaction" -msgstr "Hapus pemecahan yang direkonsiliasi dari transaksi" +msgstr "Hapus split yang direkonsiliasi dari transaksi" -#: gnucash/gschemas/org.gnucash.warnings.gschema.xml.in:70 -#: gnucash/gschemas/org.gnucash.warnings.gschema.xml.in:168 +#: gnucash/gschemas/org.gnucash.warnings.gschema.xml.in:75 +#: gnucash/gschemas/org.gnucash.warnings.gschema.xml.in:178 msgid "" "This dialog is presented before allowing you to remove a reconciled split " "from a transaction. Doing so will throw off the reconciled value of the " "register and can make it hard to perform future reconciliations." msgstr "" +"Dialog ini akan ditampilkan sebelum mengizinkan Anda untuk menghapus sebuah " +"split direkonsiliasi dari suatu transaksi. Melakukan hal ini akan membuang " +"semua nilai direkonsiliasi dari register dan bisa mempersulit rekonsiliasi " +"di masa depan." -#: gnucash/gschemas/org.gnucash.warnings.gschema.xml.in:74 #: gnucash/gschemas/org.gnucash.warnings.gschema.xml.in:79 -#: gnucash/gschemas/org.gnucash.warnings.gschema.xml.in:172 -#: gnucash/gschemas/org.gnucash.warnings.gschema.xml.in:177 +#: gnucash/gschemas/org.gnucash.warnings.gschema.xml.in:84 +#: gnucash/gschemas/org.gnucash.warnings.gschema.xml.in:182 +#: gnucash/gschemas/org.gnucash.warnings.gschema.xml.in:187 msgid "Remove all the splits from a transaction" -msgstr "Hapus semua pemecahan dari transaksi" +msgstr "Hapus semua split dari transaksi" -#: gnucash/gschemas/org.gnucash.warnings.gschema.xml.in:75 -#: gnucash/gschemas/org.gnucash.warnings.gschema.xml.in:173 +#: gnucash/gschemas/org.gnucash.warnings.gschema.xml.in:80 +#: gnucash/gschemas/org.gnucash.warnings.gschema.xml.in:183 msgid "" "This dialog is presented before allowing you to remove all splits from a " "transaction." msgstr "" -"Dialog ini ditampilkan sebelum memungkinkan Anda menghapus semua pemecahan " -"dari sebuah transaksi." +"Dialog ini ditampilkan sebelum memungkinkan Anda menghapus semua split dari " +"sebuah transaksi." -#: gnucash/gschemas/org.gnucash.warnings.gschema.xml.in:80 -#: gnucash/gschemas/org.gnucash.warnings.gschema.xml.in:178 +#: gnucash/gschemas/org.gnucash.warnings.gschema.xml.in:85 +#: gnucash/gschemas/org.gnucash.warnings.gschema.xml.in:188 msgid "" "This dialog is presented before allowing you to remove all splits (including " "some reconciled splits) from a transaction. Doing so will throw off the " "reconciled value of the register and can make it hard to perform future " "reconciliations." msgstr "" +"Dialog ini akan ditampilkan sebelum mengizinkan Anda menghapus semua split " +"(termasuk beberapa split direkonsiliasi) dari suatu transaksi. Melakukan hal " +"ini akan membuang semua nilai direkonsiliasi dari register dan bisa " +"mempersulit rekonsiliasi di masa depan." -#: gnucash/gschemas/org.gnucash.warnings.gschema.xml.in:84 -#: gnucash/gschemas/org.gnucash.warnings.gschema.xml.in:182 +#: gnucash/gschemas/org.gnucash.warnings.gschema.xml.in:89 +#: gnucash/gschemas/org.gnucash.warnings.gschema.xml.in:192 msgid "Delete a transaction" msgstr "Hapus transaksi" -#: gnucash/gschemas/org.gnucash.warnings.gschema.xml.in:85 -#: gnucash/gschemas/org.gnucash.warnings.gschema.xml.in:183 +#: gnucash/gschemas/org.gnucash.warnings.gschema.xml.in:90 +#: gnucash/gschemas/org.gnucash.warnings.gschema.xml.in:193 msgid "This dialog is presented before allowing you to delete a transaction." msgstr "" "Dialog ini ditampilkan sebelum memungkinkan Anda menghapus sebuah transaksi." -#: gnucash/gschemas/org.gnucash.warnings.gschema.xml.in:89 -#: gnucash/gschemas/org.gnucash.warnings.gschema.xml.in:187 +#: gnucash/gschemas/org.gnucash.warnings.gschema.xml.in:94 +#: gnucash/gschemas/org.gnucash.warnings.gschema.xml.in:197 msgid "Delete a transaction with reconciled splits" -msgstr "Hapus transaksi dengan pemecahan direkonsiliasi" +msgstr "Hapus transaksi dengan split direkonsiliasi" -#: gnucash/gschemas/org.gnucash.warnings.gschema.xml.in:90 -#: gnucash/gschemas/org.gnucash.warnings.gschema.xml.in:188 +#: gnucash/gschemas/org.gnucash.warnings.gschema.xml.in:95 +#: gnucash/gschemas/org.gnucash.warnings.gschema.xml.in:198 msgid "" "This dialog is presented before allowing you to delete a transaction that " "contains reconciled splits. Doing so will throw off the reconciled value of " "the register and can make it hard to perform future reconciliations." msgstr "" +"Dialog ini akan ditampilkan sebelum mengizinkan Anda menghapus suatu " +"transaksi yang berisi split direkonsiliasi. Melakukan hal ini akan membuang " +"nilai direkonsiliasi dari register dan bisa mempersulit rekonsiliasi di masa " +"depan." -#: gnucash/gschemas/org.gnucash.warnings.gschema.xml.in:94 -#: gnucash/gschemas/org.gnucash.warnings.gschema.xml.in:192 -#, fuzzy +#: gnucash/gschemas/org.gnucash.warnings.gschema.xml.in:99 +#: gnucash/gschemas/org.gnucash.warnings.gschema.xml.in:202 msgid "Duplicating a changed transaction" -msgstr "Menduplikasi bingkai…" +msgstr "Menduplikasi transaksi yang diubah" -#: gnucash/gschemas/org.gnucash.warnings.gschema.xml.in:95 -#: gnucash/gschemas/org.gnucash.warnings.gschema.xml.in:193 +#: gnucash/gschemas/org.gnucash.warnings.gschema.xml.in:100 +#: gnucash/gschemas/org.gnucash.warnings.gschema.xml.in:203 msgid "" "This dialog is presented when you attempt to duplicate a modified " "transaction. The changed data must be saved or the duplication canceled." msgstr "" +"Dialog ini ditampilkan ketika Anda mencoba untuk menduplikasi transaksi yang " +"telah dimodifikasi. Data yang diubah harus disimpan atau duplikasi " +"dibatalkan." -#: gnucash/gschemas/org.gnucash.warnings.gschema.xml.in:99 -#: gnucash/gschemas/org.gnucash.warnings.gschema.xml.in:197 -#, fuzzy +#: gnucash/gschemas/org.gnucash.warnings.gschema.xml.in:104 +#: gnucash/gschemas/org.gnucash.warnings.gschema.xml.in:207 msgid "Commit changes to a transaction" -msgstr "transaksi" +msgstr "Komit perubahan pada transaksi" -#: gnucash/gschemas/org.gnucash.warnings.gschema.xml.in:100 -#: gnucash/gschemas/org.gnucash.warnings.gschema.xml.in:198 +#: gnucash/gschemas/org.gnucash.warnings.gschema.xml.in:105 +#: gnucash/gschemas/org.gnucash.warnings.gschema.xml.in:208 msgid "" "This dialog is presented when you attempt to move out of a modified " "transaction. The changed data must be either saved or discarded." msgstr "" +"Dialog ini ditampilkan ketika Anda mencoba untuk keluar dari transaksi yang " +"telah dimodifikasi. Data yang diubah harus disimpan atau dibuang." #: gnucash/gschemas/org.gnucash.window.pages.account.tree.gschema.xml.in:5 #: gnucash/gschemas/org.gnucash.window.pages.account.tree.gschema.xml.in:6 msgid "" "Show a grand total of all accounts converted to the default report currency" msgstr "" +"Tampilkan total keseluruhan untuk semua akun yang dikonversikan ke mata uang " +"baku untuk laporan" #: gnucash/gschemas/org.gnucash.window.pages.account.tree.gschema.xml.in:10 msgid "Show non currency commodities" -msgstr "" +msgstr "Tampilkan komoditas yang bukan mata uang" #: gnucash/gschemas/org.gnucash.window.pages.account.tree.gschema.xml.in:11 msgid "" "If active, non currency commodities (stocks) will be shown. Otherwise they " "will be hidden." msgstr "" +"Jika aktif, komoditas yang bukan mata uang (saham) akan ditampilkan. Jika " +"tidak, akan disembunyikan." #: gnucash/gschemas/org.gnucash.window.pages.account.tree.gschema.xml.in:15 msgid "Use relative profit/loss starting date" -msgstr "" +msgstr "Gunakan tanggal mulai laba/rugi relatif" #: gnucash/gschemas/org.gnucash.window.pages.account.tree.gschema.xml.in:16 #: gnucash/gschemas/org.gnucash.window.pages.account.tree.gschema.xml.in:21 @@ -12290,14 +12611,19 @@ msgid "" "date specified by the start-date key. If set to anything else, GnuCash will " "retrieve the starting date specified by the start-period key." msgstr "" +"Pengaturan ini menentukan tipe tanggal mulai yang digunakan dalam " +"perhitungan laba/rugi. Jika disetel \"absolut\" maka GnuCash akan mengambil " +"tanggal mulai yang ditentukan oleh kunci tanggal-mulai. Jika disetel " +"selainnya, GnuCash akan mengambil tanggal mulai yang ditentukan oleh kunci " +"periode-mulai." #: gnucash/gschemas/org.gnucash.window.pages.account.tree.gschema.xml.in:20 msgid "Use absolute profit/loss starting date" -msgstr "" +msgstr "Gunakan tanggal mulai laba/rugi absolut" #: gnucash/gschemas/org.gnucash.window.pages.account.tree.gschema.xml.in:25 msgid "Starting date (in seconds from Jan 1, 1970)" -msgstr "" +msgstr "Tanggal mulai (dalam detik dari 1 Januari 1970)" #: gnucash/gschemas/org.gnucash.window.pages.account.tree.gschema.xml.in:26 msgid "" @@ -12305,11 +12631,14 @@ msgid "" "the start-choice setting is set to \"absolute\". This field should contain a " "date as represented in seconds from January 1st, 1970." msgstr "" +"Pengaturan ini menentukan tanggal mulai yang disetel di perhitungan laba/" +"rugi jika pengaturan pilihan-mulai disetel \"absolut\". Bidang ini harus " +"berisi sebuah tanggal yang direpresentasikan dalam detik sejak 1 Januari " +"1970." #: gnucash/gschemas/org.gnucash.window.pages.account.tree.gschema.xml.in:30 -#, fuzzy msgid "Starting time period identifier" -msgstr "Memulai Kontak untuk pertama kali" +msgstr "Pengidentifikasi periode waktu mulai" #: gnucash/gschemas/org.gnucash.window.pages.account.tree.gschema.xml.in:31 msgid "" @@ -12317,10 +12646,13 @@ msgid "" "the start-choice setting is set to anything other than \"absolute\". This " "field should contain a value between 0 and 8." msgstr "" +"Pengaturan ini menentukan tanggal mulai yang disetel di perhitungan laba/" +"rugi jika pengaturan pilihan-mulai disetel selain \"absolut\". Bidang ini " +"harus berisi nilai antara 0 dan 8." #: gnucash/gschemas/org.gnucash.window.pages.account.tree.gschema.xml.in:35 msgid "Use relative profit/loss ending date" -msgstr "" +msgstr "Gunakan tanggal akhir laba/rugi relatif" #: gnucash/gschemas/org.gnucash.window.pages.account.tree.gschema.xml.in:36 #: gnucash/gschemas/org.gnucash.window.pages.account.tree.gschema.xml.in:41 @@ -12330,14 +12662,19 @@ msgid "" "date specified by the end-date key. If set to anything else, GnuCash will " "retrieve the ending date specified by the end-period key." msgstr "" +"Pengaturan ini menentukan tipe tanggal akhir yang digunakan di perhitungan " +"laba/rugi. Jika disetel \"absolut\" maka GnuCash akan mengambil tanggal " +"akhir yang ditentukan oleh kunci tanggal-akhir. Jika disetel selainnya, " +"GnuCash akan mengambil tanggal akhir yang ditentukan oleh kunci periode-" +"akhir." #: gnucash/gschemas/org.gnucash.window.pages.account.tree.gschema.xml.in:40 msgid "Use absolute profit/loss ending date" -msgstr "" +msgstr "Gunakan tanggal akhir laba/rugi absolut" #: gnucash/gschemas/org.gnucash.window.pages.account.tree.gschema.xml.in:45 msgid "Ending date (in seconds from Jan 1, 1970)" -msgstr "" +msgstr "Tanggal akhir (dalam detik dari 1 Januari 1970)" #: gnucash/gschemas/org.gnucash.window.pages.account.tree.gschema.xml.in:46 msgid "" @@ -12345,11 +12682,14 @@ msgid "" "end-choice setting is set to \"absolute\". This field should contain a date " "as represented in seconds from January 1st, 1970." msgstr "" +"Pengaturan ini menentukan tanggal akhir yang disetel di perhitungan laba/" +"rugi jika pengaturan pilihan-akhir disetel \"absolut\". Bidang ini harus " +"berisi sebuah tanggal yang direpresentasikan dalam detik sejak 1 Januari " +"1970." #: gnucash/gschemas/org.gnucash.window.pages.account.tree.gschema.xml.in:50 -#, fuzzy msgid "Ending time period identifier" -msgstr "periode waktu" +msgstr "Pengidentifikasi periode waktu akhir" #: gnucash/gschemas/org.gnucash.window.pages.account.tree.gschema.xml.in:51 msgid "" @@ -12357,26 +12697,29 @@ msgid "" "end-choice setting is set to anything other than \"absolute\". This field " "should contain a value between 0 and 8." msgstr "" +"Pengaturan ini menentukan tanggal akhir yang disetel di perhitungan laba/" +"rugi jika pengaturan pilihan-akhir disetel selain \"absolut\". Bidang ini " +"harus berisi nilai antara 0 dan 8." #: gnucash/gschemas/org.gnucash.window.pages.gschema.xml.in:5 -#, fuzzy msgid "Display this column" -msgstr "Tampilkan kolom jenis di jendela utama." +msgstr "Tampilkan kolom ini" #: gnucash/gschemas/org.gnucash.window.pages.gschema.xml.in:6 msgid "" "This setting controls whether the given column will be visible in the view. " "TRUE means visible, FALSE means hidden." msgstr "" +"Pengaturan ini menentukan apakah suatu kolom akan tampak pada tampilan. TRUE " +"berarti tampak, FALSE berarti tersembunyi." #: gnucash/gschemas/org.gnucash.window.pages.gschema.xml.in:10 -#, fuzzy msgid "Width of this column" -msgstr "Kolom Lebar dalam Karakter" +msgstr "Lebar kolom ini" #: gnucash/gschemas/org.gnucash.window.pages.gschema.xml.in:11 msgid "This setting stores the width of the given column in pixels." -msgstr "" +msgstr "Pengaturan ini menentukan lebar suatu kolom dalam piksel." #: gnucash/gtkbuilder/assistant-acct-period.glade:29 msgid "" @@ -12386,11 +12729,16 @@ msgid "" "development. It will probably damage your data in such a way that it cannot " "be repaired!" msgstr "" +"Asisten ini akan membantu Anda menyiapkan dan menggunakan periode " +"akuntansi.\n" +"\n" +"Bahaya: fitur ini tidak bekerja dengan benar pada saat ini; fitur ini masih " +"dalam pengembangan. Fitur ini mungkin akan merusak data Anda sedemikian rupa " +"sehingga tidak dapat diperbaiki!" #: gnucash/gtkbuilder/assistant-acct-period.glade:36 -#, fuzzy msgid "Setup Account Period" -msgstr "Penyiapan" +msgstr "Pengaturan Periode Akuntansi" #: gnucash/gtkbuilder/assistant-acct-period.glade:50 msgid "" @@ -12400,6 +12748,11 @@ msgid "" "\n" "Books will be closed at midnight on the selected date." msgstr "" +"\n" +"Pilih periode akuntansi dan tanggal penutupan yang bukan di masa depan dan " +"lebih besar dari tanggal penutupan buku sebelumnya.\n" +"\n" +"Buku akan ditutup pada tengah malam pada tanggal yang dipilih." #: gnucash/gtkbuilder/assistant-acct-period.glade:82 #: gnucash/gtkbuilder/assistant-acct-period.glade:107 @@ -12407,7 +12760,7 @@ msgstr "" #: gnucash/gtkbuilder/assistant-acct-period.glade:216 #: gnucash/gtkbuilder/assistant-acct-period.glade:235 msgid "xxx" -msgstr "" +msgstr "xxx" #: gnucash/gtkbuilder/assistant-acct-period.glade:94 msgid "Book Closing Dates" @@ -12419,23 +12772,20 @@ msgid "Close Book" msgstr "Tutup Buku" #: gnucash/gtkbuilder/assistant-acct-period.glade:222 -#, fuzzy msgid "Account Period Finish" -msgstr "_Selesai" +msgstr "Periode Akun Selesai" #: gnucash/gtkbuilder/assistant-acct-period.glade:249 msgid "Press 'Close' to Exit." msgstr "Tekan 'Tutup' untuk Keluar." #: gnucash/gtkbuilder/assistant-acct-period.glade:260 -#, fuzzy msgid "Summary Page" -msgstr "[Tanpa Judul]" +msgstr "Halaman Ikhtisar" #: gnucash/gtkbuilder/assistant-csv-account-import.glade:13 -#, fuzzy msgid "CSV Import Assistant" -msgstr "Program Bantu Impor Evolution" +msgstr "Asisten Impor CSV" #. Run the assistant in your language to see GTK's translation of the button labels. #: gnucash/gtkbuilder/assistant-csv-account-import.glade:42 @@ -12454,79 +12804,68 @@ msgid "" "\n" "Click on \"Next\" to proceed or \"Cancel\" to Abort Import.\n" msgstr "" +"\n" +"Asisten ini akan membantu Anda mengimpor Akun dari sebuah berkas.\n" +"\n" +"Berkas harus menggunakan format yang sama seperti yang diekspor karena ini " +"adalah impor format tetap yang bisa dilihat dengan memeriksa berkas yang " +"dibuat dengan menggunakan opsi menu ekspor \"Ekspor Pohon Akun ke CSV\".\n" +"\n" +"Jika akun tidak ditemukan, berdasarkan nama lengkap akun, ia akan " +"ditambahkan sepanjang sekuritas / mata uang tersedia. Jika akun tersedia, " +"maka empat bidang akan diperbarui. Bidang tersebut adalah kode, deskripsi, " +"catatan dan warna.\n" +"\n" +"Klik pada \"Berikutnya\" untuk melanjutkan atau \"Batal\" untuk Membatalkan " +"Impor.\n" #: gnucash/gtkbuilder/assistant-csv-account-import.glade:63 -#, fuzzy msgid "Import Account Assistant" -msgstr "Asisten Akun Evolution" +msgstr "Asisten Impor Akun" #: gnucash/gtkbuilder/assistant-csv-account-import.glade:78 -#, fuzzy msgid "" "\n" "Enter file name and location for the Import...\n" -msgstr "Dalam dialog, masukkan nama untuk berkas galeri yang akan dibuat." +msgstr "" +"\n" +"Masukkan nama berkas dan lokasi untuk Impor...\n" #: gnucash/gtkbuilder/assistant-csv-account-import.glade:91 -#, fuzzy msgid "Choose File to Import" -msgstr "_Impor Berkas…" +msgstr "Pilih Berkas untuk Impor" #: gnucash/gtkbuilder/assistant-csv-account-import.glade:111 -#, fuzzy msgid "Number of rows for the Header" -msgstr "Jumlah baris dalam permainan gubahan" +msgstr "Jumlah baris untuk Kepala" #: gnucash/gtkbuilder/assistant-csv-account-import.glade:156 -#, fuzzy msgid "Comma Separated" -msgstr "Nilai dipisah koma (.csv)" +msgstr "Dipisahkan Koma" #: gnucash/gtkbuilder/assistant-csv-account-import.glade:172 -#, fuzzy msgid "Semicolon Separated" -msgstr "" -"Tanda titik koma (\";\") memisahkan daftar peladen untuk mencari informasi, " -"selain domain alamat surel." +msgstr "Dipisahkan Titik Koma" #: gnucash/gtkbuilder/assistant-csv-account-import.glade:188 -#, fuzzy msgid "Custom regular Expression" -msgstr "Ekspresi _Reguler" +msgstr "Ekspresi reguler tersuai" #: gnucash/gtkbuilder/assistant-csv-account-import.glade:204 -#, fuzzy msgid "Colon Separated" -msgstr "" -"%s [OPSI…] PERINTAH\n" -"\n" -"Mengeksekusi PERINTAH sambil mencegah beberapa fungsionalitas sesi.\n" -"\n" -" -h, --help Tampilkan bantuan ini\n" -" --version Tampilkan versi program\n" -" --app-id ID ID aplikasi untuk dipakai\n" -" ketika mencegah (opsional)\n" -" --reason REASON Alasan mencegah (opsional)\n" -" --inhibit ARG Hal yang dicegah, daftar yang dipisah titik dua dari:\n" -" logout, switch-user, suspend, idle, automount\n" -" --inhibit-only Jangan meluncurkan PERINTAH dan tunggu selamanya\n" -" sebagai gantinya\n" -"\n" -"Bila tak ada opsi --inhibit yang dinyatakan, diasumsikan idle.\n" +msgstr "Dipisahkan Titik Dua" #: gnucash/gtkbuilder/assistant-csv-account-import.glade:230 -#, fuzzy msgid "Select Separator Type" -msgstr "Pilih Jenis" +msgstr "Pilih Tipe Separator" #: gnucash/gtkbuilder/assistant-csv-account-import.glade:268 -#, fuzzy msgid "Preview" msgstr "Pratinjau" #: gnucash/gtkbuilder/assistant-csv-account-import.glade:281 msgid "Import Account Preview, first 10 rows only" -msgstr "" +msgstr "Pratinjau Akun Impor, hanya 10 baris pertama" #: gnucash/gtkbuilder/assistant-csv-account-import.glade:290 #: gnucash/gtkbuilder/assistant-csv-export.glade:726 @@ -12534,218 +12873,191 @@ msgid "" "Press Apply to create export file.\n" "Cancel to abort." msgstr "" +"Tekan Terapkan untuk membuat berkas ekspor.\n" +"Batal untuk membatalkan." #: gnucash/gtkbuilder/assistant-csv-account-import.glade:296 -#, fuzzy msgid "Import Accounts Now" -msgstr "impor" +msgstr "Impor Akun Sekarang" #: gnucash/gtkbuilder/assistant-csv-account-import.glade:346 #: gnucash/gtkbuilder/assistant-csv-price-import.glade:1071 #: gnucash/gtkbuilder/assistant-csv-trans-import.glade:1160 -#, fuzzy msgid "Import Summary" -msgstr "* Tidak ada judul *" +msgstr "Ikhtisar Impor" #: gnucash/gtkbuilder/assistant-csv-export.glade:8 -#, fuzzy msgid "CSV Export Assistant" -msgstr "_Asisten:" +msgstr "Asisten Ekspor CSV" #: gnucash/gtkbuilder/assistant-csv-export.glade:34 msgid "" "\n" "Select the type of Export required and the separator that will be used.\n" msgstr "" +"\n" +"Pilih tipe Ekspor yang diperlukan dan tanda pemisah yang akan digunakan.\n" #: gnucash/gtkbuilder/assistant-csv-export.glade:73 msgid "Use Quotes" msgstr "Gunakan Harga Penawaran" #: gnucash/gtkbuilder/assistant-csv-export.glade:88 -#, fuzzy msgid "Simple Layout" -msgstr "Tata _Letak:" +msgstr "Tata Letak Sederhana" #: gnucash/gtkbuilder/assistant-csv-export.glade:135 #: gnucash/gtkbuilder/assistant-csv-price-import.glade:322 #: gnucash/gtkbuilder/assistant-csv-trans-import.glade:314 -#, fuzzy msgid "Comma (,)" -msgstr "Daftar yang dipisah koma dari ekstensi GL yang pura-pura dinonaktifkan" +msgstr "Koma (,)" #: gnucash/gtkbuilder/assistant-csv-export.glade:151 #: gnucash/gtkbuilder/assistant-csv-price-import.glade:339 #: gnucash/gtkbuilder/assistant-csv-trans-import.glade:331 -#, fuzzy msgid "Colon (:)" -msgstr "Tambahkan Titik Dua" +msgstr "Titik Dua (:)" #: gnucash/gtkbuilder/assistant-csv-export.glade:168 #: gnucash/gtkbuilder/assistant-csv-price-import.glade:355 #: gnucash/gtkbuilder/assistant-csv-trans-import.glade:347 -#, fuzzy msgid "Semicolon (;)" -msgstr "" -"Referensi karakter tidak diakhiri dengan titik koma; Mungkin Anda sedang " -"menggunakan karakter ampersand tanpa bermaksud menjadikannya sebagai entitas " -"— silakan gunakan & saja" +msgstr "Titik Koma (;)" #: gnucash/gtkbuilder/assistant-csv-export.glade:221 #: gnucash/gtkbuilder/assistant-csv-price-import.glade:232 #: gnucash/gtkbuilder/assistant-csv-trans-import.glade:221 -#, fuzzy msgid "Separators" -msgstr "Tampilkan Pemisah Ribuan" +msgstr "Pemisah" #: gnucash/gtkbuilder/assistant-csv-export.glade:237 -#, fuzzy msgid "Choose Export Settings" -msgstr "Tatanan" +msgstr "Pilih Pengaturan Ekspor" #: gnucash/gtkbuilder/assistant-csv-export.glade:252 msgid "Select the accounts to be exported and date range if required." -msgstr "" +msgstr "Pilih akun yang akan diekspor dan rentang tanggal jika diperlukan." #: gnucash/gtkbuilder/assistant-csv-export.glade:277 -#, fuzzy msgid "Accounts" -msgstr "Ruang Lingkup" +msgstr "Akun" #: gnucash/gtkbuilder/assistant-csv-export.glade:326 #: gnucash/gtkbuilder/dialog-tax-info.glade:371 -#, fuzzy msgid "Accounts Selected:" -msgstr "_Akun" +msgstr "Akun Terpilih:" #: gnucash/gtkbuilder/assistant-csv-export.glade:339 #: gnucash/gtkbuilder/dialog-tax-info.glade:384 -#, fuzzy +#: gnucash/gtkbuilder/gnc-plugin-page-register.glade:764 msgid "0" msgstr "0" #: gnucash/gtkbuilder/assistant-csv-export.glade:373 #: gnucash/gtkbuilder/dialog-tax-info.glade:417 -#, fuzzy msgid "_Select Subaccounts" -msgstr "_Pilih..." +msgstr "Pilih _Sub-akun" #: gnucash/gtkbuilder/assistant-csv-export.glade:388 -#: gnucash/gtkbuilder/gnc-plugin-page-register2.glade:575 +#: gnucash/gtkbuilder/gnc-plugin-page-register2.glade:622 #: gnucash/gtkbuilder/gnc-plugin-page-register.glade:466 -#, fuzzy msgid "Select _All" msgstr "Pilih Semu_a" #: gnucash/gtkbuilder/assistant-csv-export.glade:432 -#, fuzzy msgid "Dates" -msgstr "Ruang Lingkup" +msgstr "Tanggal" #: gnucash/gtkbuilder/assistant-csv-export.glade:444 -#, fuzzy msgid "Sho_w All" -msgstr "Tampilka_n Semua Daftar Memo" +msgstr "Tampilka_n Semua" #: gnucash/gtkbuilder/assistant-csv-export.glade:461 #: gnucash/gtkbuilder/gnc-plugin-page-register.glade:141 -#, fuzzy msgid "Select _Range" -msgstr "Pilih Rentang Timestamp dari Entri Log yang akan ditampilkan" +msgstr "Pilih _Rentang" #. Filter By Dialog, Date Tab, Start section #: gnucash/gtkbuilder/assistant-csv-export.glade:488 -#: gnucash/gtkbuilder/gnc-plugin-page-register2.glade:277 +#: gnucash/gtkbuilder/gnc-plugin-page-register2.glade:324 #: gnucash/gtkbuilder/gnc-plugin-page-register.glade:168 -#, fuzzy msgid "Start" msgstr "Mulai" #: gnucash/gtkbuilder/assistant-csv-export.glade:497 -#: gnucash/gtkbuilder/gnc-plugin-page-register2.glade:286 +#: gnucash/gtkbuilder/gnc-plugin-page-register2.glade:333 #: gnucash/gtkbuilder/gnc-plugin-page-register.glade:177 msgid "_Earliest" -msgstr "" +msgstr "_Paling Lama" #: gnucash/gtkbuilder/assistant-csv-export.glade:514 -#, fuzzy msgid "Cho_ose Date" -msgstr "Pengkodean Yang Di_pilih" +msgstr "Pilih _Tanggal" #: gnucash/gtkbuilder/assistant-csv-export.glade:531 -#: gnucash/gtkbuilder/gnc-plugin-page-register2.glade:318 +#: gnucash/gtkbuilder/gnc-plugin-page-register2.glade:365 #: gnucash/gtkbuilder/gnc-plugin-page-register.glade:209 -#, fuzzy msgid "Toda_y" -msgstr "_Y:" +msgstr "Hari _Ini" #: gnucash/gtkbuilder/assistant-csv-export.glade:548 -#: gnucash/gtkbuilder/gnc-plugin-page-register2.glade:335 +#: gnucash/gtkbuilder/gnc-plugin-page-register2.glade:382 #: gnucash/gtkbuilder/gnc-plugin-page-register.glade:226 -#, fuzzy msgid "_Latest" -msgstr "Berita Terbaru" +msgstr "Pa_ling Baru" #. Filter By Dialog, Date Tab, End section #: gnucash/gtkbuilder/assistant-csv-export.glade:578 #: gnucash/gtkbuilder/dialog-fincalc.glade:601 #: gnucash/gtkbuilder/dialog-sx.glade:424 -#: gnucash/gtkbuilder/gnc-plugin-page-register2.glade:365 +#: gnucash/gtkbuilder/gnc-plugin-page-register2.glade:412 #: gnucash/gtkbuilder/gnc-plugin-page-register.glade:256 -#, fuzzy msgid "End" msgstr "Akhir" #: gnucash/gtkbuilder/assistant-csv-export.glade:587 -#: gnucash/gtkbuilder/gnc-plugin-page-register2.glade:374 +#: gnucash/gtkbuilder/gnc-plugin-page-register2.glade:421 #: gnucash/gtkbuilder/gnc-plugin-page-register.glade:265 -#, fuzzy msgid "C_hoose Date" -msgstr "_C/C++" +msgstr "Pili_h Tanggal" #: gnucash/gtkbuilder/assistant-csv-export.glade:604 -#: gnucash/gtkbuilder/gnc-plugin-page-register2.glade:391 +#: gnucash/gtkbuilder/gnc-plugin-page-register2.glade:438 #: gnucash/gtkbuilder/gnc-plugin-page-register.glade:282 -#, fuzzy msgid "_Today" -msgstr "THari ini" +msgstr "_Hari Ini" #: gnucash/gtkbuilder/assistant-csv-export.glade:691 -#, fuzzy msgid "Account Selection" -msgstr "akun" +msgstr "Pemilihan Akun" #: gnucash/gtkbuilder/assistant-csv-export.glade:705 -#, fuzzy msgid "" "\n" "Enter file name and location for the Export...\n" -msgstr "Dalam dialog, masukkan nama untuk berkas galeri yang akan dibuat." +msgstr "" +"\n" +"Masukkan nama berkas dan lokasi untuk Ekspor...\n" #: gnucash/gtkbuilder/assistant-csv-export.glade:718 -#, fuzzy msgid "Choose File Name for Export" -msgstr "Pilih berkas" +msgstr "Pilih Nama Berkas untuk Ekspor" #: gnucash/gtkbuilder/assistant-csv-export.glade:732 -#, fuzzy msgid "Export Now..." -msgstr "Sekarang" +msgstr "Ekspor Sekarang..." #: gnucash/gtkbuilder/assistant-csv-export.glade:740 -#, fuzzy msgid "Summary" -msgstr "Ringkasan" +msgstr "Ikhtisar" #: gnucash/gtkbuilder/assistant-csv-export.glade:745 -#, fuzzy msgid "Export Summary" -msgstr "* Tidak ada judul *" +msgstr "Ikhtisar Ekspor" #: gnucash/gtkbuilder/assistant-csv-price-import.glade:38 -#, fuzzy msgid "CSV Price Import" -msgstr "[vcard|csv]" +msgstr "Impor Harga CSV" #. You should localize the (british) examples to your region. #: gnucash/gtkbuilder/assistant-csv-price-import.glade:65 @@ -12779,11 +13091,39 @@ msgid "" "\n" "Click on \"Next\" to proceed or \"Cancel\" to Abort Import." msgstr "" +"Asisten ini akan membantu Anda mengimpor Harga dari berkas CSV.\n" +"\n" +"Ada jumlah minimum kolom yang harus ada agar impor berhasil, yaitu Tanggal, " +"Jumlah, Dari Namespace, Dari Simbol dan Mata Uang Ke. Jika semua entri untuk " +"Komodias/Mata Uang yang sama, maka Anda dapat memilih mereka dan kemudian " +"kolomnya akan menjadi Tanggal dan Jumlah.\n" +"\n" +"Berbagai opsi tersedia untuk menentukan pembatas begitu juga opsi lebar " +"tetap. Dengan opsi lebar tetap, klik dua kali pada tabel baris yang " +"ditampilkan untuk mengatur lebar kolom, kemudian klik kanan untuk " +"mengubahnya jika diperlukan.\n" +"\n" +"Contohnya adalah \"FTSE\",\"RR.L\",\"21/11/2016\",5.345,\"GBP\" dan CURRENCY;" +"USD;2016-11-21;1,56;GBP\n" +"\n" +"Tersedia opsi untuk menentukan awal baris, baris akhir dan opsi untuk " +"melewatkan baris yang berseling dimulai dari baris awal yang dapat digunakan " +"jika Anda memiliki beberapa judul teks. Juga tersedia opsi untuk menimpa " +"harga yang ada untuk hari itu jika diperlukan.\n" +"\n" +"Terakhir, untuk impor berulang halaman pratinjau memiliki tombol Muat dan " +"Simpan pengaturan. Untuk menyimpan pengaturan, ubah pengaturan sesuai dengan " +"preferensi Anda (secara opsional mulai dari preset yang ada), lalu (secara " +"opsional mengubah nama pengaturan dan tekan tombol Simpan Pengaturan. " +"Perhatikan bahwa Anda tidak dapat menyimpan ke preset built-in.\n" +"\n" +"Operasi ini tidak reversibel, jadi pastikan Anda memiliki berkas cadangan.\n" +"\n" +"Klik \"Berikutnya\" untuk melanjutkan atau \"Batal\" untuk membatalkan Impor." #: gnucash/gtkbuilder/assistant-csv-price-import.glade:84 -#, fuzzy msgid "Price Import Assistant" -msgstr "Program Bantu Impor Evolution" +msgstr "Asisten Impor Harga" #: gnucash/gtkbuilder/assistant-csv-price-import.glade:99 #: gnucash/gtkbuilder/assistant-csv-trans-import.glade:89 @@ -12791,12 +13131,13 @@ msgid "" "\n" "Select location and file name for the Import, then click \"OK\"...\n" msgstr "" +"\n" +"Pilih lokasi dan naa berkas untuk Impor, lalu klik \"OK\"...\n" #: gnucash/gtkbuilder/assistant-csv-price-import.glade:112 #: gnucash/gtkbuilder/assistant-csv-trans-import.glade:102 -#, fuzzy msgid "Select File for Import" -msgstr "Pilih berkas untuk diimpor" +msgstr "Pilih berkas untuk Impor" #: gnucash/gtkbuilder/assistant-csv-price-import.glade:147 #: gnucash/gtkbuilder/assistant-csv-trans-import.glade:138 @@ -12808,6 +13149,12 @@ msgid "" "- No settings\n" "- Gnucash default export format" msgstr "" +"Hapus Pengaturan\n" +"Hapus pengaturan yang tersimpan di bawah nama yang dimasukkan pada bidang " +"teks yang ada.\n" +"Terdapat dua nama khusus yang tidak dapat dihapus:\n" +"- No settings\n" +"- Gnucash default export format" #: gnucash/gtkbuilder/assistant-csv-price-import.glade:173 #: gnucash/gtkbuilder/assistant-csv-trans-import.glade:164 @@ -12819,37 +13166,38 @@ msgid "" "- No settings\n" "- Gnucash default export format" msgstr "" +"Simpan Pengaturan\n" +"Simpan pengaturan saat ini di bawah nama yang dimasukkan pada bidang teks " +"yang ada.\n" +"Terdapat dua nama khusus yang tidak dapat digunakan untuk menyimpan " +"pengaturan tersuai:\n" +"- No settings\n" +"- Gnucash default export format" #: gnucash/gtkbuilder/assistant-csv-price-import.glade:201 #: gnucash/gtkbuilder/assistant-csv-trans-import.glade:191 msgid "Load and Save Settings" -msgstr "" +msgstr "Muat dan Simpan Pengaturan" #: gnucash/gtkbuilder/assistant-csv-price-import.glade:249 #: gnucash/gtkbuilder/assistant-csv-trans-import.glade:238 -#, fuzzy msgid "Fixed-Width" -msgstr "_Lebar tetap:" +msgstr "Lebar-Tetap" #: gnucash/gtkbuilder/assistant-csv-price-import.glade:290 #: gnucash/gtkbuilder/assistant-csv-trans-import.glade:282 -#, fuzzy msgid "Space" -msgstr "Ruang" +msgstr "Spasi" #: gnucash/gtkbuilder/assistant-csv-price-import.glade:306 #: gnucash/gtkbuilder/assistant-csv-trans-import.glade:298 -#, fuzzy msgid "Tab" msgstr "Tab" #: gnucash/gtkbuilder/assistant-csv-price-import.glade:371 #: gnucash/gtkbuilder/assistant-csv-trans-import.glade:363 -#, fuzzy msgid "Hyphen (-)" -msgstr "" -"Nama \"%s\" tak valid: karakter \"%c\" tak valid; hanya huruf kecil, angka, " -"dan tanda hubung (\"-\") yang diijinkan" +msgstr "Tanda penghubung (-)" #: gnucash/gtkbuilder/assistant-csv-price-import.glade:453 #: gnucash/gtkbuilder/assistant-csv-price-import.glade:481 @@ -12858,70 +13206,69 @@ msgstr "" #: gnucash/gtkbuilder/assistant-hierarchy.glade:449 #: gnucash/gtkbuilder/assistant-hierarchy.glade:462 msgid "•" -msgstr "" +msgstr "•" #: gnucash/gtkbuilder/assistant-csv-price-import.glade:467 #: gnucash/gtkbuilder/assistant-csv-trans-import.glade:462 msgid "Double-click anywhere on the table below to insert a column break" msgstr "" +"Klik dua kali di mana saja pada tabel di bawah untuk menyisipkan pemutus " +"kolom" #: gnucash/gtkbuilder/assistant-csv-price-import.glade:495 #: gnucash/gtkbuilder/assistant-csv-trans-import.glade:490 msgid "Right-click anywhere in a column to modify it (widen, narrow, merge)" msgstr "" +"Klik-kanan di mana saja di kolom untuk memodifikasinya (melebarkan, " +"mempersempit, menggabungkan)" #: gnucash/gtkbuilder/assistant-csv-price-import.glade:538 msgid "Allow existing prices to be over written." -msgstr "" +msgstr "Izinkan menimpa harga yang sudah ada." #: gnucash/gtkbuilder/assistant-csv-price-import.glade:543 msgid "" "Normally prices are not over written, select this to change that. This " "setting is not saved." msgstr "" +"Normalnya harga tidak bisa ditimpa, pilih ini untuk mengubahnya. Pengaturan " +"ini tidak disimpan." #: gnucash/gtkbuilder/assistant-csv-price-import.glade:567 #: gnucash/gtkbuilder/assistant-csv-trans-import.glade:568 -#, fuzzy msgid "File Format" -msgstr "Ruang Lingkup" +msgstr "Format Berkas" #: gnucash/gtkbuilder/assistant-csv-price-import.glade:596 #: gnucash/gtkbuilder/assistant-csv-trans-import.glade:603 #: gnucash/gtkbuilder/gnc-date-format.glade:39 -#, fuzzy msgid "Date Format" -msgstr "format tanggal" +msgstr "Format Tanggal" #: gnucash/gtkbuilder/assistant-csv-price-import.glade:608 #: gnucash/gtkbuilder/assistant-csv-trans-import.glade:615 -#, fuzzy msgid "Currency Format" -msgstr "mata uang" +msgstr "Format Mata Uang" #: gnucash/gtkbuilder/assistant-csv-price-import.glade:620 #: gnucash/gtkbuilder/assistant-csv-trans-import.glade:627 -#, fuzzy msgid "Encoding" -msgstr "ENCODING" +msgstr "Pengkodean" #: gnucash/gtkbuilder/assistant-csv-price-import.glade:632 #: gnucash/gtkbuilder/assistant-csv-trans-import.glade:639 -#, fuzzy msgid "Leading Lines to Skip" -msgstr "Hanya Di Depan" +msgstr "Baris Terdepan untuk Diabaikan" #: gnucash/gtkbuilder/assistant-csv-price-import.glade:644 #: gnucash/gtkbuilder/assistant-csv-trans-import.glade:651 -#, fuzzy msgid "Trailing Lines to Skip" -msgstr "Lewati" +msgstr "Baris Terakhir untuk Diabaikan" #: gnucash/gtkbuilder/assistant-csv-price-import.glade:723 #: gnucash/gtkbuilder/assistant-csv-trans-import.glade:789 -#, fuzzy msgid "Skip alternate lines" -msgstr "Lewati" +msgstr "Abaikan baris secara berseling" #: gnucash/gtkbuilder/assistant-csv-price-import.glade:735 msgid "" @@ -12934,55 +13281,57 @@ msgid "" "* if \"Leading Lines to Skip\" is set to 4, the first line to import will be " "line 5. Lines 6, 8, 10,... will be skipped." msgstr "" +"Mulai dari baris pertama yang benar-benar diimpor, setiap baris kedua akan " +"diabaikan. Opsi ini juga akan menjadikan baris terdepan diabaikan ke akun.\n" +"Sebagai contoh\n" +"* Jika 'Baris Terdepan untuk Diabaikan' diatur pada 3, baris pertama untuk " +"diimpor akan menjadi baris 4. Baris 5, 7, 9, ... akan diabaikan.\n" +"* Jika 'Baris Terdepan untuk Diabaikan' diatur pada 4, baris pertama untuk " +"diimpor akan menjadi baris 5. Baris 6, 8, 10, ... akan diabaikan." #: gnucash/gtkbuilder/assistant-csv-price-import.glade:797 #: gnucash/gtkbuilder/assistant-csv-trans-import.glade:809 -#, fuzzy msgid "Miscellaneous" -msgstr "Ruang Lingkup" +msgstr "Lain-lain" #: gnucash/gtkbuilder/assistant-csv-price-import.glade:857 -#, fuzzy msgid "Commodity From" -msgstr "Ruang Lingkup" +msgstr "Komoditas Dari" #: gnucash/gtkbuilder/assistant-csv-price-import.glade:902 -#, fuzzy msgid "Currency To" -msgstr "Ruang Lingkup" +msgstr "Mata Uang Ke" #: gnucash/gtkbuilder/assistant-csv-price-import.glade:967 #: gnucash/gtkbuilder/assistant-csv-trans-import.glade:904 msgid "Select the type of each column to import." -msgstr "" +msgstr "Pilih tipe tiap kolom untuk diimpor." #: gnucash/gtkbuilder/assistant-csv-price-import.glade:989 #: gnucash/gtkbuilder/assistant-csv-trans-import.glade:926 -#, fuzzy msgid "Skip Errors" -msgstr "Kesalahan" +msgstr "Lewati Galat" #: gnucash/gtkbuilder/assistant-csv-price-import.glade:1012 #: gnucash/gtkbuilder/assistant-csv-trans-import.glade:949 -#, fuzzy msgid "Import Preview" -msgstr "_Pratinjau" +msgstr "Pratinjau Impor" #: gnucash/gtkbuilder/assistant-csv-price-import.glade:1028 msgid "" "Press Apply to add the Prices.\n" "Cancel to abort." msgstr "" +"Tekan Terapkan untuk menambahkan Harga.\n" +"Batal untuk membatalkan." #: gnucash/gtkbuilder/assistant-csv-price-import.glade:1043 -#, fuzzy msgid "Import Prices Now" -msgstr "Sekarang" +msgstr "Impor Harga Sekarang" #: gnucash/gtkbuilder/assistant-csv-trans-import.glade:28 -#, fuzzy msgid "CSV Transaction Import" -msgstr "transaksi" +msgstr "Impor Tansaksi CSV" #: gnucash/gtkbuilder/assistant-csv-trans-import.glade:56 msgid "" @@ -13013,16 +13362,39 @@ msgid "" "settings name and press the Save Settings button. Note you can't save to " "built-in presets." msgstr "" +"Asisten ini akan membantu Anda mengimpor berkas yang berisi daftar " +"transaksi. Asisten ini mendukung berkas yang dipisahkan tanda (seperti " +"dipisahkan koma atau titik-koma) dan data dengan lebar tetap.\n" +"\n" +"Supaya impor berhasil, tiga buah kolom harus tersedia dalam data impor:\n" +"• sebuah kolom Tanggal\n" +"• sebuah kolom Deskripsi\n" +"• sebuah kolom Setoran atau Penarikan\n" +"\n" +"Jika tidak ada data Akun yang tersedia, sebuah akun dasar dapat dipilih " +"untuk mengimpor semua data.\n" +"\n" +"Terlepas dari pilihan tanda pembatas, ada beberapa pilihan untuk mengatur " +"pengimpor. Misalnya sejumlah baris dapat diabaikan pada awal atau akhir " +"data, begitu juga baris ganjil. Terdapat dukungan untuk beberapa format " +"tanggal dan nomor. Enkoding berkas dapat didefinisikan.\n" +"\n" +"Pengimpor dapat menangani berkas di mana transaksi dibagi atas beberapa " +"baris, dengan setiap baris mewakili satu split.\n" +"\n" +"Terakhir, untuk impor berulang, halaman pratinjau memiliki tombol Muat dan " +"Simpan pengaturan. Untuk menyimpan pengaturan, sesuaikan pengaturan dengan " +"preferensi Anda (opsional mulai dari preset yang ada), lalu (opsional ubah " +"nama pengaturan dan tekan tombol Simpan Pengaturan). Perhatikan bahwa Anda " +"tidak dapat menyimpan ke preset bawaan." #: gnucash/gtkbuilder/assistant-csv-trans-import.glade:74 -#, fuzzy msgid "Transaction Import Assistant" -msgstr "Program Bantu Impor Evolution" +msgstr "Asisten Impor Transaksi" #: gnucash/gtkbuilder/assistant-csv-trans-import.glade:534 -#, fuzzy msgid "Multi-split" -msgstr "_Pecah" +msgstr "Multi-pisah" #: gnucash/gtkbuilder/assistant-csv-trans-import.glade:538 msgid "" @@ -13039,6 +13411,19 @@ msgid "" "information is empty or the same as the first transaction line the importer " "will consider this line part of the same transaction." msgstr "" +"Biasanya pengimpor akan menganggap setiap baris dalam berkas masukan sesuai " +"dengan satu transaksi. Setiap baris dapat memiliki informasi untuk satu " +"transaksi dan satu atau dua split.\n" +"\n" +"Ketika multi-split diaktifkan, pengimpor akan menganggap beberapa baris " +"berturut-turut secara bersama-sama memegang informasi untuk satu transaksi. " +"Setiap baris menyediakan informasi untuk tepat satu buah split. Baris " +"pertama juga harus menyediakan informasi mengenai transaksi itu.\n" +"Untuk mengetahui baris yang mana yang merupakan milik transaksi yang sama, " +"pengimpor akan membandingkan informasi transaksi yang disediakan di setiap " +"baris. Jika informasi tersebut kosong atau sama dengan baris transaksi " +"pertama, pengimpor akan menganggap baris ini sebagai bagian dari transaksi " +"yang sama." #: gnucash/gtkbuilder/assistant-csv-trans-import.glade:771 msgid "" @@ -13051,6 +13436,13 @@ msgid "" "* if 'Leading Lines to Skip' is set to 4, the first line to import will be " "line 5. Lines 6, 8, 10,... will be skipped." msgstr "" +"Mulai dari baris pertama yang benar-benar diimpor, setiap baris kedua akan " +"diabaikan. Opsi ini juga akan menjadikan baris terdepan diabaikan ke akun.\n" +"Sebagai contoh\n" +"* Jika 'Baris Terdepan untuk Diabaikan' diatur pada 3, baris pertama untuk " +"diimpor akan menjadi baris 4. Baris 5, 7, 9, ... akan diabaikan.\n" +"* Jika 'Baris Terdepan untuk Diabaikan' diatur pada 4, baris pertama untuk " +"diimpor akan menjadi baris 5. Baris 6, 8, 10, ... akan diabaikan." #: gnucash/gtkbuilder/assistant-csv-trans-import.glade:837 msgid "Account" @@ -13078,7 +13470,7 @@ msgstr "Ubah _Akun GnuCash..." #: gnucash/gtkbuilder/assistant-csv-trans-import.glade:1065 msgid "Match Import and GnuCash accounts" -msgstr "" +msgstr "Cocokkan akun Impor dan GnuCash" #: gnucash/gtkbuilder/assistant-csv-trans-import.glade:1081 msgid "" @@ -13103,15 +13495,35 @@ msgid "" "\n" "More information can be displayed by using the help button." msgstr "" +"Jika Anda klik \"Berikutnya\" GnuCash akan melakukan sejumlah pemeriksaan.\n" +"\n" +"Jika salah satu dari pemeriksaan gagal Anda akan secara otomatis " +"diarahkan ke halaman pratinjau untuk mencoba dan memperbaiki.\n" +"\n" +"Pada halaman berikut, Anda akan dapat mengasosiasikan setiap transaksi ke " +"sebuah kategori.\n" +"\n" +"Jika ini adalah impor awal Anda ke dalam sebuah berkas baru, Anda " +"akan terlebih dahulu melihat sebuah dialog untuk mengatur opsi-opsi buku, " +"karena ini dapat mempengaruhi bagaimana data yang diimpor dikonversi ke " +"transaksi GnuCash. Jika ini adalah berkas yang sudah ada, dialog tidak akan " +"ditampilkan.\n" +"\n" +"Jika ini adalah impor pertama kali, Anda akan menemukan bahwa semua " +"baris mungkin perlu diasosiasikan. Pada impor berikutnya, pengimpor akan " +"mencoba untuk mengasosiasikan transaksi berdasarkan impor sebelumnya.\n" +"\n" +"Keyakinan dari asosiasi yang benar ditampilkan sebagai batang berwarna.\n" +"\n" +"Informasi lebih lanjut dapat ditampilkan dengan menggunakan tombol bantuan." #: gnucash/gtkbuilder/assistant-csv-trans-import.glade:1106 msgid "Transaction Information" msgstr "Informasi Transaksi" #: gnucash/gtkbuilder/assistant-csv-trans-import.glade:1133 -#, fuzzy msgid "Match Transactions" -msgstr "Cocok" +msgstr "Cocokkan Transaksi" #: gnucash/gtkbuilder/assistant-hierarchy.glade:30 msgid "" @@ -13127,11 +13539,21 @@ msgid "" "\n" "Click 'Cancel' if you do not wish to create any new accounts now." msgstr "" +"Asisten ini akan membantu Anda membuat satu set akun GnuCash untuk aset Anda " +"(seperti investasi, akun giro atau tabungan), liabilitas (seperti pinjaman) " +"dan berbagai jenis pendapatan dan pengeluaran yang mungkin Anda miliki.\n" +"\n" +"Anda dapat memilih satu set akun di sini yang tampaknya mendekati kebutuhan " +"Anda. Setelah asisten selesai Anda akan dapat menambahkan, mengubah nama, " +"memodifikasi, dan menghapus akun, sewaktu-waktu nanti. Anda juga akan dapat " +"menambahkan sub-akun, serta memindahkan akun (bersama dengan sub-akun) dari " +"satu induk ke induk yang lain.\n" +"\n" +"Klik 'Batal' jika Anda tidak ingin membuat akun baru sekarang." #: gnucash/gtkbuilder/assistant-hierarchy.glade:39 -#, fuzzy msgid "New Account Hierarchy Setup" -msgstr "hirarki akun" +msgstr "Penyiapan Hierarki Akun Baru" #: gnucash/gtkbuilder/assistant-hierarchy.glade:53 msgid "" @@ -13151,6 +13573,9 @@ msgid "" "that you foresee you will use GnuCash. Each category you select will cause " "several accounts to be created." msgstr "" +"Pilih kategori yang spesifik terhadap bahasa dan wilayah yang sesuai dengan " +"cara yang mungkin akan Anda pakai ketika menggunakan GnuCash. Setiap " +"kategori yang Anda pilih akan menyebabkan beberapa akun akan dibuat." #: gnucash/gtkbuilder/assistant-hierarchy.glade:170 msgid "Categories" @@ -13180,6 +13605,8 @@ msgid "" "If not satisfied with the available templates, please read the wiki page " "linked below and share your new or improved template." msgstr "" +"Jika Anda merasa kurang dengan templat yang tersedia, silakan baca halaman " +"wiki terkait di bawah ini dan bagikan perbaikan atau templat baru Anda." #: gnucash/gtkbuilder/assistant-hierarchy.glade:487 msgid "" @@ -13187,6 +13614,9 @@ msgid "" "account hierarchy. Accounts can be added, renamed, moved, or deleted by hand " "later at any time." msgstr "" +"Pilihan yang Anda buat di sini hanyalah titik awal untuk hierarki akun " +"pribadi Anda. Akun dapat ditambahkan, diganti namanya, dipindahkan, atau " +"dihapus sesuai keinginan Anda." #: gnucash/gtkbuilder/assistant-hierarchy.glade:504 msgid "GnuCash Account Template Wiki" @@ -13214,6 +13644,20 @@ msgid "" "Note: all accounts except Equity and placeholder accounts may have an " "opening balance.\n" msgstr "" +"\n" +"Jika Anda ingin mengubah nama akun, klik pada baris yang berisi akun, lalu " +"klik pada nama akun dan ubahlah.\n" +"\n" +"Beberapa akun ditandai sebagai \"Placeholder\". Akun placeholder digunakan " +"untuk membuat hierarki akun dan biasanya tidak memiliki transaksi atau saldo " +"pembukaan. Jika Anda ingin suatu akun menjadi akun placeholder, klik kotak " +"centang untuk akun itu.\n" +"\n" +"Jika Anda ingin akun memiliki saldo awal, klik pada baris yang berisi akun, " +"kemudian klik pada bidang saldo awal dan masukkan saldo awal.\n" +"\n" +"Catatan: semua akun kecuali Ekuitas dan akun placeholder dapat " +"memiliki saldo awal.\n" #: gnucash/gtkbuilder/assistant-hierarchy.glade:572 msgid "Setup selected accounts" @@ -13228,6 +13672,12 @@ msgid "" "\n" "Press `Cancel' to close this dialog without creating any new accounts." msgstr "" +"Tekan `Terapkan' untuk membuat akun baru Anda. Anda kemudian akan dapat " +"menyimpannya ke sebuah berkas atau basis data.\n" +"\n" +"Tekan `Kembali' untuk meninjau pilihan Anda.\n" +"\n" +"Tekan `Batal' untuk menutup dialog ini tanpa membuat akun baru." #: gnucash/gtkbuilder/assistant-hierarchy.glade:591 msgid "Finish Account Setup" @@ -13243,7 +13693,7 @@ msgstr "Sekarang + 1 Tahun" #: gnucash/gtkbuilder/assistant-loan.glade:32 msgid "Whole Loan" -msgstr "" +msgstr "Seluruh Pinjaman" #: gnucash/gtkbuilder/assistant-loan.glade:46 #: gnucash/gtkbuilder/assistant-loan.glade:160 @@ -13252,51 +13702,43 @@ msgstr "Suku Bunga" #: gnucash/gtkbuilder/assistant-loan.glade:49 msgid "APR (Compounded Daily)" -msgstr "" +msgstr "APR (Majemuk Harian)" #: gnucash/gtkbuilder/assistant-loan.glade:52 msgid "APR (Compounded Weekly)" -msgstr "" +msgstr "APR (Majemuk Mingguan)" #: gnucash/gtkbuilder/assistant-loan.glade:55 msgid "APR (Compounded Monthly)" -msgstr "" +msgstr "APR (Majemuk Bulanan)" #: gnucash/gtkbuilder/assistant-loan.glade:58 msgid "APR (Compounded Quarterly)" -msgstr "" +msgstr "APR (Majemuk Triwulanan)" #: gnucash/gtkbuilder/assistant-loan.glade:61 msgid "APR (Compounded Annually)" -msgstr "" +msgstr "APR (Majemuk Tahunan)" #: gnucash/gtkbuilder/assistant-loan.glade:72 -#, fuzzy msgid "Fixed Rate" -msgstr "" -"Menghitung bilangan periode kompon yang diperlukan untuk meningkatkan nilai " -"investasi saat ini ke nilai masa depan, dengan bunga tetap per periode " -"kompon." +msgstr "Suku Bunga Tetap" #: gnucash/gtkbuilder/assistant-loan.glade:75 -#, fuzzy msgid "3/1 Year ARM" -msgstr "Emulasi Arm" +msgstr "3/1 Tahun ARM" #: gnucash/gtkbuilder/assistant-loan.glade:78 -#, fuzzy msgid "5/1 Year ARM" -msgstr "Emulasi Arm" +msgstr "5/1 Tahun ARM" #: gnucash/gtkbuilder/assistant-loan.glade:81 -#, fuzzy msgid "7/1 Year ARM" -msgstr "Emulasi Arm" +msgstr "7/1 Tahun ARM" #: gnucash/gtkbuilder/assistant-loan.glade:84 -#, fuzzy msgid "10/1 Year ARM" -msgstr "Emulasi Arm" +msgstr "10/1 Tahun ARM" #: gnucash/gtkbuilder/assistant-loan.glade:113 msgid "" @@ -13308,15 +13750,24 @@ msgid "" "If you make a mistake or want to make changes later, you can edit the " "created Scheduled Transactions directly." msgstr "" +"Ini adalah metode langkah-demi-langkah untuk membuat sebuah angsuran " +"pinjaman di dalam GnuCash. Di dalam asisten ini, Anda bisa memasukkan detail " +"pinjaman Anda dan angsurannya bersama dengan detail pengembaliannya. Dengan " +"informasi tersebut, Transaksi Terjadwal yang sesuai akan dibuat.\n" +"\n" +"Jika Anda membuat kesalahan atau ingin membuat perubahan, Anda bisa " +"menyunting secara langsung Transaksi Terjadwal yang telah dibuat." #: gnucash/gtkbuilder/assistant-loan.glade:120 msgid "Loan / Mortgage Repayment Setup" -msgstr "" +msgstr "Penyiapan Angsuran Pinjaman / Hipotek" #: gnucash/gtkbuilder/assistant-loan.glade:136 msgid "" "Enter the Loan Details, as a minimum enter a valid Loan Account and Amount.\n" msgstr "" +"Masukkan Detail Pinjaman, minimal masukkan Akun dan Jumlah Pinjaman yang " +"valid.\n" #: gnucash/gtkbuilder/assistant-loan.glade:173 #: gnucash/gtkbuilder/assistant-loan.glade:1175 @@ -13339,7 +13790,7 @@ msgstr "" #: gnucash/report/reports/standard/price-scatter.scm:35 #: gnucash/report/trep-engine.scm:77 msgid "Start Date" -msgstr "Tanggal Mulai:" +msgstr "Tanggal Mulai" #: gnucash/gtkbuilder/assistant-loan.glade:186 msgid "Length" @@ -13354,6 +13805,8 @@ msgid "" "Enter the number of months still to be paid off. This determines both the " "remaining principle and the duration of the scheduled transaction." msgstr "" +"Masukkan jumlah bulan yang masih harus dilunasi. Ini menentukan pokok yang " +"tersisa dan durasi transaksi terjadwal." #: gnucash/gtkbuilder/assistant-loan.glade:296 msgid "Months Remaining" @@ -13364,131 +13817,125 @@ msgid "" "Enter the annual interest rate in percent. Accepts values from 0.001 - 100. " "The Mortgage Assistant does not support zero-interest loans." msgstr "" +"Masukkan tingkat bunga tahunan dalam persen. Nilai yang diterima dari 0,001 " +"- 100. Asisten Hipotek tidak mendukung pinjaman tanpa bunga." #: gnucash/gtkbuilder/assistant-loan.glade:367 #: gnucash/register/ledger-core/gncEntryLedgerLoad.c:55 #: gnucash/report/reports/standard/invoice.scm:108 msgid "%" -msgstr "" +msgstr "%" #: gnucash/gtkbuilder/assistant-loan.glade:398 -#, fuzzy msgid "Interest Rate Change Frequency" -msgstr "kalkulator finansial: suku bunga" +msgstr "Frekuensi Perubahan Suku Bunga" #: gnucash/gtkbuilder/assistant-loan.glade:444 -#, fuzzy msgid "Loan Details" -msgstr "pinjaman" +msgstr "Detail Pinjaman" #: gnucash/gtkbuilder/assistant-loan.glade:459 msgid "" "\n" "Do you utilise an escrow account, if so an account must be specified..." msgstr "" +"\n" +"Apakah Anda menggunakan akun eskrow, jika demikian sebuah akun harus " +"ditentukan..." #: gnucash/gtkbuilder/assistant-loan.glade:479 -#, fuzzy msgid "... utilize an escrow account for payments?" -msgstr "eskrow" +msgstr "... gunakan akun eskrow untuk pembayaran?" #: gnucash/gtkbuilder/assistant-loan.glade:504 -#, fuzzy msgid "Escrow Account" -msgstr "eskrow" +msgstr "Akun Eskrow" #: gnucash/gtkbuilder/assistant-loan.glade:540 -#, fuzzy msgid "Loan Repayment Options" -msgstr "aksi: pinjaman" +msgstr "Opsi Angsuran Pinjaman" #: gnucash/gtkbuilder/assistant-loan.glade:553 msgid "" "\n" "All accounts must have valid entries to continue.\n" msgstr "" +"\n" +"Semua akun harus memiliki entri yang valid untuk melanjutkan.\n" #: gnucash/gtkbuilder/assistant-loan.glade:591 -#, fuzzy msgid "Principal To" -msgstr "_Pokok:" +msgstr "Pokok Ke" #: gnucash/gtkbuilder/assistant-loan.glade:630 -#, fuzzy msgid "Interest To" -msgstr "bunga" +msgstr "Bunga Ke" #: gnucash/gtkbuilder/assistant-loan.glade:683 -#, fuzzy msgid "Repayment Frequency" -msgstr "Frekuensi" +msgstr "Frekuensi Angsuran" #: gnucash/gtkbuilder/assistant-loan.glade:718 -#, fuzzy msgid "Loan Repayment" -msgstr "pinjaman" +msgstr "Angsuran Pinjaman" #: gnucash/gtkbuilder/assistant-loan.glade:731 msgid "" "\n" "All enabled option pages must contain valid entries to continue.\n" msgstr "" +"\n" +"Semua halaman pilihan yang diaktifkan harus berisi entri yang valid untuk " +"melanjutkan.\n" #: gnucash/gtkbuilder/assistant-loan.glade:803 -#, fuzzy msgid "Payment To (Escrow)" -msgstr "eskrow" +msgstr "Pembayaran Ke (Eskrow)" #: gnucash/gtkbuilder/assistant-loan.glade:816 -#, fuzzy msgid "Payment From (Escrow)" -msgstr "eskrow" +msgstr "Pembayaran Dari (Eskrow)" #: gnucash/gtkbuilder/assistant-loan.glade:839 -#, fuzzy msgid "Specify Source Account" -msgstr "Asal Akun" +msgstr "Tentukan Akun Sumber" #: gnucash/gtkbuilder/assistant-loan.glade:854 -#, fuzzy msgid "Use Escrow Account" -msgstr "eskrow" +msgstr "Gunakan Akun Eskrow" #: gnucash/gtkbuilder/assistant-loan.glade:945 -#, fuzzy msgid "Part of Payment Transaction" -msgstr "pembayaran" +msgstr "Bagian dari Transaksi Pembayaran" #: gnucash/gtkbuilder/assistant-loan.glade:1008 -#, fuzzy msgid "Payment Frequency" -msgstr "pembayaran" +msgstr "Frekuensi Pembayaran" #: gnucash/gtkbuilder/assistant-loan.glade:1034 -#, fuzzy msgid "Previous Option" -msgstr "[OPSI…]" +msgstr "Opsi Sebelumnya" #: gnucash/gtkbuilder/assistant-loan.glade:1048 -#, fuzzy msgid "Next Option" -msgstr "[OPSI…]" +msgstr "Opsi Berikutnya" #: gnucash/gtkbuilder/assistant-loan.glade:1070 -#, fuzzy msgid "Loan Payment" -msgstr "pinjaman" +msgstr "Pembayaran Pinjaman" #: gnucash/gtkbuilder/assistant-loan.glade:1083 msgid "" "\n" "Review the details below and if correct press Apply to create the schedule." msgstr "" +"\n" +"Tinjau detail di bawah ini dan jika benar, tekan Terapkan untuk membuat " +"jadwal." #: gnucash/gtkbuilder/assistant-loan.glade:1111 -#, fuzzy msgid "Range" -msgstr "Cakupan" +msgstr "Rentang" #: gnucash/gtkbuilder/assistant-loan.glade:1187 #: gnucash/gtkbuilder/dialog-sx.glade:333 @@ -13507,7 +13954,6 @@ msgstr "Cakupan" #: gnucash/report/reports/standard/net-charts.scm:40 #: gnucash/report/reports/standard/price-scatter.scm:36 #: gnucash/report/trep-engine.scm:78 -#, fuzzy msgid "End Date" msgstr "Tanggal Akhir" @@ -13515,36 +13961,30 @@ msgstr "Tanggal Akhir" #: gnucash/report/reports/standard/job-report.scm:563 #: gnucash/report/reports/standard/new-owner-report.scm:1161 #: gnucash/report/reports/standard/owner-report.scm:795 -#, fuzzy msgid "Date Range" -msgstr "rentang tanggal" +msgstr "Rentang Tanggal" #: gnucash/gtkbuilder/assistant-loan.glade:1243 -#, fuzzy msgid "Loan Review" -msgstr "Ulasan" +msgstr "Tinjauan Pinjaman" #: gnucash/gtkbuilder/assistant-loan.glade:1251 -#, fuzzy msgid "Schedule added successfully." -msgstr "_Jadwal" +msgstr "Jadwal berhasil ditambahkan." #: gnucash/gtkbuilder/assistant-loan.glade:1257 -#, fuzzy msgid "Loan Summary" -msgstr "pinjaman" +msgstr "Ikhtisar Pinjaman" #: gnucash/gtkbuilder/assistant-qif-import.glade:12 #: gnucash/gtkbuilder/assistant-qif-import.glade:23 #: gnucash/gtkbuilder/dialog-report.glade:714 -#, fuzzy msgid "Dummy" -msgstr "GNOME dummy" +msgstr "Dummy" #: gnucash/gtkbuilder/assistant-qif-import.glade:30 -#, fuzzy msgid "QIF Import Assistant" -msgstr "Program Bantu Impor Evolution" +msgstr "Asisten Impor QIF" #. Run the assistant in your language to see GTK's translation of the button labels. #: gnucash/gtkbuilder/assistant-qif-import.glade:54 @@ -13559,11 +13999,19 @@ msgid "" "Click \"Next\" to start loading your QIF data, or \"Cancel\" to abort the " "process. " msgstr "" +"GnuCash dapat mengimpor data keuangan dari berkas QIF (Quicken Interchange " +"Format) yang ditulis oleh Quicken/QuickBooks, MS Money, Moneydance, dan " +"banyak program lainnya.\n" +"\n" +"Proses impor memiliki beberapa langkah. Akun GnuCash Anda tidak akan berubah " +"sampai Anda klik \"Terapkan\" pada akhir proses.\n" +"\n" +"Klik \"Berikutnya\" untuk mulai memuat data QIF Anda, atau \"Batal\" untuk " +"membatalkan proses. " #: gnucash/gtkbuilder/assistant-qif-import.glade:63 -#, fuzzy msgid "Import QIF files" -msgstr "_Impor" +msgstr "Impor berkas QIF" #. Run the assistant in your language to see GTK's translation of the button labels. #: gnucash/gtkbuilder/assistant-qif-import.glade:78 @@ -13575,26 +14023,29 @@ msgid "" "You will have the opportunity to load as many files as you wish, so don't " "worry if your data is in multiple files. \n" msgstr "" +"Silakan pilih berkas yang akan dimuat. Ketika Anda klik \"Berikutnya\", " +"berkas tersebut akan dimuat dan dianalisis. Anda mungkin perlu untuk " +"menjawab beberapa pertanyaan mengenai akun-akun di dalam berkas itu.\n" +"\n" +"Anda akan memiliki kesempatan untuk memuat sebanyak mungkin berkas yang Anda " +"inginkan, jadi jangan khawatir jika data Anda berada di dalam beberapa " +"berkas. \n" #: gnucash/gtkbuilder/assistant-qif-import.glade:114 -#, fuzzy msgid "_Select..." msgstr "_Pilih..." #: gnucash/gtkbuilder/assistant-qif-import.glade:137 -#, fuzzy msgid "Select a QIF file to load" -msgstr "Gagal memuat berkas jauh." +msgstr "Pilih berkas QIF yang akan dimuat" #: gnucash/gtkbuilder/assistant-qif-import.glade:213 -#, fuzzy msgid "_Start" msgstr "_Mulai" #: gnucash/gtkbuilder/assistant-qif-import.glade:283 -#, fuzzy msgid "Load QIF files" -msgstr "Saat memuat" +msgstr "Muat berkas QIF" #: gnucash/gtkbuilder/assistant-qif-import.glade:297 msgid "" @@ -13608,15 +14059,26 @@ msgid "" "software are likely to be in \"d-m-y\" or day-month-year format, where US " "QIF files are likely to be \"m-d-y\" or month-day-year. \n" msgstr "" +"Format berkas QIF tidak menentukan urutan pencetakan komponen hari, bulan, " +"dan tahun pada sebuah tanggal. Dalam kebanyakan kasus, adalah mungkin untuk " +"secara otomatis menentukan bagaimana format yang digunakan dalam suatu " +"berkas. Namun, dalam berkas yang baru saja diimpor terdapat lebih dari satu " +"format yang mungkin cocok dengan data di dalamnya.\n" +"\n" +"Silakan pilih format tanggal untuk berkas ini. Berkas QIF yang dibuat oleh " +"perangkat lunak Eropa cenderung menggunakan \"d-m-y\" atau format hari-bulan-" +"tahun, sedangkan berkas QIF Amerika cenderung menggunakan \"m-d-y\" atau " +"bulan-hari-tahun.\n" #: gnucash/gtkbuilder/assistant-qif-import.glade:332 #: gnucash/gtkbuilder/assistant-qif-import.glade:417 msgid "Click \"Back\" to cancel the loading of this file and choose another." msgstr "" +"Klik \"Kembali\" untuk membatalkan pemuatan berkas ini dan pilih yang lain." #: gnucash/gtkbuilder/assistant-qif-import.glade:345 msgid "Set a date format for this QIF file" -msgstr "" +msgstr "Setel sebuah format tanggal untuk berkas QIF ini" #: gnucash/gtkbuilder/assistant-qif-import.glade:359 msgid "" @@ -13627,15 +14089,20 @@ msgid "" "accounting program, you should use the same account name that was used in " "that program.\n" msgstr "" +"Berkas QIF yang baru dimuat sepertinya berisi transaksi hanya untuk satu " +"akun, tetapi berkas tersebut tidak menentukan nama untuk akun itu.\n" +"\n" +"Silakan masukkan nama untuk akun itu. Jika berkas diekspor dari program " +"akuntansi lain, Anda harus menggunakan nama akun yang sama dengan yang " +"digunakan dalam program itu.\n" #: gnucash/gtkbuilder/assistant-qif-import.glade:380 -#, fuzzy msgid "Account name" -msgstr "nama akun" +msgstr "Nama akun" #: gnucash/gtkbuilder/assistant-qif-import.glade:429 msgid "Set the default QIF account name" -msgstr "" +msgstr "Setel nama akun QIF baku" #. Run the assistant in your language to see GTK's translation of the button labels. #: gnucash/gtkbuilder/assistant-qif-import.glade:468 @@ -13646,20 +14113,24 @@ msgid "" "Click \"Next\" to finish loading files and move to the next step of the QIF " "import process. " msgstr "" +"Klik \"Muat berkas lain\" jika Anda memiliki lebih banyak data untuk diimpor " +"pada saat ini. Lakukan ini jika Anda menyimpan akun-akun Anda pada berkas " +"QIF yang terpisah.\n" +"\n" +"Klik \"Berikutnya\" untuk memuat berkas dan pindah ke langkah berikutnya " +"dari proses impor QIF. " #: gnucash/gtkbuilder/assistant-qif-import.glade:487 -#, fuzzy msgid "_Unload selected file" -msgstr "Cacah Siklus Muat/Bongkar" +msgstr "T_utup berkas terpilih" #: gnucash/gtkbuilder/assistant-qif-import.glade:502 -#, fuzzy msgid "_Load another file" -msgstr "gagal memuat berkas" +msgstr "Muat berkas _lain" #: gnucash/gtkbuilder/assistant-qif-import.glade:524 msgid "QIF files you have loaded" -msgstr "" +msgstr "Berkas QIF yang telah dimuat" #: gnucash/gtkbuilder/assistant-qif-import.glade:539 msgid "" @@ -13678,29 +14149,41 @@ msgid "" "page so you can change them if you want to, but it is safe to leave them " "alone.\n" msgstr "" +"Pada halaman berikutnya, akun-akun pada berkas QIF dan saham atau reksadana " +"yang Anda miliki akan dicocokkan dengan akun-akun GnuCash. Jika akun GnuCash " +"sudah ada dengan nama yang sama, atau nama yang mirip dan tipe yang " +"kompatibel, akun tersebut akan digunakan sebagai sebuah kecocokan; jika " +"tidak, GnuCash akan membuat akun baru dengan nama dan tipe yang sama dengan " +"akun QIF. Jika Anda tidak menyukai akun GnuCash yang disarankan, klik dua " +"kali untuk mengubahnya.\n" +"\n" +"Perhatikan bahwa GnuCash akan membuat sejumlah akun yang tidak ada pada " +"program keuangan pribadi Anda yang lain, termasuk akun terpisah untuk setiap " +"saham yang Anda miliki, akun terpisah untuk komisi broker, akun \"Ekuitas\" " +"khusus (sub-akun dari Pendapatan Ditahan, secara baku) yang merupakan sumber " +"dari saldo pembukaan Anda, dll. Semua akun tersebut akan muncul pada halaman " +"berikutnya sehingga Anda dapat mengubahnya jika Anda ingin, tetapi Anda juga " +"bisa membiarkannya begitu saja.\n" #: gnucash/gtkbuilder/assistant-qif-import.glade:553 -#, fuzzy msgid "Accounts and stock holdings" -msgstr "Akun" +msgstr "Akun dan kepemilikan saham" #: gnucash/gtkbuilder/assistant-qif-import.glade:567 #: gnucash/gtkbuilder/assistant-qif-import.glade:699 #: gnucash/gtkbuilder/assistant-qif-import.glade:829 -#, fuzzy msgid "_Select the matchings you want to change" -msgstr "Pilih catatan yang ingin Anda ubah." +msgstr "_Pilih kecocokan yang ingin diubah" #: gnucash/gtkbuilder/assistant-qif-import.glade:608 #: gnucash/gtkbuilder/assistant-qif-import.glade:740 #: gnucash/gtkbuilder/assistant-qif-import.glade:870 -#, fuzzy msgid "Matchings selected" -msgstr "Tidak ada folder yang dipilih." +msgstr "Kecocokan yang dipilih" #: gnucash/gtkbuilder/assistant-qif-import.glade:656 msgid "Match QIF accounts with GnuCash accounts" -msgstr "" +msgstr "Cocokkan akun QIF dengan akun GnuCash" #: gnucash/gtkbuilder/assistant-qif-import.glade:670 msgid "" @@ -13716,6 +14199,17 @@ msgid "" "If you change your mind later, you can reorganize the account structure " "safely within GnuCash." msgstr "" +"GnuCash menggunakan akun Pendapatan dan Pengeluaran yang terpisah dan " +"bukannya kategori untuk mengklasifikasikan transaksi Anda. Masing-masing " +"kategori dalam berkas QIF Anda akan dikonversi ke akun GnuCash.\n" +"\n" +"Pada halaman berikutnya, Anda akan memiliki kesempatan untuk melihat " +"kecocokan yang disarankan antara kategori QIF dan akun GnuCash. Anda dapat " +"mengubah kecocokan yang tidak Anda sukai seperti dengan klik dua kali pada " +"baris yang berisi nama kategori.\n" +"\n" +"Jika Anda berubah pikiran nanti, Anda dapat mengatur ulang struktur akun " +"secara aman dalam GnuCash." #: gnucash/gtkbuilder/assistant-qif-import.glade:685 msgid "Income and Expense categories" @@ -13723,7 +14217,7 @@ msgstr "Kategori Pendapatan dan Pengeluaran" #: gnucash/gtkbuilder/assistant-qif-import.glade:788 msgid "Match QIF categories with GnuCash accounts" -msgstr "" +msgstr "Cocokkan kategori QIF dengan akun GnuCash" #: gnucash/gtkbuilder/assistant-qif-import.glade:802 msgid "" @@ -13736,30 +14230,39 @@ msgid "" "these transactions are assigned to the 'Unspecified' account in GnuCash. If " "you select a different account, it will be remembered for future QIF files. " msgstr "" +"Berkas QIF yang diunduh dari bank dan lembaga keuangan lainnya mungkin tidak " +"memiliki informasi tentang Akun dan Kategori yang akan memungkinkan mereka " +"untuk dipasangkan secara benar ke akun-akun GnuCash.\n" +"\n" +"Pada halaman berikut, Anda akan melihat teks yang muncul di bidang Penerima " +"Pembayaran dan Memo transaksi tanpa Akun atau Kategori QIF. Secara baku " +"transaksi ini dipasangkan ke akun 'Tak Ditentukan' di GnuCash. Jika Anda " +"memilih akun yang berbeda, akun itu akan diingat untuk berkas QIF di waktu " +"mendatang. " #: gnucash/gtkbuilder/assistant-qif-import.glade:815 -#, fuzzy msgid "Payees and memos" -msgstr "_Memo:" +msgstr "Penerima pembayaran dan memo" #: gnucash/gtkbuilder/assistant-qif-import.glade:918 msgid "Match payees/memos to GnuCash accounts" -msgstr "" +msgstr "Cocokkan penerima pembayaran/memo ke akun GnuCash" #: gnucash/gtkbuilder/assistant-qif-import.glade:932 msgid "" "The QIF importer cannot currently handle multi-currency QIF files. All the " "accounts you are importing must be denominated in the same currency.\n" msgstr "" +"Pengimpor QIF saat ini tidak dapat menangani berkas QIF dengan beberapa mata " +"uang. Semua akun yang akan diimpor harus menggunakan mata uang yang sama.\n" #: gnucash/gtkbuilder/assistant-qif-import.glade:947 msgid "_Select the currency to use for all imported transactions:" -msgstr "" +msgstr "Pilih mata uang yang digunakan untuk _semua transaksi yang diimpor:" #: gnucash/gtkbuilder/assistant-qif-import.glade:975 -#, fuzzy msgid "Book Options" -msgstr "Ruang Lingkup" +msgstr "Opsi Buku" #: gnucash/gtkbuilder/assistant-qif-import.glade:988 msgid "" @@ -13769,11 +14272,17 @@ msgid "" "setting book options will not be shown a second time when you go forward. " "You can access it directly from the menu via File->Properties." msgstr "" +"Karena Anda membuat berkas baru, Anda selanjutnya akan melihat dialog untuk " +"mengatur opsi-opsi buku. Ini dapat mempengaruhi bagaimana GnuCash mengimpor " +"transaksi. Jika Anda kembali ke halaman ini tanpa membatalkan dan mulai lagi " +"dari awal, dialog untuk menggatur opsi buku tidak akan ditampilkan untuk " +"kedua kalinya ketika Anda maju. Anda dapat mengaksesnya secara langsung dari " +"menu melalui Berkas->Properti." #: gnucash/gtkbuilder/assistant-qif-import.glade:999 #: gnucash/import-export/qif-imp/assistant-qif-import.c:2642 msgid "Choose the QIF file currency and select Book Options" -msgstr "" +msgstr "Pilih mata uang berkas QIF dan pilih Opsi Buku" #: gnucash/gtkbuilder/assistant-qif-import.glade:1020 msgid "" @@ -13792,40 +14301,45 @@ msgid "" "If you don't see your exchange listed, or none of the available choices are " "appropriate, you can enter a new one." msgstr "" +"Di bawah ini Anda diminta untuk memberikan informasi tentang saham, " +"reksadana, dan investasi lainnya yang ada di dalam berkas QIF yang diimpor. " +"GnuCash membutuhkan beberapa rincian tambahan tentang investasi ini yang " +"tidak disediakan oleh format QIF.\n" +"\n" +"Setiap saham, reksadana, atau investasi lainnya harus memiliki nama dan " +"singkatan, seperti simbol saham. Karena beberapa investasi yang tidak " +"berhubungan memiliki singkatan yang sama, Anda juga perlu menunjukkan jenis " +"singkatan yang telah Anda masukkan. Misalnya, Anda bisa memilih bursa yang " +"menetapkan simbol (NASDAQ, NYSE, dll), atau pilih jenis investasi.\n" +"\n" +"Jika bursa Anda tidak terdaftar, atau tidak tersedia pilihan yang sesuai, " +"Anda dapat memasukkan pilihan baru." #: gnucash/gtkbuilder/assistant-qif-import.glade:1038 -#, fuzzy msgid "Enter Information about..." -msgstr "" -"Masukkan informasi tentang kunci yang akan diambil pada kolom yang " -"disediakan. Rincian seperti kunci ID atau alamat surel pemilik kunci ini " -"akan memberikan hasil yang lebih akurat dibandingkan dengan nama pemilik " -"kunci." +msgstr "Masukkan Informasi tentang..." #: gnucash/gtkbuilder/assistant-qif-import.glade:1064 msgid "All fields must be complete to continue..." -msgstr "" +msgstr "Semua bidang harus lengkap untuk melanjutkan..." #: gnucash/gtkbuilder/assistant-qif-import.glade:1081 msgid "Tradable commodities" -msgstr "" +msgstr "Komoditas dapat diperdagangkan" #: gnucash/gtkbuilder/assistant-qif-import.glade:1157 -#, fuzzy msgid "_Start Import" -msgstr "_Impor" +msgstr "_Mulai Impor" #: gnucash/gtkbuilder/assistant-qif-import.glade:1172 #: gnucash/import-export/qif-imp/assistant-qif-import.c:1733 #: gnucash/import-export/qif-imp/assistant-qif-import.c:2986 -#, fuzzy msgid "P_ause" msgstr "Jed_a" #: gnucash/gtkbuilder/assistant-qif-import.glade:1227 -#, fuzzy msgid "QIF Import" -msgstr "_Impor" +msgstr "Impor QIF" #. Run the assistant in your language to see GTK's translation of the button labels. #: gnucash/gtkbuilder/assistant-qif-import.glade:1241 @@ -13843,24 +14357,35 @@ msgid "" "\n" "Click \"Next\" to review the possible matches." msgstr "" +"\n" +"Jika Anda mengimpor berkas QIF dari bank atau lembaga keuangan lainnya, " +"beberapa transaksi mungkin sudah ada di akun GnuCash Anda. Untuk menghindari " +"duplikasi, GnuCash telah mencoba untuk mengidentifikasi kecocokan dan " +"membutuhkan bantuan Anda untuk meninjau mereka.\n" +"\n" +"Pada halaman berikutnya akan ditampilkan daftar transaksi yang diimpor. " +"Ketika Anda memilihnya satu per satu, sebuah daftar kemungkinan kecocokan " +"akan ditampilkan di bawahnya. Jika Anda menemukan kecocokan yang benar, klik " +"pada kecocokan itu. Pilihan Anda akan dikonfirmasi oleh tanda centang di " +"kolom \"Cocok?\".\n" +"\n" +"Klik \"Berikutnya\" untuk meninjau kemungkinan kecocokan." #: gnucash/gtkbuilder/assistant-qif-import.glade:1257 -#, fuzzy msgid "Match existing transactions" -msgstr "_Cocok Huruf Besar/Kecil" +msgstr "Cocokkan transaksi yang ada" #: gnucash/gtkbuilder/assistant-qif-import.glade:1300 msgid "_Imported transactions needing review" -msgstr "" +msgstr "Transaksi yang di_impor perlu diperiksa" #: gnucash/gtkbuilder/assistant-qif-import.glade:1339 msgid "_Possible matches for the selected transaction" -msgstr "" +msgstr "Kecocokan yang mungkin untuk transaksi yang di_pilih" #: gnucash/gtkbuilder/assistant-qif-import.glade:1360 -#, fuzzy msgid "Select possible duplicates" -msgstr "Tambah dengan duplikat" +msgstr "Pilih duplikat yang mungkin" #: gnucash/gtkbuilder/assistant-qif-import.glade:1368 msgid "" @@ -13875,41 +14400,49 @@ msgid "" "\n" "Click \"Cancel\" to abort the QIF import process." msgstr "" +"Klik \"Terapkan\" untuk mengimpor data dari area gelar dan memperbarui akun " +"GnuCash Anda. Akun dan kategori yang cocok dengan informasi yang Anda " +"masukkan akan disimpan dan digunakan sebagai pengaturan baku pada saat Anda " +"menggunakan fasilitas impor QIF.\n" +"\n" +"Klik \"Kembali\" untuk meninjau pencocokan akun dan kategori Anda, untuk " +"mengubah pengaturan mata uang dan sekuritas untuk akun baru, atau untuk " +"menambah lebih banyak berkas ke area gelar.\n" +"\n" +"Klik \"Batal\" untuk membatalkan proses impor QIF." #: gnucash/gtkbuilder/assistant-qif-import.glade:1377 -#, fuzzy msgid "Update your GnuCash accounts" -msgstr "Mutakhirkan salinan kerja Anda" +msgstr "Perbarui akun GnuCash Anda" #: gnucash/gtkbuilder/assistant-qif-import.glade:1385 -#, fuzzy msgid "Summary Text" -msgstr "[Tanpa Judul]" +msgstr "Teks Ikhtisar" #: gnucash/gtkbuilder/assistant-qif-import.glade:1390 -#, fuzzy msgid "Qif Import Summary" -msgstr "* Tidak ada judul *" +msgstr "Ikhtisar Impor Qif" #: gnucash/gtkbuilder/assistant-stock-split.glade:9 #: gnucash/gtkbuilder/assistant-stock-split.glade:37 -#, fuzzy msgid "Stock Split Assistant" -msgstr "Stok" +msgstr "Asisten Split Saham" #: gnucash/gtkbuilder/assistant-stock-split.glade:31 msgid "This assistant will help you record a stock split or stock merger.\n" msgstr "" +"Asisten ini akan membantu Anda mencatat split saham atau gabung saham.\n" #: gnucash/gtkbuilder/assistant-stock-split.glade:53 msgid "" "Select the account for which you want to record a stock split or merger." msgstr "" +"Pilih akun yang akan Anda gunakan untuk mencatat split saham atau gabung " +"saham." #: gnucash/gtkbuilder/assistant-stock-split.glade:86 -#, fuzzy msgid "Stock Split Account" -msgstr "tipe akun: Saham" +msgstr "Akun Split Saham" #: gnucash/gtkbuilder/assistant-stock-split.glade:101 msgid "" @@ -13918,76 +14451,75 @@ msgid "" "for the share distribution. You can also enter a description of the " "transaction, or accept the default one." msgstr "" +"Masukkan tanggal dan jumlah saham yang Anda peroleh atau berkurang dari " +"split atau gabung saham. Untuk penggabungan saham (pemisahan negatif) " +"gunakan nilai negatif untuk distribusi saham. Anda juga dapat memasukkan " +"deskripsi transaksi, atau menggunakan deskripsi baku." #: gnucash/gtkbuilder/assistant-stock-split.glade:151 -#, fuzzy msgid "Desc_ription" -msgstr "Status & ket." +msgstr "Desk_ripsi" #: gnucash/gtkbuilder/assistant-stock-split.glade:166 -#, fuzzy msgid "Stock Split" -msgstr "pecah" +msgstr "Split Saham" #: gnucash/gtkbuilder/assistant-stock-split.glade:189 msgid "" "If you want to record a stock price for the split, enter it below. You may " "safely leave it blank." msgstr "" +"Jika Anda ingin mencatat harga saham untuk split, masukkan di bawah ini. " +"Anda bisa membuarkannya kosong." #: gnucash/gtkbuilder/assistant-stock-split.glade:205 -#, fuzzy msgid "New _Price" -msgstr "harga: kuotasi" +msgstr "Harga _Baru" #: gnucash/gtkbuilder/assistant-stock-split.glade:219 -#, fuzzy msgid "Currenc_y" -msgstr "_Y:" +msgstr "Mata _Uang" #: gnucash/gtkbuilder/assistant-stock-split.glade:249 -#, fuzzy msgid "Stock Split Details" -msgstr "pecah" +msgstr "Detail Split Saham" #: gnucash/gtkbuilder/assistant-stock-split.glade:265 msgid "" "If you received a cash disbursement as a result of the stock split, enter " "the details of that payment here. Otherwise, just click \"Next\"." msgstr "" +"Jika Anda menerima pencairan uang tunai sebagai hasil dari split saham, " +"masukkan detail pembayaran itu di sini. Jika tidak, klik \"Berikutnya\"." #: gnucash/gtkbuilder/assistant-stock-split.glade:286 #: gnucash/import-export/aqb/dialog-ab.glade:1088 -#, fuzzy msgid "_Amount" -msgstr "jumlah" +msgstr "Juml_ah" #: gnucash/gtkbuilder/assistant-stock-split.glade:300 #: gnucash/gtkbuilder/dialog-print-check.glade:1129 -#: gnucash/gtkbuilder/gnc-plugin-page-register.glade:757 -#, fuzzy +#: gnucash/gtkbuilder/gnc-plugin-page-register.glade:956 msgid "_Memo" -msgstr "Memo" +msgstr "_Memo" #. Default memo text for the remains of a stock split #: gnucash/gtkbuilder/assistant-stock-split.glade:316 msgid "Cash in lieu" -msgstr "tunai" +msgstr "Kas pengganti" #: gnucash/gtkbuilder/assistant-stock-split.glade:352 -#, fuzzy msgid "_Income Account" -msgstr "tipe akun: Pendapatan" +msgstr "Akun _Pendapatan" #: gnucash/gtkbuilder/assistant-stock-split.glade:365 -#, fuzzy msgid "A_sset Account" -msgstr "Ruang Lingkup" +msgstr "Akun A_set" #. Dialog title for the remains of a stock split #: gnucash/gtkbuilder/assistant-stock-split.glade:409 msgid "Cash In Lieu" -msgstr "tunai" +msgstr "Kas Pengganti" #: gnucash/gtkbuilder/assistant-stock-split.glade:419 msgid "" @@ -13995,89 +14527,76 @@ msgid "" "may also press \"Back\" to review your choices, or \"Cancel\" to quit " "without making any changes." msgstr "" +"Jika Anda telah selesai membuat split saham atau gabung saham, tekan " +"\"Terapkan\". Anda juga bisa menekan \"Kembali\" untuk memeriksa pilihan " +"Anda, atau \"Batal\" untuk keluar tanpa membuat perubahan apapun." #: gnucash/gtkbuilder/assistant-stock-split.glade:424 -#, fuzzy msgid "Stock Split Finish" -msgstr "_Selesai" +msgstr "Selesai Split Saham" #: gnucash/gtkbuilder/assistant-xml-encoding.glade:25 -#, fuzzy msgid "Introduction placeholder" -msgstr "placeholder" +msgstr "Placeholder perkenalan" #: gnucash/gtkbuilder/assistant-xml-encoding.glade:30 -#, fuzzy msgid "Title placeholder" -msgstr "placeholder" +msgstr "Placeholder judul" #: gnucash/gtkbuilder/assistant-xml-encoding.glade:55 -#, fuzzy msgid "_Edit list of encodings" -msgstr "Kandidat Pengkodean" +msgstr "_Sunting daftar pengkodean" #: gnucash/gtkbuilder/assistant-xml-encoding.glade:78 -#, fuzzy msgid "Default encoding" -msgstr "Pengkodean bawaan" +msgstr "Pengkodean baku" #: gnucash/gtkbuilder/assistant-xml-encoding.glade:148 -#, fuzzy msgid "Convert the file" -msgstr "" -"Sebagai contoh, untuk mengonversi sebuah berkas JPEG (.jpg) ke " -"dalam berkas Bitmap (.bmp):" +msgstr "Konversi berkas" #: gnucash/gtkbuilder/assistant-xml-encoding.glade:157 -#, fuzzy msgid "finish placeholder" -msgstr "placeholder" +msgstr "placeholder selesai" #: gnucash/gtkbuilder/assistant-xml-encoding.glade:162 msgid "Finish GnuCash Datafile Import" -msgstr "" +msgstr "Selesai Impor Berkas Data GnuCash" #: gnucash/gtkbuilder/assistant-xml-encoding.glade:184 -#, fuzzy msgid "Edit the list of encodings" -msgstr "Kandidat Pengkodean" +msgstr "Sunting daftar pengkodean" #: gnucash/gtkbuilder/assistant-xml-encoding.glade:260 msgid "S_ystem input encodings" -msgstr "" +msgstr "Pengkodean masukan sis_tem" #: gnucash/gtkbuilder/assistant-xml-encoding.glade:346 -#, fuzzy msgid "_Custom encoding" -msgstr "Ruang Lingkup" +msgstr "Pengkodean _tersuai" #: gnucash/gtkbuilder/assistant-xml-encoding.glade:429 -#, fuzzy msgid "_Selected encodings" -msgstr "Ruang Lingkup" +msgstr "Pengkodean terpili_h" #: gnucash/gtkbuilder/business-prefs.glade:42 #: gnucash/gtkbuilder/dialog-account-picker.glade:8 #: gnucash/gtkbuilder/dialog-sx.glade:499 -#, fuzzy msgid "Preferences" msgstr "Preferensi" #. Preferences Dialog, General Tab #: gnucash/gtkbuilder/business-prefs.glade:55 -#: gnucash/gtkbuilder/dialog-preferences.glade:1264 -#: gnucash/gtkbuilder/dialog-preferences.glade:1950 -#, fuzzy +#: gnucash/gtkbuilder/dialog-preferences.glade:1381 +#: gnucash/gtkbuilder/dialog-preferences.glade:2067 msgid "General" msgstr "Umum" #: gnucash/gtkbuilder/business-prefs.glade:65 -#, fuzzy msgid "Enable extra _buttons" -msgstr "Akti_fkan" +msgstr "Aktifkan tom_bol ekstra" #: gnucash/gtkbuilder/business-prefs.glade:83 -#, fuzzy msgid "_Open in new window" msgstr "_Buka di jendela baru" @@ -14091,7 +14610,7 @@ msgstr "" #: gnucash/gtkbuilder/business-prefs.glade:101 msgid "_Accumulate splits on post" -msgstr "_Akumulasikan Pemecahan saat mengepos" +msgstr "_Akumulasikan split saat pos" #: gnucash/gtkbuilder/business-prefs.glade:107 msgid "" @@ -14100,39 +14619,37 @@ msgid "" "changed in the Post dialog." msgstr "" "Apakah beberapa entri pada sebuah faktur yang transfer ke akun yang sama " -"harus diakumulasikan ke dalam sebuah pemecahan tunggal secara bawaan. " -"Setelan ini bisa diubah pada dialog Pos." +"harus diakumulasikan ke dalam sebuah split tunggal, secara baku. Pengaturan " +"ini bisa diubah pada dialog Pos." #: gnucash/gtkbuilder/business-prefs.glade:132 -#, fuzzy msgid "Invoices" -msgstr "Ruang Lingkup" +msgstr "Faktur" #: gnucash/gtkbuilder/business-prefs.glade:142 -#, fuzzy msgid "Not_ify when due" -msgstr "Tanggal _Berlaku:" +msgstr "Ber_itahu jika jatuh tempo" #: gnucash/gtkbuilder/business-prefs.glade:148 #: gnucash/gtkbuilder/business-prefs.glade:237 msgid "Whether to display the list of Bills Due at startup." -msgstr "" +msgstr "Apakah menampilkan daftar Tagihan Jatuh Tempo pada saat mulai." #: gnucash/gtkbuilder/business-prefs.glade:163 -#, fuzzy msgid "Report for printing" -msgstr "Lapo_rkan" +msgstr "Laporan untuk dicetak" #: gnucash/gtkbuilder/business-prefs.glade:172 -#, fuzzy msgid "_Tax included" -msgstr "kode pajak" +msgstr "_Termasuk pajak" #: gnucash/gtkbuilder/business-prefs.glade:178 msgid "" "Whether tax is included by default in entries on Bills. This setting is " "inherited by new customers and vendors." msgstr "" +"Apkah pajak disertakan secara baku pada entri di Tagihan. Pengaturan ini " +"diwarisi oleh pelanggan dan vendor baru." #. See the tooltip "At post time..." for details. #: gnucash/gtkbuilder/business-prefs.glade:190 @@ -14140,25 +14657,24 @@ msgid "_Process payments on posting" msgstr "_Proses pembayaran saat mengepos" #: gnucash/gtkbuilder/business-prefs.glade:221 -#, fuzzy msgid "Bills" -msgstr "Ruang Lingkup" +msgstr "Tagihan" #: gnucash/gtkbuilder/business-prefs.glade:231 -#, fuzzy msgid "_Notify when due" -msgstr "Jatuh Tempo" +msgstr "Beritahu jika jatuh te_mpo" #: gnucash/gtkbuilder/business-prefs.glade:249 -#, fuzzy msgid "Ta_x included" -msgstr "%s tidak termasuk dalam %s" +msgstr "Termasuk _pajak" #: gnucash/gtkbuilder/business-prefs.glade:255 msgid "" "Whether tax is included by default in entries on Invoices. This setting is " "inherited by new customers and vendors." msgstr "" +"Apkah pajak disertakan secara baku pada entri di Faktur. Pengaturan ini " +"diwarisi oleh pelanggan dan vendor baru." #. See the tooltip "At post time..." for details. #: gnucash/gtkbuilder/business-prefs.glade:267 @@ -14166,224 +14682,208 @@ msgid "Pro_cess payments on posting" msgstr "Pro_ses pembayaran saat mengepos" #: gnucash/gtkbuilder/business-prefs.glade:287 -#, fuzzy msgid "Days in ad_vance" -msgstr "Michael Vance" +msgstr "_Hari sebelumnya" #: gnucash/gtkbuilder/business-prefs.glade:302 msgid "How many days in the future to warn about Bills coming due." msgstr "" +"Berapa hari di masa mendatang untuk memperingatkan tentang Tagihan yang akan " +"jatuh tempo." #: gnucash/gtkbuilder/business-prefs.glade:339 msgid "How many days in the future to warn about Invoices coming due." msgstr "" +"Berapa hari di masa mendatang untuk memperingatkan tentang Faktur yang akan " +"jatuh tempo." #: gnucash/gtkbuilder/business-prefs.glade:352 -#, fuzzy msgid "_Days in advance" -msgstr "Game Boy Advance" +msgstr "_Hari sebelumnya" #: gnucash/gtkbuilder/dialog-account.glade:7 -#, fuzzy msgid "Cascade Account Values" -msgstr "_Cascade Style Sheet" +msgstr "Jadikan Nilai Akun Bertingkat" #: gnucash/gtkbuilder/dialog-account.glade:69 -#, fuzzy msgid "Enable Cascading Account Color" -msgstr "Masuklah untuk memfungsikan akun ini." +msgstr "Aktifkan Warna Akun Bertingkat" #: gnucash/gtkbuilder/dialog-account.glade:104 -#, fuzzy msgid "Enable Cascading Account Placeholder" -msgstr "Masuklah untuk memfungsikan akun ini." +msgstr "Aktifkan Placeholder Akun Bertingkat" #: gnucash/gtkbuilder/dialog-account.glade:129 -#, fuzzy msgid "Enable Cascading Account Hidden" -msgstr "Masuklah untuk memfungsikan akun ini." +msgstr "Aktifkan Akun Bertingkat Tersembunyi" #: gnucash/gtkbuilder/dialog-account.glade:151 -#, fuzzy msgid "Enable the sections to Cascade" -msgstr "_Cascade Style Sheet" +msgstr "Aktifkan bagian untuk menjadi Bertingkat" #: gnucash/gtkbuilder/dialog-account.glade:199 #: gnucash/gtkbuilder/dialog-account.glade:1326 #: gnucash/report/html-style-sheet.scm:217 gnucash/report/report-core.scm:213 #: gnucash/report/stylesheets/plain.scm:232 -#, fuzzy msgid "Default" -msgstr "Bawaan" +msgstr "Baku" #: gnucash/gtkbuilder/dialog-account.glade:221 msgid "" "If any account has an existing color it will not be replaced unless the " "following is ticked." msgstr "" +"Jika suatu akun telah memiliki warna, warna itu tidak akan diganti kecuali " +"opsi berikut dicentang." #: gnucash/gtkbuilder/dialog-account.glade:232 msgid "Replace any existing account colors" -msgstr "" +msgstr "Ganti warna akun yang sudah ada" #: gnucash/gtkbuilder/dialog-account.glade:364 -#, fuzzy msgid "Delete Account" -msgstr "Anda yakin ingin menghapus akun “{0}”?" +msgstr "Hapus Akun" #: gnucash/gtkbuilder/dialog-account.glade:449 -#, fuzzy msgid "Sub-accounts" -msgstr "Ruang Lingkup" +msgstr "Sub-akun" #: gnucash/gtkbuilder/dialog-account.glade:470 msgid "This account has a sub-account. What would you like to do with it?" -msgstr "" +msgstr "Akun ini memiliki sub-akun. Apa yang ingin Anda lakukan dengannya?" #: gnucash/gtkbuilder/dialog-account.glade:481 -#, fuzzy msgid "_Move to" -msgstr "Pindah Ke" +msgstr "_Pindah ke" #: gnucash/gtkbuilder/dialog-account.glade:499 -#, fuzzy msgid "Delete the _subaccount" -msgstr "akun: sub-akun" +msgstr "Hapus _sub-akun" #: gnucash/gtkbuilder/dialog-account.glade:554 -#, fuzzy msgid "Transactions" -msgstr "Ruang Lingkup" +msgstr "Transaksi" #: gnucash/gtkbuilder/dialog-account.glade:572 #: gnucash/gtkbuilder/dialog-account.glade:690 -#, fuzzy msgid "M_ove to" -msgstr "Pind_ah ke Layar" +msgstr "P_indah ke" #: gnucash/gtkbuilder/dialog-account.glade:588 #: gnucash/gtkbuilder/dialog-account.glade:706 -#, fuzzy msgid "Delete all _transactions" -msgstr "Hapus semua berkas temporer?" +msgstr "Hapus semua _transaksi" #: gnucash/gtkbuilder/dialog-account.glade:609 msgid "" "This account contains transactions. What would you like to do with these " "transactions?" msgstr "" +"Akun ini memiliki beberapa transaksi. Apa yang ingin Anda lakukan dengan " +"transaksi tersebut?" #: gnucash/gtkbuilder/dialog-account.glade:623 msgid "This account contains read-only transactions which may not be deleted." -msgstr "" +msgstr "Akun ini memiliki transaksi hanya-baca yang tidak bisa dihapus." #: gnucash/gtkbuilder/dialog-account.glade:672 msgid "Sub-account Transactions" -msgstr "" +msgstr "Transaksi Sub-akun" #: gnucash/gtkbuilder/dialog-account.glade:727 msgid "" "You've said to delete the subaccount and it contains transactions. What " "would you like to do with these transactions?" msgstr "" +"Anda akan menghapus sub-akun yang memiliki beberapa transaksi. Apa yang " +"ingin Anda lakukan dengan transaksi itu?" #: gnucash/gtkbuilder/dialog-account.glade:741 msgid "" "One or more sub-accounts contain read-only transactions which may not be " "deleted." msgstr "" +"Satu atau lebih sub-akun memiliki transaksi hanya-baca yang tidak bisa " +"dihapus." #: gnucash/gtkbuilder/dialog-account.glade:801 #: gnucash/gtkbuilder/gnc-tree-view-owner.glade:8 #: gnucash/report/trep-engine.scm:51 -#, fuzzy msgid "Filter By..." -msgstr "Tak ada penyaring" +msgstr "Filter Berdasar..." #: gnucash/gtkbuilder/dialog-account.glade:922 -#, fuzzy msgid "_Default" -msgstr "_Bawaan" +msgstr "_Baku" #: gnucash/gtkbuilder/dialog-account.glade:954 #: gnucash/report/reports/standard/account-summary.scm:117 -#, fuzzy msgid "Account Type" -msgstr "_Tipe Akun" +msgstr "Tipe Akun" #: gnucash/gtkbuilder/dialog-account.glade:968 -#, fuzzy msgid "Show _hidden accounts" -msgstr "Tampilkan berkas tersembunyi pada _hasil" +msgstr "Tampilkan akun _tersembunyi" #: gnucash/gtkbuilder/dialog-account.glade:972 msgid "Show accounts which have the option \"Hidden\" checked." -msgstr "" +msgstr "Tampilkan akun yang memiliki opsi \"Tersembunyi\" aktif." #: gnucash/gtkbuilder/dialog-account.glade:986 -#, fuzzy msgid "Show _unused accounts" -msgstr "Menonaktifkan teknologi nirkabel yang tidak terpakai" +msgstr "Tampilkan ak_un tak terpakai" #: gnucash/gtkbuilder/dialog-account.glade:990 msgid "Show accounts which do not have any transactions." -msgstr "" +msgstr "Tampilkan akun yang tidak memiliki transaksi." #: gnucash/gtkbuilder/dialog-account.glade:1004 msgid "Show _zero total accounts" -msgstr "" +msgstr "Tampilkan akun dengan total _nol" #: gnucash/gtkbuilder/dialog-account.glade:1008 msgid "Show accounts which have a zero total value." -msgstr "" +msgstr "Tampilkan akun yang memiliki nilai total nol." #: gnucash/gtkbuilder/dialog-account.glade:1063 -#, fuzzy msgid "Use Commodity Value" -msgstr "komoditas" +msgstr "Gunakan Nilai Komoditas" #: gnucash/gtkbuilder/dialog-account.glade:1194 -#, fuzzy msgid "Identification" -msgstr "Ruang Lingkup" +msgstr "Identifikasi" #: gnucash/gtkbuilder/dialog-account.glade:1214 -#, fuzzy msgid "Account _name" -msgstr "nama akun" +msgstr "_Nama akun" #: gnucash/gtkbuilder/dialog-account.glade:1229 -#, fuzzy msgid "_Account code" -msgstr "kode akun" +msgstr "Kode _akun" #: gnucash/gtkbuilder/dialog-account.glade:1243 -#, fuzzy msgid "_Description" msgstr "_Deskripsi" #: gnucash/gtkbuilder/dialog-account.glade:1283 -#, fuzzy msgid "Smallest _fraction" -msgstr "Fraksi Kemajuan" +msgstr "_Fraksi terkecil" #: gnucash/gtkbuilder/dialog-account.glade:1297 -#, fuzzy msgid "Account _Color" -msgstr "_Untuk Akun:" +msgstr "_Warna Akun" #: gnucash/gtkbuilder/dialog-account.glade:1350 msgid "No_tes" -msgstr "" +msgstr "Ca_tatan" #: gnucash/gtkbuilder/dialog-account.glade:1422 msgid "Smallest fraction of this commodity that can be referenced." -msgstr "" +msgstr "Fraksi terkecil dari komoditas ini yang dapat dijadikan acuan." #: gnucash/gtkbuilder/dialog-account.glade:1444 -#, fuzzy msgid "Placeholde_r" -msgstr "%a %R" +msgstr "Placeholde_r" #: gnucash/gtkbuilder/dialog-account.glade:1448 msgid "" @@ -14391,13 +14891,12 @@ msgid "" "Transactions may not be posted to this account, only to sub-accounts of this " "account." msgstr "" -"Akun ini disediakan khusus sebagai placeholder pada hirarki. Transaksi tidak " -"boleh dipos di akun ini, hanya boleh di sub-akun pada akun ini." +"Akun ini disediakan khusus sebagai placeholder pada hierarki. Transaksi " +"tidak boleh dipos di akun ini, hanya boleh di sub-akun pada akun ini." #: gnucash/gtkbuilder/dialog-account.glade:1460 -#, fuzzy msgid "H_idden" -msgstr "(H) " +msgstr "T_ersembunyi" #: gnucash/gtkbuilder/dialog-account.glade:1464 msgid "" @@ -14407,16 +14906,19 @@ msgid "" "account tree and check the \"show hidden accounts\" option. Doing so will " "allow you to select the account and reopen this dialog." msgstr "" +"Akun ini (dan sub-akunnya) akan disembunyikan di pohon akun dan tidak akan " +"terlihat di daftar akun popup di register. Untuk menyetel ulang opsi ini, " +"Anda perlu membuka dialog \"Filter Berdasar...\" untuk pohon akun dan " +"memberi tanda centang pada opsi \"tampilkan akun tersembunyi\". Dengan " +"melakukan itu, Anda bisa memilih akun dan membuka kembali dialog ini." #: gnucash/gtkbuilder/dialog-account.glade:1476 -#, fuzzy msgid "Auto _interest transfer" -msgstr "Otom_atis" +msgstr "Transfer bunga otomat_is" #: gnucash/gtkbuilder/dialog-account.glade:1492 -#, fuzzy msgid "Ta_x related" -msgstr "Halaman Terkait" +msgstr "Terkait _Pajak" #. Translators: use the same words here as in 'Ta_x Report Options'. #: gnucash/gtkbuilder/dialog-account.glade:1497 @@ -14427,22 +14929,32 @@ msgstr "" "Gunakan Sunting->Opsi Laporan Pajak untuk menyetel bendera yang terkait " "dengan pajak dan menetapkan sebuah kode pajak untuk akun ini." -#: gnucash/gtkbuilder/dialog-account.glade:1543 -#, fuzzy +#: gnucash/gtkbuilder/dialog-account.glade:1509 +msgid "Opening balance" +msgstr "Saldo awal" + +#: gnucash/gtkbuilder/dialog-account.glade:1513 +msgid "" +"This account holds opening balance transactions. Only one account per " +"commodity can hold opening balance transactions." +msgstr "" +"Akun ini menyimpan transaksi-transaksi saldo awal. Hanya ada satu akun per " +"komoditas yang bisa menyimpan transaksi-transaksi saldo awal." + +#: gnucash/gtkbuilder/dialog-account.glade:1560 msgid "Acco_unt Type" -msgstr "Suatu bool, tipe \"b\"" +msgstr "Tipe Ak_un" -#: gnucash/gtkbuilder/dialog-account.glade:1569 -#, fuzzy +#: gnucash/gtkbuilder/dialog-account.glade:1586 msgid "_Parent Account" -msgstr "akun: akun induk" +msgstr "Akun I_nduk" -#: gnucash/gtkbuilder/dialog-account.glade:1649 -#: gnucash/gtkbuilder/dialog-preferences.glade:1893 +#: gnucash/gtkbuilder/dialog-account.glade:1666 +#: gnucash/gtkbuilder/dialog-preferences.glade:2010 #: gnucash/report/report-core.scm:77 #: gnucash/report/reports/standard/equity-statement.scm:108 #: gnucash/report/reports/standard/equity-statement.scm:112 -#: gnucash/report/reports/standard/register.scm:376 +#: gnucash/report/reports/standard/register.scm:347 #: gnucash/report/reports/standard/trial-balance.scm:185 #: gnucash/report/reports/standard/trial-balance.scm:189 #: gnucash/report/reports/standard/view-column.scm:50 @@ -14470,148 +14982,128 @@ msgstr "akun: akun induk" #: gnucash/report/stylesheets/plain.scm:46 #: gnucash/report/stylesheets/plain.scm:52 #: gnucash/report/stylesheets/plain.scm:57 -#, fuzzy msgid "General" msgstr "Umum" -#: gnucash/gtkbuilder/dialog-account.glade:1674 -#, fuzzy +#: gnucash/gtkbuilder/dialog-account.glade:1691 msgid "Balance Information" -msgstr "saldo pembukaan" +msgstr "Informasi Saldo" -#: gnucash/gtkbuilder/dialog-account.glade:1688 -#, fuzzy +#: gnucash/gtkbuilder/dialog-account.glade:1705 msgid "Initial Balance Transfer" -msgstr "saldo pembukaan" - -#: gnucash/gtkbuilder/dialog-account.glade:1755 -msgid "_Use equity 'Opening Balances' account" -msgstr "" +msgstr "Transfer Saldo Awal" #: gnucash/gtkbuilder/dialog-account.glade:1772 -#, fuzzy +msgid "_Use equity 'Opening Balances' account" +msgstr "G_unakan akun 'Saldo Awal' ekuitas" + +#: gnucash/gtkbuilder/dialog-account.glade:1789 msgid "_Select transfer account" -msgstr "akun tujuan transfer" +msgstr "Pilih akun tran_sfer" -#: gnucash/gtkbuilder/dialog-account.glade:1883 -#, fuzzy +#: gnucash/gtkbuilder/dialog-account.glade:1900 msgid "Renumber sub-accounts" -msgstr "Nomori Ulang Bingkai" +msgstr "Nomori ulang sub-akun" -#: gnucash/gtkbuilder/dialog-account.glade:1916 -#, fuzzy +#: gnucash/gtkbuilder/dialog-account.glade:1933 msgid "_Renumber" -msgstr "Menomori ulang urutan bingkai…" +msgstr "Nomo_ri ulang" -#: gnucash/gtkbuilder/dialog-account.glade:1948 -#, fuzzy +#: gnucash/gtkbuilder/dialog-account.glade:1965 msgid "Prefix" -msgstr "Awalan" +msgstr "Prefiks" -#: gnucash/gtkbuilder/dialog-account.glade:1986 -#, fuzzy +#: gnucash/gtkbuilder/dialog-account.glade:2003 msgid "Examples" -msgstr "Contoh:" +msgstr "Contoh" -#: gnucash/gtkbuilder/dialog-account.glade:1998 +#: gnucash/gtkbuilder/dialog-account.glade:2015 #: gnucash/report/reports/standard/balance-forecast.scm:42 -#, fuzzy msgid "Interval" msgstr "Interval" #: gnucash/gtkbuilder/dialog-account-picker.glade:21 -#, fuzzy msgid "QIF Import" -msgstr "Ruang Lingkup" +msgstr "Impor QIF" #: gnucash/gtkbuilder/dialog-account-picker.glade:31 -#, fuzzy msgid "_Show documentation" -msgstr "Tunjukkan Dokumentasi API" +msgstr "Tampilkan dokumenta_si" #: gnucash/gtkbuilder/dialog-account-picker.glade:50 -#: gnucash/gtkbuilder/gnc-plugin-page-register2.glade:511 +#: gnucash/gtkbuilder/gnc-plugin-page-register2.glade:558 #: gnucash/gtkbuilder/gnc-plugin-page-register.glade:402 -#, fuzzy msgid "_Reconciled" -msgstr "status transaksi: rekonsiliasi" +msgstr "Di_rekonsiliasi" #: gnucash/gtkbuilder/dialog-account-picker.glade:69 -#, fuzzy msgid "_Cleared" -msgstr "status transaksi: kliring" +msgstr "_Klir" #: gnucash/gtkbuilder/dialog-account-picker.glade:75 msgid "" "When the status is not specified in a QIF file, the transactions are marked " "as cleared." msgstr "" +"Ketika status tidak ditentukan di dalam berkas QIF, transaksi akan ditandai " +"sebagai klir." #: gnucash/gtkbuilder/dialog-account-picker.glade:88 -#, fuzzy msgid "_Not cleared" -msgstr "Senarai ubah dibersihkan" +msgstr "_Belum klir" #: gnucash/gtkbuilder/dialog-account-picker.glade:94 msgid "" "When the status is not specified in a QIF file, the transactions are marked " "as not cleared." msgstr "" +"Ketika status tidak ditentukan di dalam berkas QIF, transaksi akan ditandai " +"sebagai belum klir." #: gnucash/gtkbuilder/dialog-account-picker.glade:110 msgid "" "Default transaction status (overridden by the status given by the QIF file)" msgstr "" +"Status baku transaksi (ditimpa oleh status yang diberikan oleh berkas QIF)" #: gnucash/gtkbuilder/dialog-account-picker.glade:141 #: gnucash/gtkbuilder/dialog-import.glade:12 -#, fuzzy msgid "Select Account" -msgstr "Pilih sebuah akun" +msgstr "Pilih Akun" #: gnucash/gtkbuilder/dialog-account-picker.glade:219 -#, fuzzy msgid "_Select or add a GnuCash account:" -msgstr "Tambah Akun" +msgstr "Pilih atau tambah akun GnuCa_sh:" #: gnucash/gtkbuilder/dialog-bi-import-gui.glade:7 -#, fuzzy msgid "Import transactions from text file" -msgstr "Muat teks dari berkas" +msgstr "Impor transaksi dari berkas teks" #: gnucash/gtkbuilder/dialog-bi-import-gui.glade:123 -#, fuzzy msgid "1. Choose the file to import" -msgstr "_Impor Berkas…" +msgstr "1. Pilih berkas untuk diimpor" #: gnucash/gtkbuilder/dialog-bi-import-gui.glade:153 -#, fuzzy msgid "Import bill CSV data" -msgstr "Tak ada data untuk diimpor" +msgstr "Impor data CSV tagihan" #: gnucash/gtkbuilder/dialog-bi-import-gui.glade:173 -#, fuzzy msgid "Import invoice CSV data" -msgstr "Tak ada data untuk diimpor" +msgstr "Impor data CSV faktur" #: gnucash/gtkbuilder/dialog-bi-import-gui.glade:191 -#, fuzzy msgid "2. Select import type" -msgstr "Pilih lokasi impor" +msgstr "2. Pilih tipe impor" #: gnucash/gtkbuilder/dialog-bi-import-gui.glade:216 #: gnucash/gtkbuilder/dialog-customer-import-gui.glade:215 -#, fuzzy msgid "Semicolon separated" -msgstr "" -"Tanda titik koma (\";\") memisahkan daftar peladen untuk mencari informasi, " -"selain domain alamat surel." +msgstr "Dipisahkan titik koma" #: gnucash/gtkbuilder/dialog-bi-import-gui.glade:234 #: gnucash/gtkbuilder/dialog-customer-import-gui.glade:232 -#, fuzzy msgid "Comma separated" -msgstr "Nilai dipisah koma (.csv)" +msgstr "Dipisahkan koma" #: gnucash/gtkbuilder/dialog-bi-import-gui.glade:252 #: gnucash/gtkbuilder/dialog-customer-import-gui.glade:250 @@ -14626,22 +15118,19 @@ msgstr "Tanda koma dipisahkan dengan tanda petik" #: gnucash/gtkbuilder/dialog-bi-import-gui.glade:288 #: gnucash/gtkbuilder/dialog-customer-import-gui.glade:286 msgid "Custom regular expression" -msgstr "" +msgstr "Ekspresi reguler tersuai" #: gnucash/gtkbuilder/dialog-bi-import-gui.glade:310 -#, fuzzy msgid "3. Select import options" -msgstr "Opsi Impor Terkait:" +msgstr "3. Pilih opsi impor" #: gnucash/gtkbuilder/dialog-bi-import-gui.glade:349 -#, fuzzy msgid "4. Preview" -msgstr "Pratinjau" +msgstr "4. Pratinjau" #: gnucash/gtkbuilder/dialog-bi-import-gui.glade:374 -#, fuzzy msgid "Open imported documents in tabs" -msgstr "Ada beberapa tab terbuka." +msgstr "Buka dokumen hasil impor di tab" #: gnucash/gtkbuilder/dialog-bi-import-gui.glade:392 msgid "Open not yet posted documents in tabs " @@ -14649,37 +15138,33 @@ msgstr "Buka dokumen yang belum dipos di tab " #: gnucash/gtkbuilder/dialog-bi-import-gui.glade:410 msgid "Don't open imported documents in tabs" -msgstr "" +msgstr "Jangan buka dokumen hasil impor di tab" #: gnucash/gtkbuilder/dialog-bi-import-gui.glade:432 -#, fuzzy msgid "5. Afterwards" -msgstr "Tajuk _5" +msgstr "5. Selanjutnya" #: gnucash/gtkbuilder/dialog-billterms.glade:48 #: gnucash/import-export/aqb/dialog-ab-pref.glade:8 msgid "window1" -msgstr "" +msgstr "jendela1" #: gnucash/gtkbuilder/dialog-billterms.glade:72 -#, fuzzy msgid "Due Days" -msgstr "Tanggal _Berlaku:" +msgstr "Tanggal Jatuh Tempo" #: gnucash/gtkbuilder/dialog-billterms.glade:85 -#, fuzzy msgid "Discount Days" -msgstr "diskon" +msgstr "Tanggal Diskon" #: gnucash/gtkbuilder/dialog-billterms.glade:98 #: gnucash/gtkbuilder/dialog-billterms.glade:236 -#, fuzzy msgid "Discount %" -msgstr "diskon" +msgstr "Diskon %" #: gnucash/gtkbuilder/dialog-billterms.glade:112 msgid "The percentage discount applied for early payment." -msgstr "" +msgstr "Persentase diskon yang diberikan untuk pembayaran lebih awal." #: gnucash/gtkbuilder/dialog-billterms.glade:133 msgid "" @@ -14694,19 +15179,16 @@ msgid "The number of days to pay the bill after the post date." msgstr "Jumlah hari untuk membayar tagihan setelah tanggal pos." #: gnucash/gtkbuilder/dialog-billterms.glade:210 -#, fuzzy msgid "Due Day" -msgstr "Tanggal _Berlaku:" +msgstr "Tanggal Jatuh Tempo" #: gnucash/gtkbuilder/dialog-billterms.glade:223 -#, fuzzy msgid "Discount Day" -msgstr "diskon" +msgstr "Tanggal Diskon" #: gnucash/gtkbuilder/dialog-billterms.glade:249 -#, fuzzy msgid "Cutoff Day" -msgstr "Hari _Ini" +msgstr "Tanggal Tutup" #: gnucash/gtkbuilder/dialog-billterms.glade:263 msgid "" @@ -14714,21 +15196,23 @@ msgid "" "are applied to the following month. Negative values count backwards from the " "end of the month." msgstr "" +"Tanggal tutup untuk menerapkan tagihan ke bulan berikutnya. Setelah tanggal " +"tutup, tagihan akan diterapkan ke bulan berikutnya. Nilai negatif menghitung " +"mundur dari akhir bulan." #: gnucash/gtkbuilder/dialog-billterms.glade:285 msgid "The discount percentage applied if paid early." -msgstr "" +msgstr "Persentase diskon yang diberikan jika dibayar lebih awal." #: gnucash/gtkbuilder/dialog-billterms.glade:307 msgid "The last day of the month for the early payment discount." -msgstr "" +msgstr "Tanggal terakhir dalam satu bulan untuk diskon pembayaran awal." #: gnucash/gtkbuilder/dialog-billterms.glade:329 msgid "The day of the month bills are due" -msgstr "" +msgstr "Tanggal jatuh tempo tagihan dalam satu bulan" #: gnucash/gtkbuilder/dialog-billterms.glade:393 -#, fuzzy msgid "Table" msgstr "Tabel" @@ -14737,14 +15221,12 @@ msgstr "Tabel" #: gnucash/gtkbuilder/dialog-invoice.glade:336 #: gnucash/gtkbuilder/dialog-invoice.glade:957 #: gnucash/gtkbuilder/dialog-vendor.glade:520 -#, fuzzy msgid "Terms" -msgstr "Tips & istilah jaringan" +msgstr "Ketentuan" #: gnucash/gtkbuilder/dialog-billterms.glade:434 -#, fuzzy msgid "Terms" -msgstr "Ruang Lingkup" +msgstr "Ketentuan" #: gnucash/gtkbuilder/dialog-billterms.glade:481 msgid "Delete the current Billing Term" @@ -14763,9 +15245,8 @@ msgstr "Definisi Jangka" #: gnucash/gtkbuilder/dialog-billterms.glade:572 #: gnucash/gtkbuilder/dialog-billterms.glade:909 #: gnucash/gtkbuilder/dialog-billterms.glade:1146 -#, fuzzy msgid "De_scription" -msgstr "De_vilish" +msgstr "De_skripsi" #: gnucash/gtkbuilder/dialog-billterms.glade:587 #: gnucash/gtkbuilder/dialog-billterms.glade:924 @@ -14774,9 +15255,8 @@ msgstr "De_vilish" #: gnucash/gtkbuilder/dialog-commodity.glade:770 #: gnucash/gtkbuilder/dialog-price.glade:203 #: gnucash/gtkbuilder/dialog-tax-table.glade:476 -#, fuzzy msgid "_Type" -msgstr "_Jenis" +msgstr "_Tipe" #: gnucash/gtkbuilder/dialog-billterms.glade:602 #: gnucash/gtkbuilder/dialog-billterms.glade:859 @@ -14789,15 +15269,13 @@ msgid "Edit the current Billing Term" msgstr "Sunting Jangka Penagihan saat ini" #: gnucash/gtkbuilder/dialog-billterms.glade:736 -#, fuzzy msgid "Close this window" -msgstr "Menutup jendela ini" +msgstr "Tutup jendela ini" #: gnucash/gtkbuilder/dialog-billterms.glade:798 #: gnucash/gtkbuilder/dialog-billterms.glade:978 -#, fuzzy msgid "Cancel your changes" -msgstr "_Batal" +msgstr "Batalkan perubahan Anda" #: gnucash/gtkbuilder/dialog-billterms.glade:816 #: gnucash/gtkbuilder/dialog-billterms.glade:996 @@ -14815,7 +15293,6 @@ msgstr "Jangka Penagihan Baru" #: gnucash/gtkbuilder/dialog-billterms.glade:1131 #: gnucash/gtkbuilder/dialog-report.glade:796 #: gnucash/gtkbuilder/dialog-tax-table.glade:461 -#, fuzzy msgid "_Name" msgstr "_Nama" @@ -14828,57 +15305,51 @@ msgid "Expense Total" msgstr "Total Pengeluaran" #: gnucash/gtkbuilder/dialog-choose-owner.glade:7 -#, fuzzy msgid "Choose Owner Dialog" -msgstr "Pemilik" +msgstr "Dialog Pemilihan Pemilik" #: gnucash/gtkbuilder/dialog-commodities.glade:8 #: gnucash/report/reports/standard/account-piecharts.scm:61 msgid "Securities" -msgstr "" +msgstr "Sekuritas" #: gnucash/gtkbuilder/dialog-commodities.glade:27 -#, fuzzy msgid "Securities" -msgstr "Ruang Lingkup" +msgstr "Sekuritas" #: gnucash/gtkbuilder/dialog-commodities.glade:76 -#, fuzzy msgid "Show National Currencies" -msgstr "Mata Uang" +msgstr "Tampilkan Mata Uang Nasional" #: gnucash/gtkbuilder/dialog-commodities.glade:125 -#, fuzzy msgid "Add a new commodity." -msgstr "komoditas" +msgstr "Tambah komoditas baru." #: gnucash/gtkbuilder/dialog-commodities.glade:143 -#, fuzzy msgid "Remove the current commodity." -msgstr "komoditas" +msgstr "Buang komoditas saat ini." #: gnucash/gtkbuilder/dialog-commodities.glade:161 -#, fuzzy msgid "Edit the current commodity." -msgstr "komoditas" +msgstr "Sunting komoditas saat ini." #: gnucash/gtkbuilder/dialog-commodity.glade:19 #: gnucash/gtkbuilder/dialog-price.glade:35 -#, fuzzy msgid "Dummy commodity Line" -msgstr "komoditas" +msgstr "Baris komoditas kosong" #: gnucash/gtkbuilder/dialog-commodity.glade:30 #: gnucash/gtkbuilder/dialog-price.glade:46 -#, fuzzy msgid "Dummy namespace Line" -msgstr "Namespace:" +msgstr "Baris ruang nama kosong" #: gnucash/gtkbuilder/dialog-commodity.glade:129 msgid "" "Enter the full name of the commodity. Example: Cisco Systems Inc., or Apple " "Computer, Inc." msgstr "" +"Masukkan nama lengkap komoditas. Contoh: Cisco System Inc., atau Apple " +"Computer, Inc." #: gnucash/gtkbuilder/dialog-commodity.glade:147 msgid "" @@ -14899,15 +15370,16 @@ msgstr "" "Anda bisa membiarkannya kosong." #: gnucash/gtkbuilder/dialog-commodity.glade:184 -#, fuzzy msgid "1 /" -msgstr "|−1|" +msgstr "1 /" #: gnucash/gtkbuilder/dialog-commodity.glade:200 msgid "" "Enter the smallest fraction of the commodity which can be traded. For stocks " "which can only be traded in whole numbers, enter 1." msgstr "" +"Masukkan fraksi terkecil komoditas yang bisa diperdagangkan. Untuk saham " +"yang hanya dapat diperdagangkan dalam bilangan bulat, masukkan 1." #: gnucash/gtkbuilder/dialog-commodity.glade:224 msgid "Quote Source Information" @@ -14922,7 +15394,7 @@ msgid "" "Enter a display symbol. This can safely be left blank, in which case the " "ticker symbol or the currency ISO code will be used." msgstr "" -"Masukkan simbol ditampilkan. Jika dibiarkan kosong, kode saham atau kode ISO " +"Masukkan simbol tampilan. Jika dibiarkan kosong, kode saham atau kode ISO " "mata uang akan digunakan." #: gnucash/gtkbuilder/dialog-commodity.glade:340 @@ -14934,14 +15406,12 @@ msgid "_Display symbol" msgstr "Simbol _Ditampilkan" #: gnucash/gtkbuilder/dialog-commodity.glade:368 -#, fuzzy msgid "Time_zone" -msgstr "Zona Waktu" +msgstr "_Zona waktu" #: gnucash/gtkbuilder/dialog-commodity.glade:379 -#, fuzzy msgid "_Unknown" -msgstr "" +msgstr "Tak diketah_ui" #: gnucash/gtkbuilder/dialog-commodity.glade:385 msgid "" @@ -14954,9 +15424,8 @@ msgstr "" "tunggal atau dari beberapa situs di Internet." #: gnucash/gtkbuilder/dialog-commodity.glade:400 -#, fuzzy msgid "_Multiple" -msgstr "berganda" +msgstr "_Multipel" #: gnucash/gtkbuilder/dialog-commodity.glade:406 msgid "" @@ -14969,9 +15438,8 @@ msgstr "" "mengambil informasi dari situs yang lain." #: gnucash/gtkbuilder/dialog-commodity.glade:421 -#, fuzzy msgid "Si_ngle" -msgstr "_Sudut" +msgstr "Tu_nggal" #: gnucash/gtkbuilder/dialog-commodity.glade:427 msgid "" @@ -14988,20 +15456,18 @@ msgid "_Get Online Quotes" msgstr "Dapatkan Har_ga Penawaran Daring" #: gnucash/gtkbuilder/dialog-commodity.glade:461 -#, fuzzy msgid "F_raction traded" -msgstr "F_older" +msgstr "F_raksi diperdagangkan" #: gnucash/gtkbuilder/dialog-commodity.glade:475 msgid "ISIN, CUSI_P or other code" -msgstr "" +msgstr "ISIN, CUSI_P atau kode lain" #: gnucash/gtkbuilder/dialog-commodity.glade:505 msgid "_Symbol/abbreviation" msgstr "_Simbol/singkatan" #: gnucash/gtkbuilder/dialog-commodity.glade:520 -#, fuzzy msgid "_Full name" msgstr "Nama _lengkap" @@ -15010,14 +15476,12 @@ msgid "Warning: Finance::Quote not installed properly." msgstr "Peringatan: Finance::Quote tak terpasang dengan benar." #: gnucash/gtkbuilder/dialog-commodity.glade:638 -#, fuzzy msgid "Select security/currency " -msgstr "Keamanan" +msgstr "Pilih sekuritas/mata uang " #: gnucash/gtkbuilder/dialog-commodity.glade:716 -#, fuzzy msgid "Select user information here..." -msgstr "" +msgstr "Pilih informasi pengguna di sini..." #: gnucash/gtkbuilder/dialog-customer.glade:185 msgid "" @@ -15030,15 +15494,13 @@ msgstr "" #: gnucash/gtkbuilder/dialog-customer.glade:213 #: gnucash/gtkbuilder/dialog-employee.glade:197 #: gnucash/gtkbuilder/dialog-vendor.glade:215 -#, fuzzy msgid "Identification" -msgstr "Situs web ini menyajikan identifikasi milik situs web lain." +msgstr "Identifikasi" #: gnucash/gtkbuilder/dialog-customer.glade:256 #: gnucash/gtkbuilder/dialog-customer.glade:786 #: gnucash/gtkbuilder/dialog-employee.glade:240 #: gnucash/gtkbuilder/dialog-vendor.glade:258 -#, fuzzy msgid "Address" msgstr "Alamat" @@ -15049,47 +15511,40 @@ msgstr "Alamat" #: gnucash/import-export/customer-import/dialog-customer-import-gui.c:137 #: gnucash/report/reports/aging.scm:695 #: gnucash/report/reports/support/taxinvoice.eguile.scm:187 -#, fuzzy msgid "Email" msgstr "Surel" #: gnucash/gtkbuilder/dialog-customer.glade:420 -#, fuzzy msgid "Billing Address" -msgstr "persyaratan tagihan" +msgstr "Alamat Penagihan" #: gnucash/gtkbuilder/dialog-customer.glade:537 #: gnucash/import-export/bi-import/dialog-bi-import-gui.c:156 #: gnucash/register/ledger-core/gncEntryLedgerModel.c:72 #: gnucash/report/reports/standard/invoice.scm:98 #: gnucash/report/reports/standard/invoice.scm:237 -#, fuzzy msgid "Discount" -msgstr "diskon" +msgstr "Diskon" #: gnucash/gtkbuilder/dialog-customer.glade:550 -#, fuzzy msgid "Credit Limit" -msgstr "Kartu Kredit" +msgstr "Batas Kredit" #: gnucash/gtkbuilder/dialog-customer.glade:563 #: gnucash/gtkbuilder/dialog-vendor.glade:533 -#, fuzzy msgid "Tax Included" -msgstr "kode pajak" +msgstr "Termasuk Pajak" #: gnucash/gtkbuilder/dialog-customer.glade:576 #: gnucash/gtkbuilder/dialog-vendor.glade:546 #: gnucash/register/ledger-core/gncEntryLedgerModel.c:97 -#, fuzzy msgid "Tax Table" -msgstr "kode pajak" +msgstr "Tabel Pajak" #: gnucash/gtkbuilder/dialog-customer.glade:594 #: gnucash/gtkbuilder/dialog-vendor.glade:616 -#, fuzzy msgid "Override the global Tax Table?" -msgstr "Timpa rincian global repositori “%s”:" +msgstr "Timpa Tabel Pajak global?" #: gnucash/gtkbuilder/dialog-customer.glade:718 #: gnucash/gtkbuilder/dialog-customer.glade:740 @@ -15099,62 +15554,57 @@ msgstr "Timpa rincian global repositori “%s”:" #: gnucash/gtkbuilder/dialog-invoice.glade:1031 #: gnucash/gtkbuilder/dialog-order.glade:310 #: gnucash/gtkbuilder/dialog-order.glade:661 -#, fuzzy msgid "Billing Information" -msgstr "persyaratan tagihan" +msgstr "Informasi Tagihan" #: gnucash/gtkbuilder/dialog-customer.glade:950 -#, fuzzy msgid "Shipping Information" -msgstr "Tidak Ada Informasi" +msgstr "Informasi Pengiriman" #: gnucash/gtkbuilder/dialog-customer.glade:969 -#, fuzzy msgid "Shipping Address" -msgstr "Ke Alama_t Ini" +msgstr "Alamat Pengiriman" #. Title of dialog #: gnucash/gtkbuilder/dialog-customer-import-gui.glade:9 msgid "Import customers or vendors from text file" -msgstr "" +msgstr "Impor pelanggan atau vendor dari berkas teks" #: gnucash/gtkbuilder/dialog-customer-import-gui.glade:126 msgid "1. Choose the file to import" -msgstr "" +msgstr "1. Pilih berkas untuk diimpor" #: gnucash/gtkbuilder/dialog-customer-import-gui.glade:155 -#, fuzzy msgid "For importing customer lists." -msgstr "Nasabah Kunci" +msgstr "Untuk mengimpor daftar pelanggan." #: gnucash/gtkbuilder/dialog-customer-import-gui.glade:172 -#, fuzzy msgid "For importing vendor lists." -msgstr "Mengimpor…" +msgstr "Untuk mengimpor daftar vendor." #: gnucash/gtkbuilder/dialog-customer-import-gui.glade:190 msgid "2. Select Import Type" -msgstr "" +msgstr "2. Pilih Tipe Impor" #: gnucash/gtkbuilder/dialog-customer-import-gui.glade:308 msgid "3. Select import options" -msgstr "" +msgstr "3. Pilih opsi impor" #: gnucash/gtkbuilder/dialog-customer-import-gui.glade:349 -#, fuzzy msgid "4. Preview" -msgstr "Ruang Lingkup" +msgstr "4. Pratinjau" #: gnucash/gtkbuilder/dialog-custom-report.glade:51 msgid "Exit the saved report configurations dialog" -msgstr "" +msgstr "Keluar dari dialog konfigurasi laporan tersimpan" #: gnucash/gtkbuilder/dialog-custom-report.glade:99 -#, fuzzy msgid "" "\n" "Currently you have no saved reports.\n" -msgstr "Anda telah merubah tugas ini, tapi belum disimpan." +msgstr "" +"\n" +"Saat ini Anda tidak memiliki laporan tersimpan.\n" #: gnucash/gtkbuilder/dialog-custom-report.glade:113 msgid "" @@ -15164,88 +15614,88 @@ msgid "" "Configuration\" from\n" "the Reports menu or tool bar." msgstr "" +"Konfigurasi laporan tersimpan dibuat dengan cara membuka sebuah laporan dari " +"menu Laporan,\n" +"mengubah opsi laporan sesuai keinginan Anda lalu memilih \"Simpan " +"Konfigurasi Laporan\" dari\n" +"menu Laporan atau bilah alat." #: gnucash/gtkbuilder/dialog-date-close.glade:7 #: gnucash/gtkbuilder/dialog-date-close.glade:263 -#, fuzzy msgid "Question" msgstr "Pertanyaan" #: gnucash/gtkbuilder/dialog-doclink.glade:49 msgid "Change Linked Document path head" -msgstr "" +msgstr "Ubah tajuk path Dokumen Tertaut" #: gnucash/gtkbuilder/dialog-doclink.glade:85 msgid "" "Existing relative file path links will be converted to absolute ones by " "combining them with the existing path head unless box unticked." msgstr "" +"Tautan path relatif berkas yang sudah ada akan dikonversi ke tautan path " +"absolut dengan menggabungkannya dengan tajuk path, kecuali jika kotak tidak " +"dicentang." #: gnucash/gtkbuilder/dialog-doclink.glade:140 msgid "" "Existing absolute file path links will be converted to relative ones by " "comparing them to the new path head unless box unticked." msgstr "" +"Tautan path absolut berkas yang sudah ada akan dikonversi ke tautan path " +"relatif dengan membandingkannya ke tajuk path yang baru, kecuali jika kotak " +"tidak dicentang." #: gnucash/gtkbuilder/dialog-doclink.glade:178 msgid "Note: Only Document Links that are not read-only will be changed." -msgstr "" +msgstr "Catatan: Hanya Tautan Dokumen yang bukan hanya-baca yang bisa diubah." #: gnucash/gtkbuilder/dialog-doclink.glade:279 -#, fuzzy msgid "Linked _File" -msgstr "_Tertaut" +msgstr "_Berkas Tertaut" #: gnucash/gtkbuilder/dialog-doclink.glade:295 -#, fuzzy msgid "Linked _Location" -msgstr "Lokasi" +msgstr "_Lokasi Tertaut" #: gnucash/gtkbuilder/dialog-doclink.glade:380 msgid "Enter URL like http://www.gnucash.org" -msgstr "" +msgstr "Masukkan URL seperti http://www.gnucash.org" #: gnucash/gtkbuilder/dialog-doclink.glade:425 msgid "Location does not start with a valid scheme" -msgstr "" +msgstr "Lokasi tidak dimulai dengan skema yang valid" #: gnucash/gtkbuilder/dialog-doclink.glade:504 -#, fuzzy msgid "Reload and Locate Linked Documents" -msgstr "Temukan _Penunjuk" +msgstr "Muat Ulang dan Temukan Dokumen Tertaut" #: gnucash/gtkbuilder/dialog-doclink.glade:518 -#, fuzzy msgid "_Reload" msgstr "_Muat Ulang" #: gnucash/gtkbuilder/dialog-doclink.glade:532 -#, fuzzy msgid "_Locate Linked Documents" -msgstr "_Tertaut" +msgstr "_Temukan Dokumen Tertaut" #: gnucash/gtkbuilder/dialog-doclink.glade:572 -#, fuzzy msgid "All Linked Documents" -msgstr "_Tertaut" +msgstr "Semu_a Dokumen Tertaut" #: gnucash/gtkbuilder/dialog-doclink.glade:626 -#, fuzzy msgid "Id" msgstr "Id" #: gnucash/gtkbuilder/dialog-doclink.glade:654 -#, fuzzy msgid "Linked Document" -msgstr "_Tertaut" +msgstr "Dokumen Tertaut" #: gnucash/gtkbuilder/dialog-doclink.glade:671 -#, fuzzy msgid "Available" -msgstr "Tak Tersedia" +msgstr "Tersedia" #: gnucash/gtkbuilder/dialog-doclink.glade:686 -#, fuzzy msgid "Relative" msgstr "Relatif" @@ -15257,6 +15707,9 @@ msgid "" "Double click on the entry in the Available column to modify the document " "link." msgstr "" +"Klik ganda pada entri di kolom Deskripsi untuk melompat ke Transaksi.\n" +"Klik ganda pada entri di kolom Tautan untuk membuka Dokumen Tertaut.\n" +"Klik ganda pada entri di kolom Tersedia untuk memodifikasi tautan dokumen." #: gnucash/gtkbuilder/dialog-employee.glade:166 msgid "" @@ -15268,90 +15721,75 @@ msgstr "" #: gnucash/gtkbuilder/dialog-employee.glade:422 #: gnucash/gtkbuilder/dialog-vendor.glade:416 -#, fuzzy msgid "Payment Address" -msgstr "pembayaran" +msgstr "Alamat Pembayaran" #: gnucash/gtkbuilder/dialog-employee.glade:456 -#, fuzzy msgid "Language" msgstr "Bahasa" #: gnucash/gtkbuilder/dialog-employee.glade:494 -#, fuzzy msgid "Interface" msgstr "Antarmuka" #: gnucash/gtkbuilder/dialog-employee.glade:584 -#, fuzzy msgid "Default Hours per Day" -msgstr "Sekali sehari" +msgstr "Jam per Hari Baku" #: gnucash/gtkbuilder/dialog-employee.glade:597 -#, fuzzy msgid "Default Rate" -msgstr "Laju frame baku" +msgstr "Tarif Baku" #: gnucash/gtkbuilder/dialog-employee.glade:716 -#, fuzzy msgid "Access Control List" -msgstr "Gagal mendapatkan daftar kontrol akses" +msgstr "Daftar Kendali Akses" #: gnucash/gtkbuilder/dialog-employee.glade:735 -#, fuzzy msgid "Access Control" -msgstr "Gagal mendapatkan daftar kontrol akses" +msgstr "Kendali Akses" #: gnucash/gtkbuilder/dialog-file-access.glade:72 -#, fuzzy msgid "Data Format" -msgstr "Ruang Lingkup" +msgstr "Format Data" #: gnucash/gtkbuilder/dialog-file-access.glade:98 -#, fuzzy msgid "Open _Read-Only" -msgstr "[Hanya Baca]" +msgstr "Buka _Hanya-Baca" #: gnucash/gtkbuilder/dialog-file-access.glade:140 -#, fuzzy msgid "File" -msgstr "Ruang Lingkup" +msgstr "Berkas" #: gnucash/gtkbuilder/dialog-file-access.glade:170 -#, fuzzy msgid "Host" msgstr "Host" #: gnucash/gtkbuilder/dialog-file-access.glade:183 -#, fuzzy msgid "Database" -msgstr "basis data" +msgstr "Basis Data" #: gnucash/gtkbuilder/dialog-file-access.glade:209 -#, fuzzy msgid "Password" msgstr "Kata Sandi" #: gnucash/gtkbuilder/dialog-file-access.glade:280 -#, fuzzy msgid "Database Connection" -msgstr "Data Pencarian:" +msgstr "Koneksi Basis Data" #: gnucash/gtkbuilder/dialog-fincalc.glade:12 #: gnucash/gtkbuilder/dialog-fincalc.glade:53 msgid "Annual" -msgstr "" +msgstr "Tahunan" #: gnucash/gtkbuilder/dialog-fincalc.glade:15 #: gnucash/gtkbuilder/dialog-fincalc.glade:56 -#, fuzzy msgid "Semi-annual" -msgstr "Agak Terkembang" +msgstr "Setengah Tahunan" #: gnucash/gtkbuilder/dialog-fincalc.glade:18 #: gnucash/gtkbuilder/dialog-fincalc.glade:59 msgid "Tri-annual" -msgstr "" +msgstr "Tiga Tahunan" #: gnucash/gtkbuilder/dialog-fincalc.glade:21 #: gnucash/gtkbuilder/dialog-fincalc.glade:62 @@ -15361,9 +15799,8 @@ msgstr "Per Kuartal" #: gnucash/gtkbuilder/dialog-fincalc.glade:24 #: gnucash/gtkbuilder/dialog-fincalc.glade:65 -#, fuzzy msgid "Bi-monthly" -msgstr "Bulanan" +msgstr "Dua Bulanan" #: gnucash/gtkbuilder/dialog-fincalc.glade:27 #: gnucash/gtkbuilder/dialog-fincalc.glade:68 @@ -15374,22 +15811,19 @@ msgstr "Bulanan" #: gnucash/report/reports/standard/category-barchart.scm:123 #: gnucash/report/trep-engine.scm:314 libgnucash/engine/Recurrence.c:761 #: libgnucash/engine/Recurrence.c:775 -#, fuzzy msgid "Monthly" msgstr "Bulanan" #: gnucash/gtkbuilder/dialog-fincalc.glade:30 #: gnucash/gtkbuilder/dialog-fincalc.glade:71 #: libgnucash/engine/Recurrence.c:712 -#, fuzzy msgid "Semi-monthly" -msgstr "Bulanan" +msgstr "Setengah Bulanan" #: gnucash/gtkbuilder/dialog-fincalc.glade:33 #: gnucash/gtkbuilder/dialog-fincalc.glade:74 -#, fuzzy msgid "Bi-weekly" -msgstr "Mingguan" +msgstr "Dua Mingguan" #: gnucash/gtkbuilder/dialog-fincalc.glade:36 #: gnucash/gtkbuilder/dialog-fincalc.glade:77 @@ -15399,59 +15833,46 @@ msgstr "Mingguan" #: gnucash/report/reports/standard/account-piecharts.scm:126 #: gnucash/report/reports/standard/category-barchart.scm:126 #: gnucash/report/trep-engine.scm:305 libgnucash/engine/Recurrence.c:623 -#, fuzzy msgid "Weekly" msgstr "Mingguan" #: gnucash/gtkbuilder/dialog-fincalc.glade:39 #: gnucash/gtkbuilder/dialog-fincalc.glade:80 -#, fuzzy msgid "Daily (360)" -msgstr "Harian" +msgstr "Harian (360)" #: gnucash/gtkbuilder/dialog-fincalc.glade:42 #: gnucash/gtkbuilder/dialog-fincalc.glade:83 -#, fuzzy msgid "Daily (365)" -msgstr "Harian" +msgstr "Harian (365)" #: gnucash/gtkbuilder/dialog-fincalc.glade:90 -#, fuzzy msgid "Loan Repayment Calculator" -msgstr "Kalkulator" +msgstr "Kalkulator Pembayaran Angsuran Pinjaman" #: gnucash/gtkbuilder/dialog-fincalc.glade:136 -#, fuzzy msgid "_Schedule" msgstr "_Jadwal" #: gnucash/gtkbuilder/dialog-fincalc.glade:171 -#, fuzzy msgid "Calculations" -msgstr "Ruang Lingkup" +msgstr "Kalkulasi" #: gnucash/gtkbuilder/dialog-fincalc.glade:191 -#, fuzzy msgid "Payment periods" -msgstr "" -"Menghitung nilai kini dari suatu investasi berdasar pada sejumlah pembayaran " -"yang sama yang diberi potongan pada suatu suku bunga periodik atas sejumlah " -"perioda pembayaran dalam jangka waktu. " +msgstr "Periode pembayaran" #: gnucash/gtkbuilder/dialog-fincalc.glade:205 -#, fuzzy msgid "Interest rate" -msgstr "Suku Bunga Berkala" +msgstr "Suku bunga" #: gnucash/gtkbuilder/dialog-fincalc.glade:218 -#, fuzzy msgid "Present value" -msgstr "Nilai Sekarang" +msgstr "Nilai sekarang" #: gnucash/gtkbuilder/dialog-fincalc.glade:231 -#, fuzzy msgid "Periodic payment" -msgstr "Pembayaran Berkala" +msgstr "Pembayaran berkala" #: gnucash/gtkbuilder/dialog-fincalc.glade:244 msgid "Future value" @@ -15462,105 +15883,86 @@ msgstr "Nilai yang akan datang" #: gnucash/gtkbuilder/dialog-fincalc.glade:288 #: gnucash/gtkbuilder/dialog-fincalc.glade:303 #: gnucash/gtkbuilder/dialog-fincalc.glade:318 -#, fuzzy msgid "Clear the entry." -msgstr "Bersihkan" +msgstr "Bersihkan entri." #: gnucash/gtkbuilder/dialog-fincalc.glade:331 -#, fuzzy msgid "Precision" msgstr "Presisi" #: gnucash/gtkbuilder/dialog-fincalc.glade:361 -#, fuzzy msgid "Calculate" -msgstr "Tidak bisa menghitung digest" +msgstr "Hitung" #: gnucash/gtkbuilder/dialog-fincalc.glade:367 msgid "Recalculate the (single) blank entry in the above fields." msgstr "Hitung ulang entri kosong (tunggal) di kolom di atas." #: gnucash/gtkbuilder/dialog-fincalc.glade:503 -#, fuzzy msgid "Payment Options" -msgstr "Ruang Lingkup" +msgstr "Opsi Pembayaran" #: gnucash/gtkbuilder/dialog-fincalc.glade:523 -#, fuzzy msgid "Payment Total" -msgstr "total" +msgstr "Total Pembayaran" #: gnucash/gtkbuilder/dialog-fincalc.glade:553 -#, fuzzy msgid "Discrete" msgstr "Diskret" #: gnucash/gtkbuilder/dialog-fincalc.glade:570 -#, fuzzy msgid "Continuous" msgstr "Berkelanjutan" #: gnucash/gtkbuilder/dialog-fincalc.glade:586 -#, fuzzy msgid "Beginning" -msgstr "di awal" +msgstr "Awal" #: gnucash/gtkbuilder/dialog-fincalc.glade:622 -#, fuzzy msgid "Compounding" -msgstr "Ruang Lingkup" +msgstr "Pemajemukan" #: gnucash/gtkbuilder/dialog-fincalc.glade:637 -#, fuzzy msgid "Period" -msgstr "Ruang Lingkup" +msgstr "Periode" #: gnucash/gtkbuilder/dialog-fincalc.glade:765 -#, fuzzy msgid "When paid" -msgstr "Kapan" +msgstr "Ketika dibayar" #: gnucash/gtkbuilder/dialog-find-account.glade:25 -#, fuzzy msgid "Search the Account List" -msgstr "Pencarian Semua Akun" +msgstr "Cari Daftar Akun" #: gnucash/gtkbuilder/dialog-find-account.glade:38 -#, fuzzy msgid "Close on Jump" -msgstr "Lompat ke.." +msgstr "Tutup saat Lompat" #: gnucash/gtkbuilder/dialog-find-account.glade:54 -#, fuzzy msgid "_Jump To" -msgstr "_Lompat ke" +msgstr "_Lompat Ke" #: gnucash/gtkbuilder/dialog-find-account.glade:95 -#, fuzzy msgid "Search the Account List" -msgstr "Perbarui Data Pencarian" +msgstr "Cari Daftar Akun" #: gnucash/gtkbuilder/dialog-find-account.glade:112 -#, fuzzy msgid "Search from Root" -msgstr "root" +msgstr "Cari dari Akar" #: gnucash/gtkbuilder/dialog-find-account.glade:127 -#, fuzzy msgid "Search from Sub Account" -msgstr "Pencarian Akun" +msgstr "Cari dari Sub-Akun" #: gnucash/gtkbuilder/dialog-find-account.glade:163 -#, fuzzy msgid "Account Full Name" -msgstr "_Nama Lengkap..." +msgstr "Nama Lengkap Akun" #: gnucash/gtkbuilder/dialog-find-account.glade:187 msgid "Case insensitive searching is available on 'Account Full Name'." -msgstr "" +msgstr "Pencarian abaikan huruf besar/kecil tersedia pada 'Nama Lengkap Akun'." #: gnucash/gtkbuilder/dialog-find-account.glade:230 -#, fuzzy msgid "_Search" msgstr "_Cari" @@ -15570,121 +15972,110 @@ msgid "" "Tree,\n" "if account should not be shown, this will be temporarily overridden." msgstr "" +"Pilih sebuah baris dan kemudian tekan 'melompat ke' untuk melompat ke akun " +"di Pohon Akun,\n" +"jika akun tidak boleh ditampilkan, ini akan ditimpa sementara." #: gnucash/gtkbuilder/dialog-imap-editor.glade:35 -#, fuzzy msgid "Import Map Editor" -msgstr "Impor peta" +msgstr "Penyunting Peta Impor" #: gnucash/gtkbuilder/dialog-imap-editor.glade:52 -#, fuzzy msgid "_Remove Invalid Mappings" -msgstr "Pemetaan awal mula dinonaktifkan." +msgstr "Buang _Pemetaan Tidak Valid" #: gnucash/gtkbuilder/dialog-imap-editor.glade:106 msgid "What type of information to display?" -msgstr "" +msgstr "Tipe informasi apa yang akan ditampilkan?" #: gnucash/gtkbuilder/dialog-imap-editor.glade:139 -#, fuzzy msgid "Non-Bayesian" -msgstr "Bukan Peserta" +msgstr "Non-Bayesian" #: gnucash/gtkbuilder/dialog-imap-editor.glade:193 -#, fuzzy msgid "Source Account Name" -msgstr "Nama sumber" +msgstr "Nama Akun Sumber" #: gnucash/gtkbuilder/dialog-imap-editor.glade:205 -#, fuzzy msgid "Based On" -msgstr "Berdasarkan pada BSD Robots klasik" +msgstr "Berdasar Pada" #: gnucash/gtkbuilder/dialog-imap-editor.glade:219 -#, fuzzy msgid "Match String" -msgstr "(%s) membutuhkan tipe string yang cocok" +msgstr "String Pencocokan" #: gnucash/gtkbuilder/dialog-imap-editor.glade:233 -#, fuzzy msgid "Mapped to Account Name" -msgstr "nama akun" +msgstr "Dipetakan ke Nama Akun" #: gnucash/gtkbuilder/dialog-imap-editor.glade:247 -#, fuzzy msgid "Count of Match String Usage" -msgstr "Cocokkan hanya string lengkap" +msgstr "Jumlah Penggunaan String Pencocokan" #: gnucash/gtkbuilder/dialog-imap-editor.glade:290 msgid "" "Filter will be applied to 'Match String' and 'Mapped to Account Name' " "fields, case sensitive." msgstr "" +"Filter akan diterapkan untuk bidang 'String Pencocokan' dan 'Dipetakan ke " +"Nama Akun', bedakan huruf besar/kecil." #: gnucash/gtkbuilder/dialog-imap-editor.glade:335 -#, fuzzy msgid "_Filter" -msgstr "_Penyaring" +msgstr "_Filter" #: gnucash/gtkbuilder/dialog-imap-editor.glade:349 -#, fuzzy msgid "_Expand All" -msgstr "Perluas Semu_a" +msgstr "_Ekspansi Semua" #: gnucash/gtkbuilder/dialog-imap-editor.glade:363 -#, fuzzy msgid "Collapse _All" -msgstr "_Kuncupkan Semua" +msgstr "Kolaps Semu_a" #: gnucash/gtkbuilder/dialog-imap-editor.glade:399 msgid "" "Multiple rows can be selected and then deleted by pressing the delete button." msgstr "" +"Beberapa baris dapat dipilih dan kemudian dihapus dengan menekan tombol " +"delete." #: gnucash/gtkbuilder/dialog-import.glade:86 msgid "Please select or create an appropriate GnuCash account for:" -msgstr "" +msgstr "Silakan pilih atau buat akun GnuCash yang sesuai untuk:" #: gnucash/gtkbuilder/dialog-import.glade:99 -#, fuzzy msgid "Online account ID here..." -msgstr "Akun ini dibuat melalui layanan Akun Daring." +msgstr "ID akun daring di sini..." #: gnucash/gtkbuilder/dialog-import.glade:173 #: gnucash/gtkbuilder/dialog-import.glade:281 -#, fuzzy msgid "Choose a format" -msgstr "" -"Pilih format untuk angka, tanggal, dan mata uang. Perubahan diterapkan pada " -"log masuk selanjutnya." +msgstr "Pilih format" #: gnucash/gtkbuilder/dialog-import.glade:245 #: gnucash/gtkbuilder/gnc-date-format.glade:193 #: gnucash/report/reports/standard/income-gst-statement.scm:42 -#, fuzzy msgid "Format" msgstr "Format" #: gnucash/gtkbuilder/dialog-import.glade:302 -#, fuzzy msgid "Select matching existing transaction" -msgstr "Pilih semua node yang cocok" +msgstr "Pilih pencocokan transaksi yang ada" #. Dialog Select matching transactions #: gnucash/gtkbuilder/dialog-import.glade:319 -#, fuzzy msgid "Show Reconciled" -msgstr "status transaksi: rekonsiliasi" +msgstr "Tampilkan Direkonsiliasi" #. Dialog Select matching transactions #: gnucash/gtkbuilder/dialog-import.glade:379 msgid "Imported transaction's first split" -msgstr "" +msgstr "Split pertama transaksi yang diimpor" #. Dialog Select matching transactions #: gnucash/gtkbuilder/dialog-import.glade:414 msgid "Potential splits matching the selected transaction" -msgstr "" +msgstr "Split potensial yang cocok dengan transaksi terpilih" #: gnucash/gtkbuilder/dialog-import.glade:463 msgid "" @@ -15703,91 +16094,88 @@ msgid "" "This transaction probably requires your intervention or it will be imported " "unbalanced." msgstr "" +"Transaksi ini mungkin memerlukan campur tangan Anda atau akan diimpor tak " +"seimbang." #: gnucash/gtkbuilder/dialog-import.glade:469 msgid "" "This transaction will be imported balanced (you may still want to double " "check the match or destination account)." msgstr "" +"Transaksi ini akan diimpor seimbang (Anda mungkin masih ingin memeriksa " +"kembali pencocokan atau akun tujuan)." #: gnucash/gtkbuilder/dialog-import.glade:472 msgid "This transaction requires your intervention or it will NOT be imported." -msgstr "" +msgstr "Transaksi ini memerlukan campur tangan Anda atau TIDAK akan diimpor." #: gnucash/gtkbuilder/dialog-import.glade:475 msgid "" "Double click on the transaction to either change the matching transaction in " "GnuCash or the destination account of the auto-balance split (if required)." msgstr "" +"Klik dua kali pada transaksi untuk mengubah transaksi yang cocok di GnuCash " +"atau akun tujuan split seimbang-otomatis (jika diperlukan)." #: gnucash/gtkbuilder/dialog-import.glade:480 -#, fuzzy msgid "Transaction List Help" -msgstr "transaksi" +msgstr "Bantuan Daftar Transaksi" #: gnucash/gtkbuilder/dialog-import.glade:529 -#, fuzzy msgid "Colors" msgstr "Warna" #: gnucash/gtkbuilder/dialog-import.glade:642 -#: gnucash/gtkbuilder/dialog-preferences.glade:2282 -#, fuzzy +#: gnucash/gtkbuilder/dialog-preferences.glade:2399 msgid "Actions" -msgstr "" -"Terdapat pula sebuah menu aksi yang baru yang memungkinkan Anda " -"memindah dan mengubah ukuran jendela dengan cepat, meletakkannya di atas " -"atau di bawah jendela yang lain, atau menampilkannya secara layar penuh." +msgstr "Aksi" #: gnucash/gtkbuilder/dialog-import.glade:654 msgid "\"A\"" -msgstr "" +msgstr "\"A\"" #: gnucash/gtkbuilder/dialog-import.glade:665 -#, fuzzy msgid "\"U+C\"" -msgstr "U" +msgstr "\"U+C\"" #: gnucash/gtkbuilder/dialog-import.glade:676 -#, fuzzy msgid "\"C\"" -msgstr "C++" +msgstr "\"C\"" #: gnucash/gtkbuilder/dialog-import.glade:688 -#, fuzzy msgid "Select \"A\" to add the transaction as new." -msgstr "Pilih Folder untuk Ditambah" +msgstr "Pilih \"A\" untuk menambahkan transaksi sebagai baru." #: gnucash/gtkbuilder/dialog-import.glade:700 msgid "" "Select \"U+C\" to update a matching transaction and mark it as cleared (c)." msgstr "" +"Pilih \"U+C\" untuk memperbarui transaksi yang cocok dan menandainya sebagai " +"klir (c)." #: gnucash/gtkbuilder/dialog-import.glade:712 msgid "Select \"C\" to mark a matching transaction as cleared (c)." -msgstr "" +msgstr "Pilih \"C\" untuk menandai transaksi yang cocok sebagai klir (c)." #: gnucash/gtkbuilder/dialog-import.glade:724 msgid "Select neither to skip the transaction (it won't be imported at all)." msgstr "" +"Jangan pilih satupun untuk melewatkan transaksi (tidak akan diimpor sama " +"sekali)." #: gnucash/gtkbuilder/dialog-import.glade:735 -#, fuzzy msgid "(none)" -msgstr "(nihil)" +msgstr "(tidak ada)" #: gnucash/gtkbuilder/dialog-import.glade:782 -#, fuzzy msgid "Red" msgstr "Merah" #: gnucash/gtkbuilder/dialog-import.glade:799 -#, fuzzy msgid "Yellow" msgstr "Kuning" #: gnucash/gtkbuilder/dialog-import.glade:816 -#, fuzzy msgid "Green" msgstr "Hijau" @@ -15795,25 +16183,28 @@ msgstr "Hijau" msgid "" "List of downloaded transactions (source split and matched information shown)" msgstr "" +"Daftar transaksi yang diunduh (pemisahan sumber dan informasi yang cocok " +"ditampilkan)" #: gnucash/gtkbuilder/dialog-import.glade:929 -#, fuzzy -msgid "Show the _Account column" -msgstr "kolom" +msgid "Show _Account column" +msgstr "Tampilkan kolom _Akun" #: gnucash/gtkbuilder/dialog-import.glade:945 -#, fuzzy +msgid "Show _Memo column" +msgstr "Tampilkan kolom _Memo" + +#: gnucash/gtkbuilder/dialog-import.glade:961 msgid "Show _matched information" -msgstr "Tampilkan informasi ekstra" +msgstr "Tampilkan infor_masi yang cocok" -#: gnucash/gtkbuilder/dialog-import.glade:960 -#, fuzzy +#: gnucash/gtkbuilder/dialog-import.glade:976 msgid "Reconcile after match" -msgstr "Cocok" +msgstr "Rekonsiliasi setelah pencocokan" -#: gnucash/gtkbuilder/dialog-import.glade:983 +#: gnucash/gtkbuilder/dialog-import.glade:999 msgid "Generic import transaction matcher" -msgstr "" +msgstr "Pencocokan umum transaksi impor" #: gnucash/gtkbuilder/dialog-invoice.glade:119 msgid "Posted Account" @@ -15834,14 +16225,12 @@ msgstr "Buka Tautan Dokumen" #: gnucash/gtkbuilder/dialog-invoice.glade:535 #: gnucash/gtkbuilder/dialog-invoice.glade:1113 -#, fuzzy msgid "Default Chargeback Project" -msgstr "Baku: " +msgstr "Proyek Tagihan Balik Baku" #: gnucash/gtkbuilder/dialog-invoice.glade:562 -#, fuzzy msgid "Additional to Card" -msgstr "Fungsi Tambahan" +msgstr "Tambahan ke Kartu" #: gnucash/gtkbuilder/dialog-invoice.glade:591 msgid "Extra Payments" @@ -15910,16 +16299,17 @@ msgstr "Lot _Baru" #: gnucash/gtkbuilder/dialog-lot-viewer.glade:40 #, fuzzy msgid "Scrub _Account" -msgstr "_Untuk Akun:" +msgstr "scrub _Account" #: gnucash/gtkbuilder/dialog-lot-viewer.glade:55 +#, fuzzy msgid "_Scrub" -msgstr "" +msgstr "_Menggosok" #: gnucash/gtkbuilder/dialog-lot-viewer.glade:61 #, fuzzy msgid "Scrub the highlighted lot" -msgstr "Lot" +msgstr "Scrub banyak disorot" #: gnucash/gtkbuilder/dialog-lot-viewer.glade:78 msgid "Delete the highlighted lot" @@ -15952,12 +16342,11 @@ msgstr "Tampilkan hanya lot terbuka" #: gnucash/gtkbuilder/dialog-lot-viewer.glade:300 #, fuzzy msgid "Splits _free" -msgstr "Ruang Lingkup" +msgstr " Splits _free " #: gnucash/gtkbuilder/dialog-lot-viewer.glade:355 -#, fuzzy msgid "Splits _in lot" -msgstr "Ruang Lingkup" +msgstr "Spl_it dalam lot" #: gnucash/gtkbuilder/dialog-lot-viewer.glade:392 msgid ">>" @@ -16076,7 +16465,7 @@ msgstr "Perusahaan yang berasosiasi dengan pembayaran ini." #: gnucash/gtkbuilder/dialog-payment.glade:167 msgid "Partner" -msgstr "" +msgstr "Pasangan" #: gnucash/gtkbuilder/dialog-payment.glade:204 msgid "Post To" @@ -16126,7 +16515,7 @@ msgstr "Pengembalian Dana" #: gnucash/gtkbuilder/dialog-payment.glade:614 #: gnucash/gtkbuilder/dialog-print-check.glade:299 msgid "Print Check" -msgstr "" +msgstr "Cetak Cek" #: gnucash/gtkbuilder/dialog-payment.glade:631 msgid "(USD)" @@ -16178,432 +16567,444 @@ msgstr "2013-07-31" #: gnucash/import-export/csv-imp/gnc-import-price.cpp:59 #: gnucash/import-export/csv-imp/gnc-import-tx.cpp:56 msgid "Locale" -msgstr "" +msgstr "Lokal" -#: gnucash/gtkbuilder/dialog-preferences.glade:125 +#: gnucash/gtkbuilder/dialog-preferences.glade:133 +msgid "_Reset" +msgstr "_Setel Ulang" + +#: gnucash/gtkbuilder/dialog-preferences.glade:178 +#: gnucash/gtkbuilder/dialog-preferences.glade:579 +msgid "Separator Character" +msgstr "Karakter Pemisah" + +#: gnucash/gtkbuilder/dialog-preferences.glade:204 +msgid "" +"Press 'Reset' to use the original account separator and close the preference " +"window\n" +"Press 'Close' to return to the preference window\n" +msgstr "" +"Tekan 'Setel Ulang' untuk menggunakan pemisah akun asli dan menutup jendela " +"preferensi\n" +"Tekan 'Tutup' untuk kembali ke jendela preferensi\n" + +#: gnucash/gtkbuilder/dialog-preferences.glade:240 msgid "GnuCash Preferences" msgstr "Preferensi GnuCash" -#: gnucash/gtkbuilder/dialog-preferences.glade:198 +#: gnucash/gtkbuilder/dialog-preferences.glade:314 msgid "Summarybar Content" msgstr "Isi Bilah Ikhtisar" -#: gnucash/gtkbuilder/dialog-preferences.glade:208 +#: gnucash/gtkbuilder/dialog-preferences.glade:324 msgid "Include _grand total" -msgstr "" +msgstr "Sertakan total _keseluruhan" -#: gnucash/gtkbuilder/dialog-preferences.glade:214 +#: gnucash/gtkbuilder/dialog-preferences.glade:330 msgid "" "Show a grand total of all accounts converted to the default report currency." msgstr "" +"Tampilkan total keseluruhan untuk semua akun yang dikonversikan ke mata uang " +"laporan baku." -#: gnucash/gtkbuilder/dialog-preferences.glade:226 +#: gnucash/gtkbuilder/dialog-preferences.glade:342 msgid "Include _non-currency totals" -msgstr "" +msgstr "Sertakan total yang buka_n mata uang" -#: gnucash/gtkbuilder/dialog-preferences.glade:232 +#: gnucash/gtkbuilder/dialog-preferences.glade:348 msgid "" "If checked, non-currency commodities will be shown in the summary bar. If " "clear, only currencies will be shown." msgstr "" +"Jika dicentang, komoditas yang bukan mata uang akan ditampilkan di bilah " +"ikhtisar. Jika tidak, hanya mata uang yang akan ditampilkan." -#: gnucash/gtkbuilder/dialog-preferences.glade:247 +#: gnucash/gtkbuilder/dialog-preferences.glade:363 msgid "Start Date" msgstr "Tanggal Mulai" -#: gnucash/gtkbuilder/dialog-preferences.glade:260 +#: gnucash/gtkbuilder/dialog-preferences.glade:376 msgid "End Date" msgstr "Tanggal Akhir" -#: gnucash/gtkbuilder/dialog-preferences.glade:270 +#: gnucash/gtkbuilder/dialog-preferences.glade:386 msgid "_Relative" msgstr "_Relatif" -#: gnucash/gtkbuilder/dialog-preferences.glade:276 +#: gnucash/gtkbuilder/dialog-preferences.glade:392 msgid "Use the specified relative starting date for profit/loss calculations." msgstr "" -"Gunakan tanggal mulai relatif yang ditentukan untuk penghitungan keuntungan/" -"kerugian." +"Gunakan tanggal mulai relatif yang ditentukan untuk perhitungan laba/rugi." -#: gnucash/gtkbuilder/dialog-preferences.glade:289 +#: gnucash/gtkbuilder/dialog-preferences.glade:405 msgid "_Absolute" msgstr "_Absolut" -#: gnucash/gtkbuilder/dialog-preferences.glade:295 +#: gnucash/gtkbuilder/dialog-preferences.glade:411 msgid "Use the specified absolute starting date for profit/loss calculations." msgstr "" -"Gunakan tanggal mulai absolut yang ditentukan untuk penghitungan keuntungan/" -"kerugian." +"Gunakan tanggal mulai absolut yang ditentukan untuk perhitungan laba/rugi." -#: gnucash/gtkbuilder/dialog-preferences.glade:308 +#: gnucash/gtkbuilder/dialog-preferences.glade:424 msgid "Re_lative" msgstr "Re_latif" -#: gnucash/gtkbuilder/dialog-preferences.glade:314 +#: gnucash/gtkbuilder/dialog-preferences.glade:430 msgid "" "Use the specified relative ending date for profit/loss calculations. Also " "use this date for net assets calculations." msgstr "" -"Gunakan tanggal akhir relatif yang ditentukan untuk penghitungan keuntungan/" -"kerugian. Juga gunakan tanggal ini untuk penghitungan aset bersih." +"Gunakan tanggal akhir relatif yang ditentukan untuk perhitungan laba/rugi. " +"Juga gunakan tanggal ini untuk perhitungan aset bersih." -#: gnucash/gtkbuilder/dialog-preferences.glade:327 +#: gnucash/gtkbuilder/dialog-preferences.glade:443 msgid "Ab_solute" msgstr "Ab_solut" -#: gnucash/gtkbuilder/dialog-preferences.glade:333 +#: gnucash/gtkbuilder/dialog-preferences.glade:449 msgid "" "Use the specified absolute ending date for profit/loss calculations. Also " "use this date for net assets calculations." msgstr "" -"Gunakan tanggal akhir absolut yang ditentukan untuk penghitungan keuntungan/" -"kerugian. Juga gunakan tanggal ini untuk penghitungan aset bersih." +"Gunakan tanggal akhir absolut yang ditentukan untuk perhitungan laba/rugi. " +"Juga gunakan tanggal ini untuk perhitungan aset bersih." -#: gnucash/gtkbuilder/dialog-preferences.glade:444 +#: gnucash/gtkbuilder/dialog-preferences.glade:560 msgid "Accounting Period" msgstr "Periode Akuntansi" -#: gnucash/gtkbuilder/dialog-preferences.glade:462 -msgid "Separator Character" -msgstr "Karakter Pemisah" - -#: gnucash/gtkbuilder/dialog-preferences.glade:472 +#: gnucash/gtkbuilder/dialog-preferences.glade:589 msgid "Use _formal accounting labels" msgstr "Gunakan label akuntansi _formal" -#: gnucash/gtkbuilder/dialog-preferences.glade:478 +#: gnucash/gtkbuilder/dialog-preferences.glade:595 msgid "Use only 'debit' and 'credit' instead of informal synonyms." msgstr "Gunakan hanya 'debit' dan 'kredit' alih-alih sinonim informal." -#: gnucash/gtkbuilder/dialog-preferences.glade:493 +#: gnucash/gtkbuilder/dialog-preferences.glade:610 msgid "Labels" msgstr "Label" -#: gnucash/gtkbuilder/dialog-preferences.glade:513 +#: gnucash/gtkbuilder/dialog-preferences.glade:630 #: gnucash/gtkbuilder/dialog-price.glade:447 msgid "_None" msgstr "_Tak ada" -#: gnucash/gtkbuilder/dialog-preferences.glade:532 +#: gnucash/gtkbuilder/dialog-preferences.glade:649 msgid "C_redit accounts" msgstr "Akun k_redit" -#: gnucash/gtkbuilder/dialog-preferences.glade:551 +#: gnucash/gtkbuilder/dialog-preferences.glade:668 msgid "_Income & expense" msgstr "_Pendapatan & pengeluaran" -#: gnucash/gtkbuilder/dialog-preferences.glade:573 +#: gnucash/gtkbuilder/dialog-preferences.glade:690 msgid "Reverse Balanced Accounts" -msgstr "" +msgstr "Akun dengan Saldo Terbalik" -#: gnucash/gtkbuilder/dialog-preferences.glade:606 +#: gnucash/gtkbuilder/dialog-preferences.glade:723 msgid "Default Currency" msgstr "Mata Uang Baku" -#: gnucash/gtkbuilder/dialog-preferences.glade:619 -#: gnucash/gtkbuilder/dialog-preferences.glade:2933 +#: gnucash/gtkbuilder/dialog-preferences.glade:736 +#: gnucash/gtkbuilder/dialog-preferences.glade:3050 msgid "US Dollars (USD)" msgstr "Dolar US (USD)" -#: gnucash/gtkbuilder/dialog-preferences.glade:642 +#: gnucash/gtkbuilder/dialog-preferences.glade:759 msgid "Character" msgstr "Karakter" -#: gnucash/gtkbuilder/dialog-preferences.glade:654 +#: gnucash/gtkbuilder/dialog-preferences.glade:771 #: gnucash/gtkbuilder/gnc-date-format.glade:206 msgid "Sample" msgstr "Sampel" -#: gnucash/gtkbuilder/dialog-preferences.glade:679 +#: gnucash/gtkbuilder/dialog-preferences.glade:796 msgid "Account Color" msgstr "Warna Akun" -#: gnucash/gtkbuilder/dialog-preferences.glade:689 +#: gnucash/gtkbuilder/dialog-preferences.glade:806 msgid "Show the Account Color as background" msgstr "Tampilkan Warna Akun sebagai latar belakang" -#: gnucash/gtkbuilder/dialog-preferences.glade:695 +#: gnucash/gtkbuilder/dialog-preferences.glade:812 msgid "Show the Account Color as Account Name Background." msgstr "Tampilkan Warna Akun sebagai Latar Belakang Nama Akun." -#: gnucash/gtkbuilder/dialog-preferences.glade:717 +#: gnucash/gtkbuilder/dialog-preferences.glade:834 msgid "Show the Account Color on tabs" msgstr "Tampilkan Warna Akun pada tab" -#: gnucash/gtkbuilder/dialog-preferences.glade:723 +#: gnucash/gtkbuilder/dialog-preferences.glade:840 msgid "Show the Account Color as tab background." msgstr "Tampilkan Warna Akun sebagai latar belakang tab." -#: gnucash/gtkbuilder/dialog-preferences.glade:756 +#: gnucash/gtkbuilder/dialog-preferences.glade:874 msgid "" "The character that will be used between components of an account name. A " "legal value is any single character except letters and numbers, or any of " "the following strings: \"colon\" \"slash\", \"backslash\", \"dash\" and " "\"period\"." msgstr "" +"Karakter yang akan digunakan di antara komponen nama akun. Nilai yang " +"diperbolehkan adalah suatu karakter apapun kecuali huruf dan angka, atau " +"salah satu dari string berikut: \"titik dua\" \"garis miring\", \"garis " +"miring terbalik\", \"garis datar\" dan \"titik\"." -#: gnucash/gtkbuilder/dialog-preferences.glade:777 -#: gnucash/gtkbuilder/dialog-preferences.glade:3032 +#: gnucash/gtkbuilder/dialog-preferences.glade:894 +#: gnucash/gtkbuilder/dialog-preferences.glade:3149 msgid "Ch_oose" msgstr "P_ilih" -#: gnucash/gtkbuilder/dialog-preferences.glade:797 -#: gnucash/gtkbuilder/dialog-preferences.glade:3052 +#: gnucash/gtkbuilder/dialog-preferences.glade:914 +#: gnucash/gtkbuilder/dialog-preferences.glade:3169 msgid "Loc_ale" -msgstr "" +msgstr "Lok_al" -#: gnucash/gtkbuilder/dialog-preferences.glade:881 +#: gnucash/gtkbuilder/dialog-preferences.glade:998 msgid "Fancy Date Format" -msgstr "Format Tanggal Mewah" +msgstr "Format Tanggal Lengkap" -#: gnucash/gtkbuilder/dialog-preferences.glade:904 +#: gnucash/gtkbuilder/dialog-preferences.glade:1021 msgid "Date Format" msgstr "Format Tanggal" -#: gnucash/gtkbuilder/dialog-preferences.glade:917 +#: gnucash/gtkbuilder/dialog-preferences.glade:1034 msgid "Time Format" msgstr "Format Waktu" -#: gnucash/gtkbuilder/dialog-preferences.glade:937 +#: gnucash/gtkbuilder/dialog-preferences.glade:1054 msgid "U_se 24-hour clock" msgstr "Gunakan _waktu 24-jam" -#: gnucash/gtkbuilder/dialog-preferences.glade:943 +#: gnucash/gtkbuilder/dialog-preferences.glade:1060 msgid "Use a 24 hour (instead of a 12 hour) time format." msgstr "Gunakan format waktu 24 jam (alih-alih 12 jam)." -#: gnucash/gtkbuilder/dialog-preferences.glade:958 +#: gnucash/gtkbuilder/dialog-preferences.glade:1075 msgid "Date Completion" -msgstr "Oenyempurnaan Tanggal" +msgstr "Penyempurnaan Tanggal" -#: gnucash/gtkbuilder/dialog-preferences.glade:971 +#: gnucash/gtkbuilder/dialog-preferences.glade:1088 msgid "When a date is entered without year, it should be taken" msgstr "Ketika sebuah tanggal dimasukkan tanpa tahun, ini akan digunakan" -#: gnucash/gtkbuilder/dialog-preferences.glade:987 +#: gnucash/gtkbuilder/dialog-preferences.glade:1104 msgid "" "Dates will be completed so that they are within the current calendar year." msgstr "" "Tanggal akan dilengkapi sehingga berada di dalam tahun kalender saat ini." -#: gnucash/gtkbuilder/dialog-preferences.glade:1000 +#: gnucash/gtkbuilder/dialog-preferences.glade:1117 msgid "" "In a sliding 12-month window starting this\n" "many months before the current month" msgstr "" +"Dalam jendela geser 12-bulan dimulai dari\n" +"sebanyak bulan ini sebelum bulan berjalan" -#: gnucash/gtkbuilder/dialog-preferences.glade:1024 +#: gnucash/gtkbuilder/dialog-preferences.glade:1141 msgid "Enter number of months." msgstr "Masukkan jumlah bulan." -#: gnucash/gtkbuilder/dialog-preferences.glade:1045 +#: gnucash/gtkbuilder/dialog-preferences.glade:1162 msgid "Use the date format specified by the system locale." -msgstr "" +msgstr "Gunakan format tanggal yang ditentukan oleh sistem lokal." -#: gnucash/gtkbuilder/dialog-preferences.glade:1071 -#, fuzzy +#: gnucash/gtkbuilder/dialog-preferences.glade:1188 msgid "Numbers" -msgstr "Ruang Lingkup" +msgstr "Nomor" -#: gnucash/gtkbuilder/dialog-preferences.glade:1081 +#: gnucash/gtkbuilder/dialog-preferences.glade:1198 msgid "Force P_rices to display as decimals" -msgstr "" +msgstr "Paksa Ha_rga ditampilkan sebagai desimal" -#: gnucash/gtkbuilder/dialog-preferences.glade:1099 +#: gnucash/gtkbuilder/dialog-preferences.glade:1216 msgid "Display ne_gative amounts in red" -msgstr "" +msgstr "Tampilkan jumlah ne_gatif dengan warna merah" -#: gnucash/gtkbuilder/dialog-preferences.glade:1105 +#: gnucash/gtkbuilder/dialog-preferences.glade:1222 msgid "Display negative amounts in red." -msgstr "" +msgstr "Tampilkan jumlah negatif dengan warna merah." -#: gnucash/gtkbuilder/dialog-preferences.glade:1117 -#, fuzzy +#: gnucash/gtkbuilder/dialog-preferences.glade:1234 msgid "_Automatic decimal point" -msgstr "Desimal" +msgstr "Titik desimal otom_atis" -#: gnucash/gtkbuilder/dialog-preferences.glade:1123 +#: gnucash/gtkbuilder/dialog-preferences.glade:1240 msgid "" "Automatically insert a decimal point into values that are entered without " "one." -msgstr "" +msgstr "Sisipkan titik desimal secara otomatis ke nilai yang dimasukkan." -#: gnucash/gtkbuilder/dialog-preferences.glade:1138 -#, fuzzy +#: gnucash/gtkbuilder/dialog-preferences.glade:1255 msgid "_Decimal places" -msgstr "" -"Jumlah tempat desimal, jika mengikuti nol dan jika pemisah ribuan " -"ditampilkan juga dapat dikonfigurasi." +msgstr "Tempat _desimal" -#: gnucash/gtkbuilder/dialog-preferences.glade:1153 +#: gnucash/gtkbuilder/dialog-preferences.glade:1270 msgid "How many automatic decimal places will be filled in." -msgstr "" +msgstr "Berapa banyak tempat desimal otomatis akan diisi." -#: gnucash/gtkbuilder/dialog-preferences.glade:1155 -#, fuzzy +#: gnucash/gtkbuilder/dialog-preferences.glade:1272 msgid "2" msgstr "2" -#: gnucash/gtkbuilder/dialog-preferences.glade:1245 +#: gnucash/gtkbuilder/dialog-preferences.glade:1362 msgid "Numbers, Date, Time" -msgstr "" +msgstr "Nomor, Tanggal, Waktu" -#: gnucash/gtkbuilder/dialog-preferences.glade:1274 +#: gnucash/gtkbuilder/dialog-preferences.glade:1391 msgid "Perform account list _setup on new file" msgstr "Lakukan penyiapan daftar akun pada berka_s baru" -#: gnucash/gtkbuilder/dialog-preferences.glade:1280 +#: gnucash/gtkbuilder/dialog-preferences.glade:1397 msgid "Present the new account list dialog when you choose File->New File." msgstr "" "Tampilkan dialog daftar akun baru ketika Anda memilih Berkas->Berkas Baru." -#: gnucash/gtkbuilder/dialog-preferences.glade:1311 +#: gnucash/gtkbuilder/dialog-preferences.glade:1428 msgid "Display \"_tip of the day\" dialog" msgstr "Tampilkan dialog \"_tip hari ini\"" -#: gnucash/gtkbuilder/dialog-preferences.glade:1317 +#: gnucash/gtkbuilder/dialog-preferences.glade:1434 msgid "Display hints for using GnuCash at startup." msgstr "Tampilkan petunjuk penggunaan GnuCash saat aplikasi dijalankan." -#: gnucash/gtkbuilder/dialog-preferences.glade:1338 +#: gnucash/gtkbuilder/dialog-preferences.glade:1455 msgid "How many days to keep old log/backup files." msgstr "Berapa hari berkas log/cadangan akan disimpan." -#: gnucash/gtkbuilder/dialog-preferences.glade:1357 +#: gnucash/gtkbuilder/dialog-preferences.glade:1474 #: gnucash/gtkbuilder/dialog-sx.glade:619 #: gnucash/gtkbuilder/dialog-sx.glade:658 msgid "days" msgstr "hari" -#: gnucash/gtkbuilder/dialog-preferences.glade:1376 +#: gnucash/gtkbuilder/dialog-preferences.glade:1493 msgid "_Retain log/backup files" -msgstr "" +msgstr "Pe_rtahankan berkas log/cadangan " -#: gnucash/gtkbuilder/dialog-preferences.glade:1388 -#, fuzzy +#: gnucash/gtkbuilder/dialog-preferences.glade:1505 msgid "Com_press files" -msgstr "Tam_pilkan vCard Ringkas" +msgstr "Kom_pres berkas" -#: gnucash/gtkbuilder/dialog-preferences.glade:1394 +#: gnucash/gtkbuilder/dialog-preferences.glade:1511 msgid "Compress the data file with gzip when saving it to disk." -msgstr "" +msgstr "Kompres berkas data dengan gzip ketika menyimpannya ke diska." -#: gnucash/gtkbuilder/dialog-preferences.glade:1409 -#, fuzzy +#: gnucash/gtkbuilder/dialog-preferences.glade:1526 msgid "Files" -msgstr "Ruang Lingkup" +msgstr "Berkas" -#: gnucash/gtkbuilder/dialog-preferences.glade:1442 -#, fuzzy +#: gnucash/gtkbuilder/dialog-preferences.glade:1559 msgid "Search Dialog" -msgstr "B-Search:" +msgstr "Dialog Pencarian" -#: gnucash/gtkbuilder/dialog-preferences.glade:1455 -#, fuzzy +#: gnucash/gtkbuilder/dialog-preferences.glade:1572 msgid "New search _limit" -msgstr "Batas ukuran pencarian terlampaui" +msgstr "Ba_tas pencarian baru" -#: gnucash/gtkbuilder/dialog-preferences.glade:1470 +#: gnucash/gtkbuilder/dialog-preferences.glade:1587 msgid "Default to 'new search' if fewer than this number of items is returned." msgstr "" +"Kembali secara baku ke 'pencarian baru' jika kurang dari jumlah item ini " +"yang dikembalikan." -#: gnucash/gtkbuilder/dialog-preferences.glade:1486 -#, fuzzy +#: gnucash/gtkbuilder/dialog-preferences.glade:1603 msgid "Show splash scree_n" -msgstr "Jangan tampilkan layar splash" +msgstr "Tampilka_n layar splash" -#: gnucash/gtkbuilder/dialog-preferences.glade:1492 -#, fuzzy +#: gnucash/gtkbuilder/dialog-preferences.glade:1609 msgid "Show splash screen at startup." -msgstr "Jangan tampilkan layar splash" +msgstr "Tampilkan layar splash pada saat mulai." -#: gnucash/gtkbuilder/dialog-preferences.glade:1507 +#: gnucash/gtkbuilder/dialog-preferences.glade:1624 msgid "Auto-save time _interval" -msgstr "" +msgstr "_Interval waktu simpan-otomatis" -#: gnucash/gtkbuilder/dialog-preferences.glade:1546 -#, fuzzy +#: gnucash/gtkbuilder/dialog-preferences.glade:1663 msgid "minutes" msgstr "menit" -#: gnucash/gtkbuilder/dialog-preferences.glade:1562 +#: gnucash/gtkbuilder/dialog-preferences.glade:1679 msgid "Show auto-save confirmation _question" -msgstr "" +msgstr "Tampilkan _pertanyaan konfirmasi simpan-otomatis" -#: gnucash/gtkbuilder/dialog-preferences.glade:1568 +#: gnucash/gtkbuilder/dialog-preferences.glade:1685 msgid "" "If active, GnuCash shows a confirmation question each time the auto-save " "feature is started. Otherwise no extra explanation is shown." msgstr "" +"Jika aktif, GnuCash akan menampilkan pertanyaan konfirmasi setiap kali fitur " +"simpan-otomatis dimulai. Jika tidak, tak ada penjelasan tambahan yang " +"ditampilkan." -#: gnucash/gtkbuilder/dialog-preferences.glade:1608 +#: gnucash/gtkbuilder/dialog-preferences.glade:1725 #: gnucash/gtkbuilder/dialog-sx.glade:1208 msgid "For" -msgstr "" +msgstr "Untuk" -#: gnucash/gtkbuilder/dialog-preferences.glade:1626 +#: gnucash/gtkbuilder/dialog-preferences.glade:1743 #: gnucash/gtkbuilder/dialog-sx.glade:1176 -#, fuzzy msgid "Forever" msgstr "Selamanya" -#: gnucash/gtkbuilder/dialog-preferences.glade:1665 -#, fuzzy +#: gnucash/gtkbuilder/dialog-preferences.glade:1782 msgid "Time to _wait for answer" -msgstr "_Tunggu para Robot" +msgstr "_Waktu untuk menunggu jawaban" -#: gnucash/gtkbuilder/dialog-preferences.glade:1702 -#, fuzzy +#: gnucash/gtkbuilder/dialog-preferences.glade:1819 msgid "seconds" msgstr "detik" -#: gnucash/gtkbuilder/dialog-preferences.glade:1730 -#, fuzzy +#: gnucash/gtkbuilder/dialog-preferences.glade:1847 msgid "Path head for Linked File Relative Paths" -msgstr "Amplituda Kepala GMR" +msgstr "Tajuk path untuk Path Relatif Berkas Tertaut" -#: gnucash/gtkbuilder/dialog-preferences.glade:1748 -#, fuzzy +#: gnucash/gtkbuilder/dialog-preferences.glade:1865 msgid "Path head for Linked Files Relative Paths" -msgstr "Amplituda Kepala GMR" +msgstr "Tajuk path untuk Path Relatif Berkas Tertaut" -#: gnucash/gtkbuilder/dialog-preferences.glade:1777 +#: gnucash/gtkbuilder/dialog-preferences.glade:1894 msgid "Enable horizontal grid lines on table displays" -msgstr "" +msgstr "Aktifkan garis kisi horizontal pada tampilan tabel" -#: gnucash/gtkbuilder/dialog-preferences.glade:1781 +#: gnucash/gtkbuilder/dialog-preferences.glade:1898 msgid "" "Enable horizontal grid lines on table displays. These will mainly be tree " "views like the Accounts page." msgstr "" +"Aktifkan garis kisi horizontal pada tampilan tabel. Ini terutama akan " +"menjadi tampilan pohon seperti halaman Akun." -#: gnucash/gtkbuilder/dialog-preferences.glade:1794 +#: gnucash/gtkbuilder/dialog-preferences.glade:1911 msgid "Enable vertical grid lines on table displays" -msgstr "" +msgstr "Aktifkan garis kisi vertikal pada tampilan tabel" -#: gnucash/gtkbuilder/dialog-preferences.glade:1798 +#: gnucash/gtkbuilder/dialog-preferences.glade:1915 msgid "" "Enable vertical grid lines on table displays. These will mainly be tree " "views like the Accounts page." msgstr "" +"Aktifkan garis kisi vertikal pada tampilan tabel. Ini terutama akan menjadi " +"tampilan pohon seperti halaman Akun." -#: gnucash/gtkbuilder/dialog-preferences.glade:1814 -#, fuzzy +#: gnucash/gtkbuilder/dialog-preferences.glade:1931 msgid "Linked Files" -msgstr "Ruang Lingkup" +msgstr "Berkas Tertaut" #. Preferences->Online Banking:Generic -#: gnucash/gtkbuilder/dialog-preferences.glade:1909 +#: gnucash/gtkbuilder/dialog-preferences.glade:2026 msgid "Enable skip transaction action" -msgstr "" +msgstr "Aktifkan aksi lewatkan transaksi" #. Preferences->Online Banking:Generic -#: gnucash/gtkbuilder/dialog-preferences.glade:1928 -#, fuzzy +#: gnucash/gtkbuilder/dialog-preferences.glade:2045 msgid "Enable update match action" -msgstr "Eksekusi aksi mutakhirkan" +msgstr "Aktifkan aksi perbarui kecocokan" -#: gnucash/gtkbuilder/dialog-preferences.glade:1965 +#: gnucash/gtkbuilder/dialog-preferences.glade:2082 msgid "" "In some places commercial ATMs (not belonging to a financial institution) " "are installed in places like convenience stores. These ATMs add their fee " @@ -16614,107 +17015,115 @@ msgid "" "in your area (in units of your local currency), so the transaction will be " "recognised as a match." msgstr "" +"Di beberapa tempat, ATM komersial (bukan milik lembaga keuangan) dipasang di " +"tempat-tempat seperti toko-toko. ATM ini menambahkan biaya mereka secara " +"langsung ke jumlah, bukannya muncul sebagai transaksi yang terpisah atau di " +"dalam biaya perbankan bulanan Anda. Misalnya, Anda menarik $100, dan Anda " +"dikenakan biaya $101,50 ditambah biaya Interac. Jika Anda memasukkan $100 " +"tersebut secara manual, jumlah tersebut tidak akan cocok. Anda harus " +"menetapkan biaya maksimum di daerah Anda (dalam satuan mata uang lokal " +"Anda), sehingga transaksi akan dikenali sebagai transaksi yang cocok." -#: gnucash/gtkbuilder/dialog-preferences.glade:1967 +#: gnucash/gtkbuilder/dialog-preferences.glade:2084 msgid "2,00" -msgstr "" +msgstr "2,00" -#: gnucash/gtkbuilder/dialog-preferences.glade:1988 +#: gnucash/gtkbuilder/dialog-preferences.glade:2105 msgid "" "A transaction whose best match's score is in the green zone (above or equal " "to the Auto-CLEAR threshold) will be CLEARed by default." msgstr "" +"Transaksi yang skor kecocokan terbaiknya berada pada zona hijau (di atas " +"atau sama dengan ambang batas Auto-CLEAR) akan diKLIRkan, secara baku." -#: gnucash/gtkbuilder/dialog-preferences.glade:2010 +#: gnucash/gtkbuilder/dialog-preferences.glade:2127 msgid "" "A transaction whose best match's score is in the red zone (above the display " "threshold but below or equal to the Auto-ADD threshold) will be ADDed by " "default." msgstr "" +"Transaksi yang skor kecocokan terbaiknya berada pada zona merah (di atas " +"ambang batas tampilan tetapi di bawah atau sama dengan ambang batas " +"TAMBAHKAN-Otomatis) akan diTAMBAHKAN, secara baku." -#: gnucash/gtkbuilder/dialog-preferences.glade:2032 +#: gnucash/gtkbuilder/dialog-preferences.glade:2149 msgid "" "The minimum score a potential match must have to be displayed in the match " "list." msgstr "" +"Skor minimum sebuah kecocokan potensial harus ditampilkan pada daftar " +"kecocokan." #. Preferences->Online Banking:Generic -#: gnucash/gtkbuilder/dialog-preferences.glade:2053 +#: gnucash/gtkbuilder/dialog-preferences.glade:2170 msgid "Commercial ATM _fees threshold" -msgstr "" +msgstr "Ambang _batas biaya ATM komersial" #. Preferences->Online Banking:Generic -#: gnucash/gtkbuilder/dialog-preferences.glade:2067 -#, fuzzy +#: gnucash/gtkbuilder/dialog-preferences.glade:2184 msgid "Auto-c_lear threshold" -msgstr "_Bersihkan Semua" +msgstr "Ambang batas _klir-otomatis" #. Preferences->Online Banking:Generic -#: gnucash/gtkbuilder/dialog-preferences.glade:2081 -#, fuzzy +#: gnucash/gtkbuilder/dialog-preferences.glade:2198 msgid "Auto-_add threshold" -msgstr "_Ambang..." +msgstr "_Ambang batas tambah-otomatis" #. Preferences->Online Banking:Generic -#: gnucash/gtkbuilder/dialog-preferences.glade:2095 -#, fuzzy +#: gnucash/gtkbuilder/dialog-preferences.glade:2212 msgid "Match _display threshold" -msgstr "Cocok" +msgstr "Ambang batas tampilan _kecocokan" #. Preferences->Online Banking:Generic -#: gnucash/gtkbuilder/dialog-preferences.glade:2106 -#, fuzzy +#: gnucash/gtkbuilder/dialog-preferences.glade:2223 msgid "Use _bayesian matching" -msgstr "Klik ganda pada strategi yang cocok untuk dipakai" +msgstr "Gunakan pencocokan _bayesian" -#: gnucash/gtkbuilder/dialog-preferences.glade:2112 +#: gnucash/gtkbuilder/dialog-preferences.glade:2229 msgid "" "Use bayesian algorithms to match new transactions with existing accounts." msgstr "" +"Menggunakan algoritma Bayesian untuk mencocokkan transaksi baru dengan akun " +"yang ada." -#: gnucash/gtkbuilder/dialog-preferences.glade:2170 -#, fuzzy +#: gnucash/gtkbuilder/dialog-preferences.glade:2287 msgid "Checks" -msgstr "Ruang Lingkup" +msgstr "Cek" -#: gnucash/gtkbuilder/dialog-preferences.glade:2185 -#, fuzzy +#: gnucash/gtkbuilder/dialog-preferences.glade:2302 msgid "The default check printing font." -msgstr "Jenis huruf yang digunakan ketika mencetak" +msgstr "Fonta baku untuk mencetak cek." -#: gnucash/gtkbuilder/dialog-preferences.glade:2195 -#, fuzzy +#: gnucash/gtkbuilder/dialog-preferences.glade:2312 msgid "Print _date format" -msgstr "Format Tanggal/Waktu" +msgstr "Cetak _format tanggal" -#: gnucash/gtkbuilder/dialog-preferences.glade:2201 +#: gnucash/gtkbuilder/dialog-preferences.glade:2318 msgid "Below the actual date, print the format of that date in 8 point type." -msgstr "" +msgstr "Di bawah tanggal sebenarnya, cetak format tanggal dalam tipe 8 titik." -#: gnucash/gtkbuilder/dialog-preferences.glade:2213 -#, fuzzy +#: gnucash/gtkbuilder/dialog-preferences.glade:2330 msgid "Print _blocking chars" -msgstr "Awakutu Pemblokir" +msgstr "Cetak karakter pem_blokir" -#: gnucash/gtkbuilder/dialog-preferences.glade:2219 +#: gnucash/gtkbuilder/dialog-preferences.glade:2336 msgid "Print '***' before and after each text field on the check." msgstr "" +"Cetak '***' sebelum dan sesudah masing-masing bidang teks di dalam cek." -#: gnucash/gtkbuilder/dialog-preferences.glade:2234 -#, fuzzy +#: gnucash/gtkbuilder/dialog-preferences.glade:2351 msgid "Default _font" -msgstr "Gunakan Fonta Baku" +msgstr "_Fonta baku" -#: gnucash/gtkbuilder/dialog-preferences.glade:2263 -#, fuzzy +#: gnucash/gtkbuilder/dialog-preferences.glade:2380 msgid "Printing" -msgstr "Percetakan" +msgstr "Mencetak" -#: gnucash/gtkbuilder/dialog-preferences.glade:2292 +#: gnucash/gtkbuilder/dialog-preferences.glade:2409 msgid "'_Enter' moves to blank transaction" msgstr "'_Enter' berpindah ke transaksi kosong" -#: gnucash/gtkbuilder/dialog-preferences.glade:2298 +#: gnucash/gtkbuilder/dialog-preferences.glade:2415 msgid "" "If checked, pressing the 'Enter' key will move to the location of the blank " "transaction in the register. If clear, pressing the 'Enter' key will move " @@ -16724,415 +17133,399 @@ msgstr "" "register. Jika tidak dicentang, menekan 'Enter' akan berpindah turun satu " "baris." -#: gnucash/gtkbuilder/dialog-preferences.glade:2310 -#, fuzzy +#: gnucash/gtkbuilder/dialog-preferences.glade:2427 msgid "_Auto-raise lists" -msgstr "Naikkan jendela" +msgstr "N_aikkan daftar secara otomatis" -#: gnucash/gtkbuilder/dialog-preferences.glade:2316 +#: gnucash/gtkbuilder/dialog-preferences.glade:2433 msgid "Automatically raise the list of accounts or actions during input." -msgstr "" +msgstr "Menaikkan daftar akun atau aksi secara otomatis pada saat masukan." -#: gnucash/gtkbuilder/dialog-preferences.glade:2328 +#: gnucash/gtkbuilder/dialog-preferences.glade:2445 msgid "Tab order in_cludes Transfer on Memorised Transactions" -msgstr "" +msgstr "Urutan tab ter_masuk Transfer pada Transaksi yang Diingat" -#: gnucash/gtkbuilder/dialog-preferences.glade:2334 +#: gnucash/gtkbuilder/dialog-preferences.glade:2451 msgid "Move to Transfer field when memorised transaction auto filled." msgstr "" +"Pindah ke bidang Transfer ketika transaksi yang diingat diisi otomatis." -#: gnucash/gtkbuilder/dialog-preferences.glade:2359 -#, fuzzy +#: gnucash/gtkbuilder/dialog-preferences.glade:2476 msgid "Reconciling" -msgstr "Ruang Lingkup" +msgstr "Merekonsiliasi" -#: gnucash/gtkbuilder/dialog-preferences.glade:2369 -#, fuzzy +#: gnucash/gtkbuilder/dialog-preferences.glade:2486 msgid "Check cleared _transactions" -msgstr "Senarai ubah dibersihkan" +msgstr "Periksa _transaksi klir" -#: gnucash/gtkbuilder/dialog-preferences.glade:2375 +#: gnucash/gtkbuilder/dialog-preferences.glade:2492 msgid "Pre-check cleared transactions when creating a reconcile dialog." -msgstr "" +msgstr "Pra-periksa transaksi klir saat membuat dialog rekonsiliasi." -#: gnucash/gtkbuilder/dialog-preferences.glade:2387 -#, fuzzy +#: gnucash/gtkbuilder/dialog-preferences.glade:2504 msgid "Automatic credit card _payment" -msgstr "Kartu Kredit" +msgstr "_Pembayaran kartu kredit otomatis" -#: gnucash/gtkbuilder/dialog-preferences.glade:2393 +#: gnucash/gtkbuilder/dialog-preferences.glade:2510 msgid "" "After reconciling a credit card statement, prompt the user to enter a credit " "card payment." msgstr "" +"Setelah melakukan rekonsiliasi pernyataan kartu kredit, minta pengguna untuk " +"memasukkan pembayaran kartu kredit." -#: gnucash/gtkbuilder/dialog-preferences.glade:2405 +#: gnucash/gtkbuilder/dialog-preferences.glade:2522 msgid "Always reconcile to t_oday" -msgstr "" +msgstr "Selalu rekonsiliasi ke _hari ini" -#: gnucash/gtkbuilder/dialog-preferences.glade:2411 +#: gnucash/gtkbuilder/dialog-preferences.glade:2528 msgid "" "Always open the reconcile dialog using today's date for the statement date, " "regardless of previous reconciliations." msgstr "" +"Selalu membuka dialog rekonsiliasi menggunakan tanggal hari ini untuk " +"tanggal pernyataan, terlepas dari rekonsiliasi sebelumnya." -#: gnucash/gtkbuilder/dialog-preferences.glade:2436 -#, fuzzy +#: gnucash/gtkbuilder/dialog-preferences.glade:2553 msgid "Graphics" -msgstr "Ruang Lingkup" +msgstr "Grafik" -#: gnucash/gtkbuilder/dialog-preferences.glade:2446 +#: gnucash/gtkbuilder/dialog-preferences.glade:2563 msgid "_Use GnuCash built-in color theme" -msgstr "" +msgstr "G_unakan tema warna bawaan GnuCash" -#: gnucash/gtkbuilder/dialog-preferences.glade:2452 +#: gnucash/gtkbuilder/dialog-preferences.glade:2569 msgid "" "GnuCash uses a yellow/green theme by default for register windows. Uncheck " "this if you want to use the system color theme instead." msgstr "" +"GnuCash menggunakan sebuah tema kuning/hijau secara baku untuk jendela " +"register. Hapus tanda centang ini jika Anda ingin menggunakan warna tema " +"sistem." -#: gnucash/gtkbuilder/dialog-preferences.glade:2464 +#: gnucash/gtkbuilder/dialog-preferences.glade:2581 msgid "Double _mode colors alternate with transactions" -msgstr "" +msgstr "Warna _mode ganda berseling dengan transaksi" -#: gnucash/gtkbuilder/dialog-preferences.glade:2470 +#: gnucash/gtkbuilder/dialog-preferences.glade:2587 msgid "" "Alternate the primary and secondary colors by transaction instead of by " "alternating by row." msgstr "" +"Seling warna primer dan sekunder berdasar transaksi, bukannya bergantian " +"antar baris." -#: gnucash/gtkbuilder/dialog-preferences.glade:2482 +#: gnucash/gtkbuilder/dialog-preferences.glade:2599 msgid "Draw hori_zontal lines between rows" -msgstr "" +msgstr "Tampilkan garis hori_zontal di antara baris" -#: gnucash/gtkbuilder/dialog-preferences.glade:2488 +#: gnucash/gtkbuilder/dialog-preferences.glade:2605 msgid "Show horizontal borders on the cells." -msgstr "" +msgstr "Tampilkan garis tepi horizontal di sel." -#: gnucash/gtkbuilder/dialog-preferences.glade:2500 +#: gnucash/gtkbuilder/dialog-preferences.glade:2617 msgid "Draw _vertical lines between columns" -msgstr "" +msgstr "Tampilkan garis _vertikal di atara kolom" -#: gnucash/gtkbuilder/dialog-preferences.glade:2506 +#: gnucash/gtkbuilder/dialog-preferences.glade:2623 msgid "Show vertical borders on the cells." -msgstr "" +msgstr "Tampilkan garis tepi vertikal di sel." -#: gnucash/gtkbuilder/dialog-preferences.glade:2531 -#, fuzzy +#: gnucash/gtkbuilder/dialog-preferences.glade:2648 msgid "Layout" msgstr "Tata Letak" -#: gnucash/gtkbuilder/dialog-preferences.glade:2541 +#: gnucash/gtkbuilder/dialog-preferences.glade:2658 msgid "_Future transactions after blank transaction" msgstr "_Transaksi yang akan datang setelah transaksi kosong" -#: gnucash/gtkbuilder/dialog-preferences.glade:2547 +#: gnucash/gtkbuilder/dialog-preferences.glade:2664 msgid "" "If checked, transactions with a date in the future will be displayed at the " "bottom of the register after the blank transaction. If clear, the blank " "transaction will be at the bottom of the register after all transactions." msgstr "" +"Jika dicentang, transaksi dengan tanggal di masa depan akan ditampilkan di " +"bagian bawah register setelah transaksi kosong. Jika tidak dicentang, " +"transaksi kosong akan berada di bagian bawah register setelah semua " +"transaksi." -#: gnucash/gtkbuilder/dialog-preferences.glade:2586 -#, fuzzy +#: gnucash/gtkbuilder/dialog-preferences.glade:2703 msgid "Default Style" -msgstr "Gaya" +msgstr "Gaya Baku" -#: gnucash/gtkbuilder/dialog-preferences.glade:2609 -#, fuzzy +#: gnucash/gtkbuilder/dialog-preferences.glade:2726 msgid "Other Defaults" -msgstr "Bawaan-bawaan Lainnya" +msgstr "Pengaturan Baku Lainnya" -#: gnucash/gtkbuilder/dialog-preferences.glade:2619 -#, fuzzy +#: gnucash/gtkbuilder/dialog-preferences.glade:2736 msgid "_Basic ledger" -msgstr "buku besar" +msgstr "_Buku besar dasar" -#: gnucash/gtkbuilder/dialog-preferences.glade:2638 -#, fuzzy +#: gnucash/gtkbuilder/dialog-preferences.glade:2755 msgid "_Auto-split ledger" -msgstr "buku besar" +msgstr "Buku besar split-otom_atis" -#: gnucash/gtkbuilder/dialog-preferences.glade:2679 -#, fuzzy +#: gnucash/gtkbuilder/dialog-preferences.glade:2796 msgid "Number of _transactions" -msgstr "{number}" +msgstr "Jumlah _transaksi" -#: gnucash/gtkbuilder/dialog-preferences.glade:2712 -#, fuzzy +#: gnucash/gtkbuilder/dialog-preferences.glade:2829 msgid "_Double line mode" -msgstr "Mengaktifkan mode layar penuh dengan klik ganda" +msgstr "Mode _dua baris" -#: gnucash/gtkbuilder/dialog-preferences.glade:2718 +#: gnucash/gtkbuilder/dialog-preferences.glade:2835 msgid "" "Show two lines of information for each transaction instead of one. Does not " "affect expanded transactions." msgstr "" +"Menunjukkan dua baris informasi untuk setiap transaksi, bukan satu. Tidak " +"mempengaruhi transaksi diekspansi." -#: gnucash/gtkbuilder/dialog-preferences.glade:2730 -#, fuzzy +#: gnucash/gtkbuilder/dialog-preferences.glade:2847 msgid "Register opens in a new _window" -msgstr "Buka jendela Devhelp baru" +msgstr "Register terbuka di _jendela baru" -#: gnucash/gtkbuilder/dialog-preferences.glade:2736 +#: gnucash/gtkbuilder/dialog-preferences.glade:2853 msgid "" "If checked, each register will be opened in its own top level window. If " "clear, the register will be opened in the current window." msgstr "" "Jika dicentang, setiap register akan dibuka pada jendela tingkat atas mereka " -"sendiri. Jika tidak, register akan dibuka pada jendela saat ini." +"sendiri. Jika tidak dicentang, register akan dibuka pada jendela saat ini." -#: gnucash/gtkbuilder/dialog-preferences.glade:2748 +#: gnucash/gtkbuilder/dialog-preferences.glade:2865 msgid "_Only display leaf account names" -msgstr "" +msgstr "Hanya _tampilkan nama-nama akun daun" -#: gnucash/gtkbuilder/dialog-preferences.glade:2754 +#: gnucash/gtkbuilder/dialog-preferences.glade:2871 msgid "" "If checked, only the names of the leaf accounts are displayed in the " "register and in the account selection popup. The default behaviour is to " "display the full name, including the path in the account tree. Checking this " "option implies that you use unique leaf names." msgstr "" +"Jika dicentang, hanya nama-nama akun daun yang akan ditampilkan di dalam " +"register dan di dalam popup pemilihan akun. Perilaku yang baku adalah " +"menampilkan nama lengkap, termasuk path pada pohon akun. Mencentang opsi ini " +"berarti Anda akan menggunakan nama-nama daun yang unik." #. Register2 feature -#: gnucash/gtkbuilder/dialog-preferences.glade:2769 -#, fuzzy +#: gnucash/gtkbuilder/dialog-preferences.glade:2886 msgid "Number of _characters for auto complete" -msgstr "Cacah karakter yang akan dilipat" +msgstr "Jumlah _karakter untuk lengkapi otomatis" #. Register2 feature -#: gnucash/gtkbuilder/dialog-preferences.glade:2803 +#: gnucash/gtkbuilder/dialog-preferences.glade:2920 msgid "Show the _entered and reconcile dates" -msgstr "" +msgstr "Tampilkan tanggal dimasukkan dan r_ekonsiliasi" #. Register2 feature -#: gnucash/gtkbuilder/dialog-preferences.glade:2819 -#, fuzzy +#: gnucash/gtkbuilder/dialog-preferences.glade:2936 msgid "Show the calendar b_uttons" -msgstr "Kalender %s dihapus" +msgstr "Tampilkan t_ombol kalender" #. Register2 feature -#: gnucash/gtkbuilder/dialog-preferences.glade:2835 +#: gnucash/gtkbuilder/dialog-preferences.glade:2952 msgid "_Move the selection to the blank split on expand" -msgstr "" +msgstr "Pindah_kan pilihan ke split kosong saat ekspansi" #. Register2 feature -#: gnucash/gtkbuilder/dialog-preferences.glade:2851 -msgid "_Show entered and reconciled dates on selection" -msgstr "" - -#: gnucash/gtkbuilder/dialog-preferences.glade:2914 -#, fuzzy -msgid "Register Defaults" -msgstr "daftar" - -#: gnucash/gtkbuilder/dialog-preferences.glade:2945 -msgid "Default Report Currency" -msgstr "" - #: gnucash/gtkbuilder/dialog-preferences.glade:2968 -#, fuzzy +msgid "_Show entered and reconciled dates on selection" +msgstr "Tampilkan tanggal dimasukkan dan rekon_siliasi saat memilih" + +#: gnucash/gtkbuilder/dialog-preferences.glade:3031 +msgid "Register Defaults" +msgstr "Pengaturan Baku Register" + +#: gnucash/gtkbuilder/dialog-preferences.glade:3062 +msgid "Default Report Currency" +msgstr "Mata Uang Baku untuk Laporan" + +#: gnucash/gtkbuilder/dialog-preferences.glade:3085 msgid "Location" -msgstr "Ruang Lingkup" +msgstr "Lokasi" -#: gnucash/gtkbuilder/dialog-preferences.glade:2978 -#, fuzzy +#: gnucash/gtkbuilder/dialog-preferences.glade:3095 msgid "Report opens in a new _window" -msgstr "Buka jendela Devhelp baru" +msgstr "Laporan terbuka di _jendela baru" -#: gnucash/gtkbuilder/dialog-preferences.glade:2984 +#: gnucash/gtkbuilder/dialog-preferences.glade:3101 msgid "" "If checked, each report will be opened in its own top level window. If " "clear, the report will be opened in the current window." msgstr "" "Jika dicentang, setiap laporan akan dibuka pada jendela tingkat atas mereka " -"sendiri. Jika tidak, laporan akan dibuka pada jendela saat ini." +"sendiri. Jika tidak dicentang, laporan akan dibuka pada jendela saat ini." -#: gnucash/gtkbuilder/dialog-preferences.glade:3012 -#, fuzzy +#: gnucash/gtkbuilder/dialog-preferences.glade:3129 msgid "Default zoom level" -msgstr "Tingkat perbesaran bawaan untuk halaman baru" +msgstr "Tingkat perbesaran baku" -#: gnucash/gtkbuilder/dialog-preferences.glade:3090 -#, fuzzy +#: gnucash/gtkbuilder/dialog-preferences.glade:3207 msgid "Default zoom level" -msgstr "Tingkat perbesaran bawaan" +msgstr "Tingkat perbesaran baku" -#: gnucash/gtkbuilder/dialog-preferences.glade:3125 -#, fuzzy +#: gnucash/gtkbuilder/dialog-preferences.glade:3242 msgid "Reports" -msgstr "" -"Apakah laporan cuaca ditampilkan, lokasi otomatis digunakan dan nama-lokasi" +msgstr "Laporan" -#: gnucash/gtkbuilder/dialog-preferences.glade:3144 -#, fuzzy +#: gnucash/gtkbuilder/dialog-preferences.glade:3261 msgid "Window Geometry" -msgstr "Ruang Lingkup" +msgstr "Geometri Jendela" -#: gnucash/gtkbuilder/dialog-preferences.glade:3164 -#, fuzzy +#: gnucash/gtkbuilder/dialog-preferences.glade:3281 msgid "_Save window size and position" -msgstr "Simpan posisi terakhir di peta" +msgstr "_Simpan ukuran dan posisi jendela" -#: gnucash/gtkbuilder/dialog-preferences.glade:3170 +#: gnucash/gtkbuilder/dialog-preferences.glade:3287 msgid "Save window size and location when it is closed." -msgstr "" +msgstr "Simpan ukuran dan lokasi jendela ketika ditutup." -#: gnucash/gtkbuilder/dialog-preferences.glade:3183 +#: gnucash/gtkbuilder/dialog-preferences.glade:3300 msgid "Bring the most _recent tab to the front" -msgstr "" +msgstr "Bawa tab yang paling ba_ru ke depan" -#: gnucash/gtkbuilder/dialog-preferences.glade:3215 -#, fuzzy +#: gnucash/gtkbuilder/dialog-preferences.glade:3332 msgid "Tab Position" -msgstr "Ruang Lingkup" +msgstr "Posisi Tab" -#: gnucash/gtkbuilder/dialog-preferences.glade:3225 -#, fuzzy +#: gnucash/gtkbuilder/dialog-preferences.glade:3342 msgid "To_p" -msgstr "%p" +msgstr "Ata_s" -#: gnucash/gtkbuilder/dialog-preferences.glade:3244 -#, fuzzy +#: gnucash/gtkbuilder/dialog-preferences.glade:3361 msgid "B_ottom" -msgstr "Ruang Lingkup" +msgstr "B_awah" -#: gnucash/gtkbuilder/dialog-preferences.glade:3263 -#, fuzzy +#: gnucash/gtkbuilder/dialog-preferences.glade:3380 msgid "_Left" -msgstr "K_iri" +msgstr "_Kiri" -#: gnucash/gtkbuilder/dialog-preferences.glade:3282 -#, fuzzy +#: gnucash/gtkbuilder/dialog-preferences.glade:3399 msgid "_Right" -msgstr "Kan_an" +msgstr "Ka_nan" -#: gnucash/gtkbuilder/dialog-preferences.glade:3304 +#: gnucash/gtkbuilder/dialog-preferences.glade:3421 msgid "Summary Bar Position" -msgstr "" +msgstr "Posisi Bilah Ringkasan" -#: gnucash/gtkbuilder/dialog-preferences.glade:3333 +#: gnucash/gtkbuilder/dialog-preferences.glade:3450 #: gnucash/gtkbuilder/dialog-print-check.glade:270 -#, fuzzy msgid "Bottom" -msgstr "Dasar" +msgstr "Bawah" -#: gnucash/gtkbuilder/dialog-preferences.glade:3365 -#, fuzzy +#: gnucash/gtkbuilder/dialog-preferences.glade:3482 msgid "Tabs" -msgstr "Ruang Lingkup" +msgstr "Tab" -#: gnucash/gtkbuilder/dialog-preferences.glade:3375 -#, fuzzy +#: gnucash/gtkbuilder/dialog-preferences.glade:3492 msgid "Show close button on _notebook tabs" -msgstr "Notebook Menampilkan Mode Tab" +msgstr "Tampilkan tombol tutup pada tab buku catata_n" -#: gnucash/gtkbuilder/dialog-preferences.glade:3381 +#: gnucash/gtkbuilder/dialog-preferences.glade:3498 msgid "" "Show a close button on each notebook tab. These function identically to the " "'Close' menu item." msgstr "" +"Tampilkan tombol tutup pada setiap tab buku catatan. Fungsi ini sama dengan " +"item menu 'Tutup'." -#: gnucash/gtkbuilder/dialog-preferences.glade:3402 +#: gnucash/gtkbuilder/dialog-preferences.glade:3519 msgid "" "If the text in the tab is longer than this value (the test is approximate) " "then the tab label will have the middle cut and replaced with an ellipsis." msgstr "" +"Jika teks di dalam tab lebih panjang daripada nilai ini (tes ini menggunakan " +"perkiraan) maka bagian tengah label tab akan dipotong dan diganti dengan " +"elipsis." -#: gnucash/gtkbuilder/dialog-preferences.glade:3404 -#, fuzzy +#: gnucash/gtkbuilder/dialog-preferences.glade:3521 msgid "30" msgstr "30" -#: gnucash/gtkbuilder/dialog-preferences.glade:3422 -#, fuzzy +#: gnucash/gtkbuilder/dialog-preferences.glade:3539 msgid "characters" -msgstr "Karakter" +msgstr "karakter" -#: gnucash/gtkbuilder/dialog-preferences.glade:3441 -#, fuzzy +#: gnucash/gtkbuilder/dialog-preferences.glade:3558 msgid "_Width" msgstr "_Lebar" -#: gnucash/gtkbuilder/dialog-preferences.glade:3478 -#, fuzzy +#: gnucash/gtkbuilder/dialog-preferences.glade:3595 msgid "Windows" -msgstr "Windows" +msgstr "Jendela" -#: gnucash/gtkbuilder/dialog-preferences.glade:3521 +#: gnucash/gtkbuilder/dialog-preferences.glade:3638 msgid "Online Quotes" msgstr "Harga Penawaran Daring" -#: gnucash/gtkbuilder/dialog-preferences.glade:3542 +#: gnucash/gtkbuilder/dialog-preferences.glade:3659 msgid "Online Quotes" msgstr "Harga Penawaran Daring" #: gnucash/gtkbuilder/dialog-price.glade:12 -#, fuzzy msgid "Bid" -msgstr "tipe harga: permintaan" +msgstr "Penawaran" #: gnucash/gtkbuilder/dialog-price.glade:15 -#, fuzzy msgid "Ask" -msgstr "Tanya" +msgstr "Permintaan" #: gnucash/gtkbuilder/dialog-price.glade:18 #: gnucash/report/reports/standard/budget-barchart.scm:78 #: gnucash/report/reports/standard/budget.scm:125 -#, fuzzy msgid "Last" msgstr "Terakhir" #: gnucash/gtkbuilder/dialog-price.glade:21 -#, fuzzy msgid "Net Asset Value" -msgstr "tipe akun: Aset" +msgstr "Nilai Aset Bersih" #: gnucash/gtkbuilder/dialog-price.glade:53 -#, fuzzy msgid "Price Editor" -msgstr "harga: kuotasi" +msgstr "Penyunting Harga" #: gnucash/gtkbuilder/dialog-price.glade:131 -#, fuzzy msgid "_Namespace" -msgstr "Namespace:" +msgstr "_Namespace" #: gnucash/gtkbuilder/dialog-price.glade:188 -#, fuzzy msgid "S_ource" -msgstr "/ pada %s" +msgstr "S_umber" #: gnucash/gtkbuilder/dialog-price.glade:369 msgid "Remove Old Prices" -msgstr "" +msgstr "Hapus Harga Lama" #: gnucash/gtkbuilder/dialog-price.glade:431 msgid "Delete prices that meet the following criteria:" -msgstr "" +msgstr "Hapus harga yang memenuhi kriteria berikut:" #: gnucash/gtkbuilder/dialog-price.glade:451 msgid "Remove all prices before date." -msgstr "" +msgstr "Hapus semua harga sebelum tanggal." #: gnucash/gtkbuilder/dialog-price.glade:465 #, fuzzy msgid "Last of _Week" -msgstr "Minggu lalu" +msgstr "Terakhir _Week" #: gnucash/gtkbuilder/dialog-price.glade:469 +#, fuzzy msgid "Keep the last price of each week if present before date." -msgstr "" +msgstr "Menjaga harga terakhir dari setiap minggu jika ada sebelum tanggal." #: gnucash/gtkbuilder/dialog-price.glade:482 #, fuzzy msgid "Last of _Month" -msgstr "Bulan lalu" +msgstr "Terakhir _Month" #: gnucash/gtkbuilder/dialog-price.glade:486 +#, fuzzy msgid "Keep the last price of each month if present before date." -msgstr "" +msgstr "Menjaga harga terakhir setiap bulan jika ada sebelum tanggal." #: gnucash/gtkbuilder/dialog-price.glade:499 msgid "Last of _Quarter" @@ -17149,43 +17542,48 @@ msgstr "" #: gnucash/gtkbuilder/dialog-price.glade:516 #, fuzzy msgid "Last of _Period" -msgstr "_Periode:" +msgstr "Terakhir _Period" #: gnucash/gtkbuilder/dialog-price.glade:520 +#, fuzzy msgid "" "Keep the last price of each fiscal period if present before date. The fiscal " "period is derived from the accounting period end date." msgstr "" +"Menjaga harga terakhir setiap periode fiskal jika ada sebelum tanggal. " +"Periode fiskal berasal dari tanggal akhir periode akuntansi." #: gnucash/gtkbuilder/dialog-price.glade:533 -#, fuzzy msgid "_Scaled" -msgstr "Skala" +msgstr "Ter_skala" #: gnucash/gtkbuilder/dialog-price.glade:537 +#, fuzzy msgid "" "With the scaled option, prices are removed relative to the date selected. " "'One a month' is used for dates older than a year and 'One a week' is used " "for dates older than six months to a year." msgstr "" +"Dengan pilihan berskala, harga relatif dihapus untuk tanggal yang dipilih. " +"'Satu bulan' digunakan untuk tanggal tua dari satu tahun dan 'Satu minggu' " +"digunakan untuk tanggal tua dari enam bulan sampai satu tahun." #: gnucash/gtkbuilder/dialog-price.glade:585 -#, fuzzy msgid "First Date" -msgstr "_Depan:" +msgstr "Tanggal Pertama" #: gnucash/gtkbuilder/dialog-price.glade:616 -#, fuzzy msgid "From these Commodities" -msgstr "Dari Tepi" +msgstr "Dari Komoditas ini" #: gnucash/gtkbuilder/dialog-price.glade:630 +#, fuzzy msgid "Keeping the last available price for option" -msgstr "" +msgstr "Menjaga harga terakhir yang tersedia untuk pilihan" #: gnucash/gtkbuilder/dialog-price.glade:662 msgid "Include _Fetched online prices" -msgstr "" +msgstr "Ser_takan harga yang diambil secara daring" #: gnucash/gtkbuilder/dialog-price.glade:666 msgid "If activated, prices added by Finance::Quote will be included." @@ -17194,18 +17592,18 @@ msgstr "" #: gnucash/gtkbuilder/dialog-price.glade:681 msgid "Include manually _Entered prices" -msgstr "" +msgstr "S_ertakan harga yang dimasukkan secara manual" #: gnucash/gtkbuilder/dialog-price.glade:685 msgid "If activated, include manually entered prices." -msgstr "" +msgstr "Jika diaktifkan, sertakan harga yang dimasukkan secara manual." #: gnucash/gtkbuilder/dialog-price.glade:702 -#, fuzzy msgid "_Added by the application" -msgstr "Ditambah" +msgstr "Ditambahkan oleh _aplikasi" #: gnucash/gtkbuilder/dialog-price.glade:706 +#, fuzzy msgid "" "If activated, include application added prices.\n" "\n" @@ -17214,46 +17612,41 @@ msgid "" "are able to correctly report values so removing them may make this less " "reliable." msgstr "" +"Jika diaktifkan, termasuk aplikasi menambahkan harga.\n" +"\n" +"Harga ini ditambahkan sehingga selalu ada \"terdekat dalam waktu\" Harga " +"untuk setiap transaksi multi-komoditas sehingga halaman dan laporan Account " +"mampu benar melaporkan nilai sehingga menghapus mereka dapat membuat ini " +"kurang dapat diandalkan." #: gnucash/gtkbuilder/dialog-price.glade:752 -#, fuzzy msgid "Before _Date" -msgstr "" -"Beberapa pabrikan tak menyediakan profil yang akurat bagi perangkat keras " -"dan profil tersebut sebaiknya dihindari. Petunjuk yang baik adalah dengan " -"mengunduh profil, dan bila tanggal pembuatan lebih dari setahun sebelum " -"tanggal Anda membeli perangkat maka boleh jadi itu adalah data dummy yang " -"diterbitkan dan tak berguna." +msgstr "Tanggal Se_belum" #: gnucash/gtkbuilder/dialog-price.glade:795 #: gnucash/report/reports/standard/price-scatter.scm:96 -#, fuzzy msgid "Price Database" -msgstr "harga" +msgstr "Basis Data Harga" #: gnucash/gtkbuilder/dialog-price.glade:842 -#, fuzzy msgid "Add a new price." -msgstr "harga" +msgstr "Tambah harga baru." #: gnucash/gtkbuilder/dialog-price.glade:860 -#, fuzzy msgid "Remove the current price." -msgstr "harga" +msgstr "Buang harga saat ini." #: gnucash/gtkbuilder/dialog-price.glade:878 -#, fuzzy msgid "Edit the current price." -msgstr "Suntng janji saat ini sebagai baru" +msgstr "Sunting harga saat ini." #: gnucash/gtkbuilder/dialog-price.glade:890 -#, fuzzy msgid "Remove _Old" -msgstr "Anda dapat menghapus sebuah daftar putar tua yang tidak diinginkan." +msgstr "Buang yang _Lama" #: gnucash/gtkbuilder/dialog-price.glade:895 msgid "Remove prices older than a user-entered date." -msgstr "" +msgstr "Buang harga yang lebih lama daripada tanggal yang ditentukan pengguna." #: gnucash/gtkbuilder/dialog-price.glade:907 msgid "_Get Quotes" @@ -17264,9 +17657,8 @@ msgid "Get new online quotes for stock accounts." msgstr "Dapatkan harga penawaran daring baru untuk akun saham." #: gnucash/gtkbuilder/dialog-print-check.glade:129 -#, fuzzy msgid "Save Custom Check Format" -msgstr "G_unakan format ini" +msgstr "Simpan Format Cek Tersuai" #: gnucash/gtkbuilder/dialog-print-check.glade:192 msgid "" @@ -17274,67 +17666,57 @@ msgid "" "format\" selector of the Print Check dialog. Using the title of an existing " "custom format will cause that format to be overwritten." msgstr "" +"Masukkan judul untuk format tersuai ini. Judul akan muncul pada pemilih " +"\"Format cek\" pada dialog Cetak Cek. Menggunakan judul format tersuai yang " +"sudah ada akan menyebabkan format itu ditimpa." #: gnucash/gtkbuilder/dialog-print-check.glade:244 -#, fuzzy msgid "Inches" msgstr "Inci" #: gnucash/gtkbuilder/dialog-print-check.glade:247 -#, fuzzy msgid "Centimeters" msgstr "Sentimeter" #: gnucash/gtkbuilder/dialog-print-check.glade:250 -#, fuzzy msgid "Millimeters" msgstr "Milimeter" #: gnucash/gtkbuilder/dialog-print-check.glade:253 -#, fuzzy msgid "Points" -msgstr "Nilai" +msgstr "Poin" #: gnucash/gtkbuilder/dialog-print-check.glade:267 -#, fuzzy msgid "Middle" msgstr "Tengah" #: gnucash/gtkbuilder/dialog-print-check.glade:284 msgid "Quicken/QuickBooks (tm) US-Letter" -msgstr "" +msgstr "Quicken/QuickBooks (tm) US-Letter" #: gnucash/gtkbuilder/dialog-print-check.glade:287 msgid "Deluxe(tm) Personal Checks US-Letter" -msgstr "" +msgstr "Deluxe(tm) Personal Checks US-Letter" #: gnucash/gtkbuilder/dialog-print-check.glade:290 msgid "Quicken(tm) Wallet Checks w/ side stub" -msgstr "" +msgstr "Quicken(tm) Wallet Checks dengan rintisan samping" #: gnucash/gtkbuilder/dialog-print-check.glade:347 -#, fuzzy msgid "_Print" msgstr "_Cetak" #: gnucash/gtkbuilder/dialog-print-check.glade:386 -#, fuzzy msgid "Check _format" -msgstr "" -"BIla Anda tak bisa membuka arsip yang ada dengan Manajer Arsip, " -"periksalah format berkas Anda. Beberapa tipe arsip mungkin memerlukan plugin " -"tambahan; proses instalasi untuk ini berbeda-beda untuk distribusi yang " -"berlainan." +msgstr "_Format cek" #: gnucash/gtkbuilder/dialog-print-check.glade:401 -#, fuzzy msgid "Check po_sition" -msgstr "Aksi Tombol Da_ya" +msgstr "Po_sisi cek" #: gnucash/gtkbuilder/dialog-print-check.glade:417 -#, fuzzy msgid "_Date format" -msgstr "format tanggal" +msgstr "For_mat tanggal" #: gnucash/gtkbuilder/dialog-print-check.glade:531 msgid "" @@ -17342,160 +17724,136 @@ msgid "" "ADDRESS item defined in order\n" "to print an address on the check." msgstr "" +"Format cek harus memiliki sebuah\n" +"item ALAMAT yang didefinisikan di pesanan\n" +"untuk mencetak alamat di cek." #: gnucash/gtkbuilder/dialog-print-check.glade:535 #: gnucash/gtkbuilder/dialog-print-check.glade:1084 -#, fuzzy msgid "_Address" -msgstr "_Alamat:" +msgstr "_Alamat" #: gnucash/gtkbuilder/dialog-print-check.glade:562 -#, fuzzy msgid "Checks on first _page" -msgstr "Pergi ke halaman pertama" +msgstr "Cek di halaman _pertama" #: gnucash/gtkbuilder/dialog-print-check.glade:661 -#, fuzzy msgid "x" msgstr "x" #: gnucash/gtkbuilder/dialog-print-check.glade:673 -#, fuzzy msgid "y" msgstr "y" #: gnucash/gtkbuilder/dialog-print-check.glade:686 #, fuzzy msgid "Pa_yee" -msgstr "_Halaman…" +msgstr "Pa_yee" #: gnucash/gtkbuilder/dialog-print-check.glade:716 -#, fuzzy msgid "Amount (_words)" -msgstr "KATA" +msgstr "Jumlah (_terbilang)" #: gnucash/gtkbuilder/dialog-print-check.glade:731 -#, fuzzy msgid "Amount (_numbers)" -msgstr "Angka" +msgstr "Jumlah (a_ngka)" #: gnucash/gtkbuilder/dialog-print-check.glade:746 -#: gnucash/gtkbuilder/gnc-plugin-page-register.glade:814 -#, fuzzy +#: gnucash/gtkbuilder/gnc-plugin-page-register.glade:1013 msgid "_Notes" -msgstr "Catatan" +msgstr "Catata_n" #: gnucash/gtkbuilder/dialog-print-check.glade:939 -#, fuzzy msgid "_Units" -msgstr "Unit:" +msgstr "Sat_uan" #: gnucash/gtkbuilder/dialog-print-check.glade:970 -#, fuzzy msgid "_Translation" -msgstr "Translasi" +msgstr "_Terjemahan" #: gnucash/gtkbuilder/dialog-print-check.glade:985 -#, fuzzy msgid "_Rotation" -msgstr "Rotasi:" +msgstr "_Rotasi" #: gnucash/gtkbuilder/dialog-print-check.glade:1032 msgid "The origin point is the upper left-hand corner of the page." -msgstr "" +msgstr "Titik awal adalah sudut kiri atas halaman." #: gnucash/gtkbuilder/dialog-print-check.glade:1045 msgid "The origin point is the lower left-hand corner of the page." -msgstr "" +msgstr "Titik awal adalah sudut kiri bawah halaman." #: gnucash/gtkbuilder/dialog-print-check.glade:1058 -#, fuzzy msgid "Degrees" msgstr "Derajat" #: gnucash/gtkbuilder/dialog-print-check.glade:1067 -#, fuzzy msgid "_Save Format" -msgstr "Simpan format berkas bagi operasi seret-dan-jatuhkan" +msgstr "_Simpan Format" #: gnucash/gtkbuilder/dialog-print-check.glade:1176 -#, fuzzy msgid "Splits Memo" -msgstr "Memo" +msgstr "Memo Split" #: gnucash/gtkbuilder/dialog-print-check.glade:1191 -#, fuzzy msgid "Splits Amount" -msgstr "jumlah" +msgstr "Jumlah Split" #: gnucash/gtkbuilder/dialog-print-check.glade:1206 -#, fuzzy msgid "Splits Account" -msgstr "akun" +msgstr "Akun Split" #: gnucash/gtkbuilder/dialog-print-check.glade:1368 -#, fuzzy msgid "Custom format" -msgstr "Format Ubahan" +msgstr "Format tersuai" #: gnucash/gtkbuilder/dialog-progress.glade:6 msgid "1234567890123456789012345678901234567890" -msgstr "" +msgstr "1234567890123456789012345678901234567890" #: gnucash/gtkbuilder/dialog-progress.glade:12 -#, fuzzy msgid "Working..." -msgstr "Buka kunci path salinan kerja" +msgstr "Bekerja..." #: gnucash/gtkbuilder/dialog-report.glade:55 -#, fuzzy msgid "A_vailable reports" -msgstr "Ruang Lingkup" +msgstr "Laporan _tersedia" #: gnucash/gtkbuilder/dialog-report.glade:71 -#, fuzzy msgid "_Selected Reports" -msgstr "Ruang Lingkup" +msgstr "Laporan ter_pilih" #: gnucash/gtkbuilder/dialog-report.glade:101 -#, fuzzy msgid "A_dd >>" -msgstr "T_ambah" +msgstr "T_ambah >>" #: gnucash/gtkbuilder/dialog-report.glade:117 -#, fuzzy msgid "<< _Remove" -msgstr "_Buang" +msgstr "<< _Buang" #: gnucash/gtkbuilder/dialog-report.glade:145 -#, fuzzy msgid "Move _up" -msgstr "Bergerak ke atas" +msgstr "Pindah ke a_tas" #: gnucash/gtkbuilder/dialog-report.glade:161 -#, fuzzy msgid "Move dow_n" -msgstr "Jangan p_ernah pindah" +msgstr "Pindah ke _bawah" #: gnucash/gtkbuilder/dialog-report.glade:189 -#, fuzzy msgid "Si_ze..." -msgstr "Ukura_n:" +msgstr "Ukura_n..." #: gnucash/gtkbuilder/dialog-report.glade:257 -#, fuzzy msgid "HTML Style Sheets" -msgstr "Gaya awan standar. " +msgstr "Lembar Gaya HTML" #: gnucash/gtkbuilder/dialog-report.glade:306 -#, fuzzy msgid "Available style sheets" -msgstr "Gaya" +msgstr "Lembar gaya tersedia" #: gnucash/gtkbuilder/dialog-report.glade:386 -#, fuzzy msgid "Style sheet options" -msgstr "Gaya" +msgstr "Opsi lembar gaya" #: gnucash/gtkbuilder/dialog-report.glade:440 msgid "Report Size" @@ -17539,6 +17897,9 @@ msgid "" "re-enable any of these dialogs, select the check box next to the dialog, " "then click OK." msgstr "" +"Anda meminta supaya dialog peringatan berikut tidak ditampilkan. Untuk " +"mengaktifkan ulang dialog tersebut, pilih kotak centang di sebelah dialog, " +"lalu klik OK." #: gnucash/gtkbuilder/dialog-reset-warnings.glade:120 msgid "_Unselect All" @@ -17574,131 +17935,117 @@ msgstr "Cari item di mana" #: gnucash/gtkbuilder/dialog-search.glade:228 msgid "Match all entries" -msgstr "" +msgstr "Cocokkan semua entri" #: gnucash/gtkbuilder/dialog-search.glade:298 -#, fuzzy msgid "Search Criteria" -msgstr "" -"Tak ada pesan yang memenuhi kriteria pencarian Anda. Ubah kriteria pencarian " -"dengan memilih penyaring baru Tampilkan pesan dari daftar drop down di atas " -"atau dengan menjalankan pencarian baru dengan cara membersihkannya memakai " -"butir menu Cari→Bersihkan atau dengan mengubah kueri di atas." +msgstr "Kriteria Pencarian" #: gnucash/gtkbuilder/dialog-search.glade:331 -#, fuzzy msgid "New search" -msgstr "Pilih Folder Pencarian" +msgstr "Pencarian baru" #: gnucash/gtkbuilder/dialog-search.glade:348 -#, fuzzy msgid "Refine current search" -msgstr "Perhalus" +msgstr "Saring pencarian saat ini" #: gnucash/gtkbuilder/dialog-search.glade:365 -#, fuzzy msgid "Add results to current search" -msgstr "Hasil pencarian untuk \"%s\"" +msgstr "Tambahkan hasil ke pencarian saat ini" #: gnucash/gtkbuilder/dialog-search.glade:382 -#, fuzzy msgid "Delete results from current search" -msgstr "Banyanyak hasil pencarian maksimum dari pencarian geocode." +msgstr "Hapus hasil dari pencarian saat ini" #: gnucash/gtkbuilder/dialog-search.glade:410 -#, fuzzy msgid "Search only active data" -msgstr "Tak bisa mencari tanpa kalender aktif" +msgstr "Cari hanya data aktif" #: gnucash/gtkbuilder/dialog-search.glade:416 msgid "" "Choose whether to search all your data or only that marked as \"active\"." msgstr "" +"Pilih apakah akan melakukan pencarian di semua data Anda atau hanya data " +"yang ditandai sebagai \"aktif\"." #: gnucash/gtkbuilder/dialog-search.glade:434 -#, fuzzy msgid "Type of search" -msgstr "Ketik untuk mencari" +msgstr "Jenis pencarian" #: gnucash/gtkbuilder/dialog-sx.glade:8 -#, fuzzy msgid "Account Deletion" -msgstr "Gagal Menghapus Surat" +msgstr "Penghapusan Akun" #: gnucash/gtkbuilder/dialog-sx.glade:55 msgid "" "The following Scheduled Transactions reference the deleted account and must " "now be corrected. Press OK to edit them." msgstr "" +"Transaksi Terjadwal berikut merujuk pada akun yang terhapus dan sekarang " +"harus diperbaiki. Tekan OK untuk menyuntingnya." #: gnucash/gtkbuilder/dialog-sx.glade:126 #: gnucash/gtkbuilder/gnc-frequency.glade:171 #: gnucash/gtkbuilder/gnc-frequency.glade:759 #: gnucash/report/reports/standard/category-barchart.scm:129 #: gnucash/report/trep-engine.scm:298 libgnucash/engine/Recurrence.c:744 -#, fuzzy msgid "Daily" msgstr "Harian" #: gnucash/gtkbuilder/dialog-sx.glade:132 -#, fuzzy msgid "Bi-Weekly" -msgstr "Mingguan" +msgstr "Dua Mingguan" #: gnucash/gtkbuilder/dialog-sx.glade:141 #: gnucash/report/reports/standard/account-piecharts.scm:120 #: gnucash/report/trep-engine.scm:332 libgnucash/engine/Recurrence.c:787 -#, fuzzy msgid "Yearly" msgstr "Tahunan" #: gnucash/gtkbuilder/dialog-sx.glade:147 -#, fuzzy msgid "Make Scheduled Transaction" -msgstr "Transaksi Terjadwal" +msgstr "Buat Transaksi Terjadwal" #: gnucash/gtkbuilder/dialog-sx.glade:162 -#, fuzzy msgid "Advanced..." -msgstr "Tingkat lanjut" +msgstr "Lebih Lanjut..." #: gnucash/gtkbuilder/dialog-sx.glade:312 -#, fuzzy msgid "Never End" -msgstr "Janga_n Pernah" +msgstr "Tak Pernah Berakhir" #: gnucash/gtkbuilder/dialog-sx.glade:364 -#, fuzzy msgid "Number of Occurrences" -msgstr "Banyaknya Pengulangan" +msgstr "Jumlah Kejadian" #: gnucash/gtkbuilder/dialog-sx.glade:512 msgid "Since Last Run" -msgstr "" +msgstr "Sejak Terakhir Dijalankan" #: gnucash/gtkbuilder/dialog-sx.glade:535 msgid "Transaction Editor Defaults" -msgstr "" +msgstr "Pengaturan Baku Penyunting Transaksi" #: gnucash/gtkbuilder/dialog-sx.glade:545 -#, fuzzy msgid "_Run when data file opened" -msgstr "Tanggal dan waktu kapan berkas terakhir dibuka." +msgstr "Jalankan ketika be_rkas data dibuka" #: gnucash/gtkbuilder/dialog-sx.glade:549 msgid "Run the \"since last run\" process when a file is opened." msgstr "" +"Jalankan proses \"sejak terakhir dijalankan\" ketika sebuah berkas dibuka." #: gnucash/gtkbuilder/dialog-sx.glade:562 -#, fuzzy msgid "_Show notification window" -msgstr "Menampilkan daftar pemberitahuan" +msgstr "Tampilkan jendela notifika_si" #: gnucash/gtkbuilder/dialog-sx.glade:566 msgid "" "Show the notification window for the \"since last run\" process when a file " "is opened." msgstr "" +"Tampilkan jendela notifikasi untuk proses \"sejak terakhir dijalankan\" " +"ketika sebuah berkas dibuka." #: gnucash/gtkbuilder/dialog-sx.glade:579 msgid "_Auto-create new transactions" @@ -17707,24 +18054,23 @@ msgstr "Bu_at-otomatis transaksi baru" #: gnucash/gtkbuilder/dialog-sx.glade:583 msgid "Set the 'auto-create' flag on newly created scheduled transactions." msgstr "" -"Atur bendera 'buat-otomatis' pada transaksi terjadwal yang baru dibuat." +"Setel bendera 'buat-otomatis' pada transaksi terjadwal yang baru dibuat." #: gnucash/gtkbuilder/dialog-sx.glade:603 msgid "Begin notifications this many days before the transaction is created." -msgstr "" +msgstr "Mulai notifikasi sejumlah hari ini sebelum transaksi dibuat." #: gnucash/gtkbuilder/dialog-sx.glade:642 msgid "Create the transaction this many days before its effective date." -msgstr "" +msgstr "Buat transaksi sejumlah hari ini sebelum tanggal efektif." #: gnucash/gtkbuilder/dialog-sx.glade:674 -#, fuzzy msgid "_Notify before transactions are created " -msgstr "Dibuat sebelum" +msgstr "Tampilkan _notifikasi sebelum transaksi dibuat " #: gnucash/gtkbuilder/dialog-sx.glade:679 msgid "Set the 'notify' flag on newly created scheduled transactions." -msgstr "" +msgstr "Setel bendera 'beritahu' pada transaksi terjadwal yang baru dibuat." #: gnucash/gtkbuilder/dialog-sx.glade:698 msgid "Crea_te in advance" @@ -17732,7 +18078,7 @@ msgstr "Bua_t sebelumnya" #: gnucash/gtkbuilder/dialog-sx.glade:713 msgid "R_emind in advance" -msgstr "Ingatkan S_ebelumnya" +msgstr "Ingatkan s_ebelumnya" #: gnucash/gtkbuilder/dialog-sx.glade:748 msgid "Edit Scheduled Transaction" @@ -17765,21 +18111,19 @@ msgstr "Buat otomatis" #: gnucash/gtkbuilder/dialog-sx.glade:986 msgid "Conditional on splits not having variables" -msgstr "" +msgstr "Kondisional pada split yang tak memiliki variabel" #: gnucash/gtkbuilder/dialog-sx.glade:1056 msgid "Notify me when created" -msgstr "" +msgstr "Beritahu saya jika dibuat" #: gnucash/gtkbuilder/dialog-sx.glade:1102 -#, fuzzy msgid "Occurrences" -msgstr "Ruang Lingkup" +msgstr "Kemunculan" #: gnucash/gtkbuilder/dialog-sx.glade:1125 -#, fuzzy msgid "Last Occurred: " -msgstr "Telah terjadi galat" +msgstr "Terakhir Terjadi: " #: gnucash/gtkbuilder/dialog-sx.glade:1159 msgid "Repeats:" @@ -17799,7 +18143,7 @@ msgstr "tersisa" #: gnucash/gtkbuilder/dialog-sx.glade:1323 msgid "Overview" -msgstr "Pratinjau" +msgstr "Ikhtisar" #: gnucash/gtkbuilder/dialog-sx.glade:1396 msgid "Template Transaction" @@ -17810,9 +18154,8 @@ msgid "Since Last Run..." msgstr "Sejak Dijalankan Terakhir..." #: gnucash/gtkbuilder/dialog-sx.glade:1530 -#, fuzzy msgid "_Review created transactions" -msgstr "Ulasan" +msgstr "Tinjau t_ransaksi yang dibuat" #: gnucash/gtkbuilder/dialog-tax-info.glade:13 msgid "Income Tax Information" @@ -17839,136 +18182,112 @@ msgid "_Expense" msgstr "_Pengeluaran" #: gnucash/gtkbuilder/dialog-tax-info.glade:297 -#, fuzzy msgid "_Asset" -msgstr "tipe akun: Aset" +msgstr "_Aset" #: gnucash/gtkbuilder/dialog-tax-info.glade:313 -#, fuzzy msgid "_Liability/Equity" -msgstr "ekuitas" +msgstr "_Liabilitas/Ekuitas" #: gnucash/gtkbuilder/dialog-tax-info.glade:467 msgid "Account Tax Information" -msgstr "" +msgstr "Informasi Pajak Akun" #: gnucash/gtkbuilder/dialog-tax-info.glade:478 -#, fuzzy msgid "Tax _Related" -msgstr "kode pajak" +msgstr "Te_rkait Pajak" #: gnucash/gtkbuilder/dialog-tax-info.glade:510 -#, fuzzy msgid "_TXF Categories" -msgstr "Ruang Lingkup" +msgstr "Kategori _TXF" #: gnucash/gtkbuilder/dialog-tax-info.glade:614 -#, fuzzy msgid "Payer Name Source" -msgstr "Beri nama konfigurasi panel yang baru" +msgstr "Sumber Nama Pembayar" #: gnucash/gtkbuilder/dialog-tax-info.glade:625 -#, fuzzy msgid "C_urrent Account" -msgstr "T_ampilan Saat Ini" +msgstr "Ak_un Saat Ini" #: gnucash/gtkbuilder/dialog-tax-info.glade:642 -#, fuzzy msgid "_Parent Account" -msgstr "akun: akun induk" +msgstr "Akun _Induk" #: gnucash/gtkbuilder/dialog-tax-info.glade:675 -#, fuzzy msgid "Copy Number" -msgstr "Ruang Lingkup" +msgstr "Salin Nomor" #: gnucash/gtkbuilder/dialog-tax-table.glade:7 -#, fuzzy msgid "Tax Tables" -msgstr "kode pajak" +msgstr "Tabel Pajak" #: gnucash/gtkbuilder/dialog-tax-table.glade:31 -#, fuzzy msgid "Tax Tables" -msgstr "Ruang Lingkup" +msgstr "Tabel Pajak" #: gnucash/gtkbuilder/dialog-tax-table.glade:141 msgid "Tax Table Entries" -msgstr "" +msgstr "Entri Tabel Pajak" #: gnucash/gtkbuilder/dialog-tax-table.glade:197 -#, fuzzy msgid "De_lete" -msgstr "_Standar" +msgstr "Ha_pus" #: gnucash/gtkbuilder/dialog-tax-table.glade:212 -#, fuzzy msgid "Ne_w" -msgstr "Sunting s_ebagai Baru…" +msgstr "Ba_ru" #: gnucash/gtkbuilder/dialog-tax-table.glade:289 -#, fuzzy msgid "Value $" -msgstr "Nilai:" +msgstr "Nilai $" #: gnucash/gtkbuilder/dialog-tax-table.glade:292 -#, fuzzy msgid "Percent %" -msgstr "Persen" +msgstr "Persen %" #: gnucash/gtkbuilder/dialog-tax-table.glade:387 msgid "Tax Table Entry" -msgstr "" +msgstr "Entri Tabel Pajak" #: gnucash/gtkbuilder/dialog-tax-table.glade:401 -#, fuzzy msgid "Tax Table" -msgstr "Ruang Lingkup" +msgstr "Tabel Pajak" #: gnucash/gtkbuilder/dialog-totd.glade:8 -#, fuzzy msgid "GnuCash Tip Of The Day" -msgstr "_Tip Hari Ini" +msgstr "Tip GnuCash Hari Ini" #: gnucash/gtkbuilder/dialog-totd.glade:26 -#, fuzzy msgid "_Previous" msgstr "Se_belumnya" #: gnucash/gtkbuilder/dialog-totd.glade:41 -#, fuzzy msgid "_Next" msgstr "Sela_njutnya" #: gnucash/gtkbuilder/dialog-totd.glade:95 -#, fuzzy msgid "Tip of the Day" -msgstr "_Tip Hari Ini" +msgstr "Tip Hari Ini" #: gnucash/gtkbuilder/dialog-totd.glade:145 -#, fuzzy msgid "_Show tips at startup" -msgstr "Startup" +msgstr "Tampilkan tip _saat mulai" #: gnucash/gtkbuilder/dialog-transfer.glade:8 -#, fuzzy msgid "Transfer Funds" -msgstr "Transfer" +msgstr "Dana Transfer" #: gnucash/gtkbuilder/dialog-transfer.glade:79 -#, fuzzy msgid "Basic Information" -msgstr "Ruang Lingkup" +msgstr "Informasi Dasar" #: gnucash/gtkbuilder/dialog-transfer.glade:283 -#, fuzzy msgid "Transfer From" -msgstr "Ruang Lingkup" +msgstr "Transfer Dari" #: gnucash/gtkbuilder/dialog-transfer.glade:342 -#, fuzzy msgid "Transfer To" -msgstr "Ruang Lingkup" +msgstr "Transfer Ke" #: gnucash/gtkbuilder/dialog-transfer.glade:447 #: gnucash/gtkbuilder/dialog-transfer.glade:463 @@ -17978,44 +18297,31 @@ msgid "Show Income/Expense" msgstr "Tampilkan Pendapatan/Pengeluaran" #: gnucash/gtkbuilder/dialog-transfer.glade:496 -#, fuzzy msgid "Currency Transfer" -msgstr "Ruang Lingkup" +msgstr "Mata Uang Transfer" #: gnucash/gtkbuilder/dialog-transfer.glade:524 -#, fuzzy msgid "Exchange Rate" -msgstr "kurs" +msgstr "Nilai Tukar" #: gnucash/gtkbuilder/dialog-transfer.glade:605 -#, fuzzy msgid "_Fetch Rate" -msgstr "Tak bisa mengambil daftar foto" +msgstr "_Dapatkan Suku Bunga" #: gnucash/gtkbuilder/dialog-userpass.glade:7 -#, fuzzy msgid "Username and Password" -msgstr "" -"Gunakan nama pengguna dan kata sandi yang Anda daftarkan dengan jaringan IRC " -"dengan perintah ini." +msgstr "Nama Pengguna dan Kata Sandi" #: gnucash/gtkbuilder/dialog-userpass.glade:63 -#, fuzzy msgid "Enter your username and password" -msgstr "" -"Suatu dialog atau jendela situs web kecil akan terbuka dimana Anda dapat " -"memasukkan kredensial akun daring Anda. Sebagai contoh, bila Anda menyiapkan " -"akun Google, masukkan nama pengguna dan sandi Google Anda. Beberapa penyedia " -"mengizinkan Anda membuat sebuah akun baru dari dialog log masuk." +msgstr "Masukkan nama pengguna dan kata sandi Anda" #: gnucash/gtkbuilder/dialog-userpass.glade:84 -#, fuzzy msgid "_Username" msgstr "Nama Pengg_una" #: gnucash/gtkbuilder/dialog-userpass.glade:99 #: gnucash/import-export/aqb/dialog-ab.glade:663 -#, fuzzy msgid "_Password" msgstr "Kata _Sandi" @@ -18027,631 +18333,532 @@ msgstr "" "Nomor ID vendor. Jika dibiarkan kosong, akan dipilihkan nomor yang masuk akal" #: gnucash/gtkbuilder/gnc-date-format.glade:12 -#, fuzzy msgid "US (12/31/2001)" -msgstr "Galon Amerika" +msgstr "Amerika (12/31/2001)" #: gnucash/gtkbuilder/gnc-date-format.glade:15 msgid "UK (31/12/2001)" -msgstr "" +msgstr "Inggris (31/12/2001)" #: gnucash/gtkbuilder/gnc-date-format.glade:18 -#, fuzzy msgid "Europe (31.12.2001)" -msgstr "Eropa/Bratislava" +msgstr "Eropa (31.12.2001)" #: gnucash/gtkbuilder/gnc-date-format.glade:21 -#, fuzzy msgid "ISO (2001-12-31)" -msgstr "ISO" +msgstr "ISO (2001-12-31)" #: gnucash/gtkbuilder/gnc-date-format.glade:27 msgid "UTC - Coordinated Universal Time" -msgstr "" +msgstr "UTC - Waktu Universal Terkoordinasi" #: gnucash/gtkbuilder/gnc-date-format.glade:33 -#, fuzzy msgid "No Fancy Date Format" -msgstr "format tanggal" +msgstr "Tanpa Format Tanggal Lengkap" #: gnucash/gtkbuilder/gnc-date-format.glade:65 -#, fuzzy msgid "%Y-%m-%d" -msgstr "%d/%m/%y" +msgstr "%d/%m/%Y" #: gnucash/gtkbuilder/gnc-date-format.glade:77 -#, fuzzy msgid "Include Century" -msgstr "Include=" +msgstr "Sertakan Abad" #: gnucash/gtkbuilder/gnc-date-format.glade:115 msgid "Abbreviation" -msgstr "" +msgstr "Singkatan" #: gnucash/gtkbuilder/gnc-date-format.glade:225 -#, fuzzy msgid "Date format" -msgstr "format tanggal" +msgstr "Format tanggal" #: gnucash/gtkbuilder/gnc-frequency.glade:40 #: gnucash/gtkbuilder/gnc-frequency.glade:208 #: gnucash/gtkbuilder/gnc-frequency.glade:434 #: libgnucash/engine/Recurrence.c:667 -#, fuzzy msgid "1st" -msgstr "1" +msgstr "Ke-1" #: gnucash/gtkbuilder/gnc-frequency.glade:43 #: gnucash/gtkbuilder/gnc-frequency.glade:211 #: gnucash/gtkbuilder/gnc-frequency.glade:437 #: libgnucash/engine/Recurrence.c:667 -#, fuzzy msgid "2nd" -msgstr "2" +msgstr "Ke-2" #: gnucash/gtkbuilder/gnc-frequency.glade:46 #: gnucash/gtkbuilder/gnc-frequency.glade:214 #: gnucash/gtkbuilder/gnc-frequency.glade:440 #: libgnucash/engine/Recurrence.c:667 -#, fuzzy msgid "3rd" -msgstr "3" +msgstr "Ke-3" #: gnucash/gtkbuilder/gnc-frequency.glade:49 #: gnucash/gtkbuilder/gnc-frequency.glade:217 #: gnucash/gtkbuilder/gnc-frequency.glade:443 #: libgnucash/engine/Recurrence.c:667 -#, fuzzy msgid "4th" -msgstr "4" +msgstr "Ke-4" #: gnucash/gtkbuilder/gnc-frequency.glade:52 #: gnucash/gtkbuilder/gnc-frequency.glade:220 #: gnucash/gtkbuilder/gnc-frequency.glade:446 -#, fuzzy msgid "5th" -msgstr "5" +msgstr "Ke-5" #: gnucash/gtkbuilder/gnc-frequency.glade:55 #: gnucash/gtkbuilder/gnc-frequency.glade:223 #: gnucash/gtkbuilder/gnc-frequency.glade:449 -#, fuzzy msgid "6th" -msgstr "6" +msgstr "Ke-6" #: gnucash/gtkbuilder/gnc-frequency.glade:58 #: gnucash/gtkbuilder/gnc-frequency.glade:226 #: gnucash/gtkbuilder/gnc-frequency.glade:452 -#, fuzzy msgid "7th" -msgstr "7" +msgstr "Ke-7" #: gnucash/gtkbuilder/gnc-frequency.glade:61 #: gnucash/gtkbuilder/gnc-frequency.glade:229 #: gnucash/gtkbuilder/gnc-frequency.glade:455 -#, fuzzy msgid "8th" -msgstr "8" +msgstr "Ke-8" #: gnucash/gtkbuilder/gnc-frequency.glade:64 #: gnucash/gtkbuilder/gnc-frequency.glade:232 #: gnucash/gtkbuilder/gnc-frequency.glade:458 -#, fuzzy msgid "9th" -msgstr "9" +msgstr "Ke-9" #: gnucash/gtkbuilder/gnc-frequency.glade:67 #: gnucash/gtkbuilder/gnc-frequency.glade:235 #: gnucash/gtkbuilder/gnc-frequency.glade:461 -#, fuzzy msgid "10th" -msgstr "10" +msgstr "Ke-10" #: gnucash/gtkbuilder/gnc-frequency.glade:70 #: gnucash/gtkbuilder/gnc-frequency.glade:238 #: gnucash/gtkbuilder/gnc-frequency.glade:464 -#, fuzzy msgid "11th" -msgstr "11" +msgstr "Ke-11" #: gnucash/gtkbuilder/gnc-frequency.glade:73 #: gnucash/gtkbuilder/gnc-frequency.glade:241 #: gnucash/gtkbuilder/gnc-frequency.glade:467 -#, fuzzy msgid "12th" -msgstr "12" +msgstr "Ke-12" #: gnucash/gtkbuilder/gnc-frequency.glade:76 #: gnucash/gtkbuilder/gnc-frequency.glade:244 #: gnucash/gtkbuilder/gnc-frequency.glade:470 -#, fuzzy msgid "13th" -msgstr "13" +msgstr "Ke-13" #: gnucash/gtkbuilder/gnc-frequency.glade:79 #: gnucash/gtkbuilder/gnc-frequency.glade:247 #: gnucash/gtkbuilder/gnc-frequency.glade:473 -#, fuzzy msgid "14th" -msgstr "14" +msgstr "Ke-14" #: gnucash/gtkbuilder/gnc-frequency.glade:82 #: gnucash/gtkbuilder/gnc-frequency.glade:250 #: gnucash/gtkbuilder/gnc-frequency.glade:476 -#, fuzzy msgid "15th" -msgstr "15" +msgstr "Ke-15" #: gnucash/gtkbuilder/gnc-frequency.glade:85 #: gnucash/gtkbuilder/gnc-frequency.glade:253 #: gnucash/gtkbuilder/gnc-frequency.glade:479 -#, fuzzy msgid "16th" -msgstr "16" +msgstr "Ke-16" #: gnucash/gtkbuilder/gnc-frequency.glade:88 #: gnucash/gtkbuilder/gnc-frequency.glade:256 #: gnucash/gtkbuilder/gnc-frequency.glade:482 -#, fuzzy msgid "17th" -msgstr "17" +msgstr "Ke-17" #: gnucash/gtkbuilder/gnc-frequency.glade:91 #: gnucash/gtkbuilder/gnc-frequency.glade:259 #: gnucash/gtkbuilder/gnc-frequency.glade:485 -#, fuzzy msgid "18th" -msgstr "18" +msgstr "Ke-18" #: gnucash/gtkbuilder/gnc-frequency.glade:94 #: gnucash/gtkbuilder/gnc-frequency.glade:262 #: gnucash/gtkbuilder/gnc-frequency.glade:488 -#, fuzzy msgid "19th" -msgstr "19" +msgstr "Ke-19" #: gnucash/gtkbuilder/gnc-frequency.glade:97 #: gnucash/gtkbuilder/gnc-frequency.glade:265 #: gnucash/gtkbuilder/gnc-frequency.glade:491 -#, fuzzy msgid "20th" -msgstr "20" +msgstr "Ke-20" #: gnucash/gtkbuilder/gnc-frequency.glade:100 #: gnucash/gtkbuilder/gnc-frequency.glade:268 #: gnucash/gtkbuilder/gnc-frequency.glade:494 -#, fuzzy msgid "21st" -msgstr "21" +msgstr "Ke-21" #: gnucash/gtkbuilder/gnc-frequency.glade:103 #: gnucash/gtkbuilder/gnc-frequency.glade:271 #: gnucash/gtkbuilder/gnc-frequency.glade:497 -#, fuzzy msgid "22nd" -msgstr "22" +msgstr "Ke-22" #: gnucash/gtkbuilder/gnc-frequency.glade:106 #: gnucash/gtkbuilder/gnc-frequency.glade:274 #: gnucash/gtkbuilder/gnc-frequency.glade:500 -#, fuzzy msgid "23rd" -msgstr "23" +msgstr "Ke-23" #: gnucash/gtkbuilder/gnc-frequency.glade:109 #: gnucash/gtkbuilder/gnc-frequency.glade:277 #: gnucash/gtkbuilder/gnc-frequency.glade:503 -#, fuzzy msgid "24th" -msgstr "24" +msgstr "Ke-24" #: gnucash/gtkbuilder/gnc-frequency.glade:112 #: gnucash/gtkbuilder/gnc-frequency.glade:280 #: gnucash/gtkbuilder/gnc-frequency.glade:506 -#, fuzzy msgid "25th" -msgstr "25" +msgstr "Ke-25" #: gnucash/gtkbuilder/gnc-frequency.glade:115 #: gnucash/gtkbuilder/gnc-frequency.glade:283 #: gnucash/gtkbuilder/gnc-frequency.glade:509 -#, fuzzy msgid "26th" -msgstr "26" +msgstr "Ke-26" #: gnucash/gtkbuilder/gnc-frequency.glade:118 #: gnucash/gtkbuilder/gnc-frequency.glade:286 #: gnucash/gtkbuilder/gnc-frequency.glade:512 -#, fuzzy msgid "27th" -msgstr "27" +msgstr "Ke-27" #: gnucash/gtkbuilder/gnc-frequency.glade:121 #: gnucash/gtkbuilder/gnc-frequency.glade:289 #: gnucash/gtkbuilder/gnc-frequency.glade:515 -#, fuzzy msgid "28th" -msgstr "28" +msgstr "Ke-28" #: gnucash/gtkbuilder/gnc-frequency.glade:124 #: gnucash/gtkbuilder/gnc-frequency.glade:292 #: gnucash/gtkbuilder/gnc-frequency.glade:518 -#, fuzzy msgid "29th" -msgstr "29" +msgstr "Ke-29" #: gnucash/gtkbuilder/gnc-frequency.glade:127 #: gnucash/gtkbuilder/gnc-frequency.glade:295 #: gnucash/gtkbuilder/gnc-frequency.glade:521 -#, fuzzy msgid "30th" -msgstr "30" +msgstr "Ke-30" #: gnucash/gtkbuilder/gnc-frequency.glade:130 #: gnucash/gtkbuilder/gnc-frequency.glade:298 #: gnucash/gtkbuilder/gnc-frequency.glade:524 -#, fuzzy msgid "31st" -msgstr "31" +msgstr "Ke-31" #: gnucash/gtkbuilder/gnc-frequency.glade:133 #: gnucash/gtkbuilder/gnc-frequency.glade:301 #: gnucash/gtkbuilder/gnc-frequency.glade:527 -#, fuzzy msgid "Last day of month" -msgstr "Bulan lalu" +msgstr "Hari terakhir dalam satu bulan" #: gnucash/gtkbuilder/gnc-frequency.glade:136 #: gnucash/gtkbuilder/gnc-frequency.glade:304 #: gnucash/gtkbuilder/gnc-frequency.glade:530 -#, fuzzy msgid "Last Monday" -msgstr "pada hari Senin terakhir" +msgstr "Senin Terakhir" #: gnucash/gtkbuilder/gnc-frequency.glade:139 #: gnucash/gtkbuilder/gnc-frequency.glade:307 #: gnucash/gtkbuilder/gnc-frequency.glade:533 -#, fuzzy msgid "Last Tuesday" -msgstr "pada hari Selasa terakhir" +msgstr "Selasa Terakhir" #: gnucash/gtkbuilder/gnc-frequency.glade:142 #: gnucash/gtkbuilder/gnc-frequency.glade:310 #: gnucash/gtkbuilder/gnc-frequency.glade:536 -#, fuzzy msgid "Last Wednesday" -msgstr "pada hari Rabu terakhir" +msgstr "Rabu Terakhir" #: gnucash/gtkbuilder/gnc-frequency.glade:145 #: gnucash/gtkbuilder/gnc-frequency.glade:313 #: gnucash/gtkbuilder/gnc-frequency.glade:539 -#, fuzzy msgid "Last Thursday" -msgstr "pada hari Kamis terakhir" +msgstr "Kamis Terakhir" #: gnucash/gtkbuilder/gnc-frequency.glade:148 #: gnucash/gtkbuilder/gnc-frequency.glade:316 #: gnucash/gtkbuilder/gnc-frequency.glade:542 -#, fuzzy msgid "Last Friday" -msgstr "pada hari Jumat terakhir" +msgstr "Jumat Terakhir" #: gnucash/gtkbuilder/gnc-frequency.glade:151 #: gnucash/gtkbuilder/gnc-frequency.glade:319 #: gnucash/gtkbuilder/gnc-frequency.glade:545 -#, fuzzy msgid "Last Saturday" -msgstr "pada hari Sabtu terakhir" +msgstr "Sabtu Terakhir" #: gnucash/gtkbuilder/gnc-frequency.glade:154 #: gnucash/gtkbuilder/gnc-frequency.glade:322 #: gnucash/gtkbuilder/gnc-frequency.glade:548 -#, fuzzy msgid "Last Sunday" -msgstr "pada hari Minggu terakhir" +msgstr "Minggu Terakhir" #: gnucash/gtkbuilder/gnc-frequency.glade:168 #: gnucash/gtkbuilder/gnc-frequency.glade:691 #: libgnucash/engine/Recurrence.c:739 -#, fuzzy msgid "Once" msgstr "Sekali" #: gnucash/gtkbuilder/gnc-frequency.glade:177 #: gnucash/gtkbuilder/gnc-frequency.glade:1237 -#, fuzzy msgid "Semi-Monthly" -msgstr "Bulanan" +msgstr "Setengah Bulanan" #: gnucash/gtkbuilder/gnc-frequency.glade:191 #: gnucash/gtkbuilder/gnc-frequency.glade:417 #: gnucash/gtkbuilder/gnc-frequency.glade:559 -#, fuzzy msgid "No change" -msgstr "Tidak berubah" +msgstr "Tak berubah" #: gnucash/gtkbuilder/gnc-frequency.glade:194 #: gnucash/gtkbuilder/gnc-frequency.glade:420 #: gnucash/gtkbuilder/gnc-frequency.glade:562 -#, fuzzy msgid "Use previous weekday" -msgstr "Sebelumnya" +msgstr "Gunakan hari kerja sebelumnya" #: gnucash/gtkbuilder/gnc-frequency.glade:197 #: gnucash/gtkbuilder/gnc-frequency.glade:423 #: gnucash/gtkbuilder/gnc-frequency.glade:565 -#, fuzzy msgid "Use next weekday" -msgstr "Berikutnya:" +msgstr "Gunakan hari kerja berikutnya" #: gnucash/gtkbuilder/gnc-frequency.glade:325 -#, fuzzy msgid "1st Mon" -msgstr "1" +msgstr "Sen ke-1" #: gnucash/gtkbuilder/gnc-frequency.glade:328 -#, fuzzy msgid "1st Tue" -msgstr "1" +msgstr "Sel ke-1" #: gnucash/gtkbuilder/gnc-frequency.glade:331 -#, fuzzy msgid "1st Wed" -msgstr "1" +msgstr "Rab ke-1" #: gnucash/gtkbuilder/gnc-frequency.glade:334 -#, fuzzy msgid "1st Thu" -msgstr "1" +msgstr "Kam ke-1" #: gnucash/gtkbuilder/gnc-frequency.glade:337 -#, fuzzy msgid "1st Fri" -msgstr "1" +msgstr "Jum ke-1" #: gnucash/gtkbuilder/gnc-frequency.glade:340 -#, fuzzy msgid "1st Sat" -msgstr "1" +msgstr "Sab ke-1" #: gnucash/gtkbuilder/gnc-frequency.glade:343 -#, fuzzy msgid "1st Sun" -msgstr "Min" +msgstr "Min ke-1" #: gnucash/gtkbuilder/gnc-frequency.glade:346 -#, fuzzy msgid "2nd Mon" -msgstr "Sen" +msgstr "Sen ke-2" #: gnucash/gtkbuilder/gnc-frequency.glade:349 -#, fuzzy msgid "2nd Tue" -msgstr "Sel" +msgstr "Sel ke-2" #: gnucash/gtkbuilder/gnc-frequency.glade:352 -#, fuzzy msgid "2nd Wed" -msgstr "Rab" +msgstr "Rab ke-2" #: gnucash/gtkbuilder/gnc-frequency.glade:355 -#, fuzzy msgid "2nd Thu" -msgstr "Kam" +msgstr "Kam ke-2" #: gnucash/gtkbuilder/gnc-frequency.glade:358 -#, fuzzy msgid "2nd Fri" -msgstr "Jum" +msgstr "Jum ke-2" #: gnucash/gtkbuilder/gnc-frequency.glade:361 -#, fuzzy msgid "2nd Sat" -msgstr "Sab" +msgstr "Sab ke-2" #: gnucash/gtkbuilder/gnc-frequency.glade:364 -#, fuzzy msgid "2nd Sun" -msgstr "Min" +msgstr "Min ke-2" #: gnucash/gtkbuilder/gnc-frequency.glade:367 -#, fuzzy msgid "3rd Mon" -msgstr "Sen" +msgstr "Sen ke-3" #: gnucash/gtkbuilder/gnc-frequency.glade:370 -#, fuzzy msgid "3rd Tue" -msgstr "Sel" +msgstr "Sel ke-3" #: gnucash/gtkbuilder/gnc-frequency.glade:373 -#, fuzzy msgid "3rd Wed" -msgstr "Rab" +msgstr "Rab ke-3" #: gnucash/gtkbuilder/gnc-frequency.glade:376 -#, fuzzy msgid "3rd Thu" -msgstr "Kam" +msgstr "Kam ke-3" #: gnucash/gtkbuilder/gnc-frequency.glade:379 -#, fuzzy msgid "3rd Fri" -msgstr "Jum" +msgstr "Jum ke-3" #: gnucash/gtkbuilder/gnc-frequency.glade:382 -#, fuzzy msgid "3rd Sat" -msgstr "Sab" +msgstr "Sab ke-3" #: gnucash/gtkbuilder/gnc-frequency.glade:385 -#, fuzzy msgid "3rd Sun" -msgstr "Min" +msgstr "Min ke-3" #: gnucash/gtkbuilder/gnc-frequency.glade:388 -#, fuzzy msgid "4th Mon" -msgstr "Sen" +msgstr "Sen ke-4" #: gnucash/gtkbuilder/gnc-frequency.glade:391 -#, fuzzy msgid "4th Tue" -msgstr "Sel" +msgstr "Sel ke-4" #: gnucash/gtkbuilder/gnc-frequency.glade:394 -#, fuzzy msgid "4th Wed" -msgstr "Rab" +msgstr "Rab ke-4" #: gnucash/gtkbuilder/gnc-frequency.glade:397 -#, fuzzy msgid "4th Thu" -msgstr "Kam" +msgstr "Kam ke-4" #: gnucash/gtkbuilder/gnc-frequency.glade:400 -#, fuzzy msgid "4th Fri" -msgstr "Jum" +msgstr "Jum ke-4" #: gnucash/gtkbuilder/gnc-frequency.glade:403 -#, fuzzy msgid "4th Sat" -msgstr "Sab" +msgstr "Sab ke-4" #: gnucash/gtkbuilder/gnc-frequency.glade:406 -#, fuzzy msgid "4th Sun" -msgstr "Min" +msgstr "Min ke-4" #: gnucash/gtkbuilder/gnc-frequency.glade:648 -#, fuzzy msgid "Not scheduled" -msgstr "dijadwalkan setelah" +msgstr "Tak terjadwal" #: gnucash/gtkbuilder/gnc-frequency.glade:672 -#, fuzzy msgid "Select occurrence date above." -msgstr "Pilih lapisan di atas lapisan yang saat ini" +msgstr "Pilih tanggal kejadian di atas." #: gnucash/gtkbuilder/gnc-frequency.glade:709 -#, fuzzy msgctxt "Daily" msgid "Every" msgstr "Setiap" #: gnucash/gtkbuilder/gnc-frequency.glade:740 -#, fuzzy msgctxt "Daily" msgid "days." -msgstr "Hari" +msgstr "hari." #: gnucash/gtkbuilder/gnc-frequency.glade:786 -#, fuzzy msgctxt "Weekly" msgid "Every" msgstr "Setiap" #: gnucash/gtkbuilder/gnc-frequency.glade:817 -#, fuzzy msgctxt "Weekly" msgid "weeks." -msgstr "minggu" +msgstr "minggu." #: gnucash/gtkbuilder/gnc-frequency.glade:851 #: gnucash/report/reports/example/daily-reports.scm:192 -#, fuzzy msgid "Saturday" msgstr "Sabtu" #: gnucash/gtkbuilder/gnc-frequency.glade:866 #: gnucash/report/reports/example/daily-reports.scm:192 -#, fuzzy msgid "Friday" msgstr "Jumat" #: gnucash/gtkbuilder/gnc-frequency.glade:881 #: gnucash/report/reports/example/daily-reports.scm:191 -#, fuzzy msgid "Wednesday" msgstr "Rabu" #: gnucash/gtkbuilder/gnc-frequency.glade:896 #: gnucash/report/reports/example/daily-reports.scm:192 -#, fuzzy msgid "Thursday" msgstr "Kamis" #: gnucash/gtkbuilder/gnc-frequency.glade:911 #: gnucash/report/reports/example/daily-reports.scm:190 -#, fuzzy msgid "Sunday" msgstr "Minggu" #: gnucash/gtkbuilder/gnc-frequency.glade:926 #: gnucash/report/reports/example/daily-reports.scm:190 -#, fuzzy msgid "Monday" msgstr "Senin" #: gnucash/gtkbuilder/gnc-frequency.glade:941 #: gnucash/report/reports/example/daily-reports.scm:191 -#, fuzzy msgid "Tuesday" msgstr "Selasa" #: gnucash/gtkbuilder/gnc-frequency.glade:1021 -#, fuzzy msgctxt "Semimonthly" msgid "Every" msgstr "Setiap" #: gnucash/gtkbuilder/gnc-frequency.glade:1051 -#, fuzzy msgctxt "Semimonthly" msgid "months." -msgstr "bulan" +msgstr "bulan." #: gnucash/gtkbuilder/gnc-frequency.glade:1076 -#, fuzzy msgid "First on the" -msgstr "_Depan:" +msgstr "Pertama pada" #: gnucash/gtkbuilder/gnc-frequency.glade:1109 #: gnucash/gtkbuilder/gnc-frequency.glade:1186 #: gnucash/gtkbuilder/gnc-frequency.glade:1356 -#, fuzzy msgid "except on weekends" -msgstr "Akhir minggu" +msgstr "kecuali akhir pekan" #: gnucash/gtkbuilder/gnc-frequency.glade:1153 msgid "then on the" -msgstr "" +msgstr "kemudian pada" #: gnucash/gtkbuilder/gnc-frequency.glade:1265 -#, fuzzy msgctxt "Monthly" msgid "Every" msgstr "Setiap" #: gnucash/gtkbuilder/gnc-frequency.glade:1297 -#, fuzzy msgctxt "Monthly" msgid "months." -msgstr "bulan" +msgstr "bulan." #: gnucash/gtkbuilder/gnc-frequency.glade:1323 msgid "On the" -msgstr "" +msgstr "Pada" #: gnucash/gtkbuilder/gnc-plugin-page-budget.glade:15 msgid "Edit budget for all periods" msgstr "Sunting anggaran untuk semua periode" #: gnucash/gtkbuilder/gnc-plugin-page-budget.glade:116 -#, fuzzy msgid "Replace" -msgstr "Gantikan" +msgstr "Ganti" #: gnucash/gtkbuilder/gnc-plugin-page-budget.glade:120 msgid "" @@ -18659,10 +18866,9 @@ msgid "" "unset budget for the accounts." msgstr "" "Ganti anggaran untuk semua periode dengan 'nilai' baru. Gunakan nilai kosong " -"untuk menghapus setelan anggaran untuk suatu akun." +"untuk menghapus pengaturan anggaran untuk suatu akun." #: gnucash/gtkbuilder/gnc-plugin-page-budget.glade:133 -#, fuzzy msgid "Add" msgstr "Tambah" @@ -18671,9 +18877,8 @@ msgid "Add 'value' to current budget for each period" msgstr "Tambahkan 'nilai' ke anggaran saat ini untuk tiap periode" #: gnucash/gtkbuilder/gnc-plugin-page-budget.glade:151 -#, fuzzy msgid "Multiply" -msgstr "Melipat-gandakan" +msgstr "Kali" #: gnucash/gtkbuilder/gnc-plugin-page-budget.glade:155 msgid "Multiply current budget for each period by 'value'" @@ -18682,17 +18887,16 @@ msgstr "Kalikan anggaran saat ini untuk setiap periode dengan 'nilai'" #: gnucash/gtkbuilder/gnc-plugin-page-budget.glade:177 #: gnucash/gtkbuilder/gnc-plugin-page-budget.glade:316 msgid "The number of leading digits to keep when rounding" -msgstr "" +msgstr "Jumlah digit awal yang harus dipertahankan saat pembulatan" #: gnucash/gtkbuilder/gnc-plugin-page-budget.glade:196 #: gnucash/gtkbuilder/gnc-plugin-page-budget.glade:334 -#, fuzzy msgid "Significant Digits" -msgstr "Dijit:" +msgstr "Digit Signifikan" #: gnucash/gtkbuilder/gnc-plugin-page-budget.glade:208 msgid "Use a fixed value or apply transformation for all periods." -msgstr "" +msgstr "Gunakan nilai tetap atau terapkan transformasi untuk semua periode." #: gnucash/gtkbuilder/gnc-plugin-page-budget.glade:240 msgid "Estimate Budget Values" @@ -18701,6 +18905,8 @@ msgstr "Perkirakan Nilai Anggaran" #: gnucash/gtkbuilder/gnc-plugin-page-budget.glade:303 msgid "Use the average value over all actual periods for all projected periods" msgstr "" +"Gunakan nilai rata-rata selama semua periode aktual untuk semua periode yang " +"diproyeksikan" #: gnucash/gtkbuilder/gnc-plugin-page-budget.glade:372 msgid "" @@ -18711,9 +18917,8 @@ msgstr "" "transaksi-transaksi sebelumnya." #: gnucash/gtkbuilder/gnc-plugin-page-budget.glade:389 -#, fuzzy msgid "Use Average" -msgstr "Rata-rata:" +msgstr "Gunakan Rata-rata" #: gnucash/gtkbuilder/gnc-plugin-page-budget.glade:422 #: gnucash/gtkbuilder/gnc-plugin-page-budget.glade:683 @@ -18725,9 +18930,8 @@ msgid "Budget Name" msgstr "Nama Anggaran" #: gnucash/gtkbuilder/gnc-plugin-page-budget.glade:552 -#, fuzzy msgid "Number of Periods" -msgstr "_Cacah Perioda:" +msgstr "Jumlah Periode" #: gnucash/gtkbuilder/gnc-plugin-page-budget.glade:582 msgid "Budget Period" @@ -18736,18 +18940,18 @@ msgstr "Periode Anggaran" #: gnucash/gtkbuilder/gnc-plugin-page-budget.glade:634 #: gnucash/report/reports/standard/general-ledger.scm:126 #: gnucash/report/trep-engine.scm:65 gnucash/report/trep-engine.scm:1103 -#, fuzzy msgid "Show Account Code" -msgstr "kode akun" +msgstr "Tampilkan Kode Akun" #: gnucash/gtkbuilder/gnc-plugin-page-budget.glade:658 -#, fuzzy msgid "Show Description" -msgstr "Keterangan Bagi" +msgstr "Tampilkan Deskripsi" #: gnucash/gtkbuilder/gnc-plugin-page-budget.glade:700 msgid "Note: Use View->'Filter By...' to control visible accounts." msgstr "" +"Catatan: Gunakan Lihat->'Filter Berdasar...' untuk mengatur akun yang " +"ditampilkan." #: gnucash/gtkbuilder/gnc-plugin-page-budget.glade:721 msgid "Budget List" @@ -18779,75 +18983,85 @@ msgstr "Masukkan Catatan" #. Duplicate Transaction Dialog #: gnucash/gtkbuilder/gnc-plugin-page-register2.glade:13 -#: gnucash/gtkbuilder/gnc-plugin-page-register.glade:917 +#: gnucash/gtkbuilder/gnc-plugin-page-register.glade:565 msgid "Duplicate Transaction" msgstr "Gandakan Transaksi" -#: gnucash/gtkbuilder/gnc-plugin-page-register2.glade:93 -#: gnucash/gtkbuilder/gnc-plugin-page-register.glade:999 -msgid "_Number" -msgstr "_Nomor" - -#: gnucash/gtkbuilder/gnc-plugin-page-register2.glade:144 -#: gnucash/gtkbuilder/gnc-plugin-page-register.glade:1105 +#: gnucash/gtkbuilder/gnc-plugin-page-register2.glade:73 +#: gnucash/gtkbuilder/gnc-plugin-page-register.glade:624 msgid "New Transaction Information" msgstr "Informasi Transaksi Baru" +#: gnucash/gtkbuilder/gnc-plugin-page-register2.glade:108 +#: gnucash/gtkbuilder/gnc-plugin-page-register.glade:661 +msgid "_Number" +msgstr "_Nomor" + +#: gnucash/gtkbuilder/gnc-plugin-page-register2.glade:146 +#: gnucash/gtkbuilder/gnc-plugin-page-register.glade:689 +msgid "_Transaction Number" +msgstr "Nomor _Transaksi" + +#: gnucash/gtkbuilder/gnc-plugin-page-register2.glade:161 +#: gnucash/gtkbuilder/gnc-plugin-page-register.glade:719 +msgid "Keep Linked Document Entry" +msgstr "Pertahankan Entri Dokumen Tertaut" + #. Filter register by... Dialog -#: gnucash/gtkbuilder/gnc-plugin-page-register2.glade:166 +#: gnucash/gtkbuilder/gnc-plugin-page-register2.glade:213 #: gnucash/gtkbuilder/gnc-plugin-page-register.glade:13 msgid "Filter register by..." msgstr "Filter register berdasar..." #. Filter By Dialog, Date Tab -#: gnucash/gtkbuilder/gnc-plugin-page-register2.glade:233 +#: gnucash/gtkbuilder/gnc-plugin-page-register2.glade:280 #: gnucash/gtkbuilder/gnc-plugin-page-register.glade:80 msgid "Show _All" msgstr "Tampilkan Semu_a" -#: gnucash/gtkbuilder/gnc-plugin-page-register2.glade:249 +#: gnucash/gtkbuilder/gnc-plugin-page-register2.glade:296 msgid "Select Range:" msgstr "Pilih Rentang:" -#: gnucash/gtkbuilder/gnc-plugin-page-register2.glade:302 +#: gnucash/gtkbuilder/gnc-plugin-page-register2.glade:349 #: gnucash/gtkbuilder/gnc-plugin-page-register.glade:193 msgid "Choo_se Date" msgstr "Pili_h Tanggal" #. Filter By Dialog, State Tab -#: gnucash/gtkbuilder/gnc-plugin-page-register2.glade:495 +#: gnucash/gtkbuilder/gnc-plugin-page-register2.glade:542 #: gnucash/gtkbuilder/gnc-plugin-page-register.glade:386 msgid "_Unreconciled" -msgstr "" +msgstr "Tak-direk_onsiliasi" -#: gnucash/gtkbuilder/gnc-plugin-page-register2.glade:527 +#: gnucash/gtkbuilder/gnc-plugin-page-register2.glade:574 #: gnucash/gtkbuilder/gnc-plugin-page-register.glade:418 msgid "C_leared" -msgstr "" +msgstr "K_lir" -#: gnucash/gtkbuilder/gnc-plugin-page-register2.glade:543 +#: gnucash/gtkbuilder/gnc-plugin-page-register2.glade:590 #: gnucash/gtkbuilder/gnc-plugin-page-register.glade:434 msgid "_Voided" msgstr "_Dibatalkan" -#: gnucash/gtkbuilder/gnc-plugin-page-register2.glade:559 +#: gnucash/gtkbuilder/gnc-plugin-page-register2.glade:606 #: gnucash/gtkbuilder/gnc-plugin-page-register.glade:450 msgid "_Frozen" msgstr "Di_bekukan" #. Filter By Dialog, below tabs -#: gnucash/gtkbuilder/gnc-plugin-page-register2.glade:638 +#: gnucash/gtkbuilder/gnc-plugin-page-register2.glade:685 #: gnucash/gtkbuilder/gnc-plugin-page-register.glade:529 msgid "Sa_ve Filter" msgstr "Si_mpan Filter" -#: gnucash/gtkbuilder/gnc-plugin-page-register2.glade:674 -#: gnucash/gtkbuilder/gnc-plugin-page-register.glade:1127 +#: gnucash/gtkbuilder/gnc-plugin-page-register2.glade:721 +#: gnucash/gtkbuilder/gnc-plugin-page-register.glade:1111 msgid "Void Transaction" msgstr "Batalkan Transaksi" -#: gnucash/gtkbuilder/gnc-plugin-page-register2.glade:738 -#: gnucash/gtkbuilder/gnc-plugin-page-register.glade:1191 +#: gnucash/gtkbuilder/gnc-plugin-page-register2.glade:785 +#: gnucash/gtkbuilder/gnc-plugin-page-register.glade:1175 msgid "Reason for voiding transaction" msgstr "Alasan untuk membatalkan transaksi" @@ -18864,101 +19078,93 @@ msgstr "" "Jika 0, semua hari sebelumnya akan disertakan" #. Sort register by Dialog -#: gnucash/gtkbuilder/gnc-plugin-page-register.glade:570 +#: gnucash/gtkbuilder/gnc-plugin-page-register.glade:769 msgid "Sort register by..." msgstr "Urutkan register berdasar..." -#: gnucash/gtkbuilder/gnc-plugin-page-register.glade:633 +#: gnucash/gtkbuilder/gnc-plugin-page-register.glade:832 msgid "_Standard Order" msgstr "Urutan _Standar" -#: gnucash/gtkbuilder/gnc-plugin-page-register.glade:637 +#: gnucash/gtkbuilder/gnc-plugin-page-register.glade:836 msgid "Keep normal account order." msgstr "Pertahankan urutan akun normal." -#: gnucash/gtkbuilder/gnc-plugin-page-register.glade:666 +#: gnucash/gtkbuilder/gnc-plugin-page-register.glade:865 #: gnucash/report/trep-engine.scm:162 msgid "Sort by date." msgstr "Urutkan berdasar tanggal." -#: gnucash/gtkbuilder/gnc-plugin-page-register.glade:685 +#: gnucash/gtkbuilder/gnc-plugin-page-register.glade:884 msgid "Sort by the date of entry." msgstr "Urutkan berdasar tanggal entri." -#: gnucash/gtkbuilder/gnc-plugin-page-register.glade:700 +#: gnucash/gtkbuilder/gnc-plugin-page-register.glade:899 msgid "S_tatement Date" msgstr "Tanggal Pernya_taan" -#: gnucash/gtkbuilder/gnc-plugin-page-register.glade:704 +#: gnucash/gtkbuilder/gnc-plugin-page-register.glade:903 msgid "" "Sort by the statement date (and group by cleared, unreconciled, reconciled)." msgstr "" -"Urutkan berdasar tanggal pernyataan (dan kelompokkan berdasar selesai, tak-" +"Urutkan berdasar tanggal pernyataan (dan kelompokkan berdasar klir, tak-" "direkonsiliasi, direkonsiliasi)." -#: gnucash/gtkbuilder/gnc-plugin-page-register.glade:719 +#: gnucash/gtkbuilder/gnc-plugin-page-register.glade:918 msgid "Num_ber" msgstr "No_mor" -#: gnucash/gtkbuilder/gnc-plugin-page-register.glade:723 +#: gnucash/gtkbuilder/gnc-plugin-page-register.glade:922 msgid "Sort by number." msgstr "Urutkan berdasar nomor." -#: gnucash/gtkbuilder/gnc-plugin-page-register.glade:738 +#: gnucash/gtkbuilder/gnc-plugin-page-register.glade:937 msgid "Amo_unt" msgstr "J_umlah" -#: gnucash/gtkbuilder/gnc-plugin-page-register.glade:742 +#: gnucash/gtkbuilder/gnc-plugin-page-register.glade:941 #: gnucash/report/trep-engine.scm:208 msgid "Sort by amount." msgstr "Urutkan berdasar jumlah." -#: gnucash/gtkbuilder/gnc-plugin-page-register.glade:761 +#: gnucash/gtkbuilder/gnc-plugin-page-register.glade:960 #: gnucash/report/trep-engine.scm:245 msgid "Sort by memo." msgstr "Urutkan berdasar memo." -#: gnucash/gtkbuilder/gnc-plugin-page-register.glade:780 +#: gnucash/gtkbuilder/gnc-plugin-page-register.glade:979 #: gnucash/report/trep-engine.scm:216 msgid "Sort by description." msgstr "Urutkan berdasar deskripsi." -#: gnucash/gtkbuilder/gnc-plugin-page-register.glade:795 +#: gnucash/gtkbuilder/gnc-plugin-page-register.glade:994 msgid "_Action" msgstr "_Aksi" -#: gnucash/gtkbuilder/gnc-plugin-page-register.glade:799 +#: gnucash/gtkbuilder/gnc-plugin-page-register.glade:998 msgid "Sort by action field." msgstr "Urutkan berdasar bidang aksi." -#: gnucash/gtkbuilder/gnc-plugin-page-register.glade:818 +#: gnucash/gtkbuilder/gnc-plugin-page-register.glade:1017 msgid "Sort by notes field." msgstr "Urutkan berdasar bidang catatan." -#: gnucash/gtkbuilder/gnc-plugin-page-register.glade:849 +#: gnucash/gtkbuilder/gnc-plugin-page-register.glade:1048 msgid "Sa_ve Sort Order" msgstr "Si_mpan Urutan Sortir" -#: gnucash/gtkbuilder/gnc-plugin-page-register.glade:853 +#: gnucash/gtkbuilder/gnc-plugin-page-register.glade:1052 msgid "Save the sort order for this register." msgstr "Simpan urutan sortir untuk register ini." -#: gnucash/gtkbuilder/gnc-plugin-page-register.glade:869 +#: gnucash/gtkbuilder/gnc-plugin-page-register.glade:1068 msgid "_Reverse Order" msgstr "Balik U_rutan" -#: gnucash/gtkbuilder/gnc-plugin-page-register.glade:873 +#: gnucash/gtkbuilder/gnc-plugin-page-register.glade:1072 msgid "Sort in descending order." msgstr "Urutkan secara terbalik." -#: gnucash/gtkbuilder/gnc-plugin-page-register.glade:1042 -msgid "_Transaction Number" -msgstr "Nomor _Transaksi" - -#: gnucash/gtkbuilder/gnc-plugin-page-register.glade:1086 -msgid "Keep Linked Document Entry" -msgstr "Pertahankan Entri Dokumen Tertaut" - #: gnucash/gtkbuilder/gnc-recurrence.glade:12 msgid "day(s)" msgstr "hari" @@ -19008,24 +19214,60 @@ msgid "" "Match the \"day of week\" and \"week of month\"? (for example, the \"second " "Tuesday\" of every month)" msgstr "" +"Cocokkan \"hari dalam minggu\" dan \"minggu dalam bulan\"? (Misalnya, " +"\"Selasa kedua\" setiap bulan)" #: gnucash/gtkbuilder/gnc-tree-view-owner.glade:62 msgid "Only show _active owners" msgstr "Hanya tampilkan pemilik _aktif" #: gnucash/gtkbuilder/gnc-tree-view-owner.glade:79 +#, fuzzy msgid "Show _zero balance owners" -msgstr "" +msgstr "Tampilkan _zero pemilik keseimbangan" #: gnucash/gtkbuilder/window-autoclear.glade:71 -msgid "Auto-Clear Information" +#, fuzzy +#| msgid "Auto-clear" +msgid "About Auto-Clear" +msgstr "Klir-otomatis" + +#: gnucash/gtkbuilder/window-autoclear.glade:86 +msgid "" +"Use this dialog if you want GnuCash to automatically find which transactions " +"are cleared, given an ending balance. For example, said ending balance can " +"be the current balance given by your bank online." msgstr "" -#: gnucash/gtkbuilder/window-autoclear.glade:92 +#: gnucash/gtkbuilder/window-autoclear.glade:101 +msgid "Caution!" +msgstr "Peringatan!" + +#: gnucash/gtkbuilder/window-autoclear.glade:116 +msgid "" +"This tool might be slow or abort if the number of uncleared splits is more " +"than approximately 20. In that case please clear at least some of them " +"manually." +msgstr "" +"Alat ini mungkin akan berjalan lambat atau gagal jika jumlah split yang " +"belum klir lebih dari sekitar 20. Jika itu terjadi, lakukan klir pada " +"beberapa split secara manual." + +#: gnucash/gtkbuilder/window-autoclear.glade:138 #: gnucash/gtkbuilder/window-reconcile.glade:117 msgid "_Ending Balance" msgstr "Sal_do Akhir" +#: gnucash/gtkbuilder/window-autoclear.glade:177 +msgid "_Review cleared splits" +msgstr "Tinjau split yang kli_r" + +#: gnucash/gtkbuilder/window-autoclear.glade:181 +msgid "Select this option to open a register tab with newly cleared splits." +msgstr "" +"Pilih opsi ini untuk membuka sebuah tab register dengan split yang baru saja " +"diklirkan." + #: gnucash/gtkbuilder/window-reconcile.glade:71 msgid "Reconcile Information" msgstr "Informasi Rekonsiliasi" @@ -19043,6 +19285,8 @@ msgid "" "Include all descendant accounts in the reconcile. All of them must use the " "same commodity as this one." msgstr "" +"Sertakan semua akun turunan di rekonsiliasi. Semuanya harus menggunakan " +"komoditas yang sama dengan akun ini." #: gnucash/gtkbuilder/window-reconcile.glade:257 msgid "Statement Date is after today" @@ -19149,6 +19393,37 @@ msgid "" "\n" "Click on \"Next\" to proceed or \"Cancel\" to Abort Import." msgstr "" +"\n" +"Anda harus terlebih dahulu mengajukan permohonan untuk akses Perbankan " +"Daring di bank Anda. Jika bank Anda memberikan Anda akses elektronik, mereka " +"akan mengirimkan surat yang berisi \n" +"\n" +"* Kode bank Anda\n" +"* ID pengguna yang mengidentifikasi Anda ke bank Anda\n" +"* Alamat Internet penyedia layanan Perbankan Daring bank Anda\n" +"* Untuk Perbankan Daring HBCI, informasi tentang kunci publik kriptografi " +"bank Anda ( \"Ini-Letter\").\n" +"\n" +"Informasi ini akan dibutuhkan pada langkah berikutnya. Tekan \"Berikutnya\" " +"sekarang.\n" +"\n" +"CATATAN: TIDAK ADA JAMINAN UNTUK APAPUN. Beberapa bank menjalankan layanan " +"Perbankan Daring yang diimplementasikan secara buruk. Jangan menggantungkan " +"transfer waktu-kritis melalui Perbankan Daring, karena kadang-kadang bank " +"tidak memberikan umpan balik yang benar ketika transfer ditolak.\n" +"\n" +"Tekan \"Batal\" jika Anda tidak ingin menyiapkan koneksi Perbankan Daring " +"sekarang.\n" +"\n" +"Terakhir, untuk impor berulang, halaman pratinjau memiliki tombol Muat dan " +"Simpan pengaturan. Untuk menyimpan pengaturan, sesuaikan pengaturan dengan " +"preferensi Anda (opsional mulai dari preset yang ada), maka (opsional ubah " +"nama pengaturan dan tekan tombol Simpan Pengaturan). Perhatikan bahwa Anda " +"tidak dapat menyimpan ke preset bawaan.\n" +"\n" +"Operasi ini tidak reversibel, jadi pastikan Anda memiliki berkas cadangan.\n" +"\n" +"Klik \"Berikutnya\" untuk melanjutkan atau \"Batal\" untuk membatalkan Impor." #: gnucash/import-export/aqb/assistant-ab-initial.glade:76 msgid "Initial Online Banking Setup" @@ -19201,14 +19476,22 @@ msgid "" "\n" "Press \"Apply\" now." msgstr "" +"Penyiapan untuk pencocokan akun Perbankan Daring ke akun GnuCash telah " +"selesai. Sekarang Anda dapat meminta aksi Perbankan Daring pada akun " +"tersebut.\n" +"\n" +"Jika Anda ingin menambahkan bank, pengguna, atau akun yang lain, Anda dapat " +"memulai asisten ini lagi kapan saja.\n" +"\n" +"Tekan \"Terapkan\" sekarang." #: gnucash/import-export/aqb/assistant-ab-initial.glade:233 msgid "Online Banking Setup Finished" -msgstr "" +msgstr "Penyiapan Perbankan Daring Selesai" #: gnucash/import-export/aqb/dialog-ab.glade:8 msgid "Online Banking Connection Window" -msgstr "" +msgstr "Jendela Sambungan Perbankan Daring" #: gnucash/import-export/aqb/dialog-ab.glade:26 msgid "_Abort" @@ -19362,14 +19645,12 @@ msgid "Payment Purpose continued" msgstr "Tujuan Pembayaran lanjutan" #: gnucash/import-export/aqb/dialog-ab.glade:1133 -#, fuzzy msgid "_Originator Name" -msgstr "Tidak ada nama" +msgstr "Nama _Originator" #: gnucash/import-export/aqb/dialog-ab.glade:1185 -#, fuzzy msgid "Originator Account Number" -msgstr "Angka" +msgstr "Nomor Akun Originator" #: gnucash/import-export/aqb/dialog-ab.glade:1209 msgid "Bank Code" @@ -19473,6 +19754,10 @@ msgid "" "this option, the transaction text is used for the transaction description " "too." msgstr "" +"Beberapa bank menempatkan bagian dari deskripsi transaksi sebagai \"teks " +"transaksi\" di berkas MT940. Biasanya GnuCash mengabaikan teks ini. Namun " +"dengan mengaktifkan opsi ini, teks transaksi juga akan digunakan untuk " +"deskripsi transaksi." #: gnucash/import-export/aqb/dialog-ab-trans.c:294 #: gnucash/import-export/aqb/dialog-ab-trans.c:303 @@ -19495,49 +19780,54 @@ msgstr "Masukkan sebuah Transfer Daring SEPA" #: gnucash/import-export/aqb/dialog-ab-trans.c:379 msgid "Recipient IBAN (International Account Number)" -msgstr "" +msgstr "IBAN (Nomor Akun Internasional) Penerima" #: gnucash/import-export/aqb/dialog-ab-trans.c:381 msgid "Recipient BIC (Bank Code)" -msgstr "" +msgstr "BIC (Kode Bank) Penerima" #: gnucash/import-export/aqb/dialog-ab-trans.c:384 msgid "Originator IBAN (International Account Number)" -msgstr "" +msgstr "IBAN (Nomor Akun Internasional) Originator" #: gnucash/import-export/aqb/dialog-ab-trans.c:386 msgid "Originator BIC (Bank Code)" -msgstr "" +msgstr "BIC (Kode Bank) Originator" #: gnucash/import-export/aqb/dialog-ab-trans.c:395 +#, fuzzy msgid "Enter a SEPA Online Direct Debit Note" -msgstr "" +msgstr "Masukkan SEPA online Direct Debit Note" #: gnucash/import-export/aqb/dialog-ab-trans.c:398 #, fuzzy msgid "Debited Account Owner" -msgstr "Pemilik" +msgstr "Didebit Pemilik Rekening" #: gnucash/import-export/aqb/dialog-ab-trans.c:400 +#, fuzzy msgid "Debited IBAN (International Account Number)" -msgstr "" +msgstr "Didebit IBAN (International Nomor Rekening)" #: gnucash/import-export/aqb/dialog-ab-trans.c:402 +#, fuzzy msgid "Debited BIC (Bank Code)" -msgstr "" +msgstr "Didebit BIC (Kode Bank)" #: gnucash/import-export/aqb/dialog-ab-trans.c:405 #, fuzzy msgid "Credited Account Owner" -msgstr "Pemilik" +msgstr "Dikreditkan Pemilik Akun" #: gnucash/import-export/aqb/dialog-ab-trans.c:407 +#, fuzzy msgid "Credited IBAN (International Account Number)" -msgstr "" +msgstr "Dikreditkan IBAN (International Nomor Rekening)" #: gnucash/import-export/aqb/dialog-ab-trans.c:409 +#, fuzzy msgid "Credited BIC (Bank Code)" -msgstr "" +msgstr "Dikreditkan BIC (Kode Bank)" #: gnucash/import-export/aqb/dialog-ab-trans.c:494 #, c-format @@ -19545,6 +19835,8 @@ msgid "" "The internal check of the destination IBAN '%s' failed. This means the " "account number might contain an error." msgstr "" +"Pemeriksaan internal untuk tujuan IBAN '%s' gagal. Ini berarti nomor akun " +"mungkin mengandung kesalahan." #: gnucash/import-export/aqb/dialog-ab-trans.c:549 #, c-format @@ -19555,24 +19847,35 @@ msgid "" "execute the command line program \"aqhbci-tool\" for your account, as " "follows: aqhbci-tool4 getaccsepa -b %s -a %s" msgstr "" +"Akun bank lokal Anda belum memiliki informasi akun SEPA yang tersimpan. Kami " +"mohon maaf, namun pada versi pengembangan ini, diperlukan satu langkah " +"tambahan yang belum diimplementasikan secara langsung di gnucash. Silakan " +"menjalankan perintah program \"aqhbci-tool\" untuk akun Anda, sebagai " +"berikut: aqhbci-tool4 getaccsepa -b %s -a %s" #: gnucash/import-export/aqb/dialog-ab-trans.c:564 msgid "" "You did not enter a recipient name. A recipient name is required for an " "online transfer.\n" msgstr "" +"Anda tidak memasukkan nama penerima. Nama penerima diperlukan untuk sebuah " +"transfer daring.\n" #: gnucash/import-export/aqb/dialog-ab-trans.c:584 msgid "" "You did not enter a recipient account. A recipient account is required for " "an online transfer.\n" msgstr "" +"Anda tidak memasukkan akun penerima. Akun penerima diperlukan untuk sebuah " +"transfer daring.\n" #: gnucash/import-export/aqb/dialog-ab-trans.c:600 msgid "" "You did not enter a recipient bank. A recipient bank is required for an " "online transfer.\n" msgstr "" +"Anda tidak memasukkan bank penerima. Bank penerima diperlukan untuk sebuah " +"transfer daring.\n" #: gnucash/import-export/aqb/dialog-ab-trans.c:618 msgid "" @@ -19580,22 +19883,29 @@ msgid "" "You might have mixed up decimal point and comma, compared to your locale " "settings. This does not result in a valid online transfer job." msgstr "" +"Jumlahnya nol atau bidang jumlah tidak dapat diinterpretasikan secara benar. " +"Anda mungkin mencampurkan titik dan koma desimal, yang tidak sesuai dengan " +"pengaturan lokal Anda. Ini tidak menghasilkan pekerjaan transfer daring yang " +"valid." #: gnucash/import-export/aqb/dialog-ab-trans.c:635 msgid "" "You did not enter any transaction purpose. A purpose is required for an " "online transfer.\n" msgstr "" +"Anda tidak memasukkan keperluan transaksi. Keperluan transaksi diperlukan " +"untuk sebuah transfer daring.\n" #: gnucash/import-export/aqb/dialog-ab-trans.c:1047 msgid "" "A template with the given name already exists. Please enter another name." msgstr "" +"Sebuah templat dengan nama yang sama sudah ada. Silakan memasukkan nama lain." #: gnucash/import-export/aqb/dialog-ab-trans.c:1182 #, c-format msgid "Do you really want to delete the template with the name \"%s\"?" -msgstr "" +msgstr "Apakah Anda yakin ingin menghapus templat dengan nama \"%s\"?" #: gnucash/import-export/aqb/gnc-ab-getbalance.c:86 #: gnucash/import-export/aqb/gnc-ab-gettrans.c:137 @@ -19605,7 +19915,7 @@ msgstr "Tak ada akun bank daring yang valid yang ditetapkan." #: gnucash/import-export/aqb/gnc-ab-getbalance.c:100 msgid "Online action \"Get Balance\" not available for this account." -msgstr "" +msgstr "Aksi daring \"Dapatkan Saldo\" tak tersedia untuk akun ini." #: gnucash/import-export/aqb/gnc-ab-getbalance.c:150 #, c-format @@ -19672,22 +19982,34 @@ msgid "" "\n" "Do you want to enter the job again?" msgstr "" +"Backend menemukan kesalahan selama persiapan tugas, sehingga tidak " +"memungkinkan untuk mengeksekusi tugas ini.\n" +"\n" +"Kemungkinan besar bank tidak mendukung tugas yang Anda pilih atau akun " +"Perbankan Daring Anda tidak memiliki izin untuk mengeksekusi tugas ini. " +"Pesan kesalahan lebih lengkap mungkin terlihat pada log konsol Anda.\n" +"\n" +"Apakah Anda ingin memasukkan tugas ini lagi?" #: gnucash/import-export/aqb/gnc-ab-transfer.c:210 +#, fuzzy msgid "Online Banking Direct Debit Note" -msgstr "" +msgstr "Online Banking Direct Debit Note" #: gnucash/import-export/aqb/gnc-ab-transfer.c:215 +#, fuzzy msgid "Online Banking Bank-Internal Transfer" -msgstr "" +msgstr "Alih Online Banking Bank-internal" #: gnucash/import-export/aqb/gnc-ab-transfer.c:220 +#, fuzzy msgid "Online Banking European (SEPA) Transfer" -msgstr "" +msgstr "Secara online Perbankan Eropa (SEPA) transfer" #: gnucash/import-export/aqb/gnc-ab-transfer.c:225 +#, fuzzy msgid "Online Banking European (SEPA) Debit Note" -msgstr "" +msgstr "Secara online Perbankan Eropa (SEPA) Debit Note" #: gnucash/import-export/aqb/gnc-ab-transfer.c:231 msgid "Online Banking Transaction" @@ -19711,7 +20033,7 @@ msgid "Unspecified" msgstr "Tak ditentukan" #: gnucash/import-export/aqb/gnc-ab-utils.c:543 -#: gnucash/report/report-utilities.scm:102 libgnucash/engine/Account.cpp:4314 +#: gnucash/report/report-utilities.scm:114 libgnucash/engine/Account.cpp:4361 msgid "Bank" msgstr "Bank" @@ -19726,24 +20048,38 @@ msgid "" "\n" "Do you want to enter the job again?" msgstr "" +"Backend menemukan kesalahan selama persiapan tugas, sehingga tidak " +"memungkinkan untuk mengeksekusi tugas ini.\n" +"\n" +"Kemungkinan besar bank tidak mendukung tugas yang Anda pilih atau akun " +"Perbankan Daring Anda tidak memiliki izin untuk mengeksekusi tugas ini. " +"Pesan kesalahan lebih lengkap mungkin terlihat pada log konsol Anda.\n" +"\n" +"Apakah Anda ingin memasukkan tugas ini lagi?" #: gnucash/import-export/aqb/gnc-ab-utils.c:913 msgid "" "The bank has sent transaction information in its response.\n" "Do you want to import it?" msgstr "" +"Bank telah mengirim informasi transaksi pada responnya.\n" +"Apakah Anda ingin mengimpornya?" #: gnucash/import-export/aqb/gnc-ab-utils.c:940 msgid "" "No Online Banking account found for this gnucash account. These transactions " "will not be executed by Online Banking." msgstr "" +"Tak ada akun Perbankan Daring yang ditemukan untuk akun gnucash ini. " +"Transaksi tersebut tidak akan dijalankan oleh Perbankan Daring." #: gnucash/import-export/aqb/gnc-ab-utils.c:1042 msgid "" "The bank has sent balance information in its response.\n" "Do you want to import it?" msgstr "" +"Bank telah mengirim informasi saldo pada responnya.\n" +"Apakah Anda ingin mengimpornya?" #. Translators: Strings from this file are needed only in #. * countries that have one of aqbanking's Online Banking @@ -19762,6 +20098,13 @@ msgid "" "(AqBanking or HBCI) Setup. After that, try again to download the Online " "Banking Balance." msgstr "" +"Saldo Perbankan Daring yang diunduh adalah nol.\n" +"\n" +"Mungkin saldo ini benar, atau bank Anda tidak mendukung unduhan Saldo di " +"versi Perbankan Daring ini. Untuk kasus terakhir, Anda harus memilih nomor " +"versi Perbankan Daring yang berbeda dalam Penyiapan Perbankan Daring " +"(AqBanking atau HBCI). Setelah itu, coba lagi untuk mengunduh Saldo " +"Perbankan Daring." #: gnucash/import-export/aqb/gnc-ab-utils.c:1156 #, c-format @@ -19769,26 +20112,28 @@ msgid "" "Result of Online Banking job: \n" "Account booked balance is %s" msgstr "" +"Hasil dari tugas Perbankan Daring:\n" +"Saldo akun yang dibukukan adalah %s" #: gnucash/import-export/aqb/gnc-ab-utils.c:1162 #, c-format msgid "For your information: This account also has a noted balance of %s\n" -msgstr "" +msgstr "Sebagai informasi: Akun ini juga memiliki saldo tercatat %s\n" #: gnucash/import-export/aqb/gnc-ab-utils.c:1169 msgid "" "The booked balance is identical to the current reconciled balance of the " "account." msgstr "" +"Saldo yang dibukukan sama dengan saldo akun yang direkonsiliasi saat ini." #: gnucash/import-export/aqb/gnc-ab-utils.c:1184 -#, fuzzy msgid "Reconcile account now?" -msgstr "penarikan" +msgstr "Rekonsiliasi akun sekarang?" #: gnucash/import-export/aqb/gnc-ab-utils.c:1279 msgid "The bank has sent a message in its response." -msgstr "" +msgstr "Bank telah mengirim sebuah pesan pada responnya." #: gnucash/import-export/aqb/gnc-ab-utils.c:1280 msgid "Subject:" @@ -19903,108 +20248,113 @@ msgstr "Dapatkan transaksi secara daring melalui Perbankan Daring" #: gnucash/import-export/aqb/gnc-plugin-aqbanking.c:113 #, fuzzy msgid "Issue _SEPA Transaction..." -msgstr "transaksi" +msgstr "Isu _SEPA Transaksi ..." #: gnucash/import-export/aqb/gnc-plugin-aqbanking.c:114 +#, fuzzy msgid "" "Issue a new international European (SEPA) transaction online through Online " "Banking" msgstr "" +"Mengeluarkan internasional Eropa (SEPA) transaksi baru secara online melalui " +"Online Banking" #: gnucash/import-export/aqb/gnc-plugin-aqbanking.c:118 -#, fuzzy msgid "_Internal Transaction..." -msgstr "transaksi" +msgstr "Transaksi _Internal..." #: gnucash/import-export/aqb/gnc-plugin-aqbanking.c:119 +#, fuzzy msgid "Issue a new bank-internal transaction online through Online Banking" msgstr "" +"Isu transaksi bank internal yang baru secara online melalui Online Banking" #: gnucash/import-export/aqb/gnc-plugin-aqbanking.c:123 #, fuzzy msgid "Issue SEPA Direct _Debit..." -msgstr "aksi: penarikan langsung" +msgstr "Isu SEPA langsung _Debit ..." #: gnucash/import-export/aqb/gnc-plugin-aqbanking.c:124 +#, fuzzy msgid "" "Issue a new international European (SEPA) direct debit note online through " "Online Banking" msgstr "" +"Mengeluarkan Eropa (SEPA) catatan debit langsung internasional baru secara " +"online melalui Online Banking" #. Translators: Message types MTxxxx are exchange formats used by the SWIFT network #. https://en.wikipedia.org/wiki/Society_for_Worldwide_Interbank_Financial_Telecommunication #: gnucash/import-export/aqb/gnc-plugin-aqbanking.c:133 -#, fuzzy msgid "Import _MT940" -msgstr "_Impor" +msgstr "Impor _MT940" #: gnucash/import-export/aqb/gnc-plugin-aqbanking.c:134 +#, fuzzy msgid "" "Import an end-of-day account statement in SWIFT MT940 format into GnuCash." -msgstr "" +msgstr "Impor pernyataan akhir-hari akun dalam format SWIFT MT940 ke GnuCash." #: gnucash/import-export/aqb/gnc-plugin-aqbanking.c:138 -#, fuzzy msgid "Import MT94_2" -msgstr "_Impor" +msgstr "Impor MT94_2" #: gnucash/import-export/aqb/gnc-plugin-aqbanking.c:139 +#, fuzzy msgid "Import an interim account statement in SWIFT MT942 format into GnuCash." msgstr "" +"Mengimpor laporan rekening interim dalam format SWIFT MT942 ke GnuCash." #. Translators: DTAUS is a traditional german exchange format. #. https://de.wikipedia.org/wiki/Datentr%C3%A4geraustauschverfahren #: gnucash/import-export/aqb/gnc-plugin-aqbanking.c:146 -#, fuzzy msgid "Import _DTAUS" -msgstr "_Impor" +msgstr "Impor _DTAUS" #: gnucash/import-export/aqb/gnc-plugin-aqbanking.c:147 +#, fuzzy msgid "Import a traditional german DTAUS file into GnuCash." -msgstr "" +msgstr "Mengimpor file DTAUS Jerman tradisional menjadi GnuCash." #: gnucash/import-export/aqb/gnc-plugin-aqbanking.c:159 -#, fuzzy msgid "Import DTAUS and _send..." -msgstr "Kirim Ke" +msgstr "Impor DTAU_S dan kirim..." #: gnucash/import-export/aqb/gnc-plugin-aqbanking.c:160 +#, fuzzy msgid "" "Import a DTAUS file into GnuCash and transmit its orders by Online Banking." msgstr "" +"Mengimpor file DTAUS ke GnuCash dan mengirimkan pesanan sebesar Online " +"Banking." #: gnucash/import-export/aqb/gnc-plugin-aqbanking.c:170 -#, fuzzy msgid "Show _log window" -msgstr "Tampilkan menu jendela" +msgstr "Tampilkan jendela _log" #: gnucash/import-export/aqb/gnc-plugin-aqbanking.c:171 msgid "Show the online banking log window." -msgstr "" +msgstr "Tampilkan jendela log perbankan daring." #: gnucash/import-export/aqb/gschemas/org.gnucash.dialogs.import.hbci.gschema.xml.in:15 -#, fuzzy msgid "Close window when finished" -msgstr "Tutup suatu jendela" +msgstr "Tutup jendela ketika selesai" #: gnucash/import-export/aqb/gschemas/org.gnucash.dialogs.import.hbci.gschema.xml.in:20 -#, fuzzy msgid "Remember the PIN in memory" -msgstr "Memori" +msgstr "Ingat PIN di memori" #: gnucash/import-export/aqb/gschemas/org.gnucash.dialogs.import.hbci.gschema.xml.in:25 msgid "Put the transaction text in front of the purpose of a transaction." -msgstr "" +msgstr "Letakkan teks transaksi di depan tujuan suatu transaksi." #: gnucash/import-export/aqb/gschemas/org.gnucash.dialogs.import.hbci.gschema.xml.in:30 -#, fuzzy msgid "Verbose HBCI debug messages" -msgstr "Aktifkan pesan awakutu" +msgstr "Pesan lengkap awakutu HBCI" #: gnucash/import-export/aqb/gschemas/org.gnucash.dialogs.import.hbci.gschema.xml.in:35 -#, fuzzy msgid "DTAUS import data format" -msgstr "Tak ada data untuk diimpor" +msgstr "Format data impor DTAUS" #: gnucash/import-export/aqb/gschemas/org.gnucash.dialogs.import.hbci.gschema.xml.in:36 msgid "" @@ -20012,11 +20362,13 @@ msgid "" "AqBanking library offers various import formats (called \"profiles\") of " "which you can choose one here." msgstr "" +"Pengaturan ini menentukan format data ketika mengimpor berkas DTAUS. Pustaka " +"AqBanking menyediakan berbagai format impor (disebut \"profil\") dimana Anda " +"dapat memilih salah satunya." #: gnucash/import-export/aqb/gschemas/org.gnucash.dialogs.import.hbci.gschema.xml.in:40 -#, fuzzy msgid "CSV import data format" -msgstr "Hanya mendukung format csv atau vcard." +msgstr "Format data impor CSV" #: gnucash/import-export/aqb/gschemas/org.gnucash.dialogs.import.hbci.gschema.xml.in:41 msgid "" @@ -20024,10 +20376,13 @@ msgid "" "AqBanking library offers various import formats (called \"profiles\") of " "which you can choose one here." msgstr "" +"Pengaturan ini menentukan format data ketika mengimpor berkas CSV. Pustaka " +"AqBanking menyediakan berbagai format impor (disebut \"profil\") dimana Anda " +"dapat memilih salah satunya." #: gnucash/import-export/aqb/gschemas/org.gnucash.dialogs.import.hbci.gschema.xml.in:45 msgid "SWIFT MT940 import data format" -msgstr "" +msgstr "Format data impor SWIFT MT940" #: gnucash/import-export/aqb/gschemas/org.gnucash.dialogs.import.hbci.gschema.xml.in:46 msgid "" @@ -20035,10 +20390,13 @@ msgid "" "AqBanking library offers various import formats (called \"profiles\") of " "which you can choose one here." msgstr "" +"Pengaturan ini menentukan format data ketika mengimpor berkas SWIFT MT940. " +"Pustaka AqBanking menyediakan berbagai format impor (disebut \"profil\") " +"dimana Anda dapat memilih salah satunya." #: gnucash/import-export/aqb/gschemas/org.gnucash.dialogs.import.hbci.gschema.xml.in:50 msgid "SWIFT MT942 import data format" -msgstr "" +msgstr "Format data impor SWIFT MT942" #: gnucash/import-export/aqb/gschemas/org.gnucash.dialogs.import.hbci.gschema.xml.in:51 msgid "" @@ -20046,6 +20404,9 @@ msgid "" "AqBanking library offers various import formats (called \"profiles\") of " "which you can choose one here." msgstr "" +"Pengaturan ini menentukan format data ketika mengimpor berkas SWIFT MT942. " +"Pustaka AqBanking menyediakan berbagai format impor (disebut \"profil\") " +"dimana Anda dapat memilih salah satunya." #: gnucash/import-export/bi-import/dialog-bi-import.c:298 #, c-format @@ -20091,48 +20452,50 @@ msgstr "Baris %d, faktur %s/%u: akun %s tidak ada.\n" #: gnucash/import-export/bi-import/dialog-bi-import.c:417 #, c-format msgid "Row %d, invoice %s/%u: account %s is not of type Accounts Payable.\n" -msgstr "" +msgstr "Baris %d, faktur %s/%u: akun %s bukan bertipe Akun Utang.\n" #: gnucash/import-export/bi-import/dialog-bi-import.c:427 #, c-format msgid "Row %d, invoice %s/%u: account %s is not of type Accounts Receivable.\n" -msgstr "" +msgstr "Baris %d, faktur %s/%u: akun %s bukan bertipe Akun Piutang.\n" #: gnucash/import-export/bi-import/dialog-bi-import.c:465 #, c-format msgid "Row %d, invoice %s/%u: price not set.\n" -msgstr "" +msgstr "Baris %d, faktur %s/%u: harga tidak diatur.\n" #: gnucash/import-export/bi-import/dialog-bi-import.c:534 #, c-format msgid "Error(s) in invoice %s, all rows of this invoice ignored.\n" -msgstr "" +msgstr "Galat pada faktur %s, semua baris dari faktur ini diabaikan.\n" #: gnucash/import-export/bi-import/dialog-bi-import.c:540 #, c-format msgid "Error(s) in invoice without id, all rows of this invoice ignored.\n" -msgstr "" +msgstr "Galat pada faktur tanpa id, semua baris dari faktur ini diabaikan.\n" #: gnucash/import-export/bi-import/dialog-bi-import.c:648 -#, fuzzy, c-format +#, c-format msgid "" "\n" "Processing...\n" -msgstr "Diproses" +msgstr "" +"\n" +"Memproses...\n" #: gnucash/import-export/bi-import/dialog-bi-import.c:717 -#, fuzzy, c-format +#, c-format msgid "Invoice %s created.\n" -msgstr "faktur" +msgstr "Faktur %s telah dibuat.\n" #: gnucash/import-export/bi-import/dialog-bi-import.c:732 msgid "Do you want to update existing bills/invoices?" -msgstr "" +msgstr "Apakah Anda ingin memperbarui tagihan/faktur yang sudah ada?" #: gnucash/import-export/bi-import/dialog-bi-import.c:740 #, c-format msgid "Invoice %s not updated because it already exists.\n" -msgstr "" +msgstr "Faktur %s tak diperbarui karena telah ada.\n" #: gnucash/import-export/bi-import/dialog-bi-import.c:755 #, c-format @@ -20140,9 +20503,9 @@ msgid "Invoice %s not updated because it is already posted.\n" msgstr "Faktur %s tidak diperbarui karena telah dipos.\n" #: gnucash/import-export/bi-import/dialog-bi-import.c:768 -#, fuzzy, c-format +#, c-format msgid "Invoice %s updated.\n" -msgstr "Diperbarui %s" +msgstr "Faktur %s diperbarui.\n" #: gnucash/import-export/bi-import/dialog-bi-import.c:891 #, c-format @@ -20160,58 +20523,53 @@ msgid "Invoice %s NOT posted because it requires currency conversion.\n" msgstr "Faktur %s TIDAK dipos karena membutuhkan konversi mata uang.\n" #: gnucash/import-export/bi-import/dialog-bi-import.c:926 -#, fuzzy, c-format +#, c-format msgid "Nothing to process.\n" -msgstr "Dalam Proses" +msgstr "Tak ada yang perlu diproses.\n" #: gnucash/import-export/bi-import/dialog-bi-import-gui.c:142 #: gnucash/import-export/customer-import/dialog-customer-import-gui.c:128 -#, fuzzy msgid "ID" msgstr "ID" #: gnucash/import-export/bi-import/dialog-bi-import-gui.c:144 -#, fuzzy msgid "Owner-ID" -msgstr "Pemilik" +msgstr "ID-Pemilik" #: gnucash/import-export/bi-import/dialog-bi-import-gui.c:145 -#, fuzzy msgid "Billing-ID" -msgstr "persyaratan tagihan" +msgstr "ID-Tagihan" #: gnucash/import-export/bi-import/dialog-bi-import-gui.c:152 #: gnucash/register/ledger-core/gncEntryLedgerModel.c:92 #: gnucash/report/reports/standard/invoice.scm:94 #: gnucash/report/reports/standard/invoice.scm:227 -#, fuzzy msgid "Quantity" -msgstr "Kuantitas upaya dari momen pemutaran kandar" +msgstr "Kuantitas" #: gnucash/import-export/bi-import/dialog-bi-import-gui.c:154 #, fuzzy msgid "Disc-type" -msgstr "\"%s\": jenis berkas salinan diska tidak dikenal" +msgstr "Disc-jenis" #: gnucash/import-export/bi-import/dialog-bi-import-gui.c:155 #, fuzzy msgid "Disc-how" -msgstr "Cakram {}" +msgstr "Disc-bagaimana" #: gnucash/import-export/bi-import/dialog-bi-import-gui.c:157 #: gnucash/report/reports/standard/invoice.scm:100 #: gnucash/report/reports/standard/invoice.scm:242 msgid "Taxable" -msgstr "" +msgstr "Kena Pajak" #: gnucash/import-export/bi-import/dialog-bi-import-gui.c:158 msgid "Taxincluded" -msgstr "" +msgstr "Termasukpajak" #: gnucash/import-export/bi-import/dialog-bi-import-gui.c:159 -#, fuzzy msgid "Tax-table" -msgstr "kode pajak" +msgstr "Tabel-pajak" #: gnucash/import-export/bi-import/dialog-bi-import-gui.c:163 msgid "Account-posted" @@ -20223,11 +20581,11 @@ msgstr "Memo-dipos" #: gnucash/import-export/bi-import/dialog-bi-import-gui.c:165 msgid "Accu-splits" -msgstr "" +msgstr "Accu-split" #: gnucash/import-export/bi-import/dialog-bi-import-gui.c:198 msgid "Import Bills or Invoices from csv" -msgstr "" +msgstr "Impor Tagihan atau Faktur dari csv" #: gnucash/import-export/bi-import/dialog-bi-import-gui.c:226 #, c-format @@ -20242,24 +20600,32 @@ msgid "" "- invoices created: %u\n" "- invoices updated: %u" msgstr "" +"Impor:\n" +"- baris diabaikan: %i\n" +"- baris diimpor: %i\n" +"\n" +"Validasi & pemrosesan:\n" +"- baris diperbaiki: %u\n" +"- baris diabaikan: %u\n" +"- faktur dibuat: %u\n" +"- faktur diperbarui: %u" #: gnucash/import-export/bi-import/dialog-bi-import-gui.c:229 #: gnucash/import-export/customer-import/dialog-customer-import-gui.c:205 msgid "These lines were ignored during import" -msgstr "" +msgstr "Baris berikut diabaikan saat impor" #: gnucash/import-export/bi-import/dialog-bi-import-gui.c:236 #: gnucash/import-export/csv-imp/assistant-csv-account-import.c:462 #: gnucash/import-export/customer-import/dialog-customer-import-gui.c:212 -#, fuzzy msgid "The input file can not be opened." -msgstr "Berkas tidak bisa dibuka" +msgstr "Berkas masukan tak dapat dibuka." #: gnucash/import-export/bi-import/dialog-bi-import-gui.c:356 #: gnucash/import-export/csv-imp/assistant-csv-account-import.c:304 #: gnucash/import-export/customer-import/dialog-customer-import-gui.c:324 msgid "Adjust regular expression used for import" -msgstr "" +msgstr "Atur ekspresi reguler yang digunakan untuk impor" #: gnucash/import-export/bi-import/dialog-bi-import-gui.c:356 #: gnucash/import-export/csv-imp/assistant-csv-account-import.c:305 @@ -20268,15 +20634,16 @@ msgid "" "This regular expression is used to parse the import file. Modify according " "to your needs.\n" msgstr "" +"Ekspresi reguler ini digunakan untuk mengurai berkas impor. Ubahlah sesuai " +"kebutuhan Anda.\n" #: gnucash/import-export/bi-import/gnc-plugin-bi-import.c:58 -#, fuzzy msgid "Import Bills & _Invoices..." -msgstr "_Impor" +msgstr "_Impor Tagihan & Faktur..." #: gnucash/import-export/bi-import/gnc-plugin-bi-import.c:58 msgid "Import bills and invoices from a CSV text file" -msgstr "" +msgstr "Impor tagihan dan faktur dari berkas teks CSV" #. Translators: %s is the file name string. #: gnucash/import-export/csv-exp/assistant-csv-export.c:82 @@ -20288,6 +20655,10 @@ msgid "" "You can also verify your selections by clicking on \"Back\" or \"Cancel\" to " "abort the export.\n" msgstr "" +"Pohon akun akan diekspor ke berkas '%s' saat Anda klik \"Terapkan\".\n" +"\n" +"Anda juga bisa memeriksa pilihan Anda dengan klik \"Kembali\" atau \"Batal\" " +"untuk membatalkan ekspor.\n" #. Translators: %s is the file name string and %u the number of accounts. #: gnucash/import-export/csv-exp/assistant-csv-export.c:87 @@ -20299,6 +20670,11 @@ msgid "" "You can also verify your selections by clicking on \"Back\" or \"Cancel\" to " "abort the export.\n" msgstr "" +"Saat Anda klik \"Terapkan\", transaksi akan diekspor ke berkas '%s' dan " +"jumlah akun yang diekspor adalah %u.\n" +"\n" +"Anda juga bisa memeriksa pilihan Anda dengan klik \"Kembali\" atau \"Batal\" " +"untuk membatalkan ekspor.\n" #. Translators: %s is the file name string. #: gnucash/import-export/csv-exp/assistant-csv-export.c:93 @@ -20310,6 +20686,10 @@ msgid "" "You can also verify your selections by clicking on \"Back\" or \"Cancel\" to " "abort the export.\n" msgstr "" +"Saat Anda klik \"Terapkan\", transaksi akan diekspor ke berkas '%s'.\n" +"\n" +"Anda juga bisa memeriksa pilihan Ana dengan klik \"Kembali\" atau \"Batal\" " +"untuk membatalkan ekspor.\n" #: gnucash/import-export/csv-exp/assistant-csv-export.c:97 msgid "" @@ -20319,6 +20699,11 @@ msgid "" "Select the settings you require for the file and then click \"Next\" to " "proceed or \"Cancel\" to abort the export.\n" msgstr "" +"Asisten ini akan membantu Anda mengekspor Pohon Akun ke sebuah berkas\n" +" dengan pemisah yang ditentukan di bawah ini.\n" +"\n" +"Pilih pengaturan yang Anda butuhkan untuk berkas itu dan klik \"Lanjut\" " +"untuk melanjutkan atau \"Batal\" untuk membatalkan ekspor.\n" #: gnucash/import-export/csv-exp/assistant-csv-export.c:103 msgid "" @@ -20337,6 +20722,21 @@ msgid "" "Select the settings you require for the file and then click \"Next\" to " "proceed or \"Cancel\" to abort the export.\n" msgstr "" +"Asisten ini akan membantu Anda mengekspor Transaksi ke sebuah berkas\n" +" dengan tanda pemisah yang ditentukan di bawah ini.\n" +"\n" +"Akan ada beberapa baris untuk setiap transaksi dan mungkin memerlukan " +"manipulasi lebih lanjut untuk mengubahnya ke dalam format yang dapat Anda " +"gunakan.\n" +"\n" +"Setiap Transaksi akan muncul sekali dalam ekspor dan akan didaftar " +"berdasarkan urutan pemrosesan akun\n" +"\n" +"Format keluaran Harga/Tarif dikendalikan oleh pengaturan Preferensi,\n" +" Umum->Paksa Harga untuk menampilkannya sebagai desimal\n" +"\n" +"Pilih setelan yang Anda butuhkan untuk berkas tersebut, kemudian klik " +"\"Lanjut\" untuk melanjutkan atau \"Batal\" untuk membatalkan ekspor.\n" #: gnucash/import-export/csv-exp/assistant-csv-export.c:115 msgid "" @@ -20357,6 +20757,22 @@ msgid "" "Select the settings you require for the file and then click \"Next\" to " "proceed or \"Cancel\" to abort the export.\n" msgstr "" +"Asisten ini akan membantu Anda mengekspor Transaksi ke sebuah berkas\n" +" dengan tanda pemisah yang ditentukan di bawah ini.\n" +"\n" +"Akan ada beberapa baris untuk setiap transaksi dan mungkin memerlukan " +"manipulasi lebih lanjut untuk mengubahnya ke dalam format yang dapat Anda " +"gunakan. Setiap Transaksi akan muncul sekali dalam ekspor dan akan didaftar " +"berdasarkan urutan pemrosesan akun\n" +"\n" +"Format keluaran Harga/Tarif dikendalikan oleh pengaturan Preferensi,\n" +" Umum->Paksa Harga untuk menampilkannya sebagai desimal\n" +"\n" +"Dengan memilih tata letak sederhana, keluarannya akan sama dengan tampilan " +"register satu baris, sehingga beberapa detail transfer bisa hilang.\n" +"\n" +"Pilih setelan yang Anda butuhkan untuk berkas tersebut, kemudian klik " +"\"Lanjut\" untuk melanjutkan atau \"Batal\" untuk membatalkan ekspor.\n" #: gnucash/import-export/csv-exp/assistant-csv-export.c:762 msgid "" @@ -20365,141 +20781,129 @@ msgid "" "logging!\n" "You may need to enable debugging.\n" msgstr "" +"Ada masalah saat mengekspor, hal ini mungkin karena ruang penyimpanan habis, " +"masalah hak akses atau tak dapat membuka folder. Periksa berkas log untuk " +"informasi lebih lanjut!\n" +"Anda mungkin perlu mengaktifkan pengawakutuan.\n" #: gnucash/import-export/csv-exp/assistant-csv-export.c:766 -#, fuzzy msgid "File exported successfully!\n" -msgstr "Penanda taut sukses diekspor!" +msgstr "Berkas berhasil diekspor!\n" #: gnucash/import-export/csv-exp/csv-transactions-export.c:615 -#, fuzzy msgid "Full Category Path" -msgstr "Kategori" +msgstr "Path Kategori Lengkap" #: gnucash/import-export/csv-exp/csv-transactions-export.c:616 #: gnucash/import-export/csv-exp/csv-transactions-export.c:628 #, fuzzy msgid "Amount With Sym" -msgstr "jumlah" +msgstr "Jumlah Dengan Sym" #: gnucash/import-export/csv-exp/csv-transactions-export.c:617 #: gnucash/import-export/csv-exp/csv-transactions-export.c:628 #, fuzzy msgid "Amount Num." -msgstr "jumlah" +msgstr "Jumlah Bil." #: gnucash/import-export/csv-exp/csv-transactions-export.c:617 #: gnucash/import-export/csv-exp/csv-transactions-export.c:629 #, fuzzy msgid "Rate/Price" -msgstr "harga" +msgstr "Tingkat / Harga" #: gnucash/import-export/csv-exp/csv-transactions-export.c:622 #: gnucash/import-export/csv-imp/gnc-imp-props-tx.cpp:57 -#, fuzzy msgid "Transaction ID" -msgstr "transaksi" +msgstr "ID Transaksi" #: gnucash/import-export/csv-exp/csv-transactions-export.c:625 -#, fuzzy msgid "Commodity/Currency" -msgstr "mata uang" +msgstr "Komoditas/Mata Uang" #: gnucash/import-export/csv-exp/csv-transactions-export.c:627 -#, fuzzy msgid "Full Account Name" -msgstr "_Nama Lengkap..." +msgstr "Nama Lengkap Akun" #: gnucash/import-export/csv-exp/csv-transactions-export.c:629 #: gnucash/import-export/csv-imp/gnc-imp-props-tx.cpp:71 -#, fuzzy msgid "Reconcile Date" -msgstr "penarikan" +msgstr "Tanggal Rekonsiliasi" #: gnucash/import-export/csv-exp/csv-tree-export.c:155 #: gnucash/import-export/csv-imp/csv-account-import.c:153 -#, fuzzy msgid "type" msgstr "tipe" #: gnucash/import-export/csv-exp/csv-tree-export.c:155 -#, fuzzy msgid "full_name" -msgstr "Nama Lengkap" +msgstr "nama_lengkap" #: gnucash/import-export/csv-exp/csv-tree-export.c:155 -#, fuzzy msgid "name" -msgstr "Nama" +msgstr "nama" #: gnucash/import-export/csv-exp/csv-tree-export.c:156 -#, fuzzy msgid "code" -msgstr "Kode Pin" +msgstr "kode" #: gnucash/import-export/csv-exp/csv-tree-export.c:156 -#, fuzzy msgid "description" -msgstr "Deskripsi" +msgstr "deskripsi" #: gnucash/import-export/csv-exp/csv-tree-export.c:156 -#, fuzzy msgid "color" msgstr "warna" #: gnucash/import-export/csv-exp/csv-tree-export.c:157 -#, fuzzy msgid "notes" -msgstr "Catatan" +msgstr "catatan" #: gnucash/import-export/csv-exp/csv-tree-export.c:157 +#, fuzzy msgid "commoditym" -msgstr "" +msgstr "commoditym" #: gnucash/import-export/csv-exp/csv-tree-export.c:157 +#, fuzzy msgid "commodityn" -msgstr "" +msgstr "commodityn" #: gnucash/import-export/csv-exp/csv-tree-export.c:158 -#, fuzzy msgid "hidden" -msgstr "Tersembunyi" +msgstr "tersembunyi" #: gnucash/import-export/csv-exp/csv-tree-export.c:158 -#, fuzzy msgid "tax" -msgstr "kode pajak" +msgstr "pajak" #: gnucash/import-export/csv-exp/csv-tree-export.c:158 -#, fuzzy msgid "placeholder" msgstr "placeholder" #: gnucash/import-export/csv-exp/gnc-plugin-csv-export.c:54 msgid "Export Account T_ree to CSV..." -msgstr "" +msgstr "Ekspo_r Pohon Akun ke CSV..." #: gnucash/import-export/csv-exp/gnc-plugin-csv-export.c:55 msgid "Export the Account Tree to a CSV file" -msgstr "" +msgstr "Ekspor Pohon Akun ke berkas CSV" #: gnucash/import-export/csv-exp/gnc-plugin-csv-export.c:59 -#, fuzzy msgid "Export _Transactions to CSV..." -msgstr "Ekspor" +msgstr "Ekspor _Transaksi ke CSV..." #: gnucash/import-export/csv-exp/gnc-plugin-csv-export.c:60 -#, fuzzy msgid "Export the Transactions to a CSV file" -msgstr "Tampilkan kartu sebagai berkas csv atau vcard" +msgstr "Ekspor Transaksi ke berkas CSV" #: gnucash/import-export/csv-exp/gnc-plugin-csv-export.c:64 msgid "Export A_ctive Register to CSV..." -msgstr "" +msgstr "Ekspor Register Aktif ke _CSV..." #: gnucash/import-export/csv-exp/gnc-plugin-csv-export.c:66 msgid "Export the Active Register to a CSV file" -msgstr "" +msgstr "Ekspor Register Aktif ke berkas CSV" #: gnucash/import-export/csv-imp/assistant-csv-account-import.c:71 #, c-format @@ -20509,6 +20913,10 @@ msgid "" "You can verify your selections by clicking on 'Back' or 'Cancel' to Abort " "Import.\n" msgstr "" +"Akun akan diimpor dari berkas '%s' saat Anda klik 'Terapkan'.\n" +"\n" +"Anda bisa memeriksa pilihan Anda dengan klik 'Kembali' atau 'Batal' untuk " +"membatalkan Impor.\n" #: gnucash/import-export/csv-imp/assistant-csv-account-import.c:75 #, c-format @@ -20524,6 +20932,18 @@ msgid "" "Note: After import, you may need to use 'View / Filter By / Other' menu " "option and select to show unused Accounts.\n" msgstr "" +"Akun akan diimpor dari berkas '%s' saat Anda klik 'Terapkan'.\n" +"\n" +"Anda bisa memeriksa pilihan Anda dengan klik 'Kembali' atau 'Batal' untuk " +"membatalkan Impor.\n" +"\n" +"Jika ini adalah impor pertama Anda ke sebuah berkas baru, Anda akan melihat " +"sebuah dialog untuk mengatur opsi buku, karena pengaturan itu akan " +"berpengaruh pada bagaimana data yang diimpor akan dikonversi ke transaksi " +"GnuCash.\n" +"Catatan: Setelah impor, Anda mungkin perlu menggunakan opsi menu 'Lihat / " +"Filter Berdasar / Lainnya' dan pilih untuk menampilkan Akun yang tak " +"terpakai.\n" #: gnucash/import-export/csv-imp/assistant-csv-account-import.c:528 #, c-format @@ -20534,6 +20954,11 @@ msgid "" "\n" "See below for errors..." msgstr "" +"Impor selesai namun dengan galat!\n" +"\n" +"Jumlah Akun yang ditambahkan adalah %u dan %u diperbarui.\n" +"\n" +"Lihat galat di bawah ini..." #: gnucash/import-export/csv-imp/assistant-csv-account-import.c:536 #, c-format @@ -20542,6 +20967,9 @@ msgid "" "\n" "The number of Accounts added was %u and %u were updated.\n" msgstr "" +"Impor berhasil!\n" +"\n" +"Jumlah Akun yang ditambahkan adalah %u dan %u diperbarui.\n" #: gnucash/import-export/csv-imp/assistant-csv-price-import.cpp:881 #: gnucash/import-export/csv-imp/assistant-csv-trans-import.cpp:848 @@ -20549,6 +20977,9 @@ msgid "" "There were problems reading some saved settings, continuing to load.\n" "Please review and save again." msgstr "" +"Ada masalah saat membaca beberapa pengaturan tersimpan, melanjutkan untuk " +"memuat.\n" +"Silakan meninjau dan menyimpannya lagi." #: gnucash/import-export/csv-imp/assistant-csv-price-import.cpp:904 #: gnucash/import-export/csv-imp/assistant-csv-trans-import.cpp:871 @@ -20588,7 +21019,7 @@ msgstr "Gabung dengan kolom sebelah ka_nan" #: gnucash/import-export/csv-imp/assistant-csv-price-import.cpp:1313 #: gnucash/import-export/csv-imp/assistant-csv-trans-import.cpp:1237 msgid "_Split this column" -msgstr "_Pecah kolom ini" +msgstr "_Pisahkan kolom ini" #: gnucash/import-export/csv-imp/assistant-csv-price-import.cpp:1318 #: gnucash/import-export/csv-imp/assistant-csv-trans-import.cpp:1242 @@ -20779,7 +21210,7 @@ msgid "" "encoding is wrong." msgstr "" "Tak ditemukan data valid pada berkas yang dipilih. Berkas mungkin kosong " -"atau enkoding yang dipilih salah." +"atau pengkodean yang dipilih salah." #: gnucash/import-export/csv-imp/gnc-import-price.cpp:510 #: gnucash/import-export/csv-imp/gnc-import-tx.cpp:532 @@ -20814,11 +21245,13 @@ msgid "" "From specified either.\n" "This should never happen. Please report this as a bug." msgstr "" +"Tak ada kolom 'Dari Namespace/Dari Simbol' yang dipilih dan tak ada " +"Komoditas Dari yang ditentukan.\n" +"Ini seharusnya tidak pernah terjadi. Silakan laporkan ini sebagai kutu." #: gnucash/import-export/csv-imp/gnc-import-tx.cpp:480 -#, fuzzy msgid "Please select an account column." -msgstr "Pilih kolom yang diberikan" +msgstr "Silakan pilih sebuah kolom akun." #: gnucash/import-export/csv-imp/gnc-import-tx.cpp:482 msgid "" @@ -20828,45 +21261,47 @@ msgstr "" "Akun." #: gnucash/import-export/csv-imp/gnc-import-tx.cpp:488 -#, fuzzy msgid "Please select a description column." -msgstr "Keterangan Kolom Tabel Akses" +msgstr "Silakan pilih sebuah kolom deskripsi." #: gnucash/import-export/csv-imp/gnc-import-tx.cpp:494 msgid "Please select a deposit or withdrawal column." -msgstr "" +msgstr "Silakan pilih sebuah kolom setoran atau penarikan." #: gnucash/import-export/csv-imp/gnc-import-tx.cpp:504 +#, fuzzy msgid "" "Please select a transfer account column or remove the other transfer related " "columns." msgstr "" +"Silakan pilih kolom akun transfer atau menghapus kolom pengalihan terkait " +"lainnya." #: gnucash/import-export/csv-imp/gnc-import-tx.cpp:671 msgid "" "No account column selected and no default account specified either.\n" "This should never happen. Please report this as a bug." msgstr "" +"Tidak ada kolom akun yang dipilih dan tidak ada akun baku yang ditentukan.\n" +"Ini seharusnya tidak pernah terjadi. Silakan laporkan ini sebagai kutu." #: gnucash/import-export/csv-imp/gnc-imp-props-price.cpp:51 msgid "From Symbol" msgstr "Dari Simbol" #: gnucash/import-export/csv-imp/gnc-imp-props-price.cpp:52 -#, fuzzy msgid "From Namespace" -msgstr "Namespace:" +msgstr "Dari Namespace" #: gnucash/import-export/csv-imp/gnc-imp-props-price.cpp:53 -#, fuzzy msgid "Currency To" -msgstr "mata uang" +msgstr "Mata Uang Ke" #: gnucash/import-export/csv-imp/gnc-imp-props-price.cpp:66 #: gnucash/import-export/csv-imp/gnc-imp-props-tx.cpp:117 #: gnucash/import-export/csv-imp/gnc-imp-props-tx.cpp:211 msgid "Value doesn't appear to contain a valid number." -msgstr "" +msgstr "Nilai tak berisi angka yang valid." #: gnucash/import-export/csv-imp/gnc-imp-props-price.cpp:79 #: gnucash/import-export/csv-imp/gnc-imp-props-price.cpp:84 @@ -20876,39 +21311,38 @@ msgstr "" #: gnucash/import-export/csv-imp/gnc-imp-props-tx.cpp:140 msgid "Value can't be parsed into a number using the selected currency format." msgstr "" +"Nilai tak dapat diurai menjadi angka dengan format mata uang yang dipilih." #: gnucash/import-export/csv-imp/gnc-imp-props-price.cpp:121 #: gnucash/import-export/csv-imp/gnc-imp-props-tx.cpp:197 -#, fuzzy msgid "Value can't be parsed into a valid commodity." -msgstr "Nilai terurai \"%s\" bukan tanda tangan D-Bus yang valid" +msgstr "Nilai tak dapat diurai menjadi komoditas yang valid." #: gnucash/import-export/csv-imp/gnc-imp-props-price.cpp:141 -#, fuzzy msgid "Value can't be parsed into a valid namespace." -msgstr "Nilai terurai \"%s\" bukan tanda tangan D-Bus yang valid" +msgstr "Nilai tak dapat diurai menjadi namespace yang valid." #: gnucash/import-export/csv-imp/gnc-imp-props-price.cpp:155 -#, fuzzy msgid "Column value can not be empty." -msgstr "Tuple kosong, tipe dan nilai “()”" +msgstr "Nilai kolom tak boleh kosong." #: gnucash/import-export/csv-imp/gnc-imp-props-price.cpp:174 msgid "'From Symbol' can not be empty." msgstr "'Dari Simbol' tak boleh kosong." #: gnucash/import-export/csv-imp/gnc-imp-props-price.cpp:194 -#, fuzzy msgid "'From Namespace' can not be empty." -msgstr "Kosongkan semua butir dari Tong Sampah?" +msgstr "'Dari Namespace' tak boleh kosong." #: gnucash/import-export/csv-imp/gnc-imp-props-price.cpp:219 msgid "'Currency To' can not be the same as 'Commodity From'." -msgstr "" +msgstr "'Mata Uang Ke' tidak boleh sama dengan 'Komoditas Dari'." #: gnucash/import-export/csv-imp/gnc-imp-props-price.cpp:221 +#, fuzzy msgid "Value parsed into an invalid currency for a currency column type." msgstr "" +"Nilai diurai menjadi mata uang yang tidak valid untuk jenis kolom mata uang." #: gnucash/import-export/csv-imp/gnc-imp-props-price.cpp:235 #: gnucash/import-export/csv-imp/gnc-imp-props-price.cpp:243 @@ -20918,195 +21352,167 @@ msgstr "" #: gnucash/import-export/csv-imp/gnc-imp-props-tx.cpp:516 #: gnucash/import-export/csv-imp/gnc-imp-props-tx.cpp:571 #: gnucash/import-export/csv-imp/gnc-imp-props-tx.cpp:579 -#, fuzzy msgid " could not be understood.\n" -msgstr "Alamat IM '%s' tak dapat dipahami." +msgstr " tak dapat dipahami.\n" #: gnucash/import-export/csv-imp/gnc-imp-props-price.cpp:276 #: gnucash/import-export/csv-imp/gnc-imp-props-tx.cpp:323 -#, fuzzy msgid "No date column." -msgstr "Tanggal" +msgstr "Tak ada kolom tanggal." #: gnucash/import-export/csv-imp/gnc-imp-props-price.cpp:278 -#, fuzzy msgid "No amount column." -msgstr "jumlah" +msgstr "Tak ada kolom jumlah." #: gnucash/import-export/csv-imp/gnc-imp-props-price.cpp:280 -#, fuzzy msgid "No 'Currency to'." -msgstr "mata uang" +msgstr "Tak ada 'Mata uang ke'." #: gnucash/import-export/csv-imp/gnc-imp-props-price.cpp:282 -#, fuzzy msgid "No 'Commodity from'." -msgstr "komoditas" +msgstr "Tak ada 'Komoditas dari'." #: gnucash/import-export/csv-imp/gnc-imp-props-price.cpp:352 msgid "Failed to create price from selected columns." -msgstr "" +msgstr "Gagal membuat harga dari kolom yang dipilih." #: gnucash/import-export/csv-imp/gnc-imp-props-tx.cpp:62 -#, fuzzy msgid "Transaction Commodity" -msgstr "transaksi" +msgstr "Komoditas Transaksi" #: gnucash/import-export/csv-imp/gnc-imp-props-tx.cpp:72 -#, fuzzy msgid "Transfer Action" -msgstr "aksi: transfer" +msgstr "Aksi Transfer" #: gnucash/import-export/csv-imp/gnc-imp-props-tx.cpp:74 -#, fuzzy msgid "Transfer Memo" -msgstr "Transfer" +msgstr "Memo Transfer" #: gnucash/import-export/csv-imp/gnc-imp-props-tx.cpp:75 -#, fuzzy msgid "Transfer Reconciled" -msgstr "status transaksi: rekonsiliasi" +msgstr "Transfer Direkonsiliasi" #: gnucash/import-export/csv-imp/gnc-imp-props-tx.cpp:76 -#, fuzzy msgid "Transfer Reconcile Date" -msgstr "penarikan" +msgstr "Tanggal Rekonsiliasi Transfer" #: gnucash/import-export/csv-imp/gnc-imp-props-tx.cpp:160 msgid "Value can't be parsed into a valid reconcile state." -msgstr "" +msgstr "Nilai tak dapat diurai menjadi sebuah status rekonsiliasi yang valid." #: gnucash/import-export/csv-imp/gnc-imp-props-tx.cpp:223 msgid "Price can't be parsed into a number." -msgstr "" +msgstr "Harga tak dapat diurai menjadi angka." #: gnucash/import-export/csv-imp/gnc-imp-props-tx.cpp:379 msgid "Account value can't be mapped back to an account." -msgstr "" +msgstr "Nilai akun tak dapat dipetakan kembali ke sebuah akun." #: gnucash/import-export/csv-imp/gnc-imp-props-tx.cpp:380 msgid "Transfer account value can't be mapped back to an account." -msgstr "" +msgstr "Nilai akun transfer tak dapat dipetakan kembali ke sebuah akun." #: gnucash/import-export/csv-imp/gnc-imp-props-tx.cpp:429 -#, fuzzy msgid "Account value can't be empty." -msgstr "Nama Akun tak boleh kosong" +msgstr "Nilai akun tak boleh kosong." #: gnucash/import-export/csv-imp/gnc-imp-props-tx.cpp:440 msgid "Transfer account value can't be empty." -msgstr "" +msgstr "Nilai akun transfer tak boleh kosong." #: gnucash/import-export/csv-imp/gnc-imp-props-tx.cpp:591 #, fuzzy msgid "No deposit or withdrawal column." -msgstr "aksi: deposito" +msgstr "No deposit atau penarikan kolom." #: gnucash/import-export/csv-imp/gnc-imp-props-tx.cpp:597 msgid "Split is reconciled but reconcile date column is missing or invalid." msgstr "" +"Split direkonsiliasi tetapi tanggal rekonsiliasi tidak ada atau tidak valid." #: gnucash/import-export/csv-imp/gnc-imp-props-tx.cpp:604 msgid "" "Transfer split is reconciled but transfer reconcile date column is missing " "or invalid." msgstr "" +"Split transfer direkonsiliasi tetapi kolom tanggal rekonsiliasi transfer " +"tidak ada atau tidak valid." #: gnucash/import-export/csv-imp/gnc-imp-settings-csv.cpp:49 -#, fuzzy msgid "No Settings" -msgstr "Pengaturan" +msgstr "Tak Ada Pengaturan" #: gnucash/import-export/csv-imp/gnc-imp-settings-csv.cpp:50 -#, fuzzy msgid "GnuCash Export Format" -msgstr "Pilih format ekspor" +msgstr "Format Ekspor GnuCash" #: gnucash/import-export/csv-imp/gnc-plugin-csv-import.c:50 -#, fuzzy msgid "Import _Accounts from CSV..." -msgstr "Impor dari berkas…" +msgstr "Impor _Akun dari CSV..." #: gnucash/import-export/csv-imp/gnc-plugin-csv-import.c:51 -#, fuzzy msgid "Import Accounts from a CSV file" -msgstr "Impor dari berkas…" +msgstr "Impor Akun dari berkas CSV" #: gnucash/import-export/csv-imp/gnc-plugin-csv-import.c:55 -#, fuzzy msgid "Import _Transactions from CSV..." -msgstr "Mengimpor data dari program yang lain" +msgstr "Impor _Transaksi dari CSV..." #: gnucash/import-export/csv-imp/gnc-plugin-csv-import.c:56 -#, fuzzy msgid "Import Transactions from a CSV file" -msgstr "Impor Box dari berkas “%s” gagal." +msgstr "Impor Transaksi dari berkas CSV" #: gnucash/import-export/csv-imp/gnc-plugin-csv-import.c:60 -#, fuzzy msgid "Import _Prices from a CSV file..." -msgstr "Impor dari berkas…" +msgstr "Impor _Harga dari berkas CSV..." #: gnucash/import-export/csv-imp/gnc-plugin-csv-import.c:61 -#, fuzzy msgid "Import Prices from a CSV file" -msgstr "Impor dari berkas…" +msgstr "Impor Harga dari berkas CSV" #: gnucash/import-export/customer-import/dialog-customer-import-gui.c:139 -#, fuzzy msgid "Shipping Name" -msgstr "Tidak ada nama" +msgstr "Nama Pengiriman" #: gnucash/import-export/customer-import/dialog-customer-import-gui.c:140 -#, fuzzy msgid "Shipping Address 1" -msgstr "Alamat" +msgstr "Alamat Pengiriman 1" #: gnucash/import-export/customer-import/dialog-customer-import-gui.c:141 -#, fuzzy msgid "Shipping Address 2" -msgstr "Alamat" +msgstr "Alamat Pengiriman 2" #: gnucash/import-export/customer-import/dialog-customer-import-gui.c:142 -#, fuzzy msgid "Shipping Address 3" -msgstr "Alamat" +msgstr "Alamat Pengiriman 3" #: gnucash/import-export/customer-import/dialog-customer-import-gui.c:143 -#, fuzzy msgid "Shipping Address 4" -msgstr "Alamat" +msgstr "Alamat Pengiriman 4" #: gnucash/import-export/customer-import/dialog-customer-import-gui.c:144 -#, fuzzy msgid "Shipping Phone" -msgstr "Telepon:" +msgstr "Telepon Pengiriman" #: gnucash/import-export/customer-import/dialog-customer-import-gui.c:145 -#, fuzzy msgid "Shipping Fax" -msgstr "Faks" +msgstr "Faks Pengiriman" #: gnucash/import-export/customer-import/dialog-customer-import-gui.c:146 -#, fuzzy msgid "Shipping Email" -msgstr "Surel:" +msgstr "Surel Pengiriman" #: gnucash/import-export/customer-import/dialog-customer-import-gui.c:176 -#, fuzzy msgid "Import Customers from csv" -msgstr "Impor dari Pine." +msgstr "Impor Pelanggan dari csv" #: gnucash/import-export/customer-import/dialog-customer-import-gui.c:192 msgid "customers" -msgstr "" +msgstr "pelanggan" #: gnucash/import-export/customer-import/dialog-customer-import-gui.c:193 -#, fuzzy msgid "vendors" -msgstr "" -"Anda dapat membeli target dari vendor yang dikenal baik seperti KODAK, X-" -"Rite, dan LaserSoft di berbagai toko daring." +msgstr "vendor" #: gnucash/import-export/customer-import/dialog-customer-import-gui.c:201 #, c-format @@ -21120,15 +21526,22 @@ msgid "" " %u %s created\n" " %u %s updated (based on id)" msgstr "" +"Hasil impor:\n" +"%i baris diabaikan\n" +"%i baris diimpor:\n" +" %u %s diperbaiki\n" +" %u %s diabaikan (tak dapat diperbaiki)\n" +"\n" +" %u %s dibuat\n" +" %u %s diperbarui (berdasarkan id)" #: gnucash/import-export/customer-import/gnc-plugin-customer-import.c:59 -#, fuzzy msgid "Import _Customers & Vendors..." -msgstr "Impor" +msgstr "Impor Pe_langgan & Vendor..." #: gnucash/import-export/customer-import/gnc-plugin-customer-import.c:59 msgid "Import Customers and Vendors from a CSV text file." -msgstr "" +msgstr "Impor Pelanggan dan Vendor dari berkas teks CSV." #: gnucash/import-export/import-account-matcher.c:260 #, c-format @@ -21136,6 +21549,8 @@ msgid "" "The account '%s' is a placeholder account and does not allow transactions. " "Please choose a different account." msgstr "" +"Akun '%s' adalah akun placeholder dan tidak mengizinkan transaksi. Silakan " +"memilih akun yang lain." #: gnucash/import-export/import-account-matcher.c:277 #, c-format @@ -21143,11 +21558,12 @@ msgid "" "The account '%s' has a different commodity to the one required, '%s'. Please " "choose a different account." msgstr "" +"Akun '%s' memiliki komoditas yang berbeda dari yang diperlukan, '%s'. " +"Silakan memilih akun yang lain." #: gnucash/import-export/import-account-matcher.c:469 -#, fuzzy msgid "(Full account ID: " -msgstr "ID" +msgstr "(ID akun lengkap: " #: gnucash/import-export/import-commodity-matcher.c:113 msgid "" @@ -21155,254 +21571,245 @@ msgid "" "Please note that the exchange code of the commodity you select will be " "overwritten." msgstr "" +"Silakan memilih sebuah komoditas yang sesuai dengan kode bursa spesifik " +"berikut. Mohon dicatat bahwa kode bursa komoditas yang Anda pilih akan " +"ditimpa." #: gnucash/import-export/import-format-dialog.c:78 -#, fuzzy msgid "m/d/y" -msgstr "%a, %d/%m/%Y %H:%M" +msgstr "m/d/y" #: gnucash/import-export/import-format-dialog.c:86 -#, fuzzy msgid "d/m/y" -msgstr "%d/%m/%Y %H:%M:%S" +msgstr "d/m/y" #: gnucash/import-export/import-format-dialog.c:94 -#, fuzzy msgid "y/m/d" -msgstr "%d/%m/%y" +msgstr "y/m/d" #: gnucash/import-export/import-format-dialog.c:102 -#, fuzzy msgid "y/d/m" -msgstr "%d/%m/%y" +msgstr "y/d/m" -#: gnucash/import-export/import-main-matcher.c:533 -#: gnucash/import-export/import-main-matcher.c:683 +#: gnucash/import-export/import-main-matcher.c:591 +#: gnucash/import-export/import-main-matcher.c:741 msgid "Destination account for the auto-balance split." -msgstr "" +msgstr "Akun tujuan untuk split seimbang-otomatis." -#: gnucash/import-export/import-main-matcher.c:874 +#: gnucash/import-export/import-main-matcher.c:930 #, fuzzy msgid "Assign a transfer account to the selection." -msgstr "akun tujuan transfer" +msgstr "Menetapkan rekening transfer ke seleksi." -#: gnucash/import-export/import-main-matcher.c:1041 +#: gnucash/import-export/import-main-matcher.c:1093 msgctxt "Column header for 'Adding transaction'" msgid "A" -msgstr "" +msgstr "T" -#: gnucash/import-export/import-main-matcher.c:1044 -#, fuzzy +#: gnucash/import-export/import-main-matcher.c:1096 msgctxt "Column header for 'Updating plus Clearing transaction'" msgid "U+C" -msgstr "U" +msgstr "U+C" -#: gnucash/import-export/import-main-matcher.c:1048 -#, fuzzy +#: gnucash/import-export/import-main-matcher.c:1100 msgctxt "Column header for 'Clearing transaction'" msgid "C" msgstr "C" -#: gnucash/import-export/import-main-matcher.c:1054 -#, fuzzy +#: gnucash/import-export/import-main-matcher.c:1107 msgid "Info" msgstr "Info" -#: gnucash/import-export/import-main-matcher.c:1061 +#: gnucash/import-export/import-main-matcher.c:1114 #: gnucash/report/stylesheets/head-or-tail.scm:102 -#, fuzzy msgid "Additional Comments" -msgstr "Komentar:" +msgstr "Komentar Tambahan" -#: gnucash/import-export/import-main-matcher.c:1427 +#: gnucash/import-export/import-main-matcher.c:1478 +#, fuzzy msgid "New, already balanced" -msgstr "" +msgstr "Baru, sudah seimbang" #. Translators: %1$s is the amount to be #. transferred. %2$s is the destination account. -#: gnucash/import-export/import-main-matcher.c:1453 +#: gnucash/import-export/import-main-matcher.c:1504 #, fuzzy, c-format msgid "New, transfer %s to (manual) \"%s\"" msgstr "Gagal mentransfer pesan: %s" #. Translators: %1$s is the amount to be #. transferred. %2$s is the destination account. -#: gnucash/import-export/import-main-matcher.c:1461 +#: gnucash/import-export/import-main-matcher.c:1512 #, fuzzy, c-format msgid "New, transfer %s to (auto) \"%s\"" msgstr "Gagal mentransfer pesan: %s" #. Translators: %s is the amount to be transferred. -#: gnucash/import-export/import-main-matcher.c:1472 -#, c-format +#: gnucash/import-export/import-main-matcher.c:1523 +#, fuzzy, c-format msgid "New, UNBALANCED (need acct to transfer %s)!" -msgstr "" +msgstr "Baru, TAK SEIMBANG (kebutuhan acct transfer% s)!" -#: gnucash/import-export/import-main-matcher.c:1489 +#: gnucash/import-export/import-main-matcher.c:1540 #, fuzzy msgid "Reconcile (manual) match" -msgstr "Manual" +msgstr "Rekonsiliasi (manual) pertandingan" -#: gnucash/import-export/import-main-matcher.c:1493 +#: gnucash/import-export/import-main-matcher.c:1544 #, fuzzy msgid "Reconcile (auto) match" -msgstr "penarikan" +msgstr "Rekonsiliasi (auto) pertandingan" -#: gnucash/import-export/import-main-matcher.c:1500 -#: gnucash/import-export/import-main-matcher.c:1526 +#: gnucash/import-export/import-main-matcher.c:1551 +#: gnucash/import-export/import-main-matcher.c:1577 #, fuzzy msgid "Match missing!" -msgstr "Hilang" +msgstr "Mencocokkan hilang!" -#: gnucash/import-export/import-main-matcher.c:1515 +#: gnucash/import-export/import-main-matcher.c:1566 +#, fuzzy msgid "Update and reconcile (manual) match" -msgstr "" +msgstr "Update dan mendamaikan (manual) pertandingan" -#: gnucash/import-export/import-main-matcher.c:1519 +#: gnucash/import-export/import-main-matcher.c:1570 +#, fuzzy msgid "Update and reconcile (auto) match" -msgstr "" +msgstr "Update dan mendamaikan (auto) pertandingan" -#: gnucash/import-export/import-main-matcher.c:1534 +#: gnucash/import-export/import-main-matcher.c:1585 #, fuzzy msgid "Do not import (no action selected)" -msgstr "Hapus aksi terpilih saat ini." +msgstr "Jangan impor (tidak ada tindakan yang dipilih)" #: gnucash/import-export/import-match-picker.c:423 #, fuzzy msgid "Confidence" -msgstr "" -"Anda dapat melakukan pemeriksaan tambahan dengan melihat melalui folder dan " -"berkas yang disalin pada media tujuan. Dengan memeriksa untuk memastikan " -"bahwa berkas dan folder yang Anda transfer memang benar ada dalam backup, " -"Anda dapat memiliki kepercayaan lebih bahwa prosesnya sukses." +msgstr "Kepercayaan" #: gnucash/import-export/import-match-picker.c:438 -#, fuzzy msgid "Pending Action" -msgstr "Ditunda" +msgstr "Aksi Tertunda" #: gnucash/import-export/import-pending-matches.c:194 #: libgnucash/engine/policy.c:61 -#, fuzzy msgid "Manual" msgstr "Manual" #: gnucash/import-export/import-pending-matches.c:196 #: gnucash/report/reports/standard/balsheet-eg.scm:226 -#, fuzzy msgid "Auto" msgstr "Otomatis" #: gnucash/import-export/log-replay/gnc-log-replay.c:580 -#, fuzzy msgid "Select a .log file to replay" -msgstr "_Simpan Log Galat ke Berkas…" +msgstr "Pilih sebuah berkas .log untuk dimainkan ulang" #. Translators: %s is the file name. #: gnucash/import-export/log-replay/gnc-log-replay.c:600 -#, fuzzy, c-format +#, c-format msgid "Cannot open the current log file: %s" -msgstr "%s: Tak dapat membuka berkas log untuk tampilan %s!" +msgstr "Tak dapat membuka berkas log ini: %s" #: gnucash/import-export/log-replay/gnc-log-replay.c:615 -#, fuzzy, c-format +#, c-format msgid "Failed to open log file: %s: %s" -msgstr "Gagal membuka berkas \"%s\": %s" +msgstr "Gagal membuka berkas log: %s: %s" #: gnucash/import-export/log-replay/gnc-log-replay.c:625 msgid "The log file you selected was empty." -msgstr "" +msgstr "Berkas log yang dipilih kosong." #: gnucash/import-export/log-replay/gnc-log-replay.c:634 msgid "" "The log file you selected cannot be read. The file header was not recognized." -msgstr "" +msgstr "Berkas log yang dipilih tak dapat dibaca. Header berkas tak dikenal." #: gnucash/import-export/log-replay/gnc-plugin-log-replay.c:48 -#, fuzzy msgid "_Replay GnuCash .log file..." -msgstr "_Simpan Log Galat ke Berkas…" +msgstr "Mainkan ulang be_rkas .log GnuCash..." #: gnucash/import-export/log-replay/gnc-plugin-log-replay.c:49 msgid "Replay a GnuCash log file after a crash. This cannot be undone." msgstr "" +"Mainkan ulang berkas log GnuCash setelah terjadi kres. Ini tidak bisa " +"dibatalkan." #: gnucash/import-export/ofx/gnc-ofx-import.c:643 -#, fuzzy, c-format +#, c-format msgid "Stock account for security \"%s\"" -msgstr "%s pada stock" +msgstr "Akun saham untuk sekuritas \"%s\"" #: gnucash/import-export/ofx/gnc-ofx-import.c:816 -#, fuzzy, c-format +#, c-format msgid "Income account for security \"%s\"" -msgstr "tipe akun: Pendapatan" +msgstr "Akun pendapatan untuk sekuritas \"%s\"" -#: gnucash/import-export/ofx/gnc-ofx-import.c:935 -#, fuzzy +#: gnucash/import-export/ofx/gnc-ofx-import.c:937 msgid "Unknown OFX account" -msgstr "" +msgstr "Akun OFX tak diketahui" -#: gnucash/import-export/ofx/gnc-ofx-import.c:958 +#: gnucash/import-export/ofx/gnc-ofx-import.c:960 #, fuzzy msgid "Unknown OFX checking account" -msgstr "tipe akun: rekening koran" +msgstr "Diketahui OFX memeriksa akun" -#: gnucash/import-export/ofx/gnc-ofx-import.c:962 +#: gnucash/import-export/ofx/gnc-ofx-import.c:964 msgid "Unknown OFX savings account" -msgstr "" +msgstr "Akun tabungan OFX tak diketahui" -#: gnucash/import-export/ofx/gnc-ofx-import.c:966 -#, fuzzy +#: gnucash/import-export/ofx/gnc-ofx-import.c:968 msgid "Unknown OFX money market account" -msgstr "tipe akun: pasar uang" +msgstr "Akun pasar uang OFX tak diketahui" -#: gnucash/import-export/ofx/gnc-ofx-import.c:970 +#: gnucash/import-export/ofx/gnc-ofx-import.c:972 +#, fuzzy msgid "Unknown OFX credit line account" -msgstr "" +msgstr "akun kredit tidak diketahui OFX" -#: gnucash/import-export/ofx/gnc-ofx-import.c:975 +#: gnucash/import-export/ofx/gnc-ofx-import.c:977 +#, fuzzy msgid "Unknown OFX CMA account" -msgstr "" +msgstr "akun diketahui OFX CMA" -#: gnucash/import-export/ofx/gnc-ofx-import.c:979 +#: gnucash/import-export/ofx/gnc-ofx-import.c:981 msgid "Unknown OFX credit card account" -msgstr "" +msgstr "Akun kartu kredit OFX tak diketahui" -#: gnucash/import-export/ofx/gnc-ofx-import.c:983 +#: gnucash/import-export/ofx/gnc-ofx-import.c:985 msgid "Unknown OFX investment account" -msgstr "" +msgstr "Akun investasi OFX tak diketahui" -#: gnucash/import-export/ofx/gnc-ofx-import.c:1163 -#, c-format +#: gnucash/import-export/ofx/gnc-ofx-import.c:1177 +#, fuzzy, c-format msgid "" "OFX file '%s' imported, %d transactions processed, no transactions to match" msgstr "" +"File OFX '% s' impor, transaksi% d diproses, tidak ada transaksi untuk " +"pertandingan" -#: gnucash/import-export/ofx/gnc-ofx-import.c:1214 +#: gnucash/import-export/ofx/gnc-ofx-import.c:1228 msgid "Open/Quicken Financial Exchange file (*.ofx, *.qfx)" -msgstr "" +msgstr "Berkas Open/Quicken Financial Exchange (*.ofx, *.qfx)" -#: gnucash/import-export/ofx/gnc-ofx-import.c:1219 +#: gnucash/import-export/ofx/gnc-ofx-import.c:1233 msgid "Select one or multiple OFX/QFX file(s) to process" -msgstr "" +msgstr "Pilih satu atau beberapa berkas OFX/QFX untuk diproses" #: gnucash/import-export/ofx/gnc-plugin-ofx.c:46 -#, fuzzy msgid "Import _OFX/QFX..." -msgstr "_Impor" +msgstr "Impor _OFX/QFX..." #: gnucash/import-export/ofx/gnc-plugin-ofx.c:47 msgid "Process an OFX/QFX response file" -msgstr "" +msgstr "Proses berkas respon OFX/QFX" #: gnucash/import-export/qif-imp/assistant-qif-import.c:556 -#, fuzzy msgid "GnuCash account name" -msgstr "Nama Akun tak boleh kosong" +msgstr "Nama akun GnuCash" #: gnucash/import-export/qif-imp/assistant-qif-import.c:861 msgid "Enter a name or short description, such as \"Red Hat Stock\"." -msgstr "" +msgstr "Masukkan nama atau deskripsi singkat, misal \"Saham Red Hat\"." #: gnucash/import-export/qif-imp/assistant-qif-import.c:863 msgid "" @@ -21413,26 +21820,19 @@ msgstr "" "tidak ada, atau Anda tidak mengetahuinya, buatlah simbol Anda sendiri." #: gnucash/import-export/qif-imp/assistant-qif-import.c:866 +#, fuzzy msgid "" "Select the exchange on which the symbol is traded, or select the type of " "investment (such as FUND for mutual funds.) If you don't see your exchange " "or an appropriate investment type, you can enter a new one." msgstr "" +"Pilih pertukaran yang simbol diperdagangkan, atau pilih jenis investasi " +"(seperti DANA untuk reksa dana.) Jika Anda tidak melihat pertukaran atau " +"jenis investasi yang sesuai, Anda dapat memasukkan yang baru." #: gnucash/import-export/qif-imp/assistant-qif-import.c:906 -#, fuzzy msgid "_Name or description" -msgstr "" -"|Nama program|Keterangan|Ekstensi berkas\n" -"|KiCad |Manajer proyek|+*.pro+\n" -"|Eeschema |Editor skematik dan komponen|+*.sch, *.lib, *.net+\n" -"|Pcbnew |Editor papan sirkuit dan _footprint_|+*.kicad_pcb, *.kicad_mo+\n" -"|GerbView |Penampil berkas Gerber dan _drill_|+\\*.g\\*, *.drl, etc.+\n" -"|Bitmap2Component |Konverter gambar _bitmap_ menjadi komponen atau " -"_footprint_|+*.lib, *.kicad_mod, *.kicad_wks+\n" -"|PCB Calculator |Kalkulator untuk komponen, lebar jalur, spasi elektrikal, " -"kode warna, dan sebagainya|Tidak ada\n" -"|Pl Editor |Editor tata letak halaman|+*.kicad_wks+\n" +msgstr "_Nama atau deskripsi" #: gnucash/import-export/qif-imp/assistant-qif-import.c:930 msgid "_Ticker symbol or other abbreviation" @@ -21441,57 +21841,52 @@ msgstr "Simbol atau singka_tan lain" #: gnucash/import-export/qif-imp/assistant-qif-import.c:964 #, fuzzy msgid "_Exchange or abbreviation type" -msgstr "Pertukarkan Bingkai Saat Ini (%ld)" +msgstr "_Exchange atau jenis singkatan" #: gnucash/import-export/qif-imp/assistant-qif-import.c:1176 #: gnucash/import-export/qif-imp/assistant-qif-import.c:3315 -#, fuzzy msgid "(split)" -msgstr "_Pecah" +msgstr "(split)" #: gnucash/import-export/qif-imp/assistant-qif-import.c:1369 -#, fuzzy msgid "Are you sure you want to cancel?" -msgstr "Anda yakin ingin menyerah?" +msgstr "Apakah Anda yakin ingin membatalkan?" #: gnucash/import-export/qif-imp/assistant-qif-import.c:1580 -#, fuzzy msgid "Please select a file to load." -msgstr "Harap pilih suatu berkas…" +msgstr "Silakan pilih sebuah berkas untuk dimuat." #: gnucash/import-export/qif-imp/assistant-qif-import.c:1583 msgid "File not found or read permission denied. Please select another file." msgstr "" +"Berkas tidak ditemukan atau hak akses baca ditolak. Silakan pilih berkas " +"lain." #: gnucash/import-export/qif-imp/assistant-qif-import.c:1594 msgid "That QIF file is already loaded. Please select another file." -msgstr "" +msgstr "Berkas QIF tersebut telah dimuat. Silakan pilih berkas lain." #: gnucash/import-export/qif-imp/assistant-qif-import.c:1662 -#, fuzzy msgid "Select QIF File" -msgstr "Pilih Berkas…" +msgstr "Pilih Berkas QIF" #: gnucash/import-export/qif-imp/assistant-qif-import.c:1725 #: gnucash/import-export/qif-imp/assistant-qif-import.c:1728 #: gnucash/import-export/qif-imp/assistant-qif-import.c:2978 #: gnucash/import-export/qif-imp/assistant-qif-import.c:2981 -#, fuzzy msgid "_Resume" msgstr "_Lanjutkan" #: gnucash/import-export/qif-imp/assistant-qif-import.c:1813 #: gnucash/import-export/qif-imp/assistant-qif-import.c:1888 #: gnucash/import-export/qif-imp/assistant-qif-import.c:3065 -#, fuzzy msgid "Canceled" msgstr "Batal" #: gnucash/import-export/qif-imp/assistant-qif-import.c:1827 #: gnucash/import-export/qif-imp/assistant-qif-import.c:1831 -#, fuzzy msgid "An error occurred while loading the QIF file." -msgstr "Terjadi galat ketika memuat direktori" +msgstr "Terjadi galat ketika memuat berkas QIF." #: gnucash/import-export/qif-imp/assistant-qif-import.c:1828 #: gnucash/import-export/qif-imp/assistant-qif-import.c:1846 @@ -21500,7 +21895,6 @@ msgstr "Terjadi galat ketika memuat direktori" #: gnucash/import-export/qif-imp/assistant-qif-import.c:3085 #: gnucash/import-export/qif-imp/assistant-qif-import.c:3106 #: gnucash/import-export/qif-imp/assistant-qif-import.c:3154 -#, fuzzy msgid "Failed" msgstr "Gagal" @@ -21510,22 +21904,17 @@ msgstr "Gagal" #: gnucash/import-export/qif-imp/assistant-qif-import.c:3079 #: gnucash/import-export/qif-imp/assistant-qif-import.c:3102 #: gnucash/import-export/qif-imp/assistant-qif-import.c:3148 -#, fuzzy msgid "Cleaning up" -msgstr "" -"Mengklik ganda suatu kartu akan mengirimkannya ke foundation, jika itu " -"mungkin. Hal ini berguna untuk membersihkan sejumlah besar kartu pada akhir " -"permainan yang sukses." +msgstr "Membersihkan" #: gnucash/import-export/qif-imp/assistant-qif-import.c:1906 #: gnucash/import-export/qif-imp/assistant-qif-import.c:1910 msgid "A bug was detected while parsing the QIF file." -msgstr "" +msgstr "Sebuah kutu terdeteksi ketika mengurai berkas QIF." #: gnucash/import-export/qif-imp/assistant-qif-import.c:1981 -#, fuzzy msgid "Loading completed" -msgstr "tidak Selesai" +msgstr "Selesai memuat" #: gnucash/import-export/qif-imp/assistant-qif-import.c:2018 msgid "" @@ -21533,35 +21922,37 @@ msgid "" "are no errors or warnings, you will automatically proceed to the next step. " "Otherwise, the details will be shown below for your review." msgstr "" +"Ketika Anda menekan tombol Mulai, GnuCash akan memuat berkas QIF Anda. Jika " +"tidak ada galat atau peringatan, Anda akan melanjutkan ke proses berikutnya " +"secara otomatis. Jika ada galat, detailnya akan ditampilkan di bawah ini." #: gnucash/import-export/qif-imp/assistant-qif-import.c:2649 -#, fuzzy msgid "Choose the QIF file currency" -msgstr "Pilih suatu berkas PAC" +msgstr "Pilih mata uang berkas QIF" #: gnucash/import-export/qif-imp/assistant-qif-import.c:2866 msgid "You must enter an existing national currency or enter a different type." msgstr "" +"Anda harus memasukkan mata uang nasional yang ada atau masukkan tipe yang " +"berbeda." #: gnucash/import-export/qif-imp/assistant-qif-import.c:3084 #: gnucash/import-export/qif-imp/assistant-qif-import.c:3088 msgid "A bug was detected while converting the QIF data." -msgstr "" +msgstr "Sebuah kutu terdeteksi ketika mengkonversi data QIF." #: gnucash/import-export/qif-imp/assistant-qif-import.c:3139 -#, fuzzy msgid "Canceling" -msgstr "Membatalkan…" +msgstr "Membatalkan" #: gnucash/import-export/qif-imp/assistant-qif-import.c:3153 #: gnucash/import-export/qif-imp/assistant-qif-import.c:3157 msgid "A bug was detected while detecting duplicates." -msgstr "" +msgstr "Sebuah kutu terdeteksi ketika mendeteksi duplikat." #: gnucash/import-export/qif-imp/assistant-qif-import.c:3176 -#, fuzzy msgid "Conversion completed" -msgstr "tidak Selesai" +msgstr "Konversi selesai" #: gnucash/import-export/qif-imp/assistant-qif-import.c:3208 msgid "" @@ -21569,219 +21960,188 @@ msgid "" "are no errors or warnings, you will automatically proceed to the next step. " "Otherwise, the details will be shown below for your review." msgstr "" +"Ketika Anda menekan tombol Mulai, GnuCash akan mengimpor data QIF Anda. Jika " +"tidak ada galat atau peringatan, Anda akan melanjutkan ke proses berikutnya " +"secara otomatis. Jika ada galat, detailnya akan ditampilkan di bawah ini." #: gnucash/import-export/qif-imp/assistant-qif-import.c:3414 msgid "GnuCash was unable to save your mapping preferences." -msgstr "" +msgstr "GnuCash tidak dapat menyimpan preferensi pemetaan Anda." #: gnucash/import-export/qif-imp/assistant-qif-import.c:3447 -#, fuzzy, c-format +#, c-format msgid "There was a problem with the import." -msgstr "Laporkan Masalah" +msgstr "Terdapat permasalahan impor." #: gnucash/import-export/qif-imp/assistant-qif-import.c:3449 -#, fuzzy, c-format +#, c-format msgid "QIF Import Completed." -msgstr "Impor sukses diselesaikan" +msgstr "Impor QIF Selesai." #: gnucash/import-export/qif-imp/assistant-qif-import.c:3667 -#, fuzzy msgid "QIF account name" -msgstr "nama akun" +msgstr "Nama akun QIF" #: gnucash/import-export/qif-imp/assistant-qif-import.c:3673 -#, fuzzy msgid "QIF category name" -msgstr "_Nama Kategori" +msgstr "Nama kategori QIF" #: gnucash/import-export/qif-imp/assistant-qif-import.c:3679 #, fuzzy msgid "QIF payee/memo" -msgstr "penerima" +msgstr "QIF penerima pembayaran / Memo" #: gnucash/import-export/qif-imp/assistant-qif-import.c:3782 -#, fuzzy msgid "Match?" -msgstr "Cocok" +msgstr "Cocok?" #: gnucash/import-export/qif-imp/assistant-qif-import.c:3886 msgid "QIF import requires guile with regex support." -msgstr "" +msgstr "Impor QIF membutuhkan guile dengan dukungan regex." #: gnucash/import-export/qif-imp/dialog-account-picker.c:235 -#, fuzzy msgid "Enter a name for the account" -msgstr "Masukkan kata sandi untuk akun \"%s\"." +msgstr "Masukkan sebuah nama untuk akun" #: gnucash/import-export/qif-imp/dialog-account-picker.c:443 -#, fuzzy msgid "Placeholder?" -msgstr "placeholder" +msgstr "Placeholder?" #: gnucash/import-export/qif-imp/gnc-plugin-qif-import.c:48 -#, fuzzy msgid "Import _QIF..." -msgstr "_Impor" +msgstr "Impor _QIF..." #: gnucash/import-export/qif-imp/gnc-plugin-qif-import.c:49 -#, fuzzy msgid "Import a Quicken QIF file" -msgstr "Impor dari berkas…" +msgstr "Impor berkas QIF Quicken" #: gnucash/import-export/qif-imp/qif-dialog-utils.scm:34 msgid "Dividends" -msgstr "" +msgstr "Dividen" #: gnucash/import-export/qif-imp/qif-dialog-utils.scm:49 -#, fuzzy msgid "Cap Return" -msgstr "tidak kembali" +msgstr "Pengembalian Kap" #: gnucash/import-export/qif-imp/qif-dialog-utils.scm:55 -#, fuzzy msgid "Cap. gain (long)" -msgstr "keuntungan" +msgstr "Keuntungan Kap. (panjang)" #: gnucash/import-export/qif-imp/qif-dialog-utils.scm:61 -#, fuzzy msgid "Cap. gain (mid)" -msgstr "keuntungan" +msgstr "Keuntungan Kap. (menengah)" #: gnucash/import-export/qif-imp/qif-dialog-utils.scm:67 -#, fuzzy msgid "Cap. gain (short)" -msgstr "Singkat" +msgstr "Keuntungan Kap. (pendek)" #: gnucash/import-export/qif-imp/qif-dialog-utils.scm:73 #: gnucash/import-export/qif-imp/qif-dialog-utils.scm:77 -#: gnucash/report/reports/standard/balance-sheet.scm:509 +#: gnucash/report/reports/standard/balance-sheet.scm:510 #: gnucash/report/reports/standard/balsheet-pnl.scm:1108 #: gnucash/report/reports/standard/balsheet-pnl.scm:1123 #: gnucash/report/reports/support/balsheet-eg.eguile.scm:189 -#: libgnucash/app-utils/gnc-ui-util.c:945 -#, fuzzy +#: libgnucash/app-utils/gnc-ui-util.c:954 msgid "Retained Earnings" msgstr "Pendapatan Ditahan" #: gnucash/import-export/qif-imp/qif-dialog-utils.scm:81 msgid "Commissions" -msgstr "" +msgstr "Komisi" #: gnucash/import-export/qif-imp/qif-dialog-utils.scm:86 -#, fuzzy msgid "Margin Interest" -msgstr "_Margin:" +msgstr "Bunga Margin" #: gnucash/import-export/qif-imp/qif-file.scm:85 #: gnucash/import-export/qif-imp/qif-file.scm:93 -#, fuzzy msgid "Line" -msgstr "Jalur" +msgstr "Baris" #: gnucash/import-export/qif-imp/qif-file.scm:96 -#, fuzzy msgid "Read aborted." -msgstr "Dibatalkan" +msgstr "Pembacaan dibatalkan." #: gnucash/import-export/qif-imp/qif-file.scm:130 -#, fuzzy msgid "Reading" -msgstr "Galat membuka berkas untuk dibaca" +msgstr "Membaca" #: gnucash/import-export/qif-imp/qif-file.scm:160 msgid "Some characters have been discarded." -msgstr "" +msgstr "Beberapa karakter telah dibuang." #: gnucash/import-export/qif-imp/qif-file.scm:161 #: gnucash/import-export/qif-imp/qif-file.scm:165 -#, fuzzy msgid "Converted to: " -msgstr "" -"Nilai teks bagian PNG %s tidak bisa dikonversikan ke gugus karakter " -"ISO-8859-1." +msgstr "Dikonversi ke: " #: gnucash/import-export/qif-imp/qif-file.scm:164 msgid "Some characters have been converted according to your locale." -msgstr "" +msgstr "Beberapa karakter telah dikonversi berdasarkan pengaturan lokal Anda." #: gnucash/import-export/qif-imp/qif-file.scm:223 -#, fuzzy msgid "Ignoring unknown option" -msgstr "Opsi tak dikenal \"%s\"\n" +msgstr "Mengabaikan opsi tak dikenal" #: gnucash/import-export/qif-imp/qif-file.scm:357 -#, fuzzy msgid "Date required." -msgstr "Tanggal mulai diperlukan untuk tugas yang berulang" +msgstr "Tanggal diperlukan." #: gnucash/import-export/qif-imp/qif-file.scm:358 -#, fuzzy msgid "Discarding this transaction." -msgstr "transaksi" +msgstr "Membuang transaksi ini." #: gnucash/import-export/qif-imp/qif-file.scm:390 -#, fuzzy msgid "Ignoring class line" -msgstr "Mengabaikan berkas ini." +msgstr "Mengabaikan baris kelas" #: gnucash/import-export/qif-imp/qif-file.scm:458 -#, fuzzy msgid "Ignoring category line" -msgstr "Mengabaikan berkas ini." +msgstr "Mengabaikan baris kategori" #: gnucash/import-export/qif-imp/qif-file.scm:489 -#, fuzzy msgid "Ignoring security line" -msgstr "Keamanan" +msgstr "Mengabaikan baris sekuritas" #: gnucash/import-export/qif-imp/qif-file.scm:497 -#, fuzzy msgid "File does not appear to be in QIF format" -msgstr "Berkas tidak muncul untuk menjadi playlist" +msgstr "Berkas sepertinya tidak dalam format QIF" #: gnucash/import-export/qif-imp/qif-file.scm:673 -#, fuzzy msgid "Transaction date" -msgstr "transaksi" +msgstr "Tanggal transaksi" #: gnucash/import-export/qif-imp/qif-file.scm:674 -#, fuzzy msgid "Transaction amount" -msgstr "transaksi" +msgstr "Jumlah transaksi" #: gnucash/import-export/qif-imp/qif-file.scm:675 -#, fuzzy msgid "Share price" -msgstr "harga: kuotasi" +msgstr "Harga saham" #: gnucash/import-export/qif-imp/qif-file.scm:676 -#, fuzzy msgid "Share quantity" -msgstr "Berbagi" +msgstr "Kuantitas saham" #: gnucash/import-export/qif-imp/qif-file.scm:677 -#, fuzzy msgid "Investment action" -msgstr "" +msgstr "Aksi investasi" #: gnucash/import-export/qif-imp/qif-file.scm:678 -#, fuzzy msgid "Reconciliation status" -msgstr "Dengan _Status" +msgstr "Status rekonsiliasi" #: gnucash/import-export/qif-imp/qif-file.scm:679 msgid "Commission" -msgstr "" +msgstr "Komisi" #: gnucash/import-export/qif-imp/qif-file.scm:680 -#, fuzzy msgid "Account type" -msgstr "_Tipe Akun" +msgstr "Tipe akun" #: gnucash/import-export/qif-imp/qif-file.scm:681 -#, fuzzy msgid "Tax class" -msgstr "Kelas" +msgstr "Kelas pajak" #: gnucash/import-export/qif-imp/qif-file.scm:682 msgid "Category budget amount" @@ -21792,91 +22152,80 @@ msgid "Account budget amount" msgstr "Jumlah anggaran akun" #: gnucash/import-export/qif-imp/qif-file.scm:684 -#, fuzzy msgid "Credit limit" -msgstr "Kartu Kredit" +msgstr "Batas kredit" #: gnucash/import-export/qif-imp/qif-file.scm:697 -#, fuzzy msgid "Parsing categories" -msgstr "_Kategori…" +msgstr "Mengurai kategori" #: gnucash/import-export/qif-imp/qif-file.scm:729 -#, fuzzy msgid "Parsing accounts" -msgstr "Mengurai pesan" +msgstr "Mengurai akun" #: gnucash/import-export/qif-imp/qif-file.scm:770 -#, fuzzy msgid "Parsing transactions" -msgstr "Mengurai pesan" +msgstr "Mengurai transaksi" #: gnucash/import-export/qif-imp/qif-file.scm:946 -#, fuzzy msgid "Unrecognized or inconsistent format." -msgstr "Format berkas citra tak dikenali" +msgstr "Format tak dikenal atau tak konsisten." #: gnucash/import-export/qif-imp/qif-file.scm:988 -#, fuzzy msgid "Parsing failed." -msgstr "Mengurai pesan" +msgstr "Gagal mengurai." #: gnucash/import-export/qif-imp/qif-file.scm:1029 msgid "Parse ambiguity between formats" -msgstr "" +msgstr "Urai ambiguitas antar format" #: gnucash/import-export/qif-imp/qif-file.scm:1031 -#, fuzzy, scheme-format +#, scheme-format msgid "Value '~a' could be ~a or ~a." -msgstr "" -"Kualitas JPEG harus bernilai antara 0 dan 100; nilai “%s” tidak bisa diurai." +msgstr "Nilai '~a' bisa ~a atau ~a." #: gnucash/import-export/qif-imp/qif-merge-groups.scm:90 -#, fuzzy msgid "Finding duplicate transactions" -msgstr "Mencari teks" +msgstr "Mencari transaksi duplikat" #: gnucash/import-export/qif-imp/qif-parse.scm:145 #, scheme-format msgid "Unrecognized account type '~s'. Defaulting to Bank." -msgstr "" +msgstr "Tipe akun tak dikenal '~s'. Mengembalikan ke baku sebagai Bank." #: gnucash/import-export/qif-imp/qif-parse.scm:208 -#, fuzzy, scheme-format +#, scheme-format msgid "Unrecognized action '~a'." -msgstr "Aksi" +msgstr "Aksi tak dikenal '~a'." #: gnucash/import-export/qif-imp/qif-parse.scm:227 #, scheme-format msgid "Unrecognized status '~a'. Defaulting to uncleared." -msgstr "" +msgstr "Status tak dikenal '~a'. Mengembalikan ke baku sebagai belum klir." #: gnucash/import-export/qif-imp/qif-to-gnc.scm:196 msgid "QIF import: Name conflict with another account." -msgstr "" +msgstr "Impor QIF: Nama konflik dengan akun yang lain." #: gnucash/import-export/qif-imp/qif-to-gnc.scm:285 msgid "Preparing to convert your QIF data" -msgstr "" +msgstr "Menyiapkan untuk mengkonversi data QIF Anda" #: gnucash/import-export/qif-imp/qif-to-gnc.scm:336 -#, fuzzy msgid "Creating accounts" -msgstr "_Akun" +msgstr "Membuat akun" #: gnucash/import-export/qif-imp/qif-to-gnc.scm:385 msgid "Matching transfers between accounts" -msgstr "" +msgstr "Mencocokkan transfer antar akun" #: gnucash/import-export/qif-imp/qif-to-gnc.scm:403 -#, fuzzy msgid "Converting" -msgstr "Mengonversi ke warna berindeks (tahap 2)" +msgstr "Mengkonversi" #: gnucash/import-export/qif-imp/qif-to-gnc.scm:483 -#, fuzzy msgid "Missing transaction date." -msgstr "transaksi" +msgstr "Tanggal transaksi tidak ada." #: gnucash/price-quotes.scm:442 msgid "No commodities marked for quote retrieval." @@ -21892,6 +22241,8 @@ msgid "" "You are missing some needed Perl libraries.\n" "Run 'gnc-fq-update' as root to install them." msgstr "" +"Anda tidak memiliki beberapa pustaka Perl yang dibutuhkan.\n" +"Jalankan 'gnc-fq-update' sebagai root untuk memasangnya." #: gnucash/price-quotes.scm:455 #, scheme-format @@ -21913,78 +22264,76 @@ msgid "Unable to retrieve quotes for these items:" msgstr "Tak dapat mengambil harga penawaran untuk item berikut:" #: gnucash/price-quotes.scm:491 +#, fuzzy msgid "Continue using only the good quotes?" -msgstr "" +msgstr "Lanjutkan hanya menggunakan tanda kutip yang baik?" #: gnucash/price-quotes.scm:513 -#, fuzzy msgid "Unable to create prices for these items:" -msgstr "Tak dapat membuat tampilan transien: " +msgstr "Tak dapat membuat harga untuk item berikut:" #: gnucash/price-quotes.scm:517 +#, fuzzy msgid "Add remaining good quotes?" -msgstr "" +msgstr "Tambahkan sisa kutipan yang baik?" #. Translators: ~A is the version string #: gnucash/price-quotes.scm:535 #, scheme-format msgid "Found Finance::Quote version ~A." -msgstr "" +msgstr "Menemukan Finance::Quote versi ~A." #: gnucash/python/init.py:18 #: gnucash/report/reports/example/welcome-to-gnucash.scm:49 -#, fuzzy msgid "Welcome to GnuCash" -msgstr "Selamat Datang!" +msgstr "Selamat Datang di GnuCash" #: gnucash/python/init.py:103 #: gnucash/report/reports/example/hello-world.scm:486 -#, fuzzy msgid "Have a nice day!" -msgstr "Bagus" +msgstr "Semoga hari Anda menyenangkan!" #: gnucash/python/init.py:118 -#, fuzzy, python-format +#, python-format msgid "Welcome to GnuCash %s Shell" -msgstr "Gagal membuat shell dalam runtime: \"%s\"" +msgstr "Selamat Datang di Shell %s GnuCash" #: gnucash/register/ledger-core/gncEntryLedger.c:250 -#, fuzzy msgid "Hours" msgstr "Jam" #: gnucash/register/ledger-core/gncEntryLedger.c:251 -#, fuzzy msgid "Project" -msgstr "Projek" +msgstr "Proyek" #: gnucash/register/ledger-core/gncEntryLedger.c:252 -#, fuzzy msgid "Material" -msgstr "Material Belakang" +msgstr "Material" #: gnucash/register/ledger-core/gncEntryLedger.c:914 #: gnucash/register/ledger-core/gncEntryLedgerControl.c:875 -#, fuzzy msgid "Save the current entry?" -msgstr "Simpan tampilan kustom saat ini" +msgstr "Simpan entri saat ini?" #: gnucash/register/ledger-core/gncEntryLedger.c:916 msgid "" "The current transaction has been changed. Would you like to record the " "changes before duplicating this entry, or cancel the duplication?" msgstr "" +"Transaksi saat ini telah diubah. Apakah Anda ingin mencatat perubahan " +"sebelum membuat duplikat entri ini, atau membatalkan pembuatan duplikat?" #: gnucash/register/ledger-core/gncEntryLedgerControl.c:157 msgid "" "Invalid Entry: You need to supply an account in the right currency for this " "position." msgstr "" +"Entri Tidak Valid: Anda harus memberi sebuah akun dalam mata uang yang benar " +"untuk posisi ini." #: gnucash/register/ledger-core/gncEntryLedgerControl.c:184 -#, fuzzy msgid "This account should usually be of type income." -msgstr "tipe akun: Pendapatan" +msgstr "Akun ini biasanya berjenis pendapatan." #: gnucash/register/ledger-core/gncEntryLedgerControl.c:192 msgid "This account should usually be of type expense or asset." @@ -21993,7 +22342,7 @@ msgstr "Akun ini biasanya berjenis pengeluaran atau aset." #: gnucash/register/ledger-core/gncEntryLedgerControl.c:760 #, c-format msgid "The tax table %s does not exist. Would you like to create it?" -msgstr "" +msgstr "Tabel pajak %s tidak ada. Apakah Anda ingin membuatnya?" #: gnucash/register/ledger-core/gncEntryLedgerControl.c:877 msgid "" @@ -22001,18 +22350,19 @@ msgid "" "existing order. Would you like to record the change and effectively change " "your order?" msgstr "" +"Entri saat ini telah diubah. Namun, entri ini adalah bagian dari sebuah " +"pesanan yang sudah ada. Apakah Anda ingin mencatat perubahan serta mengubah " +"pesanan Anda?" #: gnucash/register/ledger-core/gncEntryLedgerControl.c:895 -#, fuzzy msgid "_Don't Record" -msgstr "_Jangan split" +msgstr "Jangan _Catat" #: gnucash/register/ledger-core/gncEntryLedgerControl.c:982 msgid "The current entry has been changed. Would you like to save it?" -msgstr "" +msgstr "Entri saat ini telah diubah. Apakah Anda ingin menyimpannya?" #: gnucash/register/ledger-core/gncEntryLedgerLayout.c:77 -#, fuzzy msgctxt "sample for a checkbox" msgid "X" msgstr "X" @@ -22020,19 +22370,14 @@ msgstr "X" #: gnucash/register/ledger-core/gncEntryLedgerLayout.c:81 msgctxt "sample for 'Date'" msgid "12/12/2000" -msgstr "" +msgstr "12/12/2000" #: gnucash/register/ledger-core/gncEntryLedgerLayout.c:86 -#, fuzzy msgctxt "sample for 'Description'" msgid "Description of an Entry" -msgstr "" -"Disediakan pula kolom deskripsi untuk menambahkan deskripsi entri pustaka. " -"Kolom opsi saat ini tidak digunakan sehingga menambahkan opsi tidak akan " -"memiliki efek apapun saat memuat pustaka." +msgstr "Deskripsi Entri" #: gnucash/register/ledger-core/gncEntryLedgerLayout.c:92 -#, fuzzy msgctxt "sample" msgid "Action" msgstr "Aksi" @@ -22041,117 +22386,110 @@ msgstr "Aksi" #: gnucash/register/ledger-core/gncEntryLedgerLayout.c:104 msgctxt "sample" msgid "9,999.00" -msgstr "" +msgstr "9,999.00" #: gnucash/register/ledger-core/gncEntryLedgerLayout.c:100 #: gnucash/register/ledger-core/gncEntryLedgerLayout.c:145 msgctxt "sample" msgid "999,999.00" -msgstr "" +msgstr "999,999.00" #. Translators: Header for Discount Type #: gnucash/register/ledger-core/gncEntryLedgerLayout.c:110 #, no-c-format msgctxt "sample for 'Discount Type'" msgid "+%" -msgstr "" +msgstr "+%" #. Translators: Header for Discount How #: gnucash/register/ledger-core/gncEntryLedgerLayout.c:116 #, no-c-format msgctxt "sample for Discount How'" msgid "+%" -msgstr "" +msgstr "+%" #. Translators: Enter the longest expected path of an Account #: gnucash/register/ledger-core/gncEntryLedgerLayout.c:122 #: gnucash/register/ledger-core/gncEntryLedgerLayout.c:127 #: gnucash/register/ledger-core/split-register-layout.c:727 #: gnucash/register/ledger-core/split-register-layout.c:735 -#, fuzzy msgctxt "sample" msgid "Expenses:Automobile:Gasoline" -msgstr "Waktu & Pengeluaran" +msgstr "Pengeluaran:Kendaraan:Bahan Bakar" #. Translators: Abbreviation sample for Taxable? #: gnucash/register/ledger-core/gncEntryLedgerLayout.c:132 -#, fuzzy msgctxt "sample for 'Taxable'" msgid "T?" -msgstr "%T" +msgstr "T?" #. Translators: Abbreviation sample for Tax Included #: gnucash/register/ledger-core/gncEntryLedgerLayout.c:137 -#, fuzzy msgctxt "sample for 'Tax Included'" msgid "TI" -msgstr "_Waktu dan tanggal:" +msgstr "TI" #: gnucash/register/ledger-core/gncEntryLedgerLayout.c:141 -#, fuzzy msgctxt "sample for 'Tax Table'" msgid "Tax Table 1" -msgstr "kode pajak" +msgstr "Tabel Pajak 1" #: gnucash/register/ledger-core/gncEntryLedgerLayout.c:149 msgctxt "sample" msgid "999.00" -msgstr "" +msgstr "999.00" #. Translators: Abbreviation sample for Billable #: gnucash/register/ledger-core/gncEntryLedgerLayout.c:154 msgctxt "sample for 'Billable'" msgid "BI" -msgstr "" +msgstr "BI" #: gnucash/register/ledger-core/gncEntryLedgerLayout.c:158 -#, fuzzy msgctxt "sample" msgid "Payment" -msgstr "pembayaran" +msgstr "Pembayaran" #: gnucash/register/ledger-core/gncEntryLedgerLoad.c:53 msgid "$" -msgstr "" +msgstr "Rp" #: gnucash/register/ledger-core/gncEntryLedgerLoad.c:67 msgid "<" -msgstr "" +msgstr "<" #: gnucash/register/ledger-core/gncEntryLedgerLoad.c:69 msgid "=" -msgstr "" +msgstr "=" #: gnucash/register/ledger-core/gncEntryLedgerLoad.c:71 msgid ">" -msgstr "" +msgstr ">" #: gnucash/register/ledger-core/gncEntryLedgerLoad.c:130 #: gnucash/register/ledger-core/gncEntryLedgerModel.c:527 #: gnucash/register/ledger-core/gncEntryLedgerModel.c:1091 -#: gnucash/report/report-utilities.scm:103 libgnucash/engine/Account.cpp:4315 +#: gnucash/report/report-utilities.scm:115 libgnucash/engine/Account.cpp:4362 #, fuzzy msgid "Cash" -msgstr "tunai" +msgstr "Tunai" #: gnucash/register/ledger-core/gncEntryLedgerModel.c:47 -#, fuzzy msgid "Income Account" -msgstr "tipe akun: Pendapatan" +msgstr "Akun Pendapatan" #: gnucash/register/ledger-core/gncEntryLedgerModel.c:52 msgid "Expense Account" msgstr "Akun Pengeluaran" #: gnucash/register/ledger-core/gncEntryLedgerModel.c:77 -#, fuzzy msgid "Discount Type" -msgstr "diskon" +msgstr "Tipe Diskon" #: gnucash/register/ledger-core/gncEntryLedgerModel.c:82 #, fuzzy msgid "Discount How" -msgstr "diskon" +msgstr "diskon Bagaimana" #: gnucash/register/ledger-core/gncEntryLedgerModel.c:87 #: gnucash/report/reports/standard/invoice.scm:96 @@ -22159,42 +22497,40 @@ msgstr "diskon" #: gnucash/report/reports/standard/receipt.scm:121 #: gnucash/report/reports/standard/taxinvoice.scm:111 #: gnucash/report/reports/standard/taxinvoice.scm:179 -#, fuzzy msgid "Unit Price" -msgstr "_Unit:" +msgstr "Satuan Harga" #: gnucash/register/ledger-core/gncEntryLedgerModel.c:102 msgid "Taxable?" -msgstr "" +msgstr "Kena pajak?" #: gnucash/register/ledger-core/gncEntryLedgerModel.c:107 -#, fuzzy msgid "Tax Included?" -msgstr "kode pajak" +msgstr "Termasuk Pajak?" #: gnucash/register/ledger-core/gncEntryLedgerModel.c:112 +#, fuzzy msgid "Invoiced?" -msgstr "" +msgstr "Ditagih?" #: gnucash/register/ledger-core/gncEntryLedgerModel.c:117 #: gnucash/report/options-utilities.scm:221 #: gnucash/report/reports/standard/invoice.scm:262 -#, fuzzy msgid "Subtotal" -msgstr "subtotal" +msgstr "Subtotal" #: gnucash/register/ledger-core/gncEntryLedgerModel.c:122 #: gnucash/report/reports/standard/invoice.scm:551 #: gnucash/report/reports/standard/new-owner-report.scm:55 #: gnucash/report/reports/standard/owner-report.scm:56 #: libgnucash/app-utils/app-utils.scm:268 -#, fuzzy msgid "Tax" -msgstr "kode pajak" +msgstr "Pajak" #: gnucash/register/ledger-core/gncEntryLedgerModel.c:127 +#, fuzzy msgid "Billable?" -msgstr "" +msgstr "Ditagih?" #: gnucash/register/ledger-core/gncEntryLedgerModel.c:545 msgid "" @@ -22204,149 +22540,140 @@ msgstr "" "dari daftar" #: gnucash/register/ledger-core/gncEntryLedgerModel.c:558 -#, fuzzy msgid "Enter the type of Entry" -msgstr "Entri kamus bertipe ‘{ss}’" +msgstr "Masukkan tipe Entri" #: gnucash/register/ledger-core/gncEntryLedgerModel.c:588 -#, fuzzy msgid "Enter the Entry Description" -msgstr "Deskripsi" +msgstr "Masukkan Deskripsi Entri" #: gnucash/register/ledger-core/gncEntryLedgerModel.c:604 -#, fuzzy msgid "Enter the Discount Amount" -msgstr "diskon" +msgstr "Masukkan Jumlah Diskon" #: gnucash/register/ledger-core/gncEntryLedgerModel.c:607 -#, fuzzy msgid "Enter the Discount Percent" -msgstr "Persen" +msgstr "Masukkan Persentase Diskon" #: gnucash/register/ledger-core/gncEntryLedgerModel.c:610 -#, fuzzy msgid "Enter the Discount ... unknown type" -msgstr "Jenis peringatan tak dikenal" +msgstr "Masukkan Diskon ... tipe tak diketahui" #: gnucash/register/ledger-core/gncEntryLedgerModel.c:628 #, fuzzy msgid "Discount Type: Monetary Value" -msgstr "Tuple kosong, tipe dan nilai “()”" +msgstr "Diskon Jenis: Moneter Nilai" #: gnucash/register/ledger-core/gncEntryLedgerModel.c:631 -#, fuzzy msgid "Discount Type: Percent" -msgstr "diskon" +msgstr "Tipe Diskon: Persen" #: gnucash/register/ledger-core/gncEntryLedgerModel.c:634 -#, fuzzy msgid "Select the Discount Type" -msgstr "diskon" +msgstr "Pilih Tipe Diskon" #: gnucash/register/ledger-core/gncEntryLedgerModel.c:651 msgid "Tax computed after discount is applied" -msgstr "" +msgstr "Pajak dihitung setelah diskon diterapkan" #: gnucash/register/ledger-core/gncEntryLedgerModel.c:654 +#, fuzzy msgid "Discount and tax both applied on pretax value" -msgstr "" +msgstr "Diskon dan pajak baik diterapkan pada nilai sebelum pajak" #: gnucash/register/ledger-core/gncEntryLedgerModel.c:657 msgid "Discount computed after tax is applied" -msgstr "" +msgstr "Diskon dihitung setelah pajak diterapkan" #: gnucash/register/ledger-core/gncEntryLedgerModel.c:660 msgid "Select how to compute the Discount and Taxes" -msgstr "" +msgstr "Pilih bagaimana perhitungan Diskon dan Pajak" #: gnucash/register/ledger-core/gncEntryLedgerModel.c:673 -#, fuzzy msgid "Enter the unit-Price for this Entry" -msgstr "Masukkan kata sandi Anda dalam kotak entri kata sandi." +msgstr "Masukkan Harga-satuan untuk Entri ini" #: gnucash/register/ledger-core/gncEntryLedgerModel.c:685 -#, fuzzy msgid "Enter the Quantity of units for this Entry" -msgstr "Masukkan kata sandi Anda dalam kotak entri kata sandi." +msgstr "Masukkan Kuantitas untuk satuan pada Entri ini" #: gnucash/register/ledger-core/gncEntryLedgerModel.c:697 msgid "Enter the Tax Table to apply to this entry" -msgstr "" +msgstr "Masukkan Tabel Pajak yang diterapkan pada entri ini" #: gnucash/register/ledger-core/gncEntryLedgerModel.c:706 -#, fuzzy msgid "Is this entry taxable?" -msgstr "Suatu entri" +msgstr "Apakah entri ini kena pajak?" #: gnucash/register/ledger-core/gncEntryLedgerModel.c:715 msgid "Is the tax already included in the price of this entry?" -msgstr "" +msgstr "Apakah pajak telah termasuk dalam harga entri ini?" #: gnucash/register/ledger-core/gncEntryLedgerModel.c:733 #, fuzzy msgid "Is this entry invoiced?" -msgstr "Suatu entri" +msgstr "Apakah entri ini ditagih?" #: gnucash/register/ledger-core/gncEntryLedgerModel.c:739 #, fuzzy msgid "Is this entry credited?" -msgstr "Suatu entri" +msgstr "Apakah entri ini dikreditkan?" #: gnucash/register/ledger-core/gncEntryLedgerModel.c:743 -#, fuzzy msgid "Include this entry on this invoice?" -msgstr "faktur" +msgstr "Sertakan entri ini pada faktur?" #: gnucash/register/ledger-core/gncEntryLedgerModel.c:747 -#, fuzzy msgid "Include this entry on this credit note?" -msgstr "nota kredit" +msgstr "Sertakan entri ini pada catatan kredit?" #: gnucash/register/ledger-core/gncEntryLedgerModel.c:750 #, fuzzy msgid "Unknown EntryLedger Type" -msgstr "Jenis peringatan tak dikenal" +msgstr "EntryLedger diketahui Jenis" #: gnucash/register/ledger-core/gncEntryLedgerModel.c:763 -#, fuzzy msgid "The subtotal value of this entry " -msgstr "subtotal" +msgstr "Nilai subtotal untuk entri ini " #: gnucash/register/ledger-core/gncEntryLedgerModel.c:775 -#, fuzzy msgid "The total tax of this entry " -msgstr "kode pajak" +msgstr "Total pajak untuk entri ini " #: gnucash/register/ledger-core/gncEntryLedgerModel.c:784 msgid "Is this entry billable to a customer or job?" -msgstr "" +msgstr "Apakah entri ini bisa ditagihkan ke pelanggan atau pekerjaan?" #: gnucash/register/ledger-core/gncEntryLedgerModel.c:793 msgid "How did you pay for this item?" -msgstr "" +msgstr "Bagaimana Anda membayar item ini?" #: gnucash/register/ledger-core/split-register.c:192 msgid "" "This transaction is already being edited in another register. Please finish " "editing it there first." msgstr "" +"Transaksi ini sedang disunting di register yang lain. Silakan menyelesaikan " +"penyuntingan terlebih dahulu." #: gnucash/register/ledger-core/split-register.c:459 -#, fuzzy msgid "Save transaction before duplicating?" -msgstr "Selalu simpan pekerjaan Anda sebelum suspensi" +msgstr "Simpan transaksi sebelum membuat duplikat?" #: gnucash/register/ledger-core/split-register.c:461 msgid "" "The current transaction has been changed. Would you like to record the " "changes before duplicating the transaction, or cancel the duplication?" msgstr "" +"Transaksi saat ini telah diubah. Apakah Anda ingin mencatat perubahan " +"sebelum membuat duplikat transaksi ini, atau membatalkan pembuatan duplikat?" #: gnucash/register/ledger-core/split-register.c:945 msgid "" "You are about to overwrite an existing split. Are you sure you want to do " "that?" msgstr "" +"Anda akan menimpa split yang sudah ada. Apakah Anda yakin ingin melakukannya?" #: gnucash/register/ledger-core/split-register.c:947 msgid "" @@ -22354,25 +22681,29 @@ msgid "" "overwrite it from this register window. You may overwrite it if you navigate " "to a register that shows another side of this same transaction." msgstr "" +"Ini adalah split sebagai jangkar transaksi ini ke register. Anda tidak dapat " +"menimpanya dari jendela register. Anda bisa menimpanya jika Anda menavigasi " +"ke register yang menampilkan sisi yang lain dari transaksi yang sama ini." #: gnucash/register/ledger-core/split-register.c:1005 msgid "" "You are about to overwrite an existing transaction. Are you sure you want to " "do that?" msgstr "" +"Anda akan menimpa transaksi yang sudah ada. Apakah Anda yakin ingin " +"melakukannya?" #: gnucash/register/ledger-core/split-register-control.c:1351 msgid "You need to select a split in order to modify its exchange rate." -msgstr "" +msgstr "Anda harus memilih sebuah split untuk mengubah nilai tukarnya." #: gnucash/register/ledger-core/split-register-control.c:1378 -#, fuzzy msgid "The entered account could not be found." -msgstr "Repositori tidak dapat ditemukan di “%s”." +msgstr "Akun yang dimasukkan tak dapat ditemukan." #: gnucash/register/ledger-core/split-register-control.c:1477 msgid "The split's amount is zero, so no exchange rate is needed." -msgstr "" +msgstr "Jumlah split adalah nol, sehingga nilai tukar tidak diperlukan." #: gnucash/register/ledger-core/split-register-control.c:1528 msgid "" @@ -22380,6 +22711,9 @@ msgid "" "changes before moving to a new transaction, discard the changes, or return " "to the changed transaction?" msgstr "" +"Transaksi saat ini telah diubah. Apakah Anda ingin mencatat perubahan " +"sebelum berpindah ke transaksi yang baru, membatalkan perubahan, atau " +"kembali ke transaksi yang diubah?" #. Translators: The 'sample:' items are #. strings which are not displayed, but only @@ -22388,7 +22722,7 @@ msgstr "" #: gnucash/register/ledger-core/split-register-layout.c:652 msgctxt "sample" msgid "22/02/2000" -msgstr "" +msgstr "22/02/2000" #. Translators: The 'sample' items are #. strings which are not displayed, but only @@ -22400,10 +22734,9 @@ msgid "99999" msgstr "" #: gnucash/register/ledger-core/split-register-layout.c:679 -#, fuzzy msgctxt "sample" msgid "Description of a transaction" -msgstr "transaksi" +msgstr "Deskripsi transaksi" #. Translators: 'L' is short for Linked Document #: gnucash/register/ledger-core/split-register-layout.c:703 @@ -22413,7 +22746,7 @@ msgstr "transaksi" #: gnucash/report/trep-engine.scm:1258 gnucash/report/trep-engine.scm:1259 msgctxt "Column header for 'Document Link'" msgid "L" -msgstr "" +msgstr "L" #: gnucash/register/ledger-core/split-register-layout.c:711 #: gnucash/register/ledger-core/split-register-layout.c:751 @@ -22427,7 +22760,7 @@ msgstr "" #: gnucash/register/ledger-core/split-register-layout.c:857 msgctxt "sample" msgid "999,999.000" -msgstr "" +msgstr "999,999.000" #: gnucash/register/ledger-core/split-register-layout.c:743 msgctxt "sample" @@ -22435,10 +22768,9 @@ msgid "Memo field sample text string" msgstr "Contoh string teks bidang memo" #: gnucash/register/ledger-core/split-register-layout.c:817 -#, fuzzy msgctxt "Column header for 'Type'" msgid "T" -msgstr "L" +msgstr "T" #: gnucash/register/ledger-core/split-register-layout.c:825 msgctxt "sample" @@ -22446,133 +22778,139 @@ msgid "Notes field sample text string" msgstr "Contoh string teks bidang catatan" #: gnucash/register/ledger-core/split-register-layout.c:833 -#, fuzzy msgctxt "sample" msgid "No Particular Reason" -msgstr "Alasan:" +msgstr "Tak Ada Alasan Khusus" #: gnucash/register/ledger-core/split-register-layout.c:841 #: gnucash/register/ledger-core/split-register-layout.c:849 -#, fuzzy msgctxt "sample" msgid "(x + 0.33 * y + (x+y) )" -msgstr "Posisi jendela (x dan y)" +msgstr "(x + 0.33 * y + (x+y) )" #: gnucash/register/ledger-core/split-register-load.c:283 msgid "" "Could not determine the account currency. Using the default currency " "provided by your system." msgstr "" +"Tak bisa menentukan mata uang akun. Menggunakan mata uang baku yang " +"disediakan sistem." #: gnucash/register/ledger-core/split-register-model.c:253 -#, fuzzy msgid "Ref" -msgstr "Acuan pengawakutuan yang mencacah masalah bagi CoglObjects" +msgstr "Ref" #: gnucash/register/ledger-core/split-register-model.c:269 -#, fuzzy msgid "T-Ref" -msgstr "Mendorong ref \"%s\"" +msgstr "T-Ref" #: gnucash/register/ledger-core/split-register-model.c:278 #: gnucash/report/reports/standard/register.scm:134 -#, fuzzy msgid "T-Num" -msgstr "%T" +msgstr "T-Num" #: gnucash/register/ledger-core/split-register-model.c:404 -#, fuzzy msgid "Exch. Rate" -msgstr "Suku Bunga" +msgstr "Nilai Tukar" #: gnucash/register/ledger-core/split-register-model.c:421 -#, fuzzy msgid "Oth. Curr." -msgstr "Pasfrasa S_ekarang" +msgstr "Mata Uang Lain." #: gnucash/register/ledger-core/split-register-model.c:438 #: gnucash/register/ledger-core/split-register-model.c:462 -#, fuzzy, c-format +#, c-format msgid "Tot %s" -msgstr "Tot" +msgstr "Tot %s" #: gnucash/register/ledger-core/split-register-model.c:444 -#, fuzzy msgid "Tot Credit" -msgstr "Tot" +msgstr "Tot Kredit" #: gnucash/register/ledger-core/split-register-model.c:468 -#, fuzzy msgid "Tot Debit" -msgstr "Tot" +msgstr "Tot Debit" #: gnucash/register/ledger-core/split-register-model.c:477 -#, fuzzy msgid "Tot Shares" -msgstr "Tot" +msgstr "Tot Saham" #: gnucash/register/ledger-core/split-register-model.c:536 -#, fuzzy, c-format +#, c-format msgid "Reconciled on %s" -msgstr "status transaksi: rekonsiliasi" +msgstr "Direkonsiliasi pada %s" #: gnucash/register/ledger-core/split-register-model.c:1013 -#, fuzzy msgid "Scheduled" -msgstr "Pengingat dijadwalkan pada {0,date} {0,time}." +msgstr "Terjadwal" #: gnucash/register/ledger-core/split-register-model.c:1062 msgid "" "Enter a reference, such as an invoice or check number, common to all entry " "lines (splits)" msgstr "" +"Masukkan referensi, seperti nomor faktur atau cek, umum untuk semua baris " +"entri (split)" #: gnucash/register/ledger-core/split-register-model.c:1064 msgid "" "Enter a reference, such as an invoice or check number, unique to each entry " "line (split)" msgstr "" +"Masukkan referensi, seperti nomor faktur atau cek, unik untuk tiap baris " +"entri (split)" #: gnucash/register/ledger-core/split-register-model.c:1069 msgid "" "Enter a reference, such as a check number, common to all entry lines (splits)" msgstr "" +"Masukkan referensi, seperti nomor cek, umum untuk semua baris entri (split)" #: gnucash/register/ledger-core/split-register-model.c:1071 msgid "" "Enter a reference, such as a check number, unique to each entry line (split)" msgstr "" +"Masukkan referensi, seperti nomor cek, unik untuk tiap baris entri (split)" #: gnucash/register/ledger-core/split-register-model.c:1092 msgid "" "Enter a transaction reference, such as an invoice or check number, common to " "all entry lines (splits)" msgstr "" +"Masukkan referensi transaksi, seperti nomor faktur atau cek, umum untuk " +"semua baris entri (split)" #: gnucash/register/ledger-core/split-register-model.c:1096 msgid "" "Enter a transaction reference that will be common to all entry lines (splits)" msgstr "" +"Masukkan referensi transaksi yang akan menjadi umum untuk semua baris entri " +"(split)" #: gnucash/register/ledger-core/split-register-model.c:1301 msgid "Enter an action type, or choose one from the list" -msgstr "" +msgstr "Masukkan tipe aksi, atau pilih salah satu dari daftar" #: gnucash/register/ledger-core/split-register-model.c:1302 msgid "" "Enter a reference number, such as the next check number, or choose an action " "type from the list" msgstr "" +"Masukkan nomor referensi, seperti nomor cek berikutnya, atau pilih sebuah " +"tipe aksi dari daftar" #: gnucash/register/ledger-core/split-register-model.c:1569 msgid "" "This transaction has multiple splits; press the Split button to see them all" msgstr "" +"Transaksi ini memiliki beberapa split; tekan tombol Split untuk menampilkan " +"semua" #: gnucash/register/ledger-core/split-register-model.c:1572 msgid "" "This transaction is a stock split; press the Split button to see details" msgstr "" +"Transaksi ini adalah split saham; tekan tombol Split untuk melihat detailnya" #: gnucash/register/ledger-core/split-register-model.c:2091 #, c-format @@ -22582,10 +22920,14 @@ msgid "" "\n" "'%s'" msgstr "" +"Tak dapat mengubah atau menghapus transaksi ini. Transaksi ini ditandai " +"hanya-baca karena:\n" +"\n" +"'%s'" #: gnucash/register/ledger-core/split-register-model.c:2215 msgid "Change transaction containing a reconciled split?" -msgstr "" +msgstr "Ubah transaksi yang mengandung split direkonsiliasi?" #: gnucash/register/ledger-core/split-register-model.c:2217 #, c-format @@ -22596,6 +22938,11 @@ msgid "" "\n" "Are you sure you want to continue with this change ?" msgstr "" +"Transaksi yang akan Anda ubah mengandung split direkonsiliasi pada akun " +"berikut:\n" +"%s\n" +"\n" +"Apakah Anda yakin ingin melanjutkan perubahan ini?" #: gnucash/register/ledger-core/split-register-model.c:2228 msgid "" @@ -22603,21 +22950,25 @@ msgid "" "continue editing this split it will be unreconciled. This might make future " "reconciliation difficult! Continue with this change?" msgstr "" -"Anda akan mengubah sebuah bidang yang terproteksi dari sebuah pemecahan yang " -"direkonsiliasi. Jika Anda melanjutkan menyunting pemecahan ini, ia akan " -"menjadi tak-direkonsiliasi. Hal ini mungkin akan mengakibatkan rekonsiliasi " -"di masa depan menjadi sulit! Lanjutkan dengan perubahan ini?" +"Anda akan mengubah sebuah bidang yang terproteksi dari sebuah split yang " +"direkonsiliasi. Jika Anda melanjutkan menyunting split ini, ia akan menjadi " +"tak-direkonsiliasi. Hal ini mungkin akan mengakibatkan rekonsiliasi di masa " +"depan menjadi sulit! Lanjutkan dengan perubahan ini?" #: gnucash/register/ledger-core/split-register-model.c:2253 msgid "Chan_ge Transaction" msgstr "U_bah Transaksi" #: gnucash/register/register-gnome/datecell-gnome.c:103 +#, fuzzy msgid "" "The entered date of the transaction is older than the \"Read-Only Threshold" "\" set for this book. This setting can be changed in File->Properties-" ">Accounts, resetting to the threshold." msgstr "" +"tanggal masuk transaksi lebih tua dari \"Read-Only Threshold\" ditetapkan " +"untuk buku ini. Pengaturan ini dapat diubah dalam File-> Properties> " +"Account, ulang untuk ambang batas." #: gnucash/register/register-gnome/gnucash-item-list.c:528 msgid "List" @@ -22637,79 +22988,81 @@ msgstr "Menyesuaikan Entri" msgid "Load" msgstr "Muat" -#: gnucash/report/html-fonts.scm:68 gnucash/report/html-fonts.scm:73 -#: gnucash/report/html-fonts.scm:78 gnucash/report/html-fonts.scm:83 -#: gnucash/report/html-fonts.scm:88 gnucash/report/html-fonts.scm:93 -#: gnucash/report/html-fonts.scm:98 gnucash/report/html-fonts.scm:104 -#: gnucash/report/html-fonts.scm:110 +#: gnucash/report/html-fonts.scm:92 gnucash/report/html-fonts.scm:97 +#: gnucash/report/html-fonts.scm:102 gnucash/report/html-fonts.scm:107 +#: gnucash/report/html-fonts.scm:112 gnucash/report/html-fonts.scm:117 +#: gnucash/report/html-fonts.scm:122 gnucash/report/html-fonts.scm:128 +#: gnucash/report/html-fonts.scm:134 msgid "Fonts" msgstr "Fonta" -#: gnucash/report/html-fonts.scm:69 +#: gnucash/report/html-fonts.scm:93 msgid "Font info for the report title." msgstr "Informasi fonta untuk judul laporan." -#: gnucash/report/html-fonts.scm:74 +#: gnucash/report/html-fonts.scm:98 msgid "Account link" msgstr "Tautan akun" -#: gnucash/report/html-fonts.scm:74 +#: gnucash/report/html-fonts.scm:98 msgid "Font info for account name." msgstr "Informasi fonta untuk nama akun." -#: gnucash/report/html-fonts.scm:79 +#: gnucash/report/html-fonts.scm:103 msgid "Number cell" msgstr "Sel nomor" -#: gnucash/report/html-fonts.scm:79 +#: gnucash/report/html-fonts.scm:103 msgid "Font info for regular number cells." msgstr "Informasi fonta untuk sel nomor reguler." -#: gnucash/report/html-fonts.scm:84 +#: gnucash/report/html-fonts.scm:108 msgid "Negative Values in Red" msgstr "Nilai Negatif dalam warna Merah" -#: gnucash/report/html-fonts.scm:84 +#: gnucash/report/html-fonts.scm:108 msgid "Display negative values in red." msgstr "Tampilkan nilai negatif dalam warna merah." -#: gnucash/report/html-fonts.scm:89 +#: gnucash/report/html-fonts.scm:113 +#, fuzzy msgid "Number header" -msgstr "" +msgstr "sundulan nomor" -#: gnucash/report/html-fonts.scm:89 +#: gnucash/report/html-fonts.scm:113 +#, fuzzy msgid "Font info for number headers." -msgstr "" +msgstr "Info font untuk nomor header." -#: gnucash/report/html-fonts.scm:94 +#: gnucash/report/html-fonts.scm:118 msgid "Text cell" msgstr "Sel teks" -#: gnucash/report/html-fonts.scm:94 +#: gnucash/report/html-fonts.scm:118 msgid "Font info for regular text cells." msgstr "Informasi fonta untuk sel teks reguler." -#: gnucash/report/html-fonts.scm:99 +#: gnucash/report/html-fonts.scm:123 msgid "Total number cell" msgstr "Sel jumlah total" -#: gnucash/report/html-fonts.scm:100 +#: gnucash/report/html-fonts.scm:124 msgid "Font info for number cells containing a total." msgstr "Informasi fonta untuk sel angka berisi jumlah total." -#: gnucash/report/html-fonts.scm:105 +#: gnucash/report/html-fonts.scm:129 msgid "Total label cell" msgstr "Sel label total" -#: gnucash/report/html-fonts.scm:106 +#: gnucash/report/html-fonts.scm:130 msgid "Font info for cells containing total labels." msgstr "Informasi fonta untuk sel yang berisi label total." -#: gnucash/report/html-fonts.scm:111 +#: gnucash/report/html-fonts.scm:135 msgid "Centered label cell" msgstr "Sel label ditengahkan" -#: gnucash/report/html-fonts.scm:111 +#: gnucash/report/html-fonts.scm:135 msgid "Font info for centered label cells." msgstr "Informasi fonta untuk sel label ditengahkan." @@ -22717,43 +23070,43 @@ msgstr "Informasi fonta untuk sel label ditengahkan." msgid "Can't save style sheet" msgstr "Tak dapat menyimpan lembar gaya" -#: gnucash/report/html-utilities.scm:227 +#: gnucash/report/html-utilities.scm:229 gnucash/report/html-utilities.scm:246 +#, fuzzy +#| msgid "Exchange rate" msgid "Exchange rate" -msgstr "Kurs" +msgid_plural "Exchange rates" +msgstr[0] "Nilai tukar" +msgstr[1] "Nilai tukar" -#: gnucash/report/html-utilities.scm:228 -msgid "Exchange rates" -msgstr "Kurs" - -#: gnucash/report/html-utilities.scm:235 +#: gnucash/report/html-utilities.scm:259 msgid "No budgets exist. You must create at least one budget." msgstr "Tidak ada anggaran. Anda harus membuat setidaknya satu anggaran." -#: gnucash/report/html-utilities.scm:268 +#: gnucash/report/html-utilities.scm:292 #: gnucash/report/reports/standard/balsheet-pnl.scm:137 #: gnucash/report/reports/standard/balsheet-pnl.scm:138 #: gnucash/report/reports/standard/new-owner-report.scm:935 msgid "Disabled" msgstr "Dinonaktifkan" -#: gnucash/report/html-utilities.scm:321 +#: gnucash/report/html-utilities.scm:345 msgid "This report requires you to specify certain report options." -msgstr "" +msgstr "Anda perlu menentukan beberapa opsi laporan untuk laporan ini." -#: gnucash/report/html-utilities.scm:328 +#: gnucash/report/html-utilities.scm:352 msgid "No accounts selected" msgstr "Tak ada akun yang dipilih" -#: gnucash/report/html-utilities.scm:329 +#: gnucash/report/html-utilities.scm:353 msgid "This report requires accounts to be selected in the report options." msgstr "Laporan ini memerlukan akun yang dipilih pada opsi laporan." -#: gnucash/report/html-utilities.scm:336 +#: gnucash/report/html-utilities.scm:360 #: gnucash/report/reports/standard/price-scatter.scm:276 msgid "No data" msgstr "Tak ada data" -#: gnucash/report/html-utilities.scm:337 +#: gnucash/report/html-utilities.scm:361 msgid "" "The selected accounts contain no data/transactions (or only zeroes) for the " "selected time period" @@ -22879,12 +23232,13 @@ msgstr "Tingkat-enam." #: gnucash/report/options-utilities.scm:86 msgid "Show accounts to this depth, overriding any other option." -msgstr "" +msgstr "Tampilkan akun hingga kedalaman ini, mengabaikan opsi lainnya." #: gnucash/report/options-utilities.scm:94 msgid "" "Override account-selection and show sub-accounts of all selected accounts?" msgstr "" +"Abaikan pemilihan-akun dan tampilkan sub-akun untuk semua akun yang dipilih?" #: gnucash/report/options-utilities.scm:107 #: gnucash/report/reports/standard/account-summary.scm:87 @@ -22893,39 +23247,37 @@ msgstr "" #: gnucash/report/reports/standard/budget-balance-sheet.scm:54 #: gnucash/report/reports/standard/budget-income-statement.scm:76 #: gnucash/report/reports/standard/income-statement.scm:64 +#, fuzzy msgid "Report on these accounts, if display depth allows." -msgstr "" +msgstr "Melaporkan account tersebut, jika kedalaman layar memungkinkan." #: gnucash/report/options-utilities.scm:119 msgid "Select the currency to display the values of this report in." -msgstr "" +msgstr "Pilih mata uang untuk menampilkan nilai di dalam laporan ini." #: gnucash/report/options-utilities.scm:129 #: gnucash/report/reports/standard/advanced-portfolio.scm:80 #: gnucash/report/reports/standard/price-scatter.scm:87 -#, fuzzy msgid "The source of price information." -msgstr "harga" +msgstr "Sumber informasi harga." #: gnucash/report/options-utilities.scm:131 -#, fuzzy msgid "Average Cost" -msgstr "rata-rata" +msgstr "Biaya Rata-rata" #: gnucash/report/options-utilities.scm:132 msgid "The volume-weighted average cost of purchases." -msgstr "" +msgstr "Biaya pembelian rata-rata tertimbang-volume." #: gnucash/report/options-utilities.scm:134 #: gnucash/report/reports/standard/price-scatter.scm:90 -#, fuzzy msgid "Weighted Average" -msgstr "Rata-rata:" +msgstr "Rata-rata Tertimbang" #: gnucash/report/options-utilities.scm:135 #: gnucash/report/reports/standard/price-scatter.scm:91 msgid "The weighted average of all currency transactions of the past." -msgstr "" +msgstr "Rata-rata tertimbang untuk semua transaksi mata uang yang telah lalu." #: gnucash/report/options-utilities.scm:137 #: gnucash/report/reports/standard/advanced-portfolio.scm:82 @@ -22935,32 +23287,29 @@ msgstr "Terkini" #: gnucash/report/options-utilities.scm:138 #: gnucash/report/reports/standard/advanced-portfolio.scm:83 msgid "The most recent recorded price." -msgstr "Harga yang terkini dicatat." +msgstr "Harga tercatat yang paling baru." #: gnucash/report/options-utilities.scm:140 #: gnucash/report/reports/standard/advanced-portfolio.scm:85 -#, fuzzy msgid "Nearest in time" -msgstr "Waktu awal bukan waktu yang valid" +msgstr "Paling dekat dalam waktu" #: gnucash/report/options-utilities.scm:141 #: gnucash/report/reports/standard/advanced-portfolio.scm:86 msgid "The price recorded nearest in time to the report date." -msgstr "" +msgstr "Harga yang dicatat paling dekat dengan tanggal laporan." #: gnucash/report/options-utilities.scm:154 -#, fuzzy msgid "Width of plot in pixels." -msgstr "Lebar blok dalam piksel" +msgstr "Lebar plot dalam piksel." #: gnucash/report/options-utilities.scm:162 -#, fuzzy msgid "Height of plot in pixels." -msgstr "Tinggi blok dalam piksel" +msgstr "Tinggi plot dalam piksel." #: gnucash/report/options-utilities.scm:173 msgid "Choose the marker for each data point." -msgstr "" +msgstr "Pilih penanda untuk tiap poin data." #: gnucash/report/options-utilities.scm:176 msgid "Diamond" @@ -23044,66 +23393,65 @@ msgstr "Menurut jumlah, terbesar ke terkecil." #: gnucash/report/options-utilities.scm:215 msgid "How to show the balances of parent accounts." -msgstr "" +msgstr "Bagaimana menampilkan saldo akun induk." #: gnucash/report/options-utilities.scm:218 #: gnucash/report/reports/standard/account-summary.scm:113 -#, fuzzy msgid "Account Balance" -msgstr "seimbangkan" +msgstr "Saldo Akun" #: gnucash/report/options-utilities.scm:219 msgid "Show only the balance in the parent account, excluding any subaccounts." -msgstr "" +msgstr "Tampilkan hanya saldo di akun induk, mengecualikan semua sub-akun." #: gnucash/report/options-utilities.scm:222 msgid "" "Calculate the subtotal for this parent account and all of its subaccounts, " "and show this as the parent account balance." msgstr "" +"Hitung subtotal untuk akun induk ini dan semua sub-akun, dan tampilkan " +"sebagai saldo akun induk." #: gnucash/report/options-utilities.scm:224 #: gnucash/report/options-utilities.scm:239 -#, fuzzy msgid "Do not show" -msgstr "Jangan menunjukkan perbedaan untuk berkas yang telah dihapus" +msgstr "Jangan tampilkan" #: gnucash/report/options-utilities.scm:225 msgid "Do not show any balances of parent accounts." -msgstr "" +msgstr "Jangan menampilkan saldo akun induk." #: gnucash/report/options-utilities.scm:233 msgid "How to show account subtotals for parent accounts." -msgstr "" +msgstr "Bagaimana menampilkan subtotal akun untuk akun induk." #: gnucash/report/options-utilities.scm:236 -#, fuzzy msgid "Show subtotals" -msgstr "Tampilkan:" +msgstr "Tampilkan subtotal" #: gnucash/report/options-utilities.scm:237 msgid "Show subtotals for selected parent accounts which have subaccounts." -msgstr "" +msgstr "Tampilkan subtotal untuk akun induk terpilih yang memiliki sub-akun." #: gnucash/report/options-utilities.scm:240 msgid "Do not show any subtotals for parent accounts." -msgstr "" +msgstr "Jangan menampilkan setiap subtotal dari akun induk." #: gnucash/report/options-utilities.scm:243 -#, fuzzy msgid "Text book style (experimental)" -msgstr "Bersihkan gaya dari teks yang dipilih" +msgstr "Gaya buku teks (eksperimental)" #: gnucash/report/options-utilities.scm:244 msgid "" "Show parent account subtotals, indented per accounting text book practice " "(experimental)." msgstr "" +"Tampilkan subtotal akun induk, sesuai praktek pada buku teks akuntansi " +"(eksperimental)." #: gnucash/report/report-core.scm:69 -#, fuzzy msgid "_Assets & Liabilities" -msgstr "tipe akun: Aset & Liabilitas" +msgstr "_Aset & Liabilitas" #: gnucash/report/report-core.scm:70 msgid "_Income & Expense" @@ -23111,7 +23459,7 @@ msgstr "_Pendapatan & Pengeluaran" #: gnucash/report/report-core.scm:72 msgid "_Taxes" -msgstr "" +msgstr "_Pajak" #: gnucash/report/report-core.scm:73 msgid "E_xamples" @@ -23147,19 +23495,19 @@ msgstr "_Suai" #: gnucash/report/reports/standard/invoice.scm:337 #: gnucash/report/reports/standard/invoice.scm:342 #: gnucash/report/reports/standard/receipt.scm:40 -#: gnucash/report/reports/standard/register.scm:382 +#: gnucash/report/reports/standard/register.scm:353 +#: gnucash/report/reports/standard/register.scm:359 +#: gnucash/report/reports/standard/register.scm:363 +#: gnucash/report/reports/standard/register.scm:368 +#: gnucash/report/reports/standard/register.scm:373 +#: gnucash/report/reports/standard/register.scm:378 +#: gnucash/report/reports/standard/register.scm:383 #: gnucash/report/reports/standard/register.scm:388 -#: gnucash/report/reports/standard/register.scm:392 -#: gnucash/report/reports/standard/register.scm:397 -#: gnucash/report/reports/standard/register.scm:402 +#: gnucash/report/reports/standard/register.scm:393 +#: gnucash/report/reports/standard/register.scm:398 #: gnucash/report/reports/standard/register.scm:407 #: gnucash/report/reports/standard/register.scm:412 #: gnucash/report/reports/standard/register.scm:417 -#: gnucash/report/reports/standard/register.scm:422 -#: gnucash/report/reports/standard/register.scm:427 -#: gnucash/report/reports/standard/register.scm:436 -#: gnucash/report/reports/standard/register.scm:441 -#: gnucash/report/reports/standard/register.scm:446 #: gnucash/report/reports/standard/taxinvoice.scm:79 msgid "Display" msgstr "Tampilan" @@ -23184,7 +23532,7 @@ msgid "" msgstr "" "Salah satu laporan Anda memiliki guid-laporan yang merupakan duplikat. " "Silakan periksa sistem pelaporan, terutama laporan Anda yang tersimpan, " -"untuk laporan dengan guid-laporan berikut:" +"untuk laporan dengan guid-laporan berikut: " #: gnucash/report/report-core.scm:130 msgid "Wrong report definition: " @@ -23199,6 +23547,9 @@ msgid "" "Some reports stored in a legacy format were found. This format is not " "supported anymore so these reports may not have been restored properly." msgstr "" +"Ditemukan beberapa laporan yang disimpan dengan format lama. Format ini " +"sudah tidak didukung lagi, sehingga laporan tersebut mungkin tidak dibuka " +"dengan benar." #: gnucash/report/report-core.scm:207 msgid "Enter a descriptive name for this report." @@ -23294,9 +23645,8 @@ msgstr "Tampilkan Total Multi-Mata uang" #: gnucash/report/reports/aging.scm:42 #: gnucash/report/reports/standard/new-aging.scm:44 -#, fuzzy msgid "Show zero balance items" -msgstr "Cara menampilkan butir catatan" +msgstr "Tampilkan item dengan saldo nol" #: gnucash/report/reports/aging.scm:43 #: gnucash/report/reports/standard/new-aging.scm:45 @@ -23308,30 +23658,23 @@ msgstr "Tanggal Pos atau Jatuh Tempo" #: gnucash/report/reports/aging.scm:46 #: gnucash/report/reports/standard/new-aging.scm:48 #: gnucash/report/reports/standard/receivables.scm:37 -#, fuzzy msgid "Address Source" -msgstr "Sumber buku alamat" +msgstr "Sumber Alamat" #: gnucash/report/reports/aging.scm:52 #: gnucash/report/reports/standard/new-aging.scm:58 -#, fuzzy msgid "Address Phone" -msgstr "Telepon" +msgstr "Telepon Alamat" #: gnucash/report/reports/aging.scm:53 #: gnucash/report/reports/standard/new-aging.scm:59 -#, fuzzy msgid "Address Fax" -msgstr "Faks" +msgstr "Faks Alamat" #: gnucash/report/reports/aging.scm:54 #: gnucash/report/reports/standard/new-aging.scm:60 -#, fuzzy msgid "Address Email" -msgstr "" -"MartinK. Petersen
mkp@mkp.net
" +msgstr "Surel Alamat" #: gnucash/report/reports/aging.scm:204 #, scheme-format @@ -23339,98 +23682,92 @@ msgid "" "Transactions relating to '~a' contain more than one currency. This report is " "not designed to cope with this possibility." msgstr "" +"Transaksi terkait '~a' mengandung lebih dari satu mata uang. Laporan ini " +"tidak didesain untuk kemungkinan ini." #: gnucash/report/reports/aging.scm:344 #: gnucash/report/reports/standard/new-aging.scm:95 -#, fuzzy msgid "Sort companies by." -msgstr "_Urutkan..." +msgstr "Urutkan perusahaan berdasar." #: gnucash/report/reports/aging.scm:347 #: gnucash/report/reports/standard/new-aging.scm:99 -#, fuzzy msgid "Name of the company." -msgstr "Berdasarkan _Perusahaan" +msgstr "Nama perusahaan." #: gnucash/report/reports/aging.scm:348 #: gnucash/report/reports/standard/new-aging.scm:101 -#, fuzzy msgid "Total Owed" -msgstr "Total:" +msgstr "Total Pinjaman" #: gnucash/report/reports/aging.scm:348 #: gnucash/report/reports/standard/new-aging.scm:102 msgid "Total amount owed to/from Company." -msgstr "" +msgstr "Jumlah total pinjaman ke/dari Perusahaan." #: gnucash/report/reports/aging.scm:349 #: gnucash/report/reports/standard/new-aging.scm:104 #, fuzzy msgid "Bracket Total Owed" -msgstr "Ke tanda kurung pasangan" +msgstr "Bracket Jumlah Utang" #: gnucash/report/reports/aging.scm:349 #: gnucash/report/reports/standard/new-aging.scm:105 +#, fuzzy msgid "Amount owed in oldest bracket - if same go to next oldest." msgstr "" +"Berjumlah berutang di braket tertua - jika pergi sama untuk selanjutnya " +"tertua." #: gnucash/report/reports/aging.scm:356 #: gnucash/report/reports/standard/new-aging.scm:109 -#, fuzzy msgid "Sort order." -msgstr "Sunting Urutkan _Urutan…" +msgstr "Pengurutan." #: gnucash/report/reports/aging.scm:359 #: gnucash/report/reports/standard/new-aging.scm:111 -#, fuzzy msgid "Increasing" -msgstr "" -"Menaikkan kecerahan akan membuat foto dan video lebih terang. Namun, bila " -"Anda berada di ruang gelap, menaikkan kecerahan bisa membuat gambar terlihat " -"lebih kasar." +msgstr "Menambah" #: gnucash/report/reports/aging.scm:359 -#, fuzzy msgid "0 .. 999,999.99, A .. Z." -msgstr "Posisi pada sumbu Z" +msgstr "0 .. 999,999.99, A .. Z." #: gnucash/report/reports/aging.scm:360 #: gnucash/report/reports/standard/new-aging.scm:112 -#, fuzzy msgid "Decreasing" -msgstr "Mengurangi kepadatan dengan menghapus bingkai…" +msgstr "Mengurangi" #: gnucash/report/reports/aging.scm:360 -#, fuzzy msgid "999,999.99 .. 0, Z .. A." -msgstr "Posisi pada sumbu Z" +msgstr "999,999.99 .. 0, Z .. A." #: gnucash/report/reports/aging.scm:367 msgid "" "Show multi-currency totals. If not selected, convert all totals to report " "currency." msgstr "" +"Tampilkan total dalam beberapa mata uang. Jika tak dipilih, konversikan " +"semua total ke mata uang laporan." #: gnucash/report/reports/aging.scm:376 #: gnucash/report/reports/standard/new-aging.scm:117 msgid "Show all vendors/customers even if they have a zero balance." -msgstr "" +msgstr "Tampilkan semua vendor/pelanggan meskipun memiliki saldo nol." #: gnucash/report/reports/aging.scm:384 #: gnucash/report/reports/standard/new-aging.scm:122 #: gnucash/report/reports/standard/new-owner-report.scm:953 #: gnucash/report/reports/standard/owner-report.scm:609 -#, fuzzy msgid "Leading date." -msgstr "Hanya Di Depan" +msgstr "Tanggal lebih awal." #: gnucash/report/reports/aging.scm:387 #: gnucash/report/reports/standard/new-aging.scm:127 #: gnucash/report/reports/standard/new-owner-report.scm:958 #: gnucash/report/reports/standard/owner-report.scm:612 -#, fuzzy msgid "Due date is leading." -msgstr "Tanggal jatuh tempo bukan tanggal yang valid" +msgstr "Tanggal jatuh tempo lebih awal." #: gnucash/report/reports/aging.scm:388 #: gnucash/report/reports/standard/new-aging.scm:131 @@ -23451,51 +23788,43 @@ msgstr "" #: gnucash/report/reports/aging.scm:409 #: gnucash/report/reports/standard/new-aging.scm:54 -#, fuzzy msgid "Display Address 1." -msgstr "-1" +msgstr "Alamat Tampilan 1." #: gnucash/report/reports/aging.scm:417 #: gnucash/report/reports/standard/new-aging.scm:55 -#, fuzzy msgid "Display Address 2." -msgstr "2" +msgstr "Alamat Tampilan 2." #: gnucash/report/reports/aging.scm:425 #: gnucash/report/reports/standard/new-aging.scm:56 -#, fuzzy msgid "Display Address 3." -msgstr "3" +msgstr "Alamat Tampilan 3." #: gnucash/report/reports/aging.scm:433 #: gnucash/report/reports/standard/new-aging.scm:57 -#, fuzzy msgid "Display Address 4." -msgstr "Alamat" +msgstr "Alamat Tampilan 4." #: gnucash/report/reports/aging.scm:441 #: gnucash/report/reports/standard/new-aging.scm:58 -#, fuzzy msgid "Display Phone." -msgstr "Telepon:" +msgstr "Telepon Tampilan." #: gnucash/report/reports/aging.scm:449 #: gnucash/report/reports/standard/new-aging.scm:59 -#, fuzzy msgid "Display Fax." -msgstr "Faks" +msgstr "Faks Tampilan." #: gnucash/report/reports/aging.scm:457 #: gnucash/report/reports/standard/new-aging.scm:60 -#, fuzzy msgid "Display Email." -msgstr "Tampilkan pada…" +msgstr "Surel Tampilan." #: gnucash/report/reports/aging.scm:465 #: gnucash/report/reports/standard/new-aging.scm:61 -#, fuzzy msgid "Display Active status." -msgstr "Tampilan Aktif" +msgstr "Status aktif Tampilan." #: gnucash/report/reports/aging.scm:538 #: gnucash/report/reports/standard/budget-barchart.scm:72 @@ -23503,59 +23832,52 @@ msgstr "Tampilan Aktif" #: gnucash/report/reports/standard/new-aging.scm:195 #: gnucash/report/reports/standard/new-owner-report.scm:316 #: gnucash/report/reports/standard/owner-report.scm:259 -#, fuzzy msgid "Current" -msgstr "Sekarang" +msgstr "Saat ini" #: gnucash/report/reports/aging.scm:539 #: gnucash/report/reports/standard/job-report.scm:159 #: gnucash/report/reports/standard/new-aging.scm:196 #: gnucash/report/reports/standard/new-owner-report.scm:317 #: gnucash/report/reports/standard/owner-report.scm:260 -#, fuzzy msgid "0-30 days" -msgstr "Hari" +msgstr "0-30 hari" #: gnucash/report/reports/aging.scm:540 #: gnucash/report/reports/standard/job-report.scm:160 #: gnucash/report/reports/standard/new-aging.scm:197 #: gnucash/report/reports/standard/new-owner-report.scm:318 #: gnucash/report/reports/standard/owner-report.scm:261 -#, fuzzy msgid "31-60 days" -msgstr "Hari" +msgstr "31-60 hari" #: gnucash/report/reports/aging.scm:541 #: gnucash/report/reports/standard/job-report.scm:161 #: gnucash/report/reports/standard/new-aging.scm:198 #: gnucash/report/reports/standard/new-owner-report.scm:319 #: gnucash/report/reports/standard/owner-report.scm:262 -#, fuzzy msgid "61-90 days" -msgstr "Hari" +msgstr "61-90 hari" #: gnucash/report/reports/aging.scm:542 #: gnucash/report/reports/standard/job-report.scm:162 #: gnucash/report/reports/standard/new-aging.scm:199 #: gnucash/report/reports/standard/new-owner-report.scm:320 #: gnucash/report/reports/standard/owner-report.scm:263 -#, fuzzy msgid "91+ days" -msgstr "Hari" +msgstr "91+ hari" #: gnucash/report/reports/aging.scm:773 #: gnucash/report/reports/standard/new-aging.scm:164 -#, fuzzy msgctxt "One-letter indication for 'yes'" msgid "Y" msgstr "Y" #: gnucash/report/reports/aging.scm:773 #: gnucash/report/reports/standard/new-aging.scm:164 -#, fuzzy msgctxt "One-letter indication for 'no'" msgid "N" -msgstr "n" +msgstr "T" #: gnucash/report/reports/aging.scm:840 #: gnucash/report/reports/standard/job-report.scm:547 @@ -23563,30 +23885,29 @@ msgid "" "No valid account selected. Click on the Options button and select the " "account to use." msgstr "" +"Tak ada akun yang valid yang dipilih. Klik pada tombol Opsi dan pilih akun " +"yang akan digunakan." #: gnucash/report/reports/example/average-balance.scm:38 -#, fuzzy msgid "Average Balance" -msgstr "seimbangkan" +msgstr "Saldo Rata-rata" #: gnucash/report/reports/example/average-balance.scm:42 #: gnucash/report/reports/standard/cashflow-barchart.scm:56 #: gnucash/report/reports/standard/category-barchart.scm:71 #: gnucash/report/reports/standard/net-charts.scm:41 #: gnucash/report/reports/standard/price-scatter.scm:37 -#, fuzzy msgid "Step Size" -msgstr "Langkah Pulsa Kemajuan" +msgstr "Ukuran Langkah" #: gnucash/report/reports/example/average-balance.scm:45 #: gnucash/report/reports/example/daily-reports.scm:59 -#, fuzzy msgid "Include Sub-Accounts" -msgstr "Akun" +msgstr "Sertakan Sub-Akun" #: gnucash/report/reports/example/average-balance.scm:46 msgid "Exclude transactions between selected accounts" -msgstr "" +msgstr "Kecualikan transaksi antara akun yang dipilih" #: gnucash/report/reports/example/average-balance.scm:47 #: gnucash/report/reports/example/daily-reports.scm:64 @@ -23615,17 +23936,19 @@ msgstr "Tinggi Plot" #: gnucash/report/reports/example/average-balance.scm:80 #: gnucash/report/reports/example/daily-reports.scm:91 msgid "Include sub-accounts of all selected accounts." -msgstr "" +msgstr "Sertakan sub-akun dari semua akun yang dipilih." #: gnucash/report/reports/example/average-balance.scm:86 msgid "" "Exclude transactions that only involve two accounts, both of which are " "selected below. This only affects the profit and loss columns of the table." msgstr "" +"Kecualikan transaksi yang hanya melibatkan dua akun, yang keduanya dipilih " +"di bawah ini. Ini hanya mempengaruhi kolom laba dan rugi pada tabel." #: gnucash/report/reports/example/average-balance.scm:93 msgid "Do transaction report on this account." -msgstr "" +msgstr "Lakukan laporan transaksi pada akun ini." #: gnucash/report/reports/example/average-balance.scm:116 #: gnucash/report/reports/example/average-balance.scm:303 @@ -23669,45 +23992,38 @@ msgid "Average" msgstr "Rata-rata" #: gnucash/report/reports/example/average-balance.scm:129 -#, fuzzy msgid "Average Balance." -msgstr "seimbangkan" +msgstr "Saldo Rata-rata." #: gnucash/report/reports/example/average-balance.scm:130 #: gnucash/report/reports/example/average-balance.scm:151 #: gnucash/report/reports/standard/customer-summary.scm:129 #: gnucash/report/reports/standard/customer-summary.scm:322 msgid "Profit" -msgstr "Keuntungan" +msgstr "Laba" #: gnucash/report/reports/example/average-balance.scm:130 -#, fuzzy msgid "Profit (Gain minus Loss)." -msgstr "tipe akun: Keuntungan & Kerugian" +msgstr "Laba (Keuntungan dikurangi Kerugian)." #: gnucash/report/reports/example/average-balance.scm:131 -#, fuzzy msgid "Gain And Loss." -msgstr "kerugian" +msgstr "Keuntungan Dan Kerugian." #: gnucash/report/reports/example/average-balance.scm:149 -#, fuzzy msgid "Period start" -msgstr "_Periode:" +msgstr "Periode awal" #: gnucash/report/reports/example/average-balance.scm:149 -#, fuzzy msgid "Period end" -msgstr "_Periode:" +msgstr "Periode akhir" #: gnucash/report/reports/example/average-balance.scm:150 -#, fuzzy msgid "Maximum" msgstr "Maksimum" #: gnucash/report/reports/example/average-balance.scm:150 #: gnucash/report/reports/standard/balance-forecast.scm:237 -#, fuzzy msgid "Minimum" msgstr "Minimum" @@ -23721,35 +24037,36 @@ msgstr "Kerugian" #: gnucash/report/reports/example/daily-reports.scm:37 #: gnucash/report/reports/example/daily-reports.scm:49 -#, fuzzy msgid "Income vs. Day of Week" -msgstr "Hari pertama dalam satu minggu" +msgstr "Pendapatan vs. Hari dalam Seminggu" #: gnucash/report/reports/example/daily-reports.scm:38 #: gnucash/report/reports/example/daily-reports.scm:50 -#, fuzzy msgid "Expenses vs. Day of Week" -msgstr "Hari pertama dalam satu minggu" +msgstr "Pengeluaran vs. Hari dalam Seminggu" #: gnucash/report/reports/example/daily-reports.scm:42 msgid "Shows a piechart with the total income for each day of the week" msgstr "" +"Tampilkan sebuah bagan pai dengan total pendapatan untuk setiap hari dalam " +"seminggu" #: gnucash/report/reports/example/daily-reports.scm:44 msgid "Shows a piechart with the total expenses for each day of the week" msgstr "" +"Tampilkan sebuah bagan pai dengan total pengeluaran untuk setiap hari dalam " +"seminggu" #: gnucash/report/reports/example/daily-reports.scm:58 #: gnucash/report/reports/standard/account-piecharts.scm:70 #: gnucash/report/reports/standard/category-barchart.scm:76 msgid "Show Accounts until level" -msgstr "" +msgstr "Tampilkan Akun hingga tingkat" #: gnucash/report/reports/example/daily-reports.scm:61 #: gnucash/report/reports/standard/category-barchart.scm:78 -#, fuzzy msgid "Show long account names" -msgstr "Dalam _dialog berlangganan, tampilkan nama folder terkait" +msgstr "Tampilkan nama panjang akun" #: gnucash/report/reports/example/daily-reports.scm:62 #: gnucash/report/reports/standard/account-piecharts.scm:73 @@ -23758,9 +24075,8 @@ msgstr "Tampilkan Total" #: gnucash/report/reports/example/daily-reports.scm:63 #: gnucash/report/reports/standard/account-piecharts.scm:75 -#, fuzzy msgid "Maximum Slices" -msgstr "Slice Preview" +msgstr "Irisan Maksimum" #: gnucash/report/reports/example/daily-reports.scm:66 #: gnucash/report/reports/standard/account-piecharts.scm:78 @@ -23772,19 +24088,21 @@ msgstr "Metode Sortir" #: gnucash/report/reports/standard/account-piecharts.scm:136 #: gnucash/report/reports/standard/category-barchart.scm:138 #: gnucash/report/reports/standard/net-charts.scm:92 +#, fuzzy msgid "Report on these accounts, if chosen account level allows." msgstr "" +"Melaporkan account tersebut, jika tingkat akun yang dipilih memungkinkan." #: gnucash/report/reports/example/daily-reports.scm:111 #: gnucash/report/reports/standard/account-piecharts.scm:151 #: gnucash/report/reports/standard/category-barchart.scm:150 msgid "Show accounts to this depth and not further." -msgstr "" +msgstr "Tampilkan akun hanya hingga kedalaman ini." #: gnucash/report/reports/example/daily-reports.scm:117 #: gnucash/report/reports/standard/account-piecharts.scm:166 msgid "Show the total balance in legend?" -msgstr "" +msgstr "Tampilkan saldo total di legenda?" #: gnucash/report/reports/example/daily-reports.scm:289 #: gnucash/report/reports/standard/account-piecharts.scm:545 @@ -23792,14 +24110,14 @@ msgstr "" #: gnucash/report/reports/standard/balsheet-pnl.scm:910 #: gnucash/report/reports/standard/budget.scm:513 #: gnucash/report/reports/standard/cashflow-barchart.scm:282 -#: gnucash/report/reports/standard/cash-flow.scm:188 +#: gnucash/report/reports/standard/cash-flow.scm:190 #: gnucash/report/reports/standard/category-barchart.scm:514 #: gnucash/report/reports/standard/net-charts.scm:334 #: gnucash/report/reports/standard/price-scatter.scm:212 #: libgnucash/app-utils/date-utilities.scm:89 #, scheme-format msgid "~a to ~a" -msgstr "" +msgstr "~a ke ~a" #: gnucash/report/reports/example/hello-world.scm:57 #: gnucash/report/reports/example/hello-world.scm:67 @@ -23984,9 +24302,8 @@ msgid "Testing" msgstr "Percobaan" #: gnucash/report/reports/example/hello-world.scm:204 -#, fuzzy msgid "Crash the report" -msgstr "Lapo_rkan" +msgstr "Kreskan laporan" #: gnucash/report/reports/example/hello-world.scm:206 msgid "" @@ -24248,27 +24565,27 @@ msgstr "Tahun Lalu." #: gnucash/report/reports/locale-specific/de_DE/taxtxf.scm:161 #: gnucash/report/reports/locale-specific/us/taxtxf.scm:187 msgid "Last Yr 1st Est Tax Qtr" -msgstr "" +msgstr "Kuart Pjk Prtm Thn Lalu" #: gnucash/report/reports/locale-specific/de_DE/taxtxf.scm:162 #: gnucash/report/reports/locale-specific/us/taxtxf.scm:188 msgid "Jan 1 - Mar 31, Last year." -msgstr "" +msgstr "1 Jan - 31 Mar, Tahun lalu." #: gnucash/report/reports/locale-specific/de_DE/taxtxf.scm:164 #: gnucash/report/reports/locale-specific/us/taxtxf.scm:190 msgid "Last Yr 2nd Est Tax Qtr" -msgstr "" +msgstr "Kuart Pjk Ke-2 Thn Lalu" #: gnucash/report/reports/locale-specific/de_DE/taxtxf.scm:165 #: gnucash/report/reports/locale-specific/us/taxtxf.scm:191 msgid "Apr 1 - May 31, Last year." -msgstr "" +msgstr "1 Apr - 31 Mei, Tahun lalu." #: gnucash/report/reports/locale-specific/de_DE/taxtxf.scm:167 #: gnucash/report/reports/locale-specific/us/taxtxf.scm:193 msgid "Last Yr 3rd Est Tax Qtr" -msgstr "" +msgstr "Kuart Pjk Ke-3 Thn Lalu" #. Translators: The US tax quarters are different from #. actual year's quarters! See the definition of @@ -24276,256 +24593,255 @@ msgstr "" #: gnucash/report/reports/locale-specific/de_DE/taxtxf.scm:168 #: gnucash/report/reports/locale-specific/us/taxtxf.scm:197 msgid "Jun 1 - Aug 31, Last year." -msgstr "" +msgstr "1 Jun - 31 Agt, Tahun lalu." #: gnucash/report/reports/locale-specific/de_DE/taxtxf.scm:170 #: gnucash/report/reports/locale-specific/us/taxtxf.scm:199 msgid "Last Yr 4th Est Tax Qtr" -msgstr "" +msgstr "Kuart Pjk Ke-4 Thn Lalu" #: gnucash/report/reports/locale-specific/de_DE/taxtxf.scm:171 #: gnucash/report/reports/locale-specific/us/taxtxf.scm:200 msgid "Sep 1 - Dec 31, Last year." -msgstr "" +msgstr "1 Sep - 31 Des, Tahun lalu." #: gnucash/report/reports/locale-specific/de_DE/taxtxf.scm:175 #: gnucash/report/reports/locale-specific/us/taxtxf.scm:204 -#, fuzzy msgid "Select Accounts (none = all)" -msgstr "Semua Akun" +msgstr "Pilih Akun (tak ada = semua)" #: gnucash/report/reports/locale-specific/de_DE/taxtxf.scm:176 #: gnucash/report/reports/locale-specific/us/taxtxf.scm:205 -#, fuzzy msgid "Select accounts." -msgstr "Pilih _akun untuk mengaktifkan notifikasi:" +msgstr "Pilih akun." #: gnucash/report/reports/locale-specific/de_DE/taxtxf.scm:182 #: gnucash/report/reports/locale-specific/us/taxtxf.scm:211 -#, fuzzy msgid "Suppress $0.00 values" -msgstr "Nilai" +msgstr "Sembunyikan nilai Rp.0" #: gnucash/report/reports/locale-specific/de_DE/taxtxf.scm:183 msgid "$0.00 valued Accounts won't be printed." -msgstr "" +msgstr "Akun bernilai Rp.0 tak akan dicetak." #: gnucash/report/reports/locale-specific/de_DE/taxtxf.scm:187 -#, fuzzy msgid "Print Full account names" -msgstr "Cetak URI lengkap" +msgstr "Cetak nama lengkap akun" #: gnucash/report/reports/locale-specific/de_DE/taxtxf.scm:188 msgid "Print all Parent account names." -msgstr "" +msgstr "Cetak semua nama akun Induk." #: gnucash/report/reports/locale-specific/de_DE/taxtxf.scm:266 msgid "" "WARNING: There are duplicate TXF codes assigned to some accounts. Only TXF " "codes with payer sources may be repeated." msgstr "" +"PERINGATAN: Ada kode TXF duplikat yang ditugaskan untuk beberapa akun. Hanya " +"kode TXF dengan sumber pembayar yang dapat diulang." -#: gnucash/report/reports/locale-specific/de_DE/taxtxf.scm:818 -#, fuzzy, scheme-format +#: gnucash/report/reports/locale-specific/de_DE/taxtxf.scm:817 +#, scheme-format msgid "Period from ~a to ~a" -msgstr "_Periode:" +msgstr "Periode dari ~a ke ~a" -#: gnucash/report/reports/locale-specific/de_DE/taxtxf.scm:855 +#: gnucash/report/reports/locale-specific/de_DE/taxtxf.scm:854 msgid "Tax Report & XML Export" -msgstr "" +msgstr "Laporan Pajak & Ekspor XML" -#: gnucash/report/reports/locale-specific/de_DE/taxtxf.scm:857 +#: gnucash/report/reports/locale-specific/de_DE/taxtxf.scm:856 msgid "Taxable Income / Deductible Expenses / Export to .XML file" msgstr "" +"Penghasilan Kena Pajak / Pengeluaran Dapat Dikurangkan / Ekspor ke berkas ." +"XML" + +#: gnucash/report/reports/locale-specific/de_DE/taxtxf.scm:860 +#: gnucash/report/reports/locale-specific/de_DE/taxtxf.scm:869 +msgid "Taxable Income / Deductible Expenses" +msgstr "Penghasilan Kena Pajak / Pengeluaran Dapat Dikurangkan" #: gnucash/report/reports/locale-specific/de_DE/taxtxf.scm:861 -#: gnucash/report/reports/locale-specific/de_DE/taxtxf.scm:870 -msgid "Taxable Income / Deductible Expenses" -msgstr "" - -#: gnucash/report/reports/locale-specific/de_DE/taxtxf.scm:862 msgid "This report shows your Taxable Income and Deductible Expenses." msgstr "" +"Laporan ini menampilkan Penghasilan Kena Pajak dan Pengeluaran Dapat " +"Dikurangkan." -#: gnucash/report/reports/locale-specific/de_DE/taxtxf.scm:867 -#, fuzzy +#: gnucash/report/reports/locale-specific/de_DE/taxtxf.scm:866 msgid "XML" -msgstr "_XML" +msgstr "XML" -#: gnucash/report/reports/locale-specific/de_DE/taxtxf.scm:871 +#: gnucash/report/reports/locale-specific/de_DE/taxtxf.scm:870 msgid "This page shows your Taxable Income and Deductible Expenses." msgstr "" +"Halaman ini menampilkan Penghasilan Kena Pajak dan Pengeluaran Dapat " +"Dikurangkan." #: gnucash/report/reports/locale-specific/us/taxtxf.scm:112 msgid "Tax Schedule Report/TXF Export" -msgstr "" +msgstr "Laporan Jadwal Pajak/Ekspor TXF" #: gnucash/report/reports/locale-specific/us/taxtxf.scm:212 msgid "$0.00 valued Tax codes won't be printed." -msgstr "" +msgstr "Kode pajak yang bernilai $0.00 tak akan dicetak." #: gnucash/report/reports/locale-specific/us/taxtxf.scm:216 msgid "Do not print full account names" -msgstr "" +msgstr "Jangan cetak nama lengkap akun" #: gnucash/report/reports/locale-specific/us/taxtxf.scm:217 msgid "Do not print all Parent account names." -msgstr "" +msgstr "Jangan cetak semua nama akun Induk." #: gnucash/report/reports/locale-specific/us/taxtxf.scm:221 -#, fuzzy msgid "Print all Transfer To/From Accounts" -msgstr "Terima butir-butir baru dari semua akun" +msgstr "Cetak semua Akun Transfer Ke/Dari" #: gnucash/report/reports/locale-specific/us/taxtxf.scm:222 msgid "Print all split details for multi-split transactions." -msgstr "" +msgstr "Cetak semua detail split untuk transaksi multi-split." #: gnucash/report/reports/locale-specific/us/taxtxf.scm:226 msgid "Print TXF export parameters" -msgstr "" +msgstr "Cetak parameter ekspor TXF" #: gnucash/report/reports/locale-specific/us/taxtxf.scm:227 msgid "Show TXF export parameters for each TXF code/account on report." -msgstr "" +msgstr "Tampilkan parameter ekspor TXF untuk tiap kode/akun TXF di laporan." #: gnucash/report/reports/locale-specific/us/taxtxf.scm:232 msgid "Do not print T-Num:Memo data" -msgstr "" +msgstr "Jangan cetak data T-Num:Memo" #: gnucash/report/reports/locale-specific/us/taxtxf.scm:233 msgid "Do not print T-Num:Memo data for transactions." -msgstr "" +msgstr "Jangan cetak data T-Num:Memo untuk transaksi." #: gnucash/report/reports/locale-specific/us/taxtxf.scm:236 msgid "Do not print Action:Memo data" -msgstr "" +msgstr "Jangan cetak data Aksi:Memo" #: gnucash/report/reports/locale-specific/us/taxtxf.scm:237 msgid "Do not print Action:Memo data for transactions." -msgstr "" +msgstr "Jangan cetak data Aksi:Memo untuk transaksi." #: gnucash/report/reports/locale-specific/us/taxtxf.scm:241 msgid "Do not print transaction detail" -msgstr "" +msgstr "Jangan cetak detail transaksi" #: gnucash/report/reports/locale-specific/us/taxtxf.scm:242 msgid "Do not print transaction detail for accounts." -msgstr "" +msgstr "Jangan cetak detail transaksi untuk akun." #: gnucash/report/reports/locale-specific/us/taxtxf.scm:246 -#, fuzzy msgid "Do not use special date processing" -msgstr "Jangan pakai fungsi akselerasi CPU khusus" +msgstr "Jangan gunakan pemrosesan tanggal khusus" #: gnucash/report/reports/locale-specific/us/taxtxf.scm:247 msgid "Do not print transactions out of specified dates." -msgstr "" +msgstr "Jangan cetak transaksi di luar tanggal yang ditentukan." #: gnucash/report/reports/locale-specific/us/taxtxf.scm:251 -#, fuzzy msgid "Currency conversion date" -msgstr "mata uang" +msgstr "Tanggal konversi mata uang" #: gnucash/report/reports/locale-specific/us/taxtxf.scm:252 msgid "Select date to use for PriceDB lookups." -msgstr "" +msgstr "Pilih tanggal untuk digunakan dalam pencarian PriceDB." #: gnucash/report/reports/locale-specific/us/taxtxf.scm:255 -#, fuzzy msgid "Nearest transaction date" -msgstr "transaksi" +msgstr "Tanggal transaksi terdekat" #: gnucash/report/reports/locale-specific/us/taxtxf.scm:255 -#, fuzzy msgid "Use nearest to transaction date." -msgstr "Gunakan tanggal dari halaman jurnal" +msgstr "Gunakan terdekat ke tanggal transaksi." #: gnucash/report/reports/locale-specific/us/taxtxf.scm:257 -#, fuzzy msgid "Nearest report date" -msgstr "Tanggal" +msgstr "Tanggal laporan terdekat" #: gnucash/report/reports/locale-specific/us/taxtxf.scm:257 -#, fuzzy msgid "Use nearest to report date." -msgstr "Gunakan tanggal dari halaman jurnal" +msgstr "Gunakan terdekat ke tanggal laporan." #: gnucash/report/reports/locale-specific/us/taxtxf.scm:3322 msgid "Tax Schedule Report & TXF Export" -msgstr "" +msgstr "Laporan Jadwal Pajak & Ekspor TXF" #: gnucash/report/reports/locale-specific/us/taxtxf.scm:3324 msgid "" "Taxable Income/Deductible Expenses with Transaction Detail/Export to .TXF " "file" msgstr "" +"Penghasilan Kena Pajak/Pengeluaran Dapat Dikurangkan dengan Detail Transaksi/" +"Ekspor ke berkas .TXF" #: gnucash/report/reports/locale-specific/us/taxtxf.scm:3328 #: gnucash/report/reports/locale-specific/us/taxtxf.scm:3337 msgid "Taxable Income/Deductible Expenses" -msgstr "" +msgstr "Penghasilan Kena Pajak/Pengeluaran Dapat Dikurangkan" #: gnucash/report/reports/locale-specific/us/taxtxf.scm:3329 msgid "" "This report shows transaction detail for your accounts related to Income " "Taxes." msgstr "" +"Laporan ini menampilkan detail transaksi untuk akun Anda terkait dengan " +"Pajak Pendapatan." #: gnucash/report/reports/locale-specific/us/taxtxf.scm:3338 msgid "This page shows transaction detail for relevant Income Tax accounts." msgstr "" +"Halaman ini menampilkan detail transaksi untuk akun Pajak Pendapatan yang " +"relevan." #: gnucash/report/reports/standard/account-piecharts.scm:35 -#, fuzzy msgid "Income Piechart" -msgstr "laporan laba-rugi" +msgstr "Bagan Pai Pendapatan" #: gnucash/report/reports/standard/account-piecharts.scm:36 msgid "Expense Piechart" msgstr "Bagan Pai Pengeluaran" #: gnucash/report/reports/standard/account-piecharts.scm:37 -#, fuzzy msgid "Asset Piechart" -msgstr "tipe akun: Aset" +msgstr "Bagan Pai Aset" #: gnucash/report/reports/standard/account-piecharts.scm:38 -#, fuzzy msgid "Security Piechart" -msgstr "Keamanan" +msgstr "Bagan Pai Sekuritas" #: gnucash/report/reports/standard/account-piecharts.scm:39 -#, fuzzy msgid "Liability Piechart" -msgstr "tipe akun: Liabilitas" +msgstr "Bagan Pai Liabilitas" #: gnucash/report/reports/standard/account-piecharts.scm:44 msgid "Shows a piechart with the Income per given time interval" msgstr "" +"Tampilkan bagan pai dengan Pendapatan per interval waktu yang ditentukan" #: gnucash/report/reports/standard/account-piecharts.scm:46 msgid "Shows a piechart with the Expenses per given time interval" msgstr "" +"Tampilkan bagan pai dengan Pengeluaran per interval waktu yang ditentukan" #: gnucash/report/reports/standard/account-piecharts.scm:48 msgid "Shows a piechart with the Assets balance at a given time" -msgstr "" +msgstr "Tampilkan bagan pai dengan saldo Aset pada waktu yang ditentukan" #: gnucash/report/reports/standard/account-piecharts.scm:50 msgid "Shows a piechart with distribution of assets over securities" -msgstr "" +msgstr "Tampilkan bagan pai dengan distribusi aset atas sekuritas" #: gnucash/report/reports/standard/account-piecharts.scm:52 msgid "Shows a piechart with the Liabilities balance at a given time" -msgstr "" +msgstr "Tampilkan bagan pai dengan saldo Liabilitas pada waktu yang ditentukan" #: gnucash/report/reports/standard/account-piecharts.scm:58 #: gnucash/report/reports/standard/customer-summary.scm:49 #: gnucash/report/reports/standard/customer-summary.scm:50 -#, fuzzy msgid "Income Accounts" -msgstr "laporan laba-rugi" +msgstr "Akun Pendapatan" #: gnucash/report/reports/standard/account-piecharts.scm:59 #: gnucash/report/reports/standard/customer-summary.scm:57 @@ -24534,40 +24850,35 @@ msgid "Expense Accounts" msgstr "Akun Pengeluaran" #: gnucash/report/reports/standard/account-piecharts.scm:60 -#: gnucash/report/reports/standard/balance-sheet.scm:485 -#: gnucash/report/reports/standard/budget-balance-sheet.scm:664 +#: gnucash/report/reports/standard/balance-sheet.scm:486 +#: gnucash/report/reports/standard/budget-balance-sheet.scm:665 #: gnucash/report/reports/standard/net-charts.scm:350 #: gnucash/report/reports/standard/net-charts.scm:421 -#: gnucash/report/report-utilities.scm:105 -#, fuzzy +#: gnucash/report/report-utilities.scm:117 msgid "Assets" -msgstr "tipe akun: Aset & Liabilitas" +msgstr "Aset" #: gnucash/report/reports/standard/account-piecharts.scm:62 -#: gnucash/report/reports/standard/balance-sheet.scm:386 -#: gnucash/report/reports/standard/budget-balance-sheet.scm:694 +#: gnucash/report/reports/standard/balance-sheet.scm:387 +#: gnucash/report/reports/standard/budget-balance-sheet.scm:695 #: gnucash/report/reports/standard/net-charts.scm:371 #: gnucash/report/reports/standard/net-charts.scm:421 -#: gnucash/report/report-utilities.scm:106 -#, fuzzy +#: gnucash/report/report-utilities.scm:118 msgid "Liabilities" -msgstr "tipe akun: Aset & Liabilitas" +msgstr "Liabilitas" #: gnucash/report/reports/standard/account-piecharts.scm:72 -#, fuzzy msgid "Show long names" -msgstr "Lama" +msgstr "Tampilkan nama panjang" #: gnucash/report/reports/standard/account-piecharts.scm:74 -#, fuzzy msgid "Show Percents" -msgstr "Tampilkan:" +msgstr "Tampilkan Persen" #: gnucash/report/reports/standard/account-piecharts.scm:80 #: gnucash/report/reports/standard/category-barchart.scm:89 -#, fuzzy msgid "Show Average" -msgstr "Rata-rata:" +msgstr "Tampilkan Rata-rata" #: gnucash/report/reports/standard/account-piecharts.scm:81 #: gnucash/report/reports/standard/category-barchart.scm:90 @@ -24575,82 +24886,76 @@ msgid "" "Select whether the amounts should be shown over the full time period or " "rather as the average e.g. per month." msgstr "" +"Pilih apakah jumlahnya akan ditampilkan selama periode waktu penuh atau " +"sebagai rata-rata, misal per bulan." #: gnucash/report/reports/standard/account-piecharts.scm:117 #: gnucash/report/reports/standard/category-barchart.scm:120 msgid "No Averaging" -msgstr "" +msgstr "Tak Ada Rata-rata" #: gnucash/report/reports/standard/account-piecharts.scm:118 #: gnucash/report/reports/standard/category-barchart.scm:121 msgid "Just show the amounts, without any averaging." -msgstr "" +msgstr "Hanya tampilkan jumlah, tanpa rata-rata apapun." #: gnucash/report/reports/standard/account-piecharts.scm:121 msgid "Show the average yearly amount during the reporting period." -msgstr "" +msgstr "Tampilkan jumlah rata-rata tahunan selama periode pelaporan." #: gnucash/report/reports/standard/account-piecharts.scm:124 #: gnucash/report/reports/standard/category-barchart.scm:124 msgid "Show the average monthly amount during the reporting period." -msgstr "" +msgstr "Tampilkan jumlah rata-rata bulanan selama periode pelaporan." #: gnucash/report/reports/standard/account-piecharts.scm:127 #: gnucash/report/reports/standard/category-barchart.scm:127 msgid "Show the average weekly amount during the reporting period." -msgstr "" +msgstr "Tampilkan jumlah rata-rata mingguan selama periode pelaporan." #: gnucash/report/reports/standard/account-piecharts.scm:159 #: gnucash/report/reports/standard/category-barchart.scm:157 -#, fuzzy msgid "Show the full account name in legend?" -msgstr "Tampilkan Nama Halaman lengkap" +msgstr "Tampilkan nama lengkap akun di legenda?" #: gnucash/report/reports/standard/account-piecharts.scm:160 -#, fuzzy msgid "Show the full security name in the legend?" -msgstr "Tampilkan Nama Halaman lengkap" +msgstr "Tampilkan nama lengkap sekuritas di legenda?" #: gnucash/report/reports/standard/account-piecharts.scm:172 -#, fuzzy msgid "Show the percentage in legend?" -msgstr "Persentase [%]" +msgstr "Tampilkan persentase di legenda?" #: gnucash/report/reports/standard/account-piecharts.scm:178 -#, fuzzy msgid "Maximum number of slices in pie." -msgstr "Cacah maksimum karakter bagi entri ini. Nol bila tanpa maksimum" +msgstr "Jumlah irisan maksimum di pai." #: gnucash/report/reports/standard/account-piecharts.scm:413 -#, fuzzy msgid "Yearly Average" -msgstr "Tahunan" +msgstr "Rata-rata Tahunan" #: gnucash/report/reports/standard/account-piecharts.scm:414 #: gnucash/report/reports/standard/category-barchart.scm:306 -#, fuzzy msgid "Monthly Average" -msgstr "Bulanan" +msgstr "Rata-rata Bulanan" #: gnucash/report/reports/standard/account-piecharts.scm:415 #: gnucash/report/reports/standard/category-barchart.scm:307 -#, fuzzy msgid "Weekly Average" -msgstr "rata-rata" +msgstr "Rata-rata Mingguan" #: gnucash/report/reports/standard/account-piecharts.scm:549 -#, fuzzy, scheme-format +#, scheme-format msgid "Balance at ~a" -msgstr "seimbangkan" +msgstr "Saldo pada ~a" #: gnucash/report/reports/standard/account-summary.scm:69 -#, fuzzy msgid "Account Summary" -msgstr "Ringkasan Akun" +msgstr "Ikhtisar Akun" #: gnucash/report/reports/standard/account-summary.scm:70 msgid "Future Scheduled Transactions Summary" -msgstr "" +msgstr "Ikhtisar Transaksi Terjadwal Berikutnya" #: gnucash/report/reports/standard/account-summary.scm:72 #: gnucash/report/reports/standard/balance-sheet.scm:76 @@ -24719,31 +25024,30 @@ msgid "Maximum number of levels in the account tree displayed." msgstr "Jumlah maksimum tingkat pada pohon akun yang ditampilkan." #: gnucash/report/reports/standard/account-summary.scm:91 -#, fuzzy msgid "Depth limit behavior" -msgstr "Perilaku" +msgstr "Perilaku batas kedalaman" #: gnucash/report/reports/standard/account-summary.scm:93 msgid "How to treat accounts which exceed the specified depth limit (if any)." msgstr "" +"Bagaimana memperlakukan akun yang melebihi batas kedalaman tertentu (jika " +"ada)." #: gnucash/report/reports/standard/account-summary.scm:95 #: gnucash/report/reports/standard/balance-sheet.scm:97 #: gnucash/report/reports/standard/budget-balance-sheet.scm:62 #: gnucash/report/reports/standard/budget-income-statement.scm:84 #: gnucash/report/reports/standard/income-statement.scm:72 -#, fuzzy msgid "Parent account balances" -msgstr "akun: akun induk" +msgstr "Saldo akun induk" #: gnucash/report/reports/standard/account-summary.scm:96 #: gnucash/report/reports/standard/balance-sheet.scm:98 #: gnucash/report/reports/standard/budget-balance-sheet.scm:63 #: gnucash/report/reports/standard/budget-income-statement.scm:85 #: gnucash/report/reports/standard/income-statement.scm:73 -#, fuzzy msgid "Parent account subtotals" -msgstr "akun: akun induk" +msgstr "Subtotal akun induk" #: gnucash/report/reports/standard/account-summary.scm:98 #: gnucash/report/reports/standard/balance-sheet.scm:100 @@ -24753,7 +25057,7 @@ msgstr "akun: akun induk" #: gnucash/report/reports/standard/income-statement.scm:75 #: gnucash/report/reports/standard/trial-balance.scm:121 msgid "Include accounts with zero total balances" -msgstr "Termasuk akun dengan saldo total nol" +msgstr "Sertakan akun dengan saldo total nol" #: gnucash/report/reports/standard/account-summary.scm:100 #: gnucash/report/reports/standard/balance-sheet.scm:102 @@ -24763,7 +25067,7 @@ msgstr "Termasuk akun dengan saldo total nol" #: gnucash/report/reports/standard/income-statement.scm:77 #: gnucash/report/reports/standard/trial-balance.scm:123 msgid "Include accounts with zero total (recursive) balances in this report." -msgstr "" +msgstr "Sertakan akun dengan total saldo (rekursif) nol di laporan ini." #: gnucash/report/reports/standard/account-summary.scm:101 #: gnucash/report/reports/standard/balance-sheet.scm:103 @@ -24771,8 +25075,9 @@ msgstr "" #: gnucash/report/reports/standard/budget-balance-sheet.scm:68 #: gnucash/report/reports/standard/budget-income-statement.scm:90 #: gnucash/report/reports/standard/income-statement.scm:78 +#, fuzzy msgid "Omit zero balance figures" -msgstr "" +msgstr "Abaikan angka neraca nol" #: gnucash/report/reports/standard/account-summary.scm:103 #: gnucash/report/reports/standard/balance-sheet.scm:105 @@ -24800,8 +25105,9 @@ msgstr "Tampilkan aturan gaya-akuntansi" #: gnucash/report/reports/standard/budget-income-statement.scm:96 #: gnucash/report/reports/standard/equity-statement.scm:74 #: gnucash/report/reports/standard/income-statement.scm:84 +#, fuzzy msgid "Use rules beneath columns of added numbers like accountants do." -msgstr "" +msgstr "Gunakan aturan di bawah kolom nomor tambahan seperti akuntan lakukan." #: gnucash/report/reports/standard/account-summary.scm:109 #: gnucash/report/reports/standard/balance-sheet.scm:111 @@ -24828,7 +25134,7 @@ msgstr "" #: gnucash/report/reports/standard/account-summary.scm:114 msgid "Show an account's balance." -msgstr "" +msgstr "Tampilkan saldo akun." #: gnucash/report/reports/standard/account-summary.scm:116 msgid "Show an account's account code." @@ -24898,7 +25204,7 @@ msgstr "Tampilkan jumlah mata uang asing pada suatu akun." #: gnucash/report/reports/standard/income-statement.scm:114 #: gnucash/report/reports/standard/trial-balance.scm:134 msgid "Show Exchange Rates" -msgstr "Tampilkan Kurs" +msgstr "Tampilkan Nilai Tukar" #: gnucash/report/reports/standard/account-summary.scm:131 #: gnucash/report/reports/standard/balance-sheet.scm:143 @@ -24910,18 +25216,19 @@ msgstr "Tampilkan Kurs" #: gnucash/report/reports/standard/income-statement.scm:115 #: gnucash/report/reports/standard/trial-balance.scm:135 msgid "Show the exchange rates used." -msgstr "Tampilkan kurs yang digunakan." +msgstr "Tampilkan nilai tukar yang digunakan." #: gnucash/report/reports/standard/account-summary.scm:190 -#, fuzzy msgid "Recursive Balance" -msgstr "seimbangkan" +msgstr "Saldo Rekursif" #: gnucash/report/reports/standard/account-summary.scm:191 msgid "" "Show the total balance, including balances in subaccounts, of any account at " "the depth limit." msgstr "" +"Tampilkan saldo total, termasuk saldo di sub-akun, untuk tiap akun pada " +"batas kedalaman." #: gnucash/report/reports/standard/account-summary.scm:193 msgid "Raise Accounts" @@ -24930,54 +25237,51 @@ msgstr "Naikkan Akun" #: gnucash/report/reports/standard/account-summary.scm:194 msgid "Shows accounts deeper than the depth limit at the depth limit." msgstr "" +"Tampilkan akun lebih dalam daripada batas kedalaman pada batas kedalaman." #: gnucash/report/reports/standard/account-summary.scm:196 -#, fuzzy msgid "Omit Accounts" -msgstr "_Akun" +msgstr "Abaikan Akun" #: gnucash/report/reports/standard/account-summary.scm:197 msgid "Disregard completely any accounts deeper than the depth limit." msgstr "" +"Abaikan sepenuhnya setiap akun yang lebih dalam daripada batas kedalaman." #. Translators: This is part of the report title, which is capitalzed in English, but not all other languages -#: gnucash/report/reports/standard/account-summary.scm:325 -#: gnucash/report/reports/standard/equity-statement.scm:302 +#: gnucash/report/reports/standard/account-summary.scm:326 +#: gnucash/report/reports/standard/equity-statement.scm:304 #: gnucash/report/reports/standard/income-statement.scm:407 -#: gnucash/report/reports/standard/trial-balance.scm:412 -#, fuzzy, scheme-format +#: gnucash/report/reports/standard/trial-balance.scm:413 +#, scheme-format msgid "For Period Covering ~a to ~a" -msgstr "_Periode:" +msgstr "Untuk Periode ~a ke ~a" -#: gnucash/report/reports/standard/account-summary.scm:409 +#: gnucash/report/reports/standard/account-summary.scm:410 msgid "Account title" msgstr "Judul akun" #: gnucash/report/reports/standard/advanced-portfolio.scm:37 -#, fuzzy msgid "Advanced Portfolio" -msgstr "portofolio" +msgstr "Portofolio Lanjutan" #: gnucash/report/reports/standard/advanced-portfolio.scm:40 #: gnucash/report/reports/standard/portfolio.scm:36 -#, fuzzy msgid "Share decimal places" -msgstr "Tempat" +msgstr "Tempat desimal saham" #: gnucash/report/reports/standard/advanced-portfolio.scm:41 #: gnucash/report/reports/standard/portfolio.scm:37 -#, fuzzy msgid "Include accounts with no shares" -msgstr "Include" +msgstr "Sertakan akun yang tak memiliki saham" #: gnucash/report/reports/standard/advanced-portfolio.scm:42 msgid "Show ticker symbols" msgstr "Tampilkan simbol" #: gnucash/report/reports/standard/advanced-portfolio.scm:43 -#, fuzzy msgid "Show listings" -msgstr "Tampilkan:" +msgstr "Tampilkan daftar" #: gnucash/report/reports/standard/advanced-portfolio.scm:44 msgid "Show prices" @@ -24988,27 +25292,24 @@ msgid "Show number of shares" msgstr "Tampilkan jumlah saham" #: gnucash/report/reports/standard/advanced-portfolio.scm:46 -#, fuzzy msgid "Basis calculation method" -msgstr "kalkulasi;aritmetik;ilmiah;keuangan;" +msgstr "Metode perhitungan basis" #: gnucash/report/reports/standard/advanced-portfolio.scm:47 msgid "Set preference for price list data" -msgstr "" +msgstr "Setel preferensi untuk data daftar harga" #: gnucash/report/reports/standard/advanced-portfolio.scm:48 -#, fuzzy msgid "How to report brokerage fees" -msgstr "Bagaimana dan ke mana melaporkan masalah." +msgstr "Cara melaporkan biaya broker" #: gnucash/report/reports/standard/advanced-portfolio.scm:92 -#, fuzzy msgid "Basis calculation method." -msgstr "kalkulasi;aritmetik;ilmiah;keuangan;" +msgstr "Metode perhitungan basis." #: gnucash/report/reports/standard/advanced-portfolio.scm:95 msgid "Use average cost of all shares for basis." -msgstr "" +msgstr "Gunakan biaya rata-rata dari seluruh saham sebagai basis." #: gnucash/report/reports/standard/advanced-portfolio.scm:97 msgid "FIFO" @@ -25016,7 +25317,7 @@ msgstr "FIFO" #: gnucash/report/reports/standard/advanced-portfolio.scm:98 msgid "Use first-in first-out method for basis." -msgstr "" +msgstr "Gunakan metode pertama-masuk pertama-keluar sebagai basis." #: gnucash/report/reports/standard/advanced-portfolio.scm:100 msgid "LIFO" @@ -25024,33 +25325,35 @@ msgstr "LIFO" #: gnucash/report/reports/standard/advanced-portfolio.scm:101 msgid "Use last-in first-out method for basis." -msgstr "" +msgstr "Gunakan metode terakhir-masuk pertama-keluar sebagai basis." #: gnucash/report/reports/standard/advanced-portfolio.scm:107 +#, fuzzy msgid "Prefer use of price editor pricing over transactions, where applicable." msgstr "" +"Lebih memilih penggunaan harga redaksi harga atas transaksi, mana yang " +"berlaku." #: gnucash/report/reports/standard/advanced-portfolio.scm:113 msgid "How to report commissions and other brokerage fees." -msgstr "" +msgstr "Cara melaporkan komisi dan biaya broker lainnya." #: gnucash/report/reports/standard/advanced-portfolio.scm:115 -#, fuzzy msgid "Include in basis" -msgstr "Include=" +msgstr "Sertakan dalam basis" #: gnucash/report/reports/standard/advanced-portfolio.scm:116 msgid "Include brokerage fees in the basis for the asset." -msgstr "" +msgstr "Termasuk biaya broker pada basis untuk aset." #: gnucash/report/reports/standard/advanced-portfolio.scm:118 -#, fuzzy msgid "Include in gain" -msgstr "keuntungan" +msgstr "Sertakan pada keuntungan" #: gnucash/report/reports/standard/advanced-portfolio.scm:119 msgid "Include brokerage fees in the gain and loss but not in the basis." msgstr "" +"Sertakan biaya broker pada keuntungan dan kerugian tetapi tidak di basis." #: gnucash/report/reports/standard/advanced-portfolio.scm:121 msgid "Ignore" @@ -25058,67 +25361,59 @@ msgstr "Abaikan" #: gnucash/report/reports/standard/advanced-portfolio.scm:122 msgid "Ignore brokerage fees entirely." -msgstr "" +msgstr "Abaikan biaya broker sepenuhnya." #: gnucash/report/reports/standard/advanced-portfolio.scm:129 msgid "Display the ticker symbols." msgstr "Tampilkan simbol." #: gnucash/report/reports/standard/advanced-portfolio.scm:136 -#, fuzzy msgid "Display exchange listings." -msgstr "Tukar dengan Bingkai" +msgstr "Tampilkan daftar tukar." #: gnucash/report/reports/standard/advanced-portfolio.scm:143 -#, fuzzy msgid "Display numbers of shares in accounts." -msgstr "Format bilangan untuk ditampilkan" +msgstr "Tampilkan jumlah saham di dalam akun." #: gnucash/report/reports/standard/advanced-portfolio.scm:149 #: gnucash/report/reports/standard/portfolio.scm:63 msgid "The number of decimal places to use for share numbers." -msgstr "" +msgstr "Jumlah tempat desimal yang digunakan untuk nilai saham." #: gnucash/report/reports/standard/advanced-portfolio.scm:156 -#, fuzzy msgid "Display share prices." -msgstr "Tampilkan pada…" +msgstr "Tampilkan harga saham." #: gnucash/report/reports/standard/advanced-portfolio.scm:164 #: gnucash/report/reports/standard/portfolio.scm:71 -#, fuzzy msgid "Stock Accounts to report on." -msgstr "Lapo_rkan" +msgstr "Akun Saham untuk dilaporkan." #: gnucash/report/reports/standard/advanced-portfolio.scm:176 #: gnucash/report/reports/standard/portfolio.scm:83 msgid "Include accounts that have a zero share balances." -msgstr "" +msgstr "Sertakan akun yang memiliki saldo saham nol." #: gnucash/report/reports/standard/advanced-portfolio.scm:1067 #: gnucash/report/reports/standard/portfolio.scm:255 -#, fuzzy msgid "Listing" -msgstr "Gunakan format daftar panjang" +msgstr "Daftar" #: gnucash/report/reports/standard/advanced-portfolio.scm:1079 -#, fuzzy msgid "Basis" -msgstr "" -"Nilai tercatat per peta dasar. Anda dapat melihat " -"nilai tertinggi untuk peta tertentu dengan memilih dari menu drop-down." +msgstr "Basis" #: gnucash/report/reports/standard/advanced-portfolio.scm:1081 #: gnucash/report/reports/standard/cashflow-barchart.scm:297 #: gnucash/report/reports/standard/cashflow-barchart.scm:332 -#: gnucash/report/reports/standard/cash-flow.scm:277 +#: gnucash/report/reports/standard/cash-flow.scm:279 msgid "Money In" msgstr "Uang Masuk" #: gnucash/report/reports/standard/advanced-portfolio.scm:1082 #: gnucash/report/reports/standard/cashflow-barchart.scm:303 #: gnucash/report/reports/standard/cashflow-barchart.scm:333 -#: gnucash/report/reports/standard/cash-flow.scm:298 +#: gnucash/report/reports/standard/cash-flow.scm:300 msgid "Money Out" msgstr "Uang Keluar" @@ -25135,9 +25430,8 @@ msgid "Total Gain" msgstr "Keuntungan Total" #: gnucash/report/reports/standard/advanced-portfolio.scm:1086 -#, fuzzy msgid "Rate of Gain" -msgstr "keuntungan" +msgstr "Rata-rata Keuntungan" #: gnucash/report/reports/standard/advanced-portfolio.scm:1090 msgid "Brokerage Fees" @@ -25156,20 +25450,23 @@ msgid "" "* this commodity data was built using transaction pricing instead of the " "price list." msgstr "" +"* data komoditas ini dibangun menggunakan harga transaksi, bukannya daftar " +"harga." #: gnucash/report/reports/standard/advanced-portfolio.scm:1192 msgid "" "If you are in a multi-currency situation, the exchanges may not be correct." msgstr "" +"Jika Anda berada dalam situasi multi-mata uang, nilai tukarnya mungkin tidak " +"benar." #: gnucash/report/reports/standard/advanced-portfolio.scm:1197 msgid "** this commodity has no price and a price of 1 has been used." -msgstr "" +msgstr "** komoditas ini tidak memiliki harga dan digunakan harga 1." #: gnucash/report/reports/standard/balance-forecast.scm:35 -#, fuzzy msgid "Balance Forecast" -msgstr "Prakiraan" +msgstr "Prakiraan Saldo" #: gnucash/report/reports/standard/balance-forecast.scm:38 #: gnucash/report/reports/standard/budget-barchart.scm:134 @@ -25179,90 +25476,83 @@ msgstr "Prakiraan" #: gnucash/report/reports/standard/income-gst-statement.scm:141 #: gnucash/report/reports/standard/trial-balance.scm:78 #: gnucash/report/trep-engine.scm:661 -#, fuzzy msgid "Report on these accounts." -msgstr "Akun" +msgstr "Laporkan pada akun tersebut." #: gnucash/report/reports/standard/balance-forecast.scm:49 #: gnucash/report/reports/standard/net-charts.scm:59 -#, fuzzy msgid "Data markers?" -msgstr "Sertakan rute dan penanda" +msgstr "Penanda data?" #: gnucash/report/reports/standard/balance-forecast.scm:50 #: gnucash/report/reports/standard/net-charts.scm:165 msgid "Display a mark for each data point." -msgstr "" +msgstr "Tampilkan penanda untuk tiap poin data." #: gnucash/report/reports/standard/balance-forecast.scm:52 #: gnucash/report/reports/standard/balance-forecast.scm:53 -#, fuzzy msgid "Show reserve line" -msgstr "Tampilkan nomor baris" +msgstr "Tampilkan baris cadangan" #: gnucash/report/reports/standard/balance-forecast.scm:55 -#, fuzzy msgid "Reserve amount" -msgstr "jumlah" +msgstr "Jumlah cadangan" #: gnucash/report/reports/standard/balance-forecast.scm:56 msgid "The reserve amount is set to a minimum balance desired" -msgstr "" +msgstr "Jumlah cadangan diatur ke saldo minimum yang diinginkan" #: gnucash/report/reports/standard/balance-forecast.scm:59 #: gnucash/report/reports/standard/balance-forecast.scm:60 -#, fuzzy msgid "Show target line" -msgstr "Tampilkan nomor baris" +msgstr "Tampilkan baris target" #: gnucash/report/reports/standard/balance-forecast.scm:62 -#, fuzzy msgid "Target amount above reserve" -msgstr "Cacah placeholder tak mencukupi pada wadah target" +msgstr "Jumlah target di atas cadangan" #: gnucash/report/reports/standard/balance-forecast.scm:63 msgid "" "The target is used to plan for a future large purchase, which will be added " "as a line above the reserve amount." msgstr "" +"Target digunakan untuk merencanakan pembelian besar di masa depan, yang akan " +"ditambahkan sebagai baris di atas jumlah cadangan." #: gnucash/report/reports/standard/balance-forecast.scm:67 -#, fuzzy msgid "Show future minimum" -msgstr "di masa depan" +msgstr "Tampilkan minimum masa depan" #: gnucash/report/reports/standard/balance-forecast.scm:68 msgid "" "The future minimum will add, for each date point, a projected minimum " "balance including scheduled transactions." msgstr "" +"Minimum masa depan akan menambah, untuk setiap titik tanggal, saldo minimum " +"yang diproyeksikan termasuk transaksi dijadwalkan." #: gnucash/report/reports/standard/balance-forecast.scm:256 msgid "Target" msgstr "Target" #: gnucash/report/reports/standard/balance-forecast.scm:266 -#, fuzzy msgid "Reserve" -msgstr "reserve" +msgstr "Cadangan" #: gnucash/report/reports/standard/balance-sheet.scm:72 -#: gnucash/report/reports/standard/trial-balance.scm:573 -#, fuzzy +#: gnucash/report/reports/standard/trial-balance.scm:574 msgid "Balance Sheet" -msgstr "neraca" +msgstr "Neraca Keuangan" #: gnucash/report/reports/standard/balance-sheet.scm:82 #: gnucash/report/reports/standard/balsheet-eg.scm:150 -#, fuzzy msgid "Balance Sheet Date" -msgstr "neraca" +msgstr "Tanggal Neraca Keuangan" #: gnucash/report/reports/standard/balance-sheet.scm:83 #: gnucash/report/reports/standard/budget-balance-sheet.scm:48 -#, fuzzy msgid "Single column Balance Sheet" -msgstr "neraca" +msgstr "Neraca Keuangan Satu Kolom" #: gnucash/report/reports/standard/balance-sheet.scm:85 #: gnucash/report/reports/standard/budget-balance-sheet.scm:50 @@ -25270,6 +25560,8 @@ msgid "" "Print liability/equity section in the same column under the assets section " "as opposed to a second column right of the assets section." msgstr "" +"Cetak bagian liabilitas/ekuitas dalam kolom yang sama di bawah bagian aset, " +"bukannya pada kolom kedua di sebelah kanan bagian aset." #: gnucash/report/reports/standard/balance-sheet.scm:93 #: gnucash/report/reports/standard/balsheet-eg.scm:157 @@ -25278,7 +25570,7 @@ msgstr "" #: gnucash/report/reports/standard/budget.scm:90 #: gnucash/report/reports/standard/income-statement.scm:68 msgid "Flatten list to depth limit" -msgstr "" +msgstr "Ratakan daftar ke batas kedalaman" #: gnucash/report/reports/standard/balance-sheet.scm:95 #: gnucash/report/reports/standard/balsheet-eg.scm:159 @@ -25287,161 +25579,148 @@ msgstr "" #: gnucash/report/reports/standard/budget.scm:92 #: gnucash/report/reports/standard/income-statement.scm:70 msgid "Displays accounts which exceed the depth limit at the depth limit." -msgstr "" +msgstr "Tampilkan akun yang melebihi batas kedalaman pada batas kedalaman." #: gnucash/report/reports/standard/balance-sheet.scm:114 #: gnucash/report/reports/standard/budget-balance-sheet.scm:79 -#, fuzzy msgid "Label the assets section" -msgstr "label" +msgstr "Beri label bagian aset" #: gnucash/report/reports/standard/balance-sheet.scm:116 #: gnucash/report/reports/standard/budget-balance-sheet.scm:81 msgid "Whether or not to include a label for the assets section." -msgstr "" +msgstr "Apakah menyertakan label untuk bagian aset." #: gnucash/report/reports/standard/balance-sheet.scm:117 #: gnucash/report/reports/standard/budget-balance-sheet.scm:82 -#, fuzzy msgid "Include assets total" -msgstr "aset bersih" +msgstr "Sertakan total aset" #: gnucash/report/reports/standard/balance-sheet.scm:119 #: gnucash/report/reports/standard/budget-balance-sheet.scm:84 msgid "Whether or not to include a line indicating total assets." -msgstr "" +msgstr "Apakah menyertakan sebuah baris yang mengindikasikan total aset." #: gnucash/report/reports/standard/balance-sheet.scm:120 -#, fuzzy msgid "Use standard US layout" -msgstr "Pakai tata letak horisontal" +msgstr "Gunakan tata letak standar US" #: gnucash/report/reports/standard/balance-sheet.scm:122 msgid "" "Report section order is assets/liabilities/equity (rather than assets/equity/" "liabilities)." msgstr "" +"Urutan bagian laporan adalah aset/liabilitas/ekuitas (alih-alih aset/ekuitas/" +"liabilitas)." #: gnucash/report/reports/standard/balance-sheet.scm:123 #: gnucash/report/reports/standard/budget-balance-sheet.scm:85 -#, fuzzy msgid "Label the liabilities section" -msgstr "tipe akun: Aset & Liabilitas" +msgstr "Beri label bagian liabilitas" #: gnucash/report/reports/standard/balance-sheet.scm:125 #: gnucash/report/reports/standard/budget-balance-sheet.scm:87 msgid "Whether or not to include a label for the liabilities section." -msgstr "" +msgstr "Apakah menyertakan sebuah label untuk bagian liabilitas." #: gnucash/report/reports/standard/balance-sheet.scm:126 #: gnucash/report/reports/standard/budget-balance-sheet.scm:88 -#, fuzzy msgid "Include liabilities total" -msgstr "total" +msgstr "Sertakan total liabilitas" #: gnucash/report/reports/standard/balance-sheet.scm:128 #: gnucash/report/reports/standard/budget-balance-sheet.scm:90 msgid "Whether or not to include a line indicating total liabilities." -msgstr "" +msgstr "Apakah menyertakan sebuah baris yang mengindikasikan total liabilitas." #: gnucash/report/reports/standard/balance-sheet.scm:129 #: gnucash/report/reports/standard/budget-balance-sheet.scm:91 -#, fuzzy msgid "Label the equity section" -msgstr "ekuitas" +msgstr "Beri label bagian ekuitas" #: gnucash/report/reports/standard/balance-sheet.scm:131 #: gnucash/report/reports/standard/budget-balance-sheet.scm:93 msgid "Whether or not to include a label for the equity section." -msgstr "" +msgstr "Apakah menyertakan sebuah label untuk bagian ekuitas." #: gnucash/report/reports/standard/balance-sheet.scm:132 #: gnucash/report/reports/standard/budget-balance-sheet.scm:94 -#, fuzzy msgid "Include equity total" -msgstr "ekuitas" +msgstr "Sertakan total ekuitas" #: gnucash/report/reports/standard/balance-sheet.scm:134 #: gnucash/report/reports/standard/budget-balance-sheet.scm:96 msgid "Whether or not to include a line indicating total equity." -msgstr "" +msgstr "Apakah menyertakan sebuah baris yang mengindikasikan total ekuitas." -#: gnucash/report/reports/standard/balance-sheet.scm:390 -#: gnucash/report/reports/standard/budget-balance-sheet.scm:716 -#, fuzzy +#: gnucash/report/reports/standard/balance-sheet.scm:391 +#: gnucash/report/reports/standard/budget-balance-sheet.scm:717 msgid "Total Liabilities" -msgstr "liabilitas/ekuitas" +msgstr "Total Liabilitas" -#: gnucash/report/reports/standard/balance-sheet.scm:488 -#: gnucash/report/reports/standard/budget-balance-sheet.scm:685 -#, fuzzy +#: gnucash/report/reports/standard/balance-sheet.scm:489 +#: gnucash/report/reports/standard/budget-balance-sheet.scm:686 msgid "Total Assets" -msgstr "aset bersih" +msgstr "Total Aset" -#: gnucash/report/reports/standard/balance-sheet.scm:510 +#: gnucash/report/reports/standard/balance-sheet.scm:511 #: gnucash/report/reports/support/balsheet-eg.eguile.scm:188 -#, fuzzy msgid "Retained Losses" -msgstr "Pendapatan Ditahan" - -#: gnucash/report/reports/standard/balance-sheet.scm:514 -#, fuzzy -msgid "Trading Gains" -msgstr "laba modal" +msgstr "Kerugian Ditahan" #: gnucash/report/reports/standard/balance-sheet.scm:515 -#, fuzzy -msgid "Trading Losses" -msgstr "tipe akun: perdagangan" +msgid "Trading Gains" +msgstr "Keuntungan Perdagangan" -#: gnucash/report/reports/standard/balance-sheet.scm:519 -#: gnucash/report/reports/standard/balsheet-pnl.scm:1103 -#: gnucash/report/reports/standard/balsheet-pnl.scm:1118 -#: gnucash/report/reports/standard/budget-balance-sheet.scm:758 -#: gnucash/report/reports/standard/equity-statement.scm:472 -#: gnucash/report/reports/standard/trial-balance.scm:734 -#, fuzzy -msgid "Unrealized Gains" -msgstr "laba modal" +#: gnucash/report/reports/standard/balance-sheet.scm:516 +msgid "Trading Losses" +msgstr "Kerugian Perdagangan" #: gnucash/report/reports/standard/balance-sheet.scm:520 +#: gnucash/report/reports/standard/balsheet-pnl.scm:1103 +#: gnucash/report/reports/standard/balsheet-pnl.scm:1118 #: gnucash/report/reports/standard/budget-balance-sheet.scm:759 -#: gnucash/report/reports/standard/equity-statement.scm:473 +#: gnucash/report/reports/standard/equity-statement.scm:474 #: gnucash/report/reports/standard/trial-balance.scm:735 +msgid "Unrealized Gains" +msgstr "Keuntungan Belum Direalisasikan" + +#: gnucash/report/reports/standard/balance-sheet.scm:521 +#: gnucash/report/reports/standard/budget-balance-sheet.scm:760 +#: gnucash/report/reports/standard/equity-statement.scm:475 +#: gnucash/report/reports/standard/trial-balance.scm:736 msgid "Unrealized Losses" -msgstr "" +msgstr "Kerugian Belum Direalisasikan" -#: gnucash/report/reports/standard/balance-sheet.scm:524 -#: gnucash/report/reports/standard/budget-balance-sheet.scm:774 -#, fuzzy +#: gnucash/report/reports/standard/balance-sheet.scm:525 +#: gnucash/report/reports/standard/budget-balance-sheet.scm:775 msgid "Total Equity" -msgstr "ekuitas" +msgstr "Total Ekuitas" -#: gnucash/report/reports/standard/balance-sheet.scm:534 -#: gnucash/report/reports/standard/budget-balance-sheet.scm:780 -#, fuzzy +#: gnucash/report/reports/standard/balance-sheet.scm:535 +#: gnucash/report/reports/standard/budget-balance-sheet.scm:781 msgid "Total Liabilities & Equity" -msgstr "liabilitas/ekuitas" +msgstr "Total Liabilitas & Ekuitas" #: gnucash/report/reports/standard/balsheet-eg.scm:143 -#, fuzzy msgid "Balance Sheet (eguile)" -msgstr "neraca" +msgstr "Neraca (eguile)" #: gnucash/report/reports/standard/balsheet-eg.scm:151 -#, fuzzy msgid "1- or 2-column report" -msgstr "Lapo_rkan" +msgstr "Laporan 1 atau 2 kolom" #: gnucash/report/reports/standard/balsheet-eg.scm:153 msgid "" "The balance sheet can be displayed with either 1 or 2 columns. 'auto' means " "that the layout will be adjusted to fit the width of the page." msgstr "" +"Neraca dapat ditampilkan dengan 1 atau 2 kolom. 'otomatis' berarti bahwa " +"tata letak akan disesuaikan agar sesuai dengan lebar halaman." #: gnucash/report/reports/standard/balsheet-eg.scm:161 msgid "Exclude accounts with zero total balances" -msgstr "" +msgstr "Kecualikan akun dengan total saldo nol" #: gnucash/report/reports/standard/balsheet-eg.scm:163 msgid "" @@ -25451,40 +25730,38 @@ msgstr "" "Kecualikan akun bukan tingkat-atas dengan saldo nol dan sub-akun tidak-nol." #: gnucash/report/reports/standard/balsheet-eg.scm:168 -#, fuzzy msgid "Negative amount format" -msgstr "Negatif" +msgstr "Format jumlah negatif" #: gnucash/report/reports/standard/balsheet-eg.scm:170 msgid "" "The formatting to use for negative amounts: with a leading sign, or " "enclosing brackets." msgstr "" +"Format yang digunakan untuk jumlah negatif: dengan tanda di depan, atau di " +"dalam tanda kurung." #: gnucash/report/reports/standard/balsheet-eg.scm:172 -#, fuzzy msgid "Font family" msgstr "Keluarga fonta" #: gnucash/report/reports/standard/balsheet-eg.scm:173 msgid "Font definition in CSS font-family format." -msgstr "" +msgstr "Definisi fonta dalam format CSS." #: gnucash/report/reports/standard/balsheet-eg.scm:174 -#, fuzzy msgid "Font size" msgstr "Ukuran fonta" #: gnucash/report/reports/standard/balsheet-eg.scm:175 msgid "Font size in CSS font-size format (e.g. \"medium\" or \"10pt\")." -msgstr "" +msgstr "Ukuran fonta dalam format CSS (misal \"medium\" atau \"10pt\")." #: gnucash/report/reports/standard/balsheet-eg.scm:176 #: gnucash/report/reports/standard/receipt.scm:45 #: gnucash/report/reports/standard/taxinvoice.scm:103 -#, fuzzy msgid "Template file" -msgstr "Berkas templat standar" +msgstr "Berkas templat" #: gnucash/report/reports/standard/balsheet-eg.scm:178 msgid "" @@ -25492,13 +25769,15 @@ msgid "" "in your .gnucash directory, or else in its proper place within the GnuCash " "installation directories." msgstr "" +"Nama berkas templat eguile sebagai bagian laporan ini. Berkas ini harus " +"berada di direktori .gnucash Anda, atau di lokasi lain di dalam direktori " +"instalasi GnuCash." #: gnucash/report/reports/standard/balsheet-eg.scm:179 #: gnucash/report/reports/standard/receipt.scm:46 #: gnucash/report/reports/standard/taxinvoice.scm:104 -#, fuzzy msgid "CSS stylesheet file" -msgstr "Berkas CSS untuk dipakai" +msgstr "Berkas lembar gaya CSS" #: gnucash/report/reports/standard/balsheet-eg.scm:181 msgid "" @@ -25506,57 +25785,55 @@ msgid "" "this file should be in your .gnucash directory, or else in its proper place " "within the GnuCash installation directories." msgstr "" +"Nama berkas lembar gaya CSS untuk digunakan pada laporan ini. Jika " +"ditentukan, berkas ini harus berada di direktori .gnucash Anda, atau di " +"lokasi lain di dalam direktori instalasi GnuCash." #: gnucash/report/reports/standard/balsheet-eg.scm:182 #: gnucash/report/reports/standard/invoice.scm:342 -#, fuzzy msgid "Extra Notes" -msgstr "Catatan" +msgstr "Catatan Ekstra" #: gnucash/report/reports/standard/balsheet-eg.scm:183 #: gnucash/report/reports/standard/taxinvoice.scm:212 msgid "Notes added at end of invoice -- may contain HTML markup." -msgstr "" +msgstr "Catatan yang ditambahkan di akhir faktur -- bisa berisi markah HTML." #: gnucash/report/reports/standard/balsheet-eg.scm:227 msgid "Adjust the layout to fit the width of the screen or page." -msgstr "" +msgstr "Atur tata letak supaya sesuai dengan lebar layar atau halaman." #: gnucash/report/reports/standard/balsheet-eg.scm:229 -#, fuzzy msgid "One" -msgstr "_Satu" +msgstr "Satu" #: gnucash/report/reports/standard/balsheet-eg.scm:230 msgid "Display liabilities and equity below assets." -msgstr "" +msgstr "Tampilkan liabilitas dan ekuitas di bawah aset." #: gnucash/report/reports/standard/balsheet-eg.scm:232 -#, fuzzy msgid "Two" -msgstr "dua" +msgstr "Dua" #: gnucash/report/reports/standard/balsheet-eg.scm:233 msgid "Display assets on the left, liabilities and equity on the right." -msgstr "" +msgstr "Tampilkan aset di bagian kiri, liabilitas dan ekuitas di bagian kanan." #: gnucash/report/reports/standard/balsheet-eg.scm:238 -#, fuzzy msgid "Sign" -msgstr "Tanda Tangan" +msgstr "Tanda" #: gnucash/report/reports/standard/balsheet-eg.scm:239 msgid "Prefix negative amounts with a minus sign, e.g. -$10.00." -msgstr "" +msgstr "Tambahkan prefiks jumlah negatif dengan tanda negatif, misal -$10.00." #: gnucash/report/reports/standard/balsheet-eg.scm:241 -#, fuzzy msgid "Brackets" -msgstr "Tandai kurung pasangan" +msgstr "Tanda kurung" #: gnucash/report/reports/standard/balsheet-eg.scm:242 msgid "Surround negative amounts with brackets, e.g. ($100.00)." -msgstr "" +msgstr "Tandai jumlah negatif dengan tanda kurung, misal ($100.00)." #: gnucash/report/reports/standard/balsheet-eg.scm:260 msgid "" @@ -25564,19 +25841,22 @@ msgid "" "double-checking them.
Change the 'Extra Notes' option to get rid of this " "message)" msgstr "" +"(Versi pengembangan -- jangan mengandalkan bilangan-bilangan pada di laporan " +"ini tanpa memeriksanya kembali.
Ubah opsi 'Catatan Ekstra' untuk " +"menonaktifkan pesan ini)" #: gnucash/report/reports/standard/balsheet-eg.scm:389 -#: libgnucash/engine/Scrub.c:107 +#: libgnucash/engine/Scrub.c:117 msgid "Orphan" -msgstr "" +msgstr "Terlantar" #: gnucash/report/reports/standard/balsheet-eg.scm:564 msgid "Balance Sheet using eguile-gnc" -msgstr "" +msgstr "Neraca menggunakan eguile-gnc" #: gnucash/report/reports/standard/balsheet-eg.scm:565 msgid "Display a balance sheet (using eguile template)" -msgstr "" +msgstr "Tampilkan neraca (menggunakan templat eguile)" #: gnucash/report/reports/standard/balsheet-pnl.scm:52 msgid "" @@ -25585,62 +25865,65 @@ msgid "" "without notice. Bug reports are very welcome at\n" "https://bugs.gnucash.org/" msgstr "" +"PERINGATAN: Konversi mata uang asing, dan perhitungan keuntungan belum " +"direalisasikan\n" +"elum dikonfirmasi kebenarannya. Laporan ini mungkin akan dimodifikasi\n" +"tanpa pemberitahuan. Laporan kutu sangat kami harapkan di\n" +"https://bugs.gnucash.org/" #: gnucash/report/reports/standard/balsheet-pnl.scm:62 -#, fuzzy msgid "Period duration" -msgstr "_Periode:" +msgstr "Durasi periode" #: gnucash/report/reports/standard/balsheet-pnl.scm:63 -#, fuzzy msgid "Duration between time periods" -msgstr "_Durasi waktu:" +msgstr "Durasi antar periode waktu" #: gnucash/report/reports/standard/balsheet-pnl.scm:65 -#, fuzzy msgid "Enable dual columns" -msgstr "Kolom" +msgstr "Aktifkan dua kolom" #: gnucash/report/reports/standard/balsheet-pnl.scm:66 msgid "Selecting this option will enable double-column reporting." -msgstr "" +msgstr "Memilih opsi ini akan mengaktifkan laporan dua-kolom." #: gnucash/report/reports/standard/balsheet-pnl.scm:69 -#, fuzzy msgid "Disable amount indenting" -msgstr "Nonaktifkan" +msgstr "Nonaktifkan indentasi jumlah" #: gnucash/report/reports/standard/balsheet-pnl.scm:70 msgid "" "Selecting this option will disable amount indenting, and condense amounts " "into a single column." msgstr "" +"Memilih opsi ini akan menonaktifkan indentasi jumlah, dan meringkas jumlah " +"menjadi satu kolom." #: gnucash/report/reports/standard/balsheet-pnl.scm:72 #: gnucash/report/trep-engine.scm:83 -#, fuzzy msgid "Add options summary" -msgstr "Ringkasan" +msgstr "Tambahkan opsi ikhtisar" #: gnucash/report/reports/standard/balsheet-pnl.scm:73 #: gnucash/report/trep-engine.scm:565 -#, fuzzy msgid "Add summary of options." -msgstr "Ringkasan" +msgstr "Tambahkan ikhtisar opsi-opsi yang ada." #: gnucash/report/reports/standard/balsheet-pnl.scm:75 msgid "Account full name instead of indenting" -msgstr "" +msgstr "Nama lengkap akun alih-alih indentasi" #: gnucash/report/reports/standard/balsheet-pnl.scm:76 msgid "" "Selecting this option enables full account name instead, and disables " "indenting account names." msgstr "" +"Memilih opsi ini akan mengaktifkan nama lengkap akun, dan menonaktifkan nama " +"akun indentasi." #: gnucash/report/reports/standard/balsheet-pnl.scm:84 msgid "Parent account amounts include children" -msgstr "" +msgstr "Jumlah akun induk menyertakan anak" #: gnucash/report/reports/standard/balsheet-pnl.scm:85 msgid "" @@ -25649,168 +25932,156 @@ msgid "" "account. If this option is disabled, subtotals are displayed below parent " "and children groups." msgstr "" +"Jika opsi ini aktif, subtotal ditampilkan di dalam jumlah induk, dan jika " +"induk memiliki jumlahnya sendiri, akan ditampilkan di baris berikutnya " +"sebagai sebuah akun anak. Jika opsi ini nonaktif, subtotal ditampilkan di " +"bawah grup induk dan anak." #: gnucash/report/reports/standard/balsheet-pnl.scm:99 -#, fuzzy msgid "Display amounts as hyperlinks" -msgstr "Tampilkan pada…" +msgstr "Tampilkan jumlah sebagai tautan" #: gnucash/report/reports/standard/balsheet-pnl.scm:100 msgid "Shows each amounts in the table as a hyperlink to a register or report." msgstr "" +"Tampilkan setiap jumlah pada tabel sebagai tautan ke register atau laporan." #: gnucash/report/reports/standard/balsheet-pnl.scm:103 -#, fuzzy msgid "Label sections" -msgstr "Golden sections" +msgstr "Label bagian" #: gnucash/report/reports/standard/balsheet-pnl.scm:104 -#, fuzzy msgid "Whether or not to include a label for sections." -msgstr "Apakah kotak ini mesti menyertakan suatu anak yang dipusatkan." +msgstr "Apakah menyertakan label untuk suatu bagian." #: gnucash/report/reports/standard/balsheet-pnl.scm:105 -#, fuzzy msgid "Include totals" -msgstr "Include=" +msgstr "Sertakan total" #: gnucash/report/reports/standard/balsheet-pnl.scm:106 msgid "Whether or not to include a line indicating total amounts." -msgstr "" +msgstr "Apakah menyertakan sebuah baris yang mengindikasikan jumlah total." #: gnucash/report/reports/standard/balsheet-pnl.scm:110 -#, fuzzy msgid "Enable chart" -msgstr "Bagan" +msgstr "Aktifkan bagan" #: gnucash/report/reports/standard/balsheet-pnl.scm:111 -#, fuzzy msgid "Enable link to chart" -msgstr "Bagan" +msgstr "Aktifkan tautan ke bagan" #: gnucash/report/reports/standard/balsheet-pnl.scm:113 #: gnucash/report/trep-engine.scm:80 -#, fuzzy msgid "Common Currency" -msgstr "mata uang" +msgstr "Mata Uang Umum" #: gnucash/report/reports/standard/balsheet-pnl.scm:114 msgid "Convert all amounts to a single currency." -msgstr "" +msgstr "Konversikan semua jumlah ke sebuah mata uang tunggal." #: gnucash/report/reports/standard/balsheet-pnl.scm:120 #: gnucash/report/trep-engine.scm:81 -#, fuzzy msgid "Show original currency amount" -msgstr "Tampilkan _nilai tajuk yang asli" +msgstr "Tampilkan jumlah dengan mata uang asli" #: gnucash/report/reports/standard/balsheet-pnl.scm:121 #: gnucash/report/trep-engine.scm:554 msgid "Also show original currency amounts" -msgstr "" +msgstr "Juga tampilkan jumlah dengan mata uang asli" #: gnucash/report/reports/standard/balsheet-pnl.scm:123 msgid "If more than 1 period column, include overall period?" -msgstr "" +msgstr "Jika lebih dari 1 periode kolom, masukkan periode keseluruhan?" #: gnucash/report/reports/standard/balsheet-pnl.scm:124 msgid "" "If several profit & loss period columns are shown, also show overall period " "profit & loss." msgstr "" +"Jika beberapa kolom periode laba & rugi ditampilkan, juga tampilkan " +"keseluruhan periode laba & rugi." #: gnucash/report/reports/standard/balsheet-pnl.scm:238 #: gnucash/report/trep-engine.scm:574 -#, fuzzy msgid "Always" msgstr "Selalu" #: gnucash/report/reports/standard/balsheet-pnl.scm:239 #: gnucash/report/trep-engine.scm:575 -#, fuzzy msgid "Always display summary." -msgstr "selalu" +msgstr "Selalu tampilkan ikhtisar." #: gnucash/report/reports/standard/balsheet-pnl.scm:242 #: gnucash/report/trep-engine.scm:578 -#, fuzzy msgid "Disable report summary." -msgstr "Lapo_rkan" +msgstr "Nonaktifkan ikhtisar laporan." #: gnucash/report/reports/standard/balsheet-pnl.scm:496 #: gnucash/report/reports/standard/balsheet-pnl.scm:652 #: gnucash/report/trep-engine.scm:1585 -#, fuzzy msgid "Total For " -msgstr "Total:" +msgstr "Total Untuk " #: gnucash/report/reports/standard/balsheet-pnl.scm:847 -#, fuzzy msgid "missing" -msgstr "Hilang" +msgstr "tak ada" #: gnucash/report/reports/standard/balsheet-pnl.scm:1092 -#: libgnucash/engine/Account.cpp:4316 -#, fuzzy +#: libgnucash/engine/Account.cpp:4363 msgid "Asset" -msgstr "tipe akun: Aset" +msgstr "Aset" #: gnucash/report/reports/standard/balsheet-pnl.scm:1095 -#: libgnucash/engine/Account.cpp:4318 -#, fuzzy +#: libgnucash/engine/Account.cpp:4365 msgid "Liability" -msgstr "tipe akun: Liabilitas" +msgstr "Liabilitas" #: gnucash/report/reports/standard/balsheet-pnl.scm:1113 -#, fuzzy msgid "Liability and Equity" -msgstr "ekuitas" +msgstr "Liabilitas dan Ekuitas" #: gnucash/report/reports/standard/balsheet-pnl.scm:1131 #: gnucash/report/reports/standard/balsheet-pnl.scm:1279 -#, fuzzy msgid "Exchange Rates" -msgstr "Seberapa sering nilai tukar mata uang harus diperbarui" +msgstr "Nilai Tukar" #: gnucash/report/reports/standard/balsheet-pnl.scm:1141 #: gnucash/report/reports/standard/budget-barchart.scm:157 msgid "Barchart" -msgstr "" +msgstr "Bagan Batang" #: gnucash/report/reports/standard/balsheet-pnl.scm:1210 msgid " to " -msgstr "" +msgstr " ke " #: gnucash/report/reports/standard/balsheet-pnl.scm:1272 -#: gnucash/report/reports/standard/trial-balance.scm:860 -#, fuzzy +#: gnucash/report/reports/standard/trial-balance.scm:861 msgid "Net Income" -msgstr "tipe akun: Pendapatan" +msgstr "Pendapatan Bersih" #: gnucash/report/reports/standard/balsheet-pnl.scm:1308 -#, fuzzy msgid "Balance Sheet (Multicolumn)" -msgstr "neraca" +msgstr "Neraca (multikolom)" #: gnucash/report/reports/standard/balsheet-pnl.scm:1309 -#, fuzzy msgid "Income Statement (Multicolumn)" -msgstr "laporan laba-rugi" +msgstr "Pernyataan Pendapatan (Multi-kolom)" #: gnucash/report/reports/standard/budget-balance-sheet.scm:38 msgid "Budget Balance Sheet" msgstr "Lembar Neraca Anggaran" #: gnucash/report/reports/standard/budget-balance-sheet.scm:97 -#, fuzzy msgid "Include new/existing totals" -msgstr "Simpan nilai ke variabel yang ada atau baru" +msgstr "Sertakan total baru/sudah ada" #: gnucash/report/reports/standard/budget-balance-sheet.scm:99 msgid "" "Whether or not to include lines indicating change in totals introduced by " "budget." msgstr "" +"Apakah menyertakan baris yang menunjukkan perubahan dalam total yang " +"diperkenalkan oleh anggaran." #: gnucash/report/reports/standard/budget-balance-sheet.scm:111 #: gnucash/report/reports/standard/budget-barchart.scm:98 @@ -25820,70 +26091,57 @@ msgstr "" msgid "Budget to use." msgstr "Anggaran yang digunakan." -#: gnucash/report/reports/standard/budget-balance-sheet.scm:676 -#, fuzzy +#: gnucash/report/reports/standard/budget-balance-sheet.scm:677 msgid "Existing Assets" -msgstr "aset bersih" +msgstr "Aset yang Ada" -#: gnucash/report/reports/standard/budget-balance-sheet.scm:678 -#, fuzzy +#: gnucash/report/reports/standard/budget-balance-sheet.scm:679 msgid "Allocated Assets" -msgstr "tipe akun: Aset & Liabilitas" +msgstr "Aset Dialokasikan" -#: gnucash/report/reports/standard/budget-balance-sheet.scm:682 -#, fuzzy +#: gnucash/report/reports/standard/budget-balance-sheet.scm:683 msgid "Unallocated Assets" -msgstr "Ruang yang Belum Dialokasikan" +msgstr "Aset Tak Dialokasikan" -#: gnucash/report/reports/standard/budget-balance-sheet.scm:708 -#, fuzzy +#: gnucash/report/reports/standard/budget-balance-sheet.scm:709 msgid "Existing Liabilities" -msgstr "liabilitas/ekuitas" +msgstr "Liabilitas yang Ada" -#: gnucash/report/reports/standard/budget-balance-sheet.scm:713 -#, fuzzy +#: gnucash/report/reports/standard/budget-balance-sheet.scm:714 msgid "New Liabilities" -msgstr "liabilitas/ekuitas" - -#: gnucash/report/reports/standard/budget-balance-sheet.scm:739 -#, fuzzy -msgid "Existing Retained Earnings" -msgstr "Pendapatan Ditahan" +msgstr "Liabilitas Baru" #: gnucash/report/reports/standard/budget-balance-sheet.scm:740 -#, fuzzy -msgid "Existing Retained Losses" -msgstr "Pendapatan Ditahan" +msgid "Existing Retained Earnings" +msgstr "Laba Ditahan yang Ada" -#: gnucash/report/reports/standard/budget-balance-sheet.scm:745 -#, fuzzy -msgid "New Retained Earnings" -msgstr "Pendapatan Ditahan" +#: gnucash/report/reports/standard/budget-balance-sheet.scm:741 +msgid "Existing Retained Losses" +msgstr "Rugi Ditahan yang Ada" #: gnucash/report/reports/standard/budget-balance-sheet.scm:746 -#, fuzzy -msgid "New Retained Losses" -msgstr "Pendapatan Ditahan" +msgid "New Retained Earnings" +msgstr "Pendapatan Ditahan Baru" -#: gnucash/report/reports/standard/budget-balance-sheet.scm:751 -#, fuzzy -msgid "Total Retained Earnings" -msgstr "Pendapatan Ditahan" +#: gnucash/report/reports/standard/budget-balance-sheet.scm:747 +msgid "New Retained Losses" +msgstr "Kerugian Ditahan Baru" #: gnucash/report/reports/standard/budget-balance-sheet.scm:752 -#, fuzzy +msgid "Total Retained Earnings" +msgstr "Total Pendapatan Ditahan" + +#: gnucash/report/reports/standard/budget-balance-sheet.scm:753 msgid "Total Retained Losses" -msgstr "Pendapatan Ditahan" +msgstr "Total Kerugian Ditahan" -#: gnucash/report/reports/standard/budget-balance-sheet.scm:768 -#, fuzzy +#: gnucash/report/reports/standard/budget-balance-sheet.scm:769 msgid "Existing Equity" -msgstr "ekuitas" +msgstr "Ekuitas yang Ada" -#: gnucash/report/reports/standard/budget-balance-sheet.scm:771 -#, fuzzy +#: gnucash/report/reports/standard/budget-balance-sheet.scm:772 msgid "New Equity" -msgstr "ekuitas" +msgstr "Ekuitas Baru" #: gnucash/report/reports/standard/budget-barchart.scm:36 msgid "Budget Chart" @@ -25892,63 +26150,61 @@ msgstr "Bagan Anggaran" #: gnucash/report/reports/standard/budget-barchart.scm:41 #, fuzzy msgid "Running Sum" -msgstr "Berjalan" +msgstr "menjalankan Sum" #: gnucash/report/reports/standard/budget-barchart.scm:42 #: gnucash/report/reports/standard/category-barchart.scm:80 -#, fuzzy msgid "Chart Type" -msgstr "Bagan" +msgstr "Tipe Bagan" #: gnucash/report/reports/standard/budget-barchart.scm:50 #: gnucash/report/reports/standard/budget-income-statement.scm:66 #: gnucash/report/reports/standard/budget.scm:71 -#, fuzzy msgid "Range start" -msgstr "Cakupan" +msgstr "Rentang mulai" #: gnucash/report/reports/standard/budget-barchart.scm:52 #: gnucash/report/reports/standard/budget.scm:73 msgid "Select a budget period type that starts the reporting range." -msgstr "Pilih tipe periode anggaran yang memulai bentang pelaporan." +msgstr "Pilih tipe periode anggaran yang memulai rentang pelaporan." #: gnucash/report/reports/standard/budget-barchart.scm:53 #: gnucash/report/reports/standard/budget.scm:74 #, fuzzy msgid "Exact start period" -msgstr "_Periode:" +msgstr "periode awal yang tepat" #: gnucash/report/reports/standard/budget-barchart.scm:55 #: gnucash/report/reports/standard/budget.scm:76 +#, fuzzy msgid "Select exact period that starts the reporting range." -msgstr "" +msgstr "Pilih periode yang tepat yang dimulai kisaran pelaporan." #: gnucash/report/reports/standard/budget-barchart.scm:57 #: gnucash/report/reports/standard/budget-income-statement.scm:70 #: gnucash/report/reports/standard/budget.scm:78 -#, fuzzy msgid "Range end" -msgstr "Akhir" +msgstr "Rentang akhir" #: gnucash/report/reports/standard/budget-barchart.scm:59 #: gnucash/report/reports/standard/budget.scm:80 msgid "Select a budget period type that ends the reporting range." -msgstr "Pilih tipe periode anggaran yang mengakhiri bentang pelaporan." +msgstr "Pilih tipe periode anggaran yang mengakhiri rentang pelaporan." #: gnucash/report/reports/standard/budget-barchart.scm:60 #: gnucash/report/reports/standard/budget.scm:81 #, fuzzy msgid "Exact end period" -msgstr "_Periode:" +msgstr "akhir periode Exact" #: gnucash/report/reports/standard/budget-barchart.scm:62 #: gnucash/report/reports/standard/budget.scm:83 +#, fuzzy msgid "Select exact period that ends the reporting range." -msgstr "" +msgstr "Pilih periode yang tepat yang berakhir kisaran pelaporan." #: gnucash/report/reports/standard/budget-barchart.scm:66 #: gnucash/report/reports/standard/budget.scm:113 -#, fuzzy msgid "First" msgstr "Pertama" @@ -25959,7 +26215,6 @@ msgstr "Periode pertama anggaran" #: gnucash/report/reports/standard/budget-barchart.scm:69 #: gnucash/report/reports/standard/budget.scm:116 -#, fuzzy msgid "Previous" msgstr "Sebelumnya" @@ -25973,7 +26228,7 @@ msgstr "" #: gnucash/report/reports/standard/budget-barchart.scm:73 #: gnucash/report/reports/standard/budget.scm:120 msgid "Current period, according to report evaluation date" -msgstr "" +msgstr "Periode sekarang, berdasarkan tanggal evaluasi laporan" #: gnucash/report/reports/standard/budget-barchart.scm:75 #: gnucash/report/reports/standard/budget.scm:122 @@ -25983,110 +26238,103 @@ msgstr "Selanjutnya" #: gnucash/report/reports/standard/budget-barchart.scm:76 #: gnucash/report/reports/standard/budget.scm:123 msgid "Next period, according to report evaluation date" -msgstr "" +msgstr "Periode berkutnya, berdasarkan tanggal evaluasi laporan" #: gnucash/report/reports/standard/budget-barchart.scm:79 #: gnucash/report/reports/standard/budget.scm:126 -#, fuzzy msgid "Last budget period" -msgstr "Anggaran" +msgstr "Periode anggaran terakhir" #: gnucash/report/reports/standard/budget-barchart.scm:81 #: gnucash/report/reports/standard/budget.scm:128 -#, fuzzy msgid "Manual period selection" -msgstr "Manual" +msgstr "Pemilihan periode manual" #: gnucash/report/reports/standard/budget-barchart.scm:82 #: gnucash/report/reports/standard/budget.scm:129 +#, fuzzy msgid "Explicitly select period value with spinner below" -msgstr "" +msgstr "Secara eksplisit pilih nilai periode dengan spinner bawah" #: gnucash/report/reports/standard/budget-barchart.scm:148 #, fuzzy msgid "Calculate as running sum?" -msgstr "Penyusutan Jumlah Angka Tahun (Sum-of-the-Years’-Digits Depreciation)" +msgstr "Hitung sebagai berjalan sum?" #: gnucash/report/reports/standard/budget-barchart.scm:158 -#, fuzzy msgid "Show the report as a bar chart." -msgstr "Tampilkan _Bilah Lampiran" +msgstr "Tampilkan laporan sebagai bagan batang." #: gnucash/report/reports/standard/budget-barchart.scm:160 msgid "Linechart" -msgstr "" +msgstr "Bagan Garis" #: gnucash/report/reports/standard/budget-barchart.scm:161 -#, fuzzy msgid "Show the report as a line chart." -msgstr "Tampilkan nomor baris" +msgstr "Tampilkan laporan sebagai bagan garis." #. Translators: Bgt and Act refer to budgeted and #. actual total amounts. #: gnucash/report/reports/standard/budget-barchart.scm:216 #, scheme-format msgid "Bgt: ~a Act: ~a" -msgstr "" +msgstr "Angg: ~a Akt: ~a" #: gnucash/report/reports/standard/budget-barchart.scm:222 -#, fuzzy msgid "Actual" -msgstr "Ukuran sebenarnya" +msgstr "Aktual" #: gnucash/report/reports/standard/budget-flow.scm:36 -#, fuzzy msgid "Budget Flow" -msgstr "Aliran" +msgstr "Aliran Dana" #: gnucash/report/reports/standard/budget-flow.scm:70 -#, fuzzy msgid "Period number." -msgstr "_Periode:" +msgstr "Nomor periode." #: gnucash/report/reports/standard/budget-flow.scm:306 #, scheme-format msgid "~a: ~a - ~a" -msgstr "" +msgstr "~a: ~a - ~a" #: gnucash/report/reports/standard/budget-income-statement.scm:62 #: gnucash/report/reports/standard/budget.scm:67 msgid "Report for range of budget periods" -msgstr "" +msgstr "Laporkan untuk rentang periode anggaran" #: gnucash/report/reports/standard/budget-income-statement.scm:64 #: gnucash/report/reports/standard/budget.scm:69 msgid "Create report for a budget period range instead of the entire budget." msgstr "" +"Buat laporan untuk rentang periode anggaran, bukannya seluruh anggaran." #: gnucash/report/reports/standard/budget-income-statement.scm:68 msgid "Select a budget period that begins the reporting range." -msgstr "" +msgstr "Pilih periode anggaran yang memulai rentang laporan." #: gnucash/report/reports/standard/budget-income-statement.scm:72 msgid "Select a budget period that ends the reporting range." -msgstr "" +msgstr "Pilih periode anggaran yang mengakhiri rentang laporan." #: gnucash/report/reports/standard/budget-income-statement.scm:101 #: gnucash/report/reports/standard/income-statement.scm:89 -#, fuzzy msgid "Label the revenue section" -msgstr "SEKSI" +msgstr "Beri label bagian pendapatan" #: gnucash/report/reports/standard/budget-income-statement.scm:103 #: gnucash/report/reports/standard/income-statement.scm:91 msgid "Whether or not to include a label for the revenue section." -msgstr "" +msgstr "Apakah menyertakan label untuk bagian pendapatan." #: gnucash/report/reports/standard/budget-income-statement.scm:104 #: gnucash/report/reports/standard/income-statement.scm:92 -#, fuzzy msgid "Include revenue total" -msgstr "Include" +msgstr "Sertakan total pendapatan" #: gnucash/report/reports/standard/budget-income-statement.scm:106 #: gnucash/report/reports/standard/income-statement.scm:94 msgid "Whether or not to include a line indicating total revenue." -msgstr "" +msgstr "Apakah menyertakan baris yang menunjukkan total pendapatan." #: gnucash/report/reports/standard/budget-income-statement.scm:107 #: gnucash/report/reports/standard/income-statement.scm:101 @@ -26110,9 +26358,8 @@ msgstr "Apakah menyertakan sebuah baris yang menunjukkan total pengeluaran." #: gnucash/report/reports/standard/budget-income-statement.scm:125 #: gnucash/report/reports/standard/income-statement.scm:130 -#, fuzzy msgid "Display as a two column report" -msgstr "Tampilkan _marjin kanan pada kolom:" +msgstr "Tampilkan sebagai laporan dua kolom" #: gnucash/report/reports/standard/budget-income-statement.scm:127 #: gnucash/report/reports/standard/income-statement.scm:132 @@ -26122,7 +26369,7 @@ msgstr "Membagi laporan menjadi kolom pendapatan dan kolom pengeluaran." #: gnucash/report/reports/standard/budget-income-statement.scm:129 #: gnucash/report/reports/standard/income-statement.scm:134 msgid "Display in standard, income first, order" -msgstr "" +msgstr "Tampilkan dalam urutan standar, penghasilan terlebih dahulu" #: gnucash/report/reports/standard/budget-income-statement.scm:131 #: gnucash/report/reports/standard/income-statement.scm:136 @@ -26130,196 +26377,179 @@ msgid "" "Causes the report to display in the standard order, placing income before " "expenses." msgstr "" +"Menyebabkan laporan ditampilkan dalam urutan standar, menempatkan pendapatan " +"sebelum pengeluaran." -#: gnucash/report/reports/standard/budget-income-statement.scm:442 +#: gnucash/report/reports/standard/budget-income-statement.scm:443 msgid "Reporting range end period cannot be less than start period." -msgstr "" +msgstr "Periode akhir rentang pelaporan tidak boleh kurang dari periode awal." -#: gnucash/report/reports/standard/budget-income-statement.scm:510 +#: gnucash/report/reports/standard/budget-income-statement.scm:511 #: gnucash/report/reports/standard/income-statement.scm:505 msgid "Revenues" -msgstr "" +msgstr "Pendapatan" -#: gnucash/report/reports/standard/budget-income-statement.scm:513 +#: gnucash/report/reports/standard/budget-income-statement.scm:514 #: gnucash/report/reports/standard/income-statement.scm:508 -#, fuzzy msgid "Total Revenue" -msgstr "Total:" +msgstr "Total Pendapatan" -#: gnucash/report/reports/standard/budget-income-statement.scm:523 +#: gnucash/report/reports/standard/budget-income-statement.scm:524 #: gnucash/report/reports/standard/income-statement.scm:515 -#, fuzzy msgid "Total Expenses" -msgstr "Waktu & Pengeluaran" +msgstr "Total Pengeluaran" -#: gnucash/report/reports/standard/budget-income-statement.scm:531 -#, fuzzy, scheme-format +#: gnucash/report/reports/standard/budget-income-statement.scm:532 +#, scheme-format msgid "for Budget ~a" -msgstr "Anggaran" +msgstr "untuk Anggaran ~a" -#: gnucash/report/reports/standard/budget-income-statement.scm:533 -#, fuzzy, scheme-format +#: gnucash/report/reports/standard/budget-income-statement.scm:534 +#, scheme-format msgid "for Budget ~a Period ~d" -msgstr "Anggaran" +msgstr "untuk Anggaran ~a Periode ~d" -#: gnucash/report/reports/standard/budget-income-statement.scm:536 -#, fuzzy, scheme-format +#: gnucash/report/reports/standard/budget-income-statement.scm:537 +#, scheme-format msgid "for Budget ~a Periods ~d - ~d" -msgstr "%d × %d" - -#: gnucash/report/reports/standard/budget-income-statement.scm:564 -#: gnucash/report/reports/standard/equity-statement.scm:455 -#: gnucash/report/reports/standard/income-statement.scm:525 -#, fuzzy -msgid "Net income" -msgstr "tipe akun: Pendapatan" +msgstr "untuk Anggaran ~a Periode ~d - ~d" #: gnucash/report/reports/standard/budget-income-statement.scm:565 -#: gnucash/report/reports/standard/equity-statement.scm:456 -#: gnucash/report/reports/standard/income-statement.scm:526 -#, fuzzy -msgid "Net loss" -msgstr "bersih" +#: gnucash/report/reports/standard/equity-statement.scm:457 +#: gnucash/report/reports/standard/income-statement.scm:525 +msgid "Net income" +msgstr "Pemasukan bersih" -#: gnucash/report/reports/standard/budget-income-statement.scm:605 -#, fuzzy -msgid "Budget Income Statement" -msgstr "laporan laba-rugi" +#: gnucash/report/reports/standard/budget-income-statement.scm:566 +#: gnucash/report/reports/standard/equity-statement.scm:458 +#: gnucash/report/reports/standard/income-statement.scm:526 +msgid "Net loss" +msgstr "Kerugian bersih" #: gnucash/report/reports/standard/budget-income-statement.scm:606 -#, fuzzy +msgid "Budget Income Statement" +msgstr "Pernyataan Pendapatan Anggaran" + +#: gnucash/report/reports/standard/budget-income-statement.scm:607 msgid "Budget Profit & Loss" -msgstr "Keuntungan & Kerugian" +msgstr "Laba & Rugi Anggaran" #: gnucash/report/reports/standard/budget.scm:39 -#, fuzzy msgid "Budget Report" -msgstr "Anggaran" +msgstr "Laporan Anggaran" #: gnucash/report/reports/standard/budget.scm:45 #: gnucash/report/reports/standard/cash-flow.scm:45 -#, fuzzy msgid "Account Display Depth" -msgstr "Kedalaman:" +msgstr "Kedalaman Tampilan Akun" #: gnucash/report/reports/standard/budget.scm:46 #: gnucash/report/reports/standard/cash-flow.scm:46 -#, fuzzy msgid "Always show sub-accounts" -msgstr "Tampilkan dialog pemberitahuan pengingat selalu di atas" +msgstr "Selalu tampilkan sub-akun" #: gnucash/report/reports/standard/budget.scm:49 -#, fuzzy msgid "Select Columns" -msgstr "" -"Ada sebelas kolom informasi yang dapat Anda tampilkan dalam tampilan daftar " -"Berkas. Klik tombol menu di pojok kanan atas jendela, pilih " -"Preferensi dan pilih tab Kolom Daftar untuk memilih " -"kolom yang akan terlihat." +msgstr "Pilih Kolom" #: gnucash/report/reports/standard/budget.scm:50 -#, fuzzy msgid "Show Budget" -msgstr "Anggaran" +msgstr "Tampilkan Anggaran" #: gnucash/report/reports/standard/budget.scm:51 -#, fuzzy msgid "Display a column for the budget values." -msgstr "Tampilkan marjin _subjek pada kolom:" +msgstr "Tampilkan kolom untuk nilai anggaran." #: gnucash/report/reports/standard/budget.scm:52 -#, fuzzy msgid "Show Budget Notes" -msgstr "Tampilkan Catatan" +msgstr "Tampilkan Catatan Anggaran" #: gnucash/report/reports/standard/budget.scm:53 -#, fuzzy msgid "Display a column for the budget notes." -msgstr "Tampilkan marjin _subjek pada kolom:" +msgstr "Tampilkan kolom untuk catatan anggaran." #: gnucash/report/reports/standard/budget.scm:54 -#, fuzzy msgid "Show Actual" -msgstr "Ukuran sebenarnya" +msgstr "Tampilkan Aktual" #: gnucash/report/reports/standard/budget.scm:55 -#, fuzzy msgid "Display a column for the actual values." -msgstr "Tampilkan marjin _subjek pada kolom:" +msgstr "Tampilkan kolom untuk nilai aktual." #: gnucash/report/reports/standard/budget.scm:56 -#, fuzzy msgid "Show Difference" -msgstr "_Perbedaan" +msgstr "Tampilkan Selisih" #: gnucash/report/reports/standard/budget.scm:57 msgid "Display the difference as budget - actual." -msgstr "" +msgstr "Tampilkan selisih sebagai anggaran - aktual." #: gnucash/report/reports/standard/budget.scm:58 msgid "Use accumulated amounts" -msgstr "" +msgstr "Gunakan nilai terakumulasi" #: gnucash/report/reports/standard/budget.scm:59 msgid "Values are accumulated across periods." -msgstr "" +msgstr "Nilai diakumulasi sepanjang periode." #: gnucash/report/reports/standard/budget.scm:60 -#, fuzzy msgid "Show Column with Totals" -msgstr "kolom" +msgstr "Tampilkan Kolom dengan Total" #: gnucash/report/reports/standard/budget.scm:61 -#, fuzzy msgid "Display a column with the row totals." -msgstr "Tampilkan marjin _subjek pada kolom:" +msgstr "Tampilkan kolom dengan total baris." #: gnucash/report/reports/standard/budget.scm:62 msgid "Include accounts with zero total balances and budget values" -msgstr "" +msgstr "Masukkan akun dengan saldo total dan nilai anggaran nol" #: gnucash/report/reports/standard/budget.scm:63 msgid "" "Include accounts with zero total (recursive) balances and budget values in " "this report." msgstr "" +"Masukkan akun dengan total saldo (rekursif) dan nilai anggaran nol di " +"laporan ini." #: gnucash/report/reports/standard/budget.scm:85 msgid "Include collapsed periods before selected." -msgstr "" +msgstr "Sertakan periode kolaps sebelum yang dipilih." #: gnucash/report/reports/standard/budget.scm:86 msgid "" "Include in report previous periods as single collapsed column (one for all " "periods before starting)" msgstr "" +"Sertakan dalam laporan, periode sebelumnya sebagai kolom kolaps tunggal " +"(satu untuk semua periode sebelum memulai)" #: gnucash/report/reports/standard/budget.scm:87 msgid "Include collapsed periods after selected." -msgstr "" +msgstr "Sertakan periode kolaps setelah yang dipilih." #: gnucash/report/reports/standard/budget.scm:88 msgid "" "Include in report further periods as single collapsed column (one for all " "periods after ending and to the end of budget range)" msgstr "" +"Sertakan dalam laporan, periode selanjutnya sebagai kolom kolaps tunggal " +"(satu untuk semua periode setelah mengakhiri dan ke akhir rentang anggaran)" #. Translators: Abbreviation for "Budget" amount #: gnucash/report/reports/standard/budget.scm:537 msgid "Bgt" -msgstr "" +msgstr "Anggr" #. Translators: Abbreviation for "Actual" amount #: gnucash/report/reports/standard/budget.scm:542 -#, fuzzy msgid "Act" -msgstr "Pilih penyaring yang bekerja pada warna atau \"None\"." +msgstr "Akt" #. Translators: Abbreviation for "Difference" amount #: gnucash/report/reports/standard/budget.scm:547 -#, fuzzy msgid "Diff" -msgstr "Beda" +msgstr "Slsh" #. Translators: using accumulated amounts mean #. budget will report on budgeted and actual @@ -26327,109 +26557,97 @@ msgstr "Beda" #. of only using the budget-period amounts. #: gnucash/report/reports/standard/budget.scm:777 msgid "using accumulated amounts" -msgstr "" +msgstr "menggunakan nilai terakumulasi" #: gnucash/report/reports/standard/cashflow-barchart.scm:39 -#, fuzzy msgid "Cash Flow Barchart" -msgstr "Aliran" +msgstr "Bagan Batang Arus Kas" #: gnucash/report/reports/standard/cashflow-barchart.scm:45 #: gnucash/report/reports/standard/cash-flow.scm:53 msgid "Include Trading Accounts in report" -msgstr "" +msgstr "Masukkan Akun Perdagangan di laporan" #: gnucash/report/reports/standard/cashflow-barchart.scm:47 -#, fuzzy msgid "Show Money In" -msgstr "tipe akun: pasar uang" +msgstr "Tampilkan Dana Masuk" #: gnucash/report/reports/standard/cashflow-barchart.scm:48 -#, fuzzy msgid "Show Money Out" -msgstr "Tampilkan _zoom keluar" +msgstr "Tampilkan Dana Keluar" #: gnucash/report/reports/standard/cashflow-barchart.scm:49 -#, fuzzy msgid "Show Net Flow" -msgstr "Aliran" +msgstr "Tampilkan Arus Bersih" #: gnucash/report/reports/standard/cashflow-barchart.scm:50 -#, fuzzy msgid "Show Table" -msgstr "_Tabel…" +msgstr "Tampilkan Tabel" #: gnucash/report/reports/standard/cashflow-barchart.scm:99 #: gnucash/report/reports/standard/cash-flow.scm:102 msgid "Include transfers to and from Trading Accounts in the report." -msgstr "" +msgstr "Masukkan transfer ke dan dari Akun Perdagangan di laporan." #: gnucash/report/reports/standard/cashflow-barchart.scm:106 -#, fuzzy msgid "Show money in?" -msgstr "tipe akun: pasar uang" +msgstr "Tampilkan dana masuk?" #: gnucash/report/reports/standard/cashflow-barchart.scm:112 -#, fuzzy msgid "Show money out?" -msgstr "Tampilkan _zoom keluar" +msgstr "Tampilkan dana keluar?" #: gnucash/report/reports/standard/cashflow-barchart.scm:118 msgid "Show net money flow?" -msgstr "" +msgstr "Tampilkan aliran uang bersih?" #: gnucash/report/reports/standard/cashflow-barchart.scm:309 #: gnucash/report/reports/standard/cashflow-barchart.scm:334 -#, fuzzy msgid "Net Flow" -msgstr "Aliran" +msgstr "Arus Bersih" #: gnucash/report/reports/standard/cashflow-barchart.scm:337 -#, fuzzy msgid "Overview:" -msgstr "Ringkasan" +msgstr "Ikhtisar:" #: gnucash/report/reports/standard/cashflow-barchart.scm:376 msgid "Shows a barchart with cash flow over time" -msgstr "" +msgstr "Tampilkan bagan batang dengan arus kas dari waktu ke waktu" #: gnucash/report/reports/standard/cash-flow.scm:38 -#, fuzzy msgid "Cash Flow" -msgstr "Aliran" +msgstr "Arus Kas" #: gnucash/report/reports/standard/cash-flow.scm:52 -#, fuzzy msgid "Show Full Account Names" -msgstr "Tampilkan Nama Halaman lengkap" +msgstr "Tampilkan Nama Lengkap Akun" #: gnucash/report/reports/standard/cash-flow.scm:83 msgid "Show full account names (including parent accounts)." -msgstr "" +msgstr "Tampilkan nama lengkap akun (termasuk akun induk)." -#: gnucash/report/reports/standard/cash-flow.scm:203 +#: gnucash/report/reports/standard/cash-flow.scm:205 #, scheme-format msgid "~a and subaccounts" -msgstr "" +msgstr "~a dan sub-akun" -#: gnucash/report/reports/standard/cash-flow.scm:204 -#, fuzzy, scheme-format +#: gnucash/report/reports/standard/cash-flow.scm:206 +#, scheme-format msgid "~a and selected subaccounts" -msgstr "Tidak ada folder yang dipilih." +msgstr "~a dan sub-akun terpilih" -#: gnucash/report/reports/standard/cash-flow.scm:268 +#: gnucash/report/reports/standard/cash-flow.scm:270 msgid "Money into selected accounts comes from" -msgstr "" +msgstr "Uang ke akun yang dipilih berasal dari" -#: gnucash/report/reports/standard/cash-flow.scm:289 +#: gnucash/report/reports/standard/cash-flow.scm:291 msgid "Money out of selected accounts goes to" -msgstr "" +msgstr "Uang keluar dari akun yang dipilih menuju ke" #: gnucash/report/reports/standard/category-barchart.scm:41 #: gnucash/report/reports/standard/net-charts.scm:366 -#, fuzzy msgid "Income Chart" -msgstr "laporan laba-rugi" +msgstr "Bagan Pendapatan" #: gnucash/report/reports/standard/category-barchart.scm:42 #: gnucash/report/reports/standard/net-charts.scm:387 @@ -26438,120 +26656,110 @@ msgstr "Bagan Pengeluaran" #: gnucash/report/reports/standard/category-barchart.scm:43 #: gnucash/report/reports/standard/net-charts.scm:367 -#, fuzzy msgid "Asset Chart" -msgstr "Bagan" +msgstr "Bagan Aset" #: gnucash/report/reports/standard/category-barchart.scm:44 #: gnucash/report/reports/standard/net-charts.scm:388 -#, fuzzy msgid "Liability Chart" -msgstr "tipe akun: Liabilitas" +msgstr "Bagan Liabilitas" #: gnucash/report/reports/standard/category-barchart.scm:49 msgid "Shows a chart with the Income per interval developing over time" msgstr "" +"Tampilkan sebuah bagan dengan Pendapatan per interval yang berkembang dari " +"waktu ke waktu" #: gnucash/report/reports/standard/category-barchart.scm:52 msgid "Shows a chart with the Expenses per interval developing over time" msgstr "" +"Tampilkan sebuah bagan dengan Pengeluaran per interval yang berkembang dari " +"waktu ke waktu" #: gnucash/report/reports/standard/category-barchart.scm:55 msgid "Shows a chart with the Assets developing over time" -msgstr "" +msgstr "Tampilkan sebuah bagan dengan Aset yang berkembang dari waktu ke waktu" #: gnucash/report/reports/standard/category-barchart.scm:57 msgid "Shows a chart with the Liabilities developing over time" msgstr "" +"Tampilkan sebuah bagan dengan Liabilitas yang berkembang dari waktu ke waktu" #: gnucash/report/reports/standard/category-barchart.scm:63 -#, fuzzy msgid "Income Over Time" -msgstr "laporan laba-rugi" +msgstr "Pendapatan dari Waktu ke Waktu" #: gnucash/report/reports/standard/category-barchart.scm:64 msgid "Expense Over Time" msgstr "Pengeluaran dari Waktu ke Waktu" #: gnucash/report/reports/standard/category-barchart.scm:65 -#, fuzzy msgid "Assets Over Time" -msgstr "tipe akun: Aset & Liabilitas" +msgstr "Aset dari Waktu ke Waktu" #: gnucash/report/reports/standard/category-barchart.scm:66 -#, fuzzy msgid "Liabilities Over Time" -msgstr "liabilitas/ekuitas" +msgstr "Liabilitas dari Waktu ke Waktu" #: gnucash/report/reports/standard/category-barchart.scm:82 -#, fuzzy msgid "Use Stacked Charts" -msgstr "_Pakai apa adanya" +msgstr "Gunakan Bagan Bertumpuk" #: gnucash/report/reports/standard/category-barchart.scm:83 -#, fuzzy msgid "Maximum Bars" -msgstr "Maksimal:" +msgstr "Batang Maksimum" #: gnucash/report/reports/standard/category-barchart.scm:130 msgid "Show the average daily amount during the reporting period." -msgstr "" +msgstr "Tampilkan jumlah rata-rata harian selama periode pelaporan." #: gnucash/report/reports/standard/category-barchart.scm:165 -#, fuzzy msgid "Bar Chart" -msgstr "Bagan" +msgstr "Bagan Batang" #: gnucash/report/reports/standard/category-barchart.scm:166 -#, fuzzy msgid "Use bar charts." -msgstr "baris menu" +msgstr "Gunakan bagan batang." #: gnucash/report/reports/standard/category-barchart.scm:168 -#, fuzzy msgid "Line Chart" -msgstr "Bagan" +msgstr "Bagan Garis" #: gnucash/report/reports/standard/category-barchart.scm:169 -#, fuzzy msgid "Use line charts." -msgstr "Gunakan tipe garis tangkai" +msgstr "Gunakan bagan garis." #: gnucash/report/reports/standard/category-barchart.scm:175 msgid "Show charts as stacked charts?" -msgstr "" +msgstr "Tampilkan bagan sebagai bagan bertumpuk?" #: gnucash/report/reports/standard/category-barchart.scm:181 -#, fuzzy msgid "Maximum number of stacks in the chart." -msgstr "Cacah maksimum karakter bagi entri ini. Nol bila tanpa maksimum" +msgstr "Jumlah maksimum tumpukan pada bagan." #: gnucash/report/reports/standard/category-barchart.scm:308 -#, fuzzy msgid "Daily Average" -msgstr "rata-rata" +msgstr "Rata-rata Harian" #: gnucash/report/reports/standard/category-barchart.scm:515 #, scheme-format msgid "Balances ~a to ~a" -msgstr "" +msgstr "Saldo ~a ke ~a" #: gnucash/report/reports/standard/category-barchart.scm:637 #: gnucash/report/reports/standard/category-barchart.scm:658 #: gnucash/report/trep-engine.scm:1654 gnucash/report/trep-engine.scm:1913 -#, fuzzy msgid "Grand Total" -msgstr "Amerika/Grand_Turk" +msgstr "Total Keseluruhan" #: gnucash/report/reports/standard/category-barchart.scm:684 #: gnucash/report/reports/standard/net-charts.scm:471 -#, fuzzy msgid "No exportable data" -msgstr "Dapat diekspor" +msgstr "Tak ada data yang dapat diekspor" #: gnucash/report/reports/standard/customer-summary.scm:52 msgid "The income accounts where the sales and income was recorded." -msgstr "" +msgstr "Akun pendapatan dimana penjualan dan pendapatan dicatat." #: gnucash/report/reports/standard/customer-summary.scm:62 msgid "" @@ -26559,7 +26767,7 @@ msgid "" "from the sales to give the profit." msgstr "" "Akun pengeluaran di mana pengeluaran dicatat yang kemudian dikurangkan dari " -"penjualan untuk menghasilkan keuntungan." +"penjualan untuk menghasilkan laba." #: gnucash/report/reports/standard/customer-summary.scm:64 msgid "Show Expense Column" @@ -26567,16 +26775,15 @@ msgstr "Tampilkan Kolom Pengeluaran" #: gnucash/report/reports/standard/customer-summary.scm:65 msgid "Show the column with the expenses per customer." -msgstr "" +msgstr "Tampilkan kolom pengeluaran per pelanggan." #: gnucash/report/reports/standard/customer-summary.scm:66 -#, fuzzy msgid "Show Company Address" -msgstr "Berdasarkan _Perusahaan" +msgstr "Tampilkan Alamat Perusahaan" #: gnucash/report/reports/standard/customer-summary.scm:67 msgid "Show your own company's address and the date of printing." -msgstr "" +msgstr "Tampilkan alamat perusahaan Anda dan tanggal pencetakan." #: gnucash/report/reports/standard/customer-summary.scm:69 #: gnucash/report/reports/standard/invoice.scm:212 @@ -26616,270 +26823,248 @@ msgstr "" #: gnucash/report/reports/standard/owner-report.scm:591 #: gnucash/report/reports/standard/owner-report.scm:596 #: gnucash/report/reports/standard/owner-report.scm:601 -#, fuzzy msgid "Display Columns" -msgstr "untuk kolom" +msgstr "Tampilkan Kolom" #: gnucash/report/reports/standard/customer-summary.scm:79 -#, fuzzy msgid "Show Lines with All Zeros" -msgstr "Tampilkan garis konektor" +msgstr "Tampilkan Baris dengan Semua Nol" #: gnucash/report/reports/standard/customer-summary.scm:80 msgid "" "Show the table lines with customers which did not have any transactions in " "the reporting period, hence would show all zeros in the columns." msgstr "" +"Tampilkan baris-baris tabel dengan pelanggan yang tidak memiliki transaksi " +"apapun dalam periode laporan, sehingga akan menampilkan semua nol di dalam " +"kolom." #: gnucash/report/reports/standard/customer-summary.scm:81 -#, fuzzy msgid "Show Inactive Customers" -msgstr "Tak aktif" +msgstr "Tampilkan Pelanggan Tak Aktif" #: gnucash/report/reports/standard/customer-summary.scm:82 msgid "Include customers that have been marked inactive." -msgstr "" +msgstr "Sertakan pelanggan yang telah ditandai tidak aktif." #: gnucash/report/reports/standard/customer-summary.scm:84 -#, fuzzy msgid "Sort Column" -msgstr "Urut berdasarkan" +msgstr "Urutkan Kolom" #: gnucash/report/reports/standard/customer-summary.scm:85 msgid "Choose the column by which the result table is sorted." -msgstr "" +msgstr "Pilih kolom untuk mengurutkan tabel hasil." #: gnucash/report/reports/standard/customer-summary.scm:87 msgid "Choose the ordering of the column sort: Either ascending or descending." -msgstr "" +msgstr "Pilih urutan kolom: Menaik atau menurun." #: gnucash/report/reports/standard/customer-summary.scm:126 -#, fuzzy msgid "Customer Name" -msgstr "Nasabah Kunci" +msgstr "Nama Pelanggan" #: gnucash/report/reports/standard/customer-summary.scm:127 -#, fuzzy msgid "Sort alphabetically by customer name." -msgstr "Urutkan berdasar alfabet" +msgstr "Urutkan berdasarkan abjad menggunakan nama pelanggan." #: gnucash/report/reports/standard/customer-summary.scm:130 -#, fuzzy msgid "Sort by profit amount." -msgstr "jumlah" +msgstr "Urutkan berdasar jumlah laba." #. Translators: "Markup" is profit amount divided by sales amount #: gnucash/report/reports/standard/customer-summary.scm:133 #: gnucash/report/reports/standard/customer-summary.scm:323 -#, fuzzy msgid "Markup" -msgstr "markup" +msgstr "Markup" #: gnucash/report/reports/standard/customer-summary.scm:134 msgid "Sort by markup (which is profit amount divided by sales)." msgstr "" +"Urutkan berdasarkan markup (yang merupakan jumlah keuntungan dibagi dengan " +"penjualan)." #: gnucash/report/reports/standard/customer-summary.scm:136 #: gnucash/report/reports/standard/customer-summary.scm:324 #: gnucash/report/reports/standard/income-gst-statement.scm:131 -#, fuzzy msgid "Sales" -msgstr "penjualan" +msgstr "Penjualan" #: gnucash/report/reports/standard/customer-summary.scm:137 -#, fuzzy msgid "Sort by sales amount." -msgstr "penjualan" +msgstr "Urutkan berdasarkan jumlah penjualan." #: gnucash/report/reports/standard/customer-summary.scm:140 msgid "Sort by expense amount." msgstr "Urutkan berdasar jumlah pengeluaran." #: gnucash/report/reports/standard/customer-summary.scm:150 -#, fuzzy msgid "A to Z, smallest to largest." -msgstr "Terbesar" +msgstr "A ke Z, terkecil ke terbesar." #: gnucash/report/reports/standard/customer-summary.scm:153 -#, fuzzy msgid "Z to A, largest to smallest." -msgstr "Terbesar" +msgstr "Z ke A, terbesar ke terkecil." #: gnucash/report/reports/standard/customer-summary.scm:294 #, scheme-format msgid "~a ~a - ~a" -msgstr "" +msgstr "~a ~a - ~a" #: gnucash/report/reports/standard/customer-summary.scm:314 -#, fuzzy msgid "No valid customer found." -msgstr "Nasabah Kunci" +msgstr "Pelanggan yang valid tak ditemukan." #: gnucash/report/reports/standard/customer-summary.scm:402 -#, fuzzy msgid "No Customer" -msgstr "Nasabah Kunci" +msgstr "Tak Ada Pelanggan" -#: gnucash/report/reports/standard/customer-summary.scm:514 -#, fuzzy +#: gnucash/report/reports/standard/customer-summary.scm:516 msgid "Customer Summary" -msgstr "Nasabah Kunci" +msgstr "Ikhtisar Pelanggan" #: gnucash/report/reports/standard/equity-statement.scm:55 -#, fuzzy msgid "Equity Statement" -msgstr "laporan ekuitas" +msgstr "Pernyataan Ekuitas" #: gnucash/report/reports/standard/equity-statement.scm:70 -#, fuzzy msgid "Report only on these accounts." -msgstr "Akun" +msgstr "Laporkan hanya pada akun tersebut." #: gnucash/report/reports/standard/equity-statement.scm:86 #: gnucash/report/reports/standard/income-statement.scm:118 #: gnucash/report/reports/standard/trial-balance.scm:104 -#, fuzzy msgid "Closing Entries pattern" -msgstr "Isi _jurnal" +msgstr "Pola Entri Penutup" #: gnucash/report/reports/standard/equity-statement.scm:88 #: gnucash/report/reports/standard/income-statement.scm:120 #: gnucash/report/reports/standard/trial-balance.scm:106 msgid "Any text in the Description column which identifies closing entries." msgstr "" +"Setiap teks di dalam kolom Deskripsi yang mengidentifikasi entri penutup." #: gnucash/report/reports/standard/equity-statement.scm:90 #: gnucash/report/reports/standard/income-statement.scm:122 #: gnucash/report/reports/standard/trial-balance.scm:108 msgid "Closing Entries pattern is case-sensitive" -msgstr "" +msgstr "Pola Entri Penutup membedakan huruf besar/kecil" #: gnucash/report/reports/standard/equity-statement.scm:92 #: gnucash/report/reports/standard/income-statement.scm:124 #: gnucash/report/reports/standard/trial-balance.scm:110 msgid "Causes the Closing Entries Pattern match to be case-sensitive." msgstr "" +"Menyebabkan kecocokan Pola Entri Penutup Menutup dibedakan huruf besar/kecil." #: gnucash/report/reports/standard/equity-statement.scm:94 #: gnucash/report/reports/standard/income-statement.scm:126 #: gnucash/report/reports/standard/trial-balance.scm:112 msgid "Closing Entries Pattern is regular expression" -msgstr "" +msgstr "Pola Entri Penutup adalah ekspresi reguler" #: gnucash/report/reports/standard/equity-statement.scm:96 #: gnucash/report/reports/standard/income-statement.scm:128 #: gnucash/report/reports/standard/trial-balance.scm:114 msgid "" "Causes the Closing Entries Pattern to be treated as a regular expression." -msgstr "" +msgstr "Menyebabkan Pola Entri Penutup diperlakukan sebagai ekspresi reguler." -#: gnucash/report/reports/standard/equity-statement.scm:423 +#: gnucash/report/reports/standard/equity-statement.scm:425 #: gnucash/report/reports/standard/income-statement.scm:481 -#: gnucash/report/reports/standard/trial-balance.scm:404 -#, fuzzy +#: gnucash/report/reports/standard/trial-balance.scm:405 msgid "for Period" -msgstr "_Periode:" +msgstr "untuk Periode" -#: gnucash/report/reports/standard/equity-statement.scm:450 -#: gnucash/report/reports/standard/equity-statement.scm:486 -#, fuzzy +#: gnucash/report/reports/standard/equity-statement.scm:452 +#: gnucash/report/reports/standard/equity-statement.scm:488 msgid "Capital" -msgstr "laba modal" +msgstr "Modal" -#: gnucash/report/reports/standard/equity-statement.scm:461 +#: gnucash/report/reports/standard/equity-statement.scm:463 msgid "Investments" -msgstr "" +msgstr "Investasi" -#: gnucash/report/reports/standard/equity-statement.scm:466 +#: gnucash/report/reports/standard/equity-statement.scm:468 msgid "Withdrawals" -msgstr "" +msgstr "Penarikan" -#: gnucash/report/reports/standard/equity-statement.scm:479 -#, fuzzy +#: gnucash/report/reports/standard/equity-statement.scm:481 msgid "Increase in capital" -msgstr "Spasi Kapital" +msgstr "Peningkatan modal" -#: gnucash/report/reports/standard/equity-statement.scm:480 -#, fuzzy +#: gnucash/report/reports/standard/equity-statement.scm:482 msgid "Decrease in capital" -msgstr "Mun_durkan Indentasi" +msgstr "Penurunan modal" #: gnucash/report/reports/standard/general-journal.scm:94 #: gnucash/report/reports/standard/general-ledger.scm:68 #: gnucash/report/reports/standard/register.scm:135 -#: gnucash/report/reports/standard/register.scm:388 +#: gnucash/report/reports/standard/register.scm:359 #: gnucash/report/trep-engine.scm:943 gnucash/report/trep-engine.scm:1071 -#, fuzzy msgid "Num/Action" -msgstr "Aksi" +msgstr "Num/Aksi" #: gnucash/report/reports/standard/general-journal.scm:102 #: gnucash/report/reports/standard/general-ledger.scm:82 #: gnucash/report/reports/standard/general-ledger.scm:102 -#: gnucash/report/reports/standard/register.scm:441 +#: gnucash/report/reports/standard/register.scm:412 #: gnucash/report/trep-engine.scm:958 gnucash/report/trep-engine.scm:1092 #: gnucash/report/trep-engine.scm:1380 #, fuzzy msgid "Running Balance" -msgstr "seimbangkan" +msgstr "menjalankan Balance" #: gnucash/report/reports/standard/general-journal.scm:103 #: gnucash/report/reports/standard/general-ledger.scm:83 #: gnucash/report/reports/standard/general-ledger.scm:103 -#: gnucash/report/reports/standard/register.scm:446 +#: gnucash/report/reports/standard/register.scm:417 #: gnucash/report/trep-engine.scm:959 msgid "Totals" -msgstr "" +msgstr "Total" #: gnucash/report/reports/standard/general-ledger.scm:39 -#, fuzzy msgid "General Ledger" -msgstr "buku besar" +msgstr "Buku Besar Umum" #: gnucash/report/reports/standard/general-ledger.scm:50 #: gnucash/report/reports/standard/income-gst-statement.scm:40 #: gnucash/report/trep-engine.scm:59 -#, fuzzy msgid "Sorting" -msgstr "Cara mengurutkan berkas" +msgstr "Penyortiran" #: gnucash/report/reports/standard/general-ledger.scm:69 #: gnucash/report/trep-engine.scm:964 gnucash/report/trep-engine.scm:1178 #: gnucash/report/trep-engine.scm:1187 -#, fuzzy msgid "Trans Number" -msgstr "{number}" +msgstr "Nomor Trans" #: gnucash/report/reports/standard/general-ledger.scm:73 #: gnucash/report/reports/standard/general-ledger.scm:93 #: gnucash/report/trep-engine.scm:901 gnucash/report/trep-engine.scm:948 #: gnucash/report/trep-engine.scm:1094 -#, fuzzy msgid "Use Full Account Name" -msgstr "nama akun" +msgstr "Gunakan Nama Lengkap Akun" #: gnucash/report/reports/standard/general-ledger.scm:75 #: gnucash/report/reports/standard/general-ledger.scm:95 #: gnucash/report/trep-engine.scm:193 gnucash/report/trep-engine.scm:905 #: gnucash/report/trep-engine.scm:991 gnucash/report/trep-engine.scm:1077 -#, fuzzy msgid "Other Account Name" -msgstr "Nama Lain" +msgstr "Nama Akun Lain" #: gnucash/report/reports/standard/general-ledger.scm:76 #: gnucash/report/reports/standard/general-ledger.scm:96 #: gnucash/report/trep-engine.scm:921 gnucash/report/trep-engine.scm:951 #: gnucash/report/trep-engine.scm:1102 msgid "Use Full Other Account Name" -msgstr "" +msgstr "Gunakan Nama Lengkap Akun Lain" #: gnucash/report/reports/standard/general-ledger.scm:77 #: gnucash/report/reports/standard/general-ledger.scm:97 #: gnucash/report/trep-engine.scm:200 gnucash/report/trep-engine.scm:925 #: gnucash/report/trep-engine.scm:952 gnucash/report/trep-engine.scm:1099 -#, fuzzy msgid "Other Account Code" -msgstr "kode akun" +msgstr "Kode Akun Lain" #: gnucash/report/reports/standard/general-ledger.scm:84 #: gnucash/report/reports/standard/general-ledger.scm:104 @@ -26887,78 +27072,66 @@ msgstr "kode akun" #: gnucash/report/trep-engine.scm:1136 #, fuzzy msgid "Sign Reverses" -msgstr "Ma_suk" +msgstr "Masuk membalikkan" #: gnucash/report/reports/standard/general-ledger.scm:111 #: gnucash/report/trep-engine.scm:55 -#, fuzzy msgid "Detail Level" -msgstr "Rincian:" +msgstr "Tingkat Detail" #: gnucash/report/reports/standard/general-ledger.scm:124 #: gnucash/report/trep-engine.scm:60 -#, fuzzy msgid "Primary Key" -msgstr "Tanda tangan pengikatan kunci primer" +msgstr "Kunci Utama" #: gnucash/report/reports/standard/general-ledger.scm:125 #: gnucash/report/trep-engine.scm:64 gnucash/report/trep-engine.scm:1105 -#, fuzzy msgid "Show Full Account Name" -msgstr "Tampilkan Nama Halaman lengkap" +msgstr "Tampilkan Nama Lengkap Akun" #: gnucash/report/reports/standard/general-ledger.scm:127 #: gnucash/report/trep-engine.scm:61 -#, fuzzy msgid "Primary Subtotal" -msgstr "subtotal" +msgstr "Subtotal Utama" #: gnucash/report/reports/standard/general-ledger.scm:128 #: gnucash/report/trep-engine.scm:63 -#, fuzzy msgid "Primary Subtotal for Date Key" -msgstr "Tanda tangan pengikatan kunci primer" +msgstr "Subtotal Utama untuk Kunci Tanggal" #: gnucash/report/reports/standard/general-ledger.scm:129 #: gnucash/report/trep-engine.scm:62 -#, fuzzy msgid "Primary Sort Order" -msgstr "Sunting Urutkan _Urutan…" +msgstr "Urutan Penyortiran Utama" #: gnucash/report/reports/standard/general-ledger.scm:130 #: gnucash/report/trep-engine.scm:71 -#, fuzzy msgid "Secondary Key" -msgstr "Sekunder" +msgstr "Kunci Sekunder" #: gnucash/report/reports/standard/general-ledger.scm:131 #: gnucash/report/trep-engine.scm:72 -#, fuzzy msgid "Secondary Subtotal" -msgstr "subtotal" +msgstr "Subtotal Sekunder" #: gnucash/report/reports/standard/general-ledger.scm:132 #: gnucash/report/trep-engine.scm:74 -#, fuzzy msgid "Secondary Subtotal for Date Key" -msgstr "Untuk mengubah tanggal kedaluwarsa kunci PGP:" +msgstr "Subtotal Sekunder untuk Kunci Tanggal" #: gnucash/report/reports/standard/general-ledger.scm:133 #: gnucash/report/trep-engine.scm:73 -#, fuzzy msgid "Secondary Sort Order" -msgstr "Referensi Urutan Sortir" +msgstr "Urutan Penyortiran Sekunder" #: gnucash/report/reports/standard/income-gst-statement.scm:39 -#, fuzzy msgid "Income and GST Statement" -msgstr "laporan laba-rugi" +msgstr "Pernyataan Pendapatan dan GST" #: gnucash/report/reports/standard/income-gst-statement.scm:41 #: gnucash/report/trep-engine.scm:86 -#, fuzzy msgid "Filter" -msgstr "Penyaring" +msgstr "Filter" #: gnucash/report/reports/standard/income-gst-statement.scm:48 msgid "" @@ -26968,6 +27141,12 @@ msgid "" "liability, A/Payable or A/Receivable accounts, a split to a tax account, e." "g. Income:Sales -$1000, A/Receivable $1100, Liability:GST on Sales -$100." msgstr "" +"Laporan ini berguna untuk menghitung pajak bisnis periodik utang/piutang " +"dari pihak berwenang. Dari 'Sunting opsi laporan', pilih akun penjualan dan " +"pembelian dari bisnis Anda. Setiap transaksi bisa berisi, selain akun aset, " +"liabilitas, A/Utang atau A/Piutang, split ke akun pajak, misalnya " +"Penghasilan:Penjualan -$1000, A/Piutang $1100, Liabilitas:GST pada Penjualan " +"-$100." #: gnucash/report/reports/standard/income-gst-statement.scm:56 msgid "" @@ -26975,6 +27154,9 @@ msgid "" "from Business Invoices and Bills which will require Tax Tables to be set up " "correctly. Please see the documentation." msgstr "" +"Akun pajak ini dapat diisi menggunakan register standar, atau dari Faktur " +"dan Tagihan Bisnis yang akan memerlukan penyiapan Tabel Pajak dengan benar. " +"Silakan lihat dokumentasi." #: gnucash/report/reports/standard/income-gst-statement.scm:60 msgid "" @@ -26985,6 +27167,12 @@ msgid "" "ASSET for taxes paid on expenses, and type LIABILITY for taxes collected on " "sales." msgstr "" +"Dari Opsi Laporan, Anda perlu memilih akun yang akan memegang pajak GST/PPN " +"yang dikumpulkan atau dibayar. Akun-akun ini harus berisi split yang " +"mendokumentasikan uang yang seluruhnya dikirim atau diklaim dari otoritas " +"pajak selama pengembalian GST/PPN periodik. Akun ini harus dari tipe ASET " +"untuk pajak yang dibayar pada pengeluaran, dan tipe LIABILITAS untuk pajak " +"yang dikumpulkan pada penjualan." #: gnucash/report/reports/standard/income-gst-statement.scm:66 msgid "" @@ -26992,76 +27180,73 @@ msgid "" "in the VAT account description. EU Goods sales and purchase accounts may be " "tagged with *EUGOODS* in the account description." msgstr "" +"Catat bahwa varian UK dapat menentukan account PPN Uni Eropa yang dapat " +"ditandai dengan *EUVAT* dalam deskripsi akun PPN. Akun penjualan dan " +"pembelian Barang Uni Eropa dapat ditandai dengan *EUGOODS* dalam deskripsi " +"akun." #: gnucash/report/reports/standard/income-gst-statement.scm:71 msgid "This message will be removed when tax accounts are specified." -msgstr "" +msgstr "Pesan ini akan dihapus ketika akun pajak ditentukan." #: gnucash/report/reports/standard/income-gst-statement.scm:110 -#, fuzzy msgid "Individual sales columns" -msgstr "penjualan" +msgstr "Kolom penjualan individual" #: gnucash/report/reports/standard/income-gst-statement.scm:111 msgid "Display individual sales columns rather than their sum" -msgstr "" +msgstr "Menampilkan kolom penjualan secara individual, bukan jumlahnya" #: gnucash/report/reports/standard/income-gst-statement.scm:112 -#, fuzzy msgid "Individual purchases columns" -msgstr "Kolom" +msgstr "Kolom pembelian individual" #: gnucash/report/reports/standard/income-gst-statement.scm:113 msgid "Display individual purchases columns rather than their sum" -msgstr "" +msgstr "Menampilkan kolom pembelian secara individual, bukan jumlahnya" #: gnucash/report/reports/standard/income-gst-statement.scm:114 -#, fuzzy msgid "Individual tax columns" -msgstr "Kolom" +msgstr "Kolom pajak individual" #: gnucash/report/reports/standard/income-gst-statement.scm:115 msgid "Display individual tax columns rather than their sum" -msgstr "" +msgstr "Menampilkan kolom pajak secara individual, bukan jumlahnya" #: gnucash/report/reports/standard/income-gst-statement.scm:116 #: gnucash/report/reports/standard/income-gst-statement.scm:356 -#, fuzzy msgid "Gross Balance" -msgstr "seimbangkan" +msgstr "Saldo Kotor" #: gnucash/report/reports/standard/income-gst-statement.scm:117 msgid "Display the gross balance (gross sales - gross purchases)" -msgstr "" +msgstr "Tampilkan saldo kotor (penjualan kotor - pembelian kotor)" #: gnucash/report/reports/standard/income-gst-statement.scm:118 #: gnucash/report/reports/standard/income-gst-statement.scm:364 -#, fuzzy msgid "Net Balance" -msgstr "seimbangkan" +msgstr "Saldo Bersih" #: gnucash/report/reports/standard/income-gst-statement.scm:119 msgid "Display the net balance (sales without tax - purchases without tax)" -msgstr "" +msgstr "Tampilkan saldo bersih (penjualan tanpa pajak - pembelian tanpa pajak)" #: gnucash/report/reports/standard/income-gst-statement.scm:121 #: gnucash/report/reports/standard/income-gst-statement.scm:371 -#, fuzzy msgid "Tax payable" -msgstr "kode pajak" +msgstr "Utang Pajak" #: gnucash/report/reports/standard/income-gst-statement.scm:122 msgid "Display the tax payable (tax on sales - tax on purchases)" -msgstr "" +msgstr "Tampilkan utang pajak (pajak penjualan - pajak pembelian)" #: gnucash/report/reports/standard/income-gst-statement.scm:141 msgid "Purchases" -msgstr "" +msgstr "Pembelian" #: gnucash/report/reports/standard/income-gst-statement.scm:150 -#, fuzzy msgid "Tax Accounts" -msgstr "kode pajak" +msgstr "Akun Pajak" #: gnucash/report/reports/standard/income-gst-statement.scm:151 msgid "" @@ -27071,38 +27256,40 @@ msgid "" "These accounts must be of type ASSET for taxes paid on expenses, and type " "LIABILITY for taxes collected on sales." msgstr "" +"Cari dan pilih akun untuk mencatat pajak yang dikumpulkan atau dibayar. Akun " +"ini harus berisi split yang mendokumentasikan uang yang seluruhnya dikirim " +"atau diklaim dari otoritas pajak selama pengembalian GST/PPN secara " +"periodik. Akun ini harus menggunakan tipe ASET untuk pajak yang dibayar pada " +"pengeluaran, dan tipe LIABILITAS untuk pajak yang dikumpulkan pada penjualan." #: gnucash/report/reports/standard/income-gst-statement.scm:161 -#, fuzzy msgid "Report format" -msgstr "Lapo_rkan" +msgstr "Format laporan" #: gnucash/report/reports/standard/income-gst-statement.scm:162 -#, fuzzy msgid "Report Format" -msgstr "Lapo_rkan" +msgstr "Format Laporan" #: gnucash/report/reports/standard/income-gst-statement.scm:164 #: gnucash/report/reports/standard/income-gst-statement.scm:165 -#, fuzzy msgid "Default Format" -msgstr "Format standar untuk menyalin teks dari papan klip" +msgstr "Format Baku" #: gnucash/report/reports/standard/income-gst-statement.scm:167 -#, fuzzy msgid "Australia BAS" -msgstr "Australia/Perth" +msgstr "BAS Australia" #: gnucash/report/reports/standard/income-gst-statement.scm:168 +#, fuzzy +#| msgid "Australia BAS. Specify sales, purchase and tax accounts." msgid "" "Australia Business Activity Statement. Specify sales, purchase and tax " "accounts." -msgstr "" +msgstr "BAS Australia. Tentukan penjualan, pembelian dan akun pajak." #: gnucash/report/reports/standard/income-gst-statement.scm:171 -#, fuzzy msgid "UK VAT Return" -msgstr "tidak kembali" +msgstr "Pengembalian PPN UK" #: gnucash/report/reports/standard/income-gst-statement.scm:172 msgid "" @@ -27110,79 +27297,75 @@ msgid "" "used. Denote EU VAT accounts *EUVAT* in account description, and denote EU " "goods sales and purchases accounts with *EUGOODS* in the account description." msgstr "" +"Pengembalian PPN UK. Tentukan akun penjualan, pembelian dan pajak. Aturan " +"Uni Eropa dapat digunakan. Denotasikan akun PPN Uni Eropa *EUVAT* dalam " +"deskripsi akun, dan denotasikan akun penjualan dan pembelian barang Uni " +"Eropa dengan *EUGOODS* dalam deskripsi akun." #. Translators: "Gross Sales" refer to Net Sales + GST/VAT on Sales #: gnucash/report/reports/standard/income-gst-statement.scm:316 -#, fuzzy msgid "Gross Sales" -msgstr "penjualan" +msgstr "Penjualan Kotor" #: gnucash/report/reports/standard/income-gst-statement.scm:323 -#, fuzzy msgid "Net Sales" -msgstr "penjualan" +msgstr "Penjualan Bersih" #: gnucash/report/reports/standard/income-gst-statement.scm:330 -#, fuzzy msgid "Tax on Sales" -msgstr "penjualan" +msgstr "Pajak Penjualan" #. Translators: "Gross Purchases" refer to Net Purchase + #. GST/VAT on Purchase #: gnucash/report/reports/standard/income-gst-statement.scm:334 -#, fuzzy msgid "Gross Purchases" -msgstr "Margin Keuntungan Bruto" +msgstr "Pembelian Kotor" #: gnucash/report/reports/standard/income-gst-statement.scm:342 -#, fuzzy msgid "Net Purchases" -msgstr "bersih" +msgstr "Pembelian Bersih" #: gnucash/report/reports/standard/income-gst-statement.scm:350 -#, fuzzy msgid "Tax on Purchases" -msgstr "kode pajak" +msgstr "Pajak Pembelian" #: gnucash/report/reports/standard/income-statement.scm:95 msgid "Label the trading accounts section" -msgstr "" +msgstr "Beri label bagian akun perdagangan" #: gnucash/report/reports/standard/income-statement.scm:97 msgid "Whether or not to include a label for the trading accounts section." -msgstr "" +msgstr "Apakah menyertakan label untuk bagian akun perdagangan." #: gnucash/report/reports/standard/income-statement.scm:98 msgid "Include trading accounts total" -msgstr "" +msgstr "Sertakan total akun perdagangan" #: gnucash/report/reports/standard/income-statement.scm:100 msgid "" "Whether or not to include a line indicating total trading accounts balance." msgstr "" +"Apakah menyertakan sebuah baris yang menunjukkan total saldo akun " +"perdagangan." #: gnucash/report/reports/standard/income-statement.scm:518 -#: libgnucash/engine/Account.cpp:4328 libgnucash/engine/Scrub.c:457 -#: libgnucash/engine/Scrub.c:522 -#, fuzzy +#: libgnucash/engine/Account.cpp:4375 libgnucash/engine/Scrub.c:472 +#: libgnucash/engine/Scrub.c:537 msgid "Trading" -msgstr "tipe akun: perdagangan" +msgstr "Perdagangan" #: gnucash/report/reports/standard/income-statement.scm:521 -#, fuzzy msgid "Total Trading" -msgstr "tipe akun: perdagangan" +msgstr "Total Perdagangan" #: gnucash/report/reports/standard/income-statement.scm:572 -#: gnucash/report/reports/standard/trial-balance.scm:572 -#, fuzzy +#: gnucash/report/reports/standard/trial-balance.scm:573 msgid "Income Statement" -msgstr "laporan laba-rugi" +msgstr "Pernyataan Pendapatan" #: gnucash/report/reports/standard/income-statement.scm:573 -#, fuzzy msgid "Profit & Loss" -msgstr "Keuntungan & Kerugian" +msgstr "Laba & Rugi" #: gnucash/report/reports/standard/invoice.scm:102 #: gnucash/report/reports/standard/invoice.scm:247 @@ -27190,50 +27373,45 @@ msgstr "Keuntungan & Kerugian" #: gnucash/report/reports/standard/receipt.scm:131 #: gnucash/report/reports/standard/taxinvoice.scm:116 #: gnucash/report/reports/standard/taxinvoice.scm:189 -#, fuzzy msgid "Tax Amount" -msgstr "kode pajak" +msgstr "Jumlah Pajak" #. Translators: "Their details" refer to the invoice 'other party' details i.e. client/vendor name/address/ID #: gnucash/report/reports/standard/invoice.scm:113 -#, fuzzy msgid "Their details" -msgstr "_Detail" +msgstr "Detail Mereka" #: gnucash/report/reports/standard/invoice.scm:114 msgid "Client or vendor name, address and ID" -msgstr "" +msgstr "Nama, alamat dan ID klien atau vendor" #. Translators: "Our details" refer to the book owner's details i.e. name/address/tax-ID #: gnucash/report/reports/standard/invoice.scm:117 -#, fuzzy msgid "Our details" -msgstr "_Detail" +msgstr "Detail Kita" #: gnucash/report/reports/standard/invoice.scm:118 msgid "Company name, address and tax-ID" -msgstr "" +msgstr "Nama, alamat dan ID pajak perusahaan" #: gnucash/report/reports/standard/invoice.scm:120 -#, fuzzy msgid "Invoice details" -msgstr "faktur" +msgstr "Detail faktur" #: gnucash/report/reports/standard/invoice.scm:121 msgid "Invoice date, due date, billing ID, terms, job details" msgstr "" +"Tanggal faktur, tanggal jatuh tempo, ID tagihan, ketentuan, rincian pekerjaan" #: gnucash/report/reports/standard/invoice.scm:123 #: gnucash/report/reports/standard/invoice.scm:124 -#, fuzzy msgid "Today's date" -msgstr "sampai Hari ini" +msgstr "Tanggal hari ini" #: gnucash/report/reports/standard/invoice.scm:126 #: gnucash/report/reports/standard/invoice.scm:127 -#, fuzzy msgid "Picture" -msgstr "Tambah Gambar…" +msgstr "Gambar" #. Translators: "(empty)" refers to invoice header section being left blank #: gnucash/report/reports/standard/invoice.scm:130 @@ -27241,22 +27419,17 @@ msgid "(empty)" msgstr "(kosong)" #: gnucash/report/reports/standard/invoice.scm:131 -#, fuzzy msgid "Empty space" -msgstr "" -"Klik kanan di mana saja di ruang kosong di folder, lalu pilih Dokumen Baru. Nama templat yang tersedia akan dicantumkan " -"dalam sub menu." +msgstr "Ruang kosong" #: gnucash/report/reports/standard/invoice.scm:195 -#, fuzzy msgid "Custom Title" -msgstr "Judul Gubahan" +msgstr "Judul Tersuai" #: gnucash/report/reports/standard/invoice.scm:196 msgid "A custom string to replace Invoice, Bill or Expense Voucher." msgstr "" -"String suai untuk menggantikan Faktur, Tagihan atau Voucer Pengeluaran." +"String tersuai untuk menggantikan Faktur, Tagihan atau Voucer Pengeluaran." #: gnucash/report/reports/standard/invoice.scm:201 #: gnucash/report/reports/standard/invoice.scm:207 @@ -27266,16 +27439,14 @@ msgstr "" #: gnucash/report/reports/standard/invoice.scm:369 #: gnucash/report/reports/standard/invoice.scm:376 #: gnucash/report/reports/standard/invoice.scm:383 -#, fuzzy msgid "Layout" msgstr "Tata Letak" #: gnucash/report/reports/standard/invoice.scm:201 #: gnucash/report/stylesheets/css.scm:118 #: gnucash/report/stylesheets/css.scm:224 -#, fuzzy msgid "CSS" -msgstr "Berkas CSS untuk dipakai" +msgstr "CSS" #: gnucash/report/reports/standard/invoice.scm:201 msgid "" @@ -27286,23 +27457,22 @@ msgstr "" "Silakan lihat laporan yang diekspor untuk mendapatkan nama class CSS." #: gnucash/report/reports/standard/invoice.scm:207 -#, fuzzy msgid "Picture Location" -msgstr "Lokasi" +msgstr "Lokasi Gambar" #: gnucash/report/reports/standard/invoice.scm:207 msgid "Location for Picture" msgstr "Lokasi Gambar" #: gnucash/report/reports/standard/invoice.scm:213 -#: gnucash/report/reports/standard/register.scm:383 +#: gnucash/report/reports/standard/register.scm:354 #: gnucash/report/reports/standard/taxinvoice.scm:135 #: gnucash/report/trep-engine.scm:940 msgid "Display the date?" msgstr "Tampilkan tanggal?" #: gnucash/report/reports/standard/invoice.scm:218 -#: gnucash/report/reports/standard/register.scm:398 +#: gnucash/report/reports/standard/register.scm:369 #: gnucash/report/trep-engine.scm:945 msgid "Display the description?" msgstr "Tampilkan deskripsi?" @@ -27325,7 +27495,7 @@ msgstr "Tampilkan diskon entri?" #: gnucash/report/reports/standard/invoice.scm:243 msgid "Display the entry's taxable status?" -msgstr "Tampilkan status pajak entri?" +msgstr "Tampilkan status kena pajak untuk entri?" #: gnucash/report/reports/standard/invoice.scm:248 msgid "Display each entry's total total tax?" @@ -27345,25 +27515,23 @@ msgstr "Tampilkan subtotal?" #: gnucash/report/reports/standard/invoice.scm:267 msgid "Payable to" -msgstr "" +msgstr "Utang ke" #: gnucash/report/reports/standard/invoice.scm:268 -#, fuzzy msgid "Display the Payable to: information." -msgstr "Tampilkan informasi tentang citra ini" +msgstr "Tampilkan informasi Utang ke:." #: gnucash/report/reports/standard/invoice.scm:275 -#, fuzzy msgid "Payable to string" -msgstr "String" +msgstr "String utang ke" #: gnucash/report/reports/standard/invoice.scm:276 msgid "The phrase for specifying to whom payments should be made." -msgstr "" +msgstr "Frasa untuk menentukan kepada siapa pembayaran harus dilakukan." #: gnucash/report/reports/standard/invoice.scm:277 msgid "Please make all checks payable to" -msgstr "" +msgstr "Harap membuat semua cek terutang ke" #: gnucash/report/reports/standard/invoice.scm:281 msgid "Company contact" @@ -27383,26 +27551,27 @@ msgstr "Frasa ini digunakan untuk mengenalkan narahubung perusahaan." #: gnucash/report/reports/standard/invoice.scm:290 msgid "Please direct all enquiries to" -msgstr "" +msgstr "Silahkan tujukan semua pertanyaan ke" #: gnucash/report/reports/standard/invoice.scm:294 msgid "Minimum # of entries" -msgstr "" +msgstr "Minimum # entri" #: gnucash/report/reports/standard/invoice.scm:295 msgid "The minimum number of invoice entries to display." -msgstr "" +msgstr "Jumlah minimum entri faktur untuk ditampilkan." #: gnucash/report/reports/standard/invoice.scm:300 -#, fuzzy msgid "Use Detailed Tax Summary" -msgstr "Gunakan %s untuk memperoleh bantuan terrinci.\n" +msgstr "Gunakan Ikhtisar Pajak Detail" #: gnucash/report/reports/standard/invoice.scm:301 msgid "" "Display all tax categories separately (one per line) instead of one single " "tax line.?" msgstr "" +"Tampilkan semua kategori pajak secara terpisah (satu kategori per baris), " +"bukannya satu baris pajak saja?" #: gnucash/report/reports/standard/invoice.scm:307 msgid "References" @@ -27579,7 +27748,7 @@ msgstr "Pekerjaan untuk laporan ini." #: gnucash/report/reports/standard/job-report.scm:360 #: gnucash/report/reports/standard/owner-report.scm:543 msgid "The account to search for transactions." -msgstr "" +msgstr "Akun untuk mencari transaksi." #: gnucash/report/reports/standard/job-report.scm:370 #: gnucash/report/reports/standard/job-report.scm:375 @@ -27646,12 +27815,12 @@ msgstr "Klik pada tombol \"Opsi\" untuk memilih perusahaan." #: gnucash/report/reports/standard/lot-viewer.scm:60 msgid "The account to search for lots." -msgstr "" +msgstr "Akun untuk mencari lot." #: gnucash/report/reports/standard/net-charts.scm:48 #: gnucash/report/reports/standard/price-scatter.scm:50 msgid "Show Net Profit" -msgstr "Tampilkan Keuntungan Bersih" +msgstr "Tampilkan Laba Bersih" #: gnucash/report/reports/standard/net-charts.scm:50 msgid "Show Asset & Liability" @@ -27683,7 +27852,7 @@ msgstr "Tampilkan bilah Aset dan Liabilitas?" #: gnucash/report/reports/standard/net-charts.scm:126 msgid "Show the net profit?" -msgstr "Tampilkan keuntungan bersih?" +msgstr "Tampilkan laba bersih?" #: gnucash/report/reports/standard/net-charts.scm:127 msgid "Show a Net Worth bar?" @@ -27696,7 +27865,7 @@ msgstr "Tambahkan garis kisi." #: gnucash/report/reports/standard/net-charts.scm:393 #: gnucash/report/reports/standard/net-charts.scm:425 msgid "Net Profit" -msgstr "Keuntungan Bersih" +msgstr "Laba Bersih" #: gnucash/report/reports/standard/net-charts.scm:393 #: gnucash/report/reports/standard/net-charts.scm:426 @@ -27758,7 +27927,7 @@ msgstr "Tipe Txn Tidak Valid ~a" #: gnucash/report/reports/standard/new-aging.scm:386 msgid "Payment has no owner" -msgstr "" +msgstr "Pembayaran tak mempunyai pemilik" #: gnucash/report/reports/standard/new-aging.scm:416 #: gnucash/report/reports/standard/receivables.scm:65 @@ -27800,7 +27969,7 @@ msgstr "Penjualan" #: gnucash/report/reports/standard/new-owner-report.scm:56 #: gnucash/report/reports/standard/owner-report.scm:57 -#: gnucash/report/report-utilities.scm:104 +#: gnucash/report/report-utilities.scm:116 msgid "Credits" msgstr "Kredit" @@ -27890,10 +28059,10 @@ msgid "Display the period credits column?" msgstr "Tampilkan kolom periode kredit?" #: gnucash/report/reports/standard/new-owner-report.scm:928 -#: gnucash/report/reports/standard/register.scm:442 +#: gnucash/report/reports/standard/register.scm:413 #: gnucash/report/trep-engine.scm:958 msgid "Display a running balance?" -msgstr "" +msgstr "Tampilkan saldo berjalan?" #: gnucash/report/reports/standard/new-owner-report.scm:933 msgid "Show linked transactions" @@ -27909,7 +28078,7 @@ msgstr "Sederhana" #: gnucash/report/reports/standard/new-owner-report.scm:939 msgid "Invoices show if paid, payments show invoice numbers." -msgstr "" +msgstr "Faktur menampilkan jika dibayar, pembayaran menampilkan nomor faktur." #: gnucash/report/reports/standard/new-owner-report.scm:941 msgid "Detailed" @@ -27919,11 +28088,14 @@ msgstr "Detail" msgid "" "Invoices show list of payments, payments show list of invoices and amounts." msgstr "" +"Faktur menampilkan daftar pembayaran, pembayaran menampilkan daftar faktur " +"dan jumlahnya." #: gnucash/report/reports/standard/new-owner-report.scm:948 #, fuzzy +#| msgid "Display amounts as hyperlinks" msgid "Display document link?" -msgstr "Tampilkan pada…" +msgstr "Tampilkan jumlah sebagai tautan" #: gnucash/report/reports/standard/new-owner-report.scm:1076 msgid "No valid account found" @@ -27931,7 +28103,7 @@ msgstr "Akun yang valid tidak ditemukan" #: gnucash/report/reports/standard/new-owner-report.scm:1077 msgid "This report requires a valid AP/AR account to be available." -msgstr "" +msgstr "Laporan ini membutuhkan akun AP/AR yang valid." #: gnucash/report/reports/standard/new-owner-report.scm:1100 msgid "No transactions found." @@ -27939,9 +28111,8 @@ msgstr "Transaksi tidak ditemukan." #: gnucash/report/reports/standard/new-owner-report.scm:1101 #: gnucash/report/trep-engine.scm:108 -#, fuzzy msgid "No matching transactions found" -msgstr "Kurung pasangan" +msgstr "Tak ditemukan transaksi yang cocok" #: gnucash/report/reports/standard/owner-report.scm:84 msgid "No valid company selected." @@ -27968,215 +28139,195 @@ msgid "Payable Account" msgstr "Akun Utang" #: gnucash/report/reports/standard/payables.scm:47 -#, fuzzy msgid "The payable account you wish to examine." -msgstr "Pilih akun yang ingin Anda hapus." +msgstr "Account utang yang akan diperiksa." #: gnucash/report/reports/standard/portfolio.scm:33 -#, fuzzy msgid "Investment Portfolio" -msgstr "portofolio" +msgstr "Portofolio Investasi" #: gnucash/report/reports/standard/portfolio.scm:256 #: gnucash/report/reports/standard/receipt.scm:53 #: gnucash/report/reports/standard/receipt.scm:117 #: gnucash/report/reports/standard/taxinvoice.scm:109 #: gnucash/report/reports/standard/taxinvoice.scm:175 -#, fuzzy msgid "Units" msgstr "Satuan" #: gnucash/report/reports/standard/price-scatter.scm:41 -#, fuzzy msgid "Price of Commodity" -msgstr "komoditas" +msgstr "Harga Komoditas" #: gnucash/report/reports/standard/price-scatter.scm:43 #, fuzzy msgid "Invert prices" -msgstr "Bal_ikkan" +msgstr "harga invert" #: gnucash/report/reports/standard/price-scatter.scm:52 msgid "Show Asset & Liability bars" -msgstr "" +msgstr "Tampilkan bilah Aset & Liabilitas" #: gnucash/report/reports/standard/price-scatter.scm:53 -#, fuzzy msgid "Show Net Worth bars" -msgstr "nilai bersih" +msgstr "Tampilkan bilah Kekayaan Bersih" #: gnucash/report/reports/standard/price-scatter.scm:55 -#, fuzzy msgid "Marker" -msgstr "penanda" +msgstr "Penanda" #: gnucash/report/reports/standard/price-scatter.scm:56 -#, fuzzy msgid "Marker Color" -msgstr "penanda" +msgstr "Warna Penanda" #: gnucash/report/reports/standard/price-scatter.scm:81 -#, fuzzy msgid "Calculate the price of this commodity." -msgstr "komoditas" +msgstr "Hitung harga komoditas ini." #: gnucash/report/reports/standard/price-scatter.scm:93 -#, fuzzy msgid "Actual Transactions" -msgstr "Ukuran sebenarnya" +msgstr "Transaksi Sebenarnya" #: gnucash/report/reports/standard/price-scatter.scm:94 msgid "The instantaneous price of actual currency transactions in the past." -msgstr "" +msgstr "Harga sesaat dari transaksi mata uang yang aktual di masa lalu." #: gnucash/report/reports/standard/price-scatter.scm:97 msgid "The recorded prices." -msgstr "" +msgstr "Harga tercatat." #: gnucash/report/reports/standard/price-scatter.scm:104 msgid "Plot commodity per currency rather than currency per commodity." -msgstr "" +msgstr "Plot komoditas per mata uang daripada mata uang per komoditas." #: gnucash/report/reports/standard/price-scatter.scm:120 -#, fuzzy msgid "Color of the marker." -msgstr "penanda" +msgstr "Warna penanda." #: gnucash/report/reports/standard/price-scatter.scm:140 -#, fuzzy msgid "Double-Weeks" -msgstr "minggu" +msgstr "Dua-Minggu" #: gnucash/report/reports/standard/price-scatter.scm:142 msgid "Quarters" msgstr "Kuartal" #: gnucash/report/reports/standard/price-scatter.scm:143 -#, fuzzy msgid "Half Years" -msgstr "Tahun" +msgstr "Setengah Tahun" #: gnucash/report/reports/standard/price-scatter.scm:238 -#, fuzzy msgid "Identical commodities" -msgstr "Membuat salinan identik dari suatu cakram." +msgstr "Komoditas identik" #: gnucash/report/reports/standard/price-scatter.scm:239 msgid "" "Your selected commodity and the currency of the report are identical. It " "doesn't make sense to show prices for identical commodities." msgstr "" +"Komoditas yang dipilih dan mata uang laporan adalah identik. Tidak mungkin " +"menampilkan harga untuk komoditas yang identik." #: gnucash/report/reports/standard/price-scatter.scm:277 msgid "" "There is no price information available for the selected commodities in the " "selected time period." msgstr "" +"Tidak ada informasi harga yang tersedia untuk komoditas terpilih pada " +"periode waktu yang dipilih." #: gnucash/report/reports/standard/price-scatter.scm:282 -#, fuzzy msgid "Only one price" -msgstr "Harap pilih salah satu lagu saja." +msgstr "Hanya satu harga" #: gnucash/report/reports/standard/price-scatter.scm:283 msgid "" "There was only one single price found for the selected commodities in the " "selected time period. This doesn't give a useful plot." msgstr "" +"Hanya ada satu harga yang ditemukan untuk komoditas terpilih pada periode " +"waktu yang dipilih. Ini tidak memberikan plot yang berguna." #: gnucash/report/reports/standard/price-scatter.scm:289 -#, fuzzy msgid "All Prices equal" -msgstr "Tak sama dengan" +msgstr "Semua Harga sama" #: gnucash/report/reports/standard/price-scatter.scm:290 msgid "" "All the prices found are equal. This would result in a plot with one " "straight line. Unfortunately, the plotting tool can't handle that." msgstr "" +"Semua harga yang ditemukan adalah sama. Ini akan menghasilkan sebuah plot " +"dengan satu garis lurus. Sayangnya, alat plot tak dapat menangani itu." #: gnucash/report/reports/standard/price-scatter.scm:296 -#, fuzzy msgid "All Prices at the same date" -msgstr "_Terapkan tatanan tilikan yang sama untuk semua folder" +msgstr "Semua Harga pada tanggal yang sama" #: gnucash/report/reports/standard/price-scatter.scm:297 msgid "" "All the prices found are from the same date. This would result in a plot " "with one straight line. Unfortunately, the plotting tool can't handle that." msgstr "" +"Semua harga yang ditemukan berasal dari tanggal yang sama. Ini akan " +"menghasilkan sebuah plot dengan satu garis lurus. Sayangnya, alat plot tak " +"dapat menangani itu." #: gnucash/report/reports/standard/price-scatter.scm:329 -#, fuzzy msgid "Price Scatterplot" -msgstr "harga" +msgstr "Plot-tersebar Harga" #: gnucash/report/reports/standard/receipt.scm:36 #: gnucash/report/reports/standard/taxinvoice.scm:76 -#, fuzzy msgid "Headings 1" -msgstr "Ekspor HTML - Berdasarkan Tajuk" +msgstr "Tajuk 1" #: gnucash/report/reports/standard/receipt.scm:37 #: gnucash/report/reports/standard/taxinvoice.scm:77 -#, fuzzy msgid "Headings 2" -msgstr "Ekspor HTML - Berdasarkan Tajuk" +msgstr "Tajuk 2" #: gnucash/report/reports/standard/receipt.scm:43 #: gnucash/report/reports/standard/taxinvoice.scm:102 -#, fuzzy msgid "Report title" -msgstr "Lapo_rkan" +msgstr "Judul laporan" #: gnucash/report/reports/standard/receipt.scm:44 #: libgnucash/app-utils/business-prefs.scm:40 -#, fuzzy msgid "Invoice number" -msgstr "faktur" +msgstr "Nomor faktur" #: gnucash/report/reports/standard/receipt.scm:47 #: gnucash/report/reports/standard/taxinvoice.scm:105 -#, fuzzy msgid "Heading font" -msgstr "Tajuk" +msgstr "Fonta tajuk" #: gnucash/report/reports/standard/receipt.scm:48 #: gnucash/report/reports/standard/taxinvoice.scm:106 -#, fuzzy msgid "Text font" -msgstr "" -"Papan Tik;Tetikus;a11y;Aksesibilitas;Kontras;Kursor;Suara;Zum;Layar;Pembaca;" -"besar;tinggi;besar;teks;fonta;ukuran;AccessX;Lengket;Tombol;Lambat;Pantul;" -"Tetikus;Dobel;klik;Tunda;Kecepatan;Bantu;Ulangi; Berkedip;visual;mendengar;" -"audio;mengetik;" +msgstr "Fonta teks" #: gnucash/report/reports/standard/receipt.scm:49 -#, fuzzy msgid "Header logo filename" -msgstr "Logo:" +msgstr "Nama berkas logo kepala" #: gnucash/report/reports/standard/receipt.scm:50 -#, fuzzy msgid "Header logo width" -msgstr "Logo:" +msgstr "Lebar logo kepala" #: gnucash/report/reports/standard/receipt.scm:51 -#, fuzzy msgid "Footer logo filename" -msgstr "Logo:" +msgstr "Nama berkas logo kaki" #: gnucash/report/reports/standard/receipt.scm:52 -#, fuzzy msgid "Footer logo width" -msgstr "Logo:" +msgstr "Lebar logo kaki" #: gnucash/report/reports/standard/receipt.scm:54 #: gnucash/report/reports/standard/receipt.scm:119 #: gnucash/report/reports/standard/taxinvoice.scm:110 #: gnucash/report/reports/standard/taxinvoice.scm:177 msgid "Qty" -msgstr "" +msgstr "Kuant" #: gnucash/report/reports/standard/receipt.scm:56 #: gnucash/report/reports/standard/receipt.scm:123 @@ -28184,48 +28335,42 @@ msgstr "" #: gnucash/report/reports/standard/taxinvoice.scm:181 #, fuzzy msgid "Discount Rate" -msgstr "diskon" +msgstr "Nilai diskon" #: gnucash/report/reports/standard/receipt.scm:57 #: gnucash/report/reports/standard/receipt.scm:125 #: gnucash/report/reports/standard/taxinvoice.scm:113 #: gnucash/report/reports/standard/taxinvoice.scm:183 -#, fuzzy msgid "Discount Amount" -msgstr "diskon" +msgstr "Jumlah Diskon" #: gnucash/report/reports/standard/receipt.scm:59 #: gnucash/report/reports/standard/receipt.scm:129 #: gnucash/report/reports/standard/taxinvoice.scm:115 #: gnucash/report/reports/standard/taxinvoice.scm:187 -#, fuzzy msgid "Tax Rate" -msgstr "kode pajak" +msgstr "Tarif Pajak" #: gnucash/report/reports/standard/receipt.scm:62 #: gnucash/report/reports/standard/receipt.scm:135 #: gnucash/report/reports/standard/taxinvoice.scm:118 #: gnucash/report/reports/standard/taxinvoice.scm:193 -#, fuzzy msgid "Sub-total" -msgstr "Total:" +msgstr "Sub-total" #: gnucash/report/reports/standard/receipt.scm:64 #: gnucash/report/reports/standard/taxinvoice.scm:120 -#, fuzzy msgid "Payment received text" -msgstr "Diterima" +msgstr "Teks pembayaran diterima" #: gnucash/report/reports/standard/receipt.scm:65 #: gnucash/report/reports/standard/taxinvoice.scm:121 -#, fuzzy msgid "Extra notes" -msgstr "Catatan" +msgstr "Catatan ekstra" #: gnucash/report/reports/standard/receipt.scm:66 -#, fuzzy msgid "Today date format" -msgstr "format tanggal" +msgstr "Format tanggal hari ini" #: gnucash/report/reports/standard/receipt.scm:81 msgid "" @@ -28233,6 +28378,9 @@ msgid "" "either be in your .gnucash directory, or else in its proper place within the " "GnuCash installation directories." msgstr "" +"Nama berkas templat eguile sebagai bagian laporan ini. Berkas ini harus " +"berada di direktori .gnucash Anda, atau di lokasi lain di dalam direktori " +"instalasi GnuCash." #: gnucash/report/reports/standard/receipt.scm:84 msgid "" @@ -28240,22 +28388,23 @@ msgid "" "should either be in your .gnucash directory, or else in its proper place " "within the GnuCash installation directories." msgstr "" +"Nama berkas lembar gaya CSS untuk digunakan pada laporan ini. Berkas ini " +"harus berada di direktori .gnucash Anda, atau di lokasi lain di dalam " +"direktori instalasi GnuCash." #: gnucash/report/reports/standard/receipt.scm:88 #: gnucash/report/reports/standard/taxinvoice.scm:156 -#, fuzzy msgid "Font to use for the main heading." -msgstr "Menentukan memakai fonta sistem" +msgstr "Fonta yang digunakan untuk tajuk utama." #: gnucash/report/reports/standard/receipt.scm:91 #: gnucash/report/reports/standard/taxinvoice.scm:159 -#, fuzzy msgid "Font to use for everything else." -msgstr "Menentukan memakai fonta sistem" +msgstr "Fonta yang digunakan untuk selainnya." #: gnucash/report/reports/standard/receipt.scm:94 msgid "Name of a file containing a logo to be used on the header of the report" -msgstr "" +msgstr "Nama berkas yang berisi logo untuk digunakan pada kepala laporan" #: gnucash/report/reports/standard/receipt.scm:97 msgid "" @@ -28269,7 +28418,7 @@ msgstr "" #: gnucash/report/reports/standard/receipt.scm:100 msgid "Name of a file containing a logo to be used on the footer of the report" -msgstr "" +msgstr "Nama berkas yang berisi logo untuk digunakan pada kaki laporan" #: gnucash/report/reports/standard/receipt.scm:103 msgid "" @@ -28283,38 +28432,35 @@ msgstr "" #: gnucash/report/reports/standard/receipt.scm:107 msgid "The format for the date->string conversion for today's date." -msgstr "" +msgstr "Format untuk konversi tanggal->string untuk tanggal hari ini." #. Translators: Boost::date_time format string #. "%l:%M %P, %e %B %Y" means " 9:56 pm, 19 June 2019" #: gnucash/report/reports/standard/receipt.scm:110 -#, fuzzy msgid "%l:%M %P, %e %B %Y" -msgstr "%e %b %Y %l:%M %p" +msgstr "%l:%M %P, %e %B %Y" #: gnucash/report/reports/standard/receipt.scm:140 #: gnucash/report/reports/standard/taxinvoice.scm:198 -#, fuzzy msgid "Payment received, thank you!" -msgstr "Anda menerima \"%s\" melalui Bluetooth" +msgstr "Pembayaran diterima, terima kasih!" #: gnucash/report/reports/standard/receipt.scm:144 msgid "Notes added at end of invoice -- may contain HTML markup" msgstr "" +"Catatan yang ditambahkan di bagian akhir faktur -- bisa berisi markah HTML" #: gnucash/report/reports/standard/receipt.scm:211 msgid "Display a customer invoice as receipt, cash voucher" -msgstr "" +msgstr "Tampilkan faktur pelanggan sebagai tanda terima, voucer tunai" #: gnucash/report/reports/standard/receivables.scm:36 -#, fuzzy msgid "Receivables Account" -msgstr "Utang/Piutang" +msgstr "Akun Piutang" #: gnucash/report/reports/standard/receivables.scm:48 -#, fuzzy msgid "The receivables account you wish to examine." -msgstr "Pilih akun yang ingin Anda hapus." +msgstr "Akun piutang yang akan diperiksa." #: gnucash/report/reports/standard/reconcile-report.scm:59 msgid "" @@ -28322,312 +28468,257 @@ msgid "" "tool. Please select the account from Report Options. Please note the dates " "specified in the options will apply to the Reconciliation Date." msgstr "" +"Laporan rekonsiliasi dirancang supaya mirip dengan alat rekonsiliasi " +"formal. Silakan pilih akun dari Opsi Laporan. Harap dicatat bahwa tanggal " +"yang ditentukan di dalam opsi akan diterapkan ke Tanggal Rekonsiliasi." #: gnucash/report/reports/standard/reconcile-report.scm:103 -#, fuzzy msgid "Reconciliation Report" -msgstr "Lapo_rkan" +msgstr "Laporan Rekonsiliasi" #: gnucash/report/reports/standard/register.scm:148 -#: gnucash/report/reports/standard/register.scm:417 +#: gnucash/report/reports/standard/register.scm:388 #: libgnucash/engine/gnc-lot.c:779 -#, fuzzy msgid "Lot" msgstr "Lot" #: gnucash/report/reports/standard/register.scm:160 -#, fuzzy msgid "Debit Value" -msgstr "aksi: penarikan langsung" +msgstr "Nilai Debit" #: gnucash/report/reports/standard/register.scm:162 -#, fuzzy msgid "Credit Value" -msgstr "Kartu Kredit" +msgstr "Nilai Kredit" -#: gnucash/report/reports/standard/register.scm:377 -#, fuzzy +#: gnucash/report/reports/standard/register.scm:348 msgid "The title of the report." -msgstr "Lapo_rkan" +msgstr "Judul laporan." + +#: gnucash/report/reports/standard/register.scm:360 +msgid "Display the check number/action?" +msgstr "Tampilkan nomor/aksi cek?" + +#: gnucash/report/reports/standard/register.scm:364 +#: gnucash/report/trep-engine.scm:943 gnucash/report/trep-engine.scm:944 +msgid "Display the check number?" +msgstr "Tampilkan nomor cek?" + +#: gnucash/report/reports/standard/register.scm:374 +#: gnucash/report/trep-engine.scm:972 +msgid "Display the memo?" +msgstr "Tampilkan memo?" + +#: gnucash/report/reports/standard/register.scm:379 +msgid "Display the account?" +msgstr "Tampilkan akun?" + +#: gnucash/report/reports/standard/register.scm:384 +#: gnucash/report/trep-engine.scm:953 +msgid "Display the number of shares?" +msgstr "Tampilkan jumlah saham?" #: gnucash/report/reports/standard/register.scm:389 -#, fuzzy -msgid "Display the check number/action?" -msgstr "Tampilkan nomor versi" - -#: gnucash/report/reports/standard/register.scm:393 -#: gnucash/report/trep-engine.scm:943 gnucash/report/trep-engine.scm:944 -#, fuzzy -msgid "Display the check number?" -msgstr "Tampilkan nomor versi" - -#: gnucash/report/reports/standard/register.scm:403 -#: gnucash/report/trep-engine.scm:972 -#, fuzzy -msgid "Display the memo?" -msgstr "Tampilkan pada…" - -#: gnucash/report/reports/standard/register.scm:408 -#, fuzzy -msgid "Display the account?" -msgstr "Tampilkan pada…" - -#: gnucash/report/reports/standard/register.scm:413 -#: gnucash/report/trep-engine.scm:953 -#, fuzzy -msgid "Display the number of shares?" -msgstr "Tampilkan nomor versi" - -#: gnucash/report/reports/standard/register.scm:418 -#, fuzzy msgid "Display the name of lot the shares are in?" -msgstr "nama tampilan: %s\n" +msgstr "Tampilkan nama lot sahamnya?" -#: gnucash/report/reports/standard/register.scm:423 +#: gnucash/report/reports/standard/register.scm:394 #: gnucash/report/trep-engine.scm:955 -#, fuzzy msgid "Display the shares price?" -msgstr "harga" +msgstr "Tampilkan harga saham?" -#: gnucash/report/reports/standard/register.scm:428 +#: gnucash/report/reports/standard/register.scm:399 #: gnucash/report/trep-engine.scm:1017 -#, fuzzy msgid "Display the amount?" -msgstr "jumlah" +msgstr "Tampilkan jumlah?" -#: gnucash/report/reports/standard/register.scm:431 +#: gnucash/report/reports/standard/register.scm:402 #: gnucash/report/trep-engine.scm:1007 gnucash/report/trep-engine.scm:1021 -#, fuzzy msgid "Single" msgstr "Tunggal" -#: gnucash/report/reports/standard/register.scm:431 +#: gnucash/report/reports/standard/register.scm:402 #: gnucash/report/trep-engine.scm:1021 -#, fuzzy msgid "Single Column Display." -msgstr "Kolom Mode Paragraf Tunggal" +msgstr "Tampilan Kolom Tunggal." -#: gnucash/report/reports/standard/register.scm:432 +#: gnucash/report/reports/standard/register.scm:403 #: gnucash/report/trep-engine.scm:1022 -#, fuzzy msgid "Double" msgstr "Ganda" -#: gnucash/report/reports/standard/register.scm:432 +#: gnucash/report/reports/standard/register.scm:403 #: gnucash/report/trep-engine.scm:1022 -#, fuzzy msgid "Two Column Display." -msgstr "Tampilkan kolom jenis di jendela utama." +msgstr "Tampilan Dua Kolom." -#: gnucash/report/reports/standard/register.scm:437 +#: gnucash/report/reports/standard/register.scm:408 msgid "Display the value in transaction currency?" -msgstr "" +msgstr "Tampilkan nilai dalam mata uang transaksi?" -#: gnucash/report/reports/standard/register.scm:447 +#: gnucash/report/reports/standard/register.scm:418 #: gnucash/report/trep-engine.scm:959 -#, fuzzy msgid "Display the totals?" -msgstr "Tampilkan pada…" +msgstr "Tampilkan total?" -#: gnucash/report/reports/standard/register.scm:586 -#, fuzzy +#: gnucash/report/reports/standard/register.scm:557 msgid "Total Debits" -msgstr "Total:" +msgstr "Total Debit" -#: gnucash/report/reports/standard/register.scm:588 -#, fuzzy +#: gnucash/report/reports/standard/register.scm:559 msgid "Total Credits" -msgstr "Kredit" +msgstr "Total Kredit" -#: gnucash/report/reports/standard/register.scm:590 -#, fuzzy +#: gnucash/report/reports/standard/register.scm:561 msgid "Total Value Debits" -msgstr "Total:" +msgstr "Nilai Total Debit" -#: gnucash/report/reports/standard/register.scm:592 -#, fuzzy +#: gnucash/report/reports/standard/register.scm:563 msgid "Total Value Credits" -msgstr "Kredit" +msgstr "Nilai Total Kredit" -#: gnucash/report/reports/standard/register.scm:595 -#, fuzzy +#: gnucash/report/reports/standard/register.scm:566 msgid "Net Change" -msgstr "bersih" +msgstr "Perubahan Bersih" -#: gnucash/report/reports/standard/register.scm:597 -#, fuzzy +#: gnucash/report/reports/standard/register.scm:568 msgid "Value Change" -msgstr "Ubah perilaku dari permintaan perubahan nilai kunci" +msgstr "Perubahan Nilai" #: gnucash/report/reports/standard/taxinvoice.scm:70 -#, fuzzy msgid "n/a" -msgstr "T/A" +msgstr "n/a" #: gnucash/report/reports/standard/taxinvoice.scm:80 -#, fuzzy msgid "Elements" -msgstr "Satu atau lebih elemen GStreamer yang diperlukan hilang: " +msgstr "Elemen" #: gnucash/report/reports/standard/taxinvoice.scm:82 -#, fuzzy msgid "column: Date" -msgstr "kolom ini" +msgstr "kolom: Tanggal" #: gnucash/report/reports/standard/taxinvoice.scm:83 -#, fuzzy msgid "column: Tax Rate" -msgstr "Kolom Laju Menanjak" +msgstr "kolom: Tarif Pajak" #: gnucash/report/reports/standard/taxinvoice.scm:84 -#, fuzzy msgid "column: Units" -msgstr "Unit:" +msgstr "kolom: Satuan" #: gnucash/report/reports/standard/taxinvoice.scm:85 -#, fuzzy msgid "row: Address" -msgstr "baris ini" +msgstr "baris: Alamat" #: gnucash/report/reports/standard/taxinvoice.scm:86 -#, fuzzy msgid "row: Contact" -msgstr "baris ini" +msgstr "baris: Kontak" #: gnucash/report/reports/standard/taxinvoice.scm:87 -#, fuzzy msgid "row: Invoice Number" -msgstr "faktur" +msgstr "baris: Nomor Faktur" #: gnucash/report/reports/standard/taxinvoice.scm:88 -#, fuzzy msgid "row: Company Name" -msgstr "Berdasarkan _Perusahaan" +msgstr "baris: Nama Perusahaan" #: gnucash/report/reports/standard/taxinvoice.scm:89 -#, fuzzy msgid "Invoice number text" -msgstr "faktur" +msgstr "Teks nomor faktur" #: gnucash/report/reports/standard/taxinvoice.scm:90 -#, fuzzy msgid "To text" -msgstr "_Teks:" +msgstr "Untuk teks" #: gnucash/report/reports/standard/taxinvoice.scm:91 -#, fuzzy msgid "Ref text" -msgstr "Mendorong ref \"%s\"" +msgstr "Teks ref" #: gnucash/report/reports/standard/taxinvoice.scm:92 -#, fuzzy msgid "Job Name text" -msgstr "Teks gubahan untuk menimpa nama properti" +msgstr "Teks Nama Pekerjaan" #: gnucash/report/reports/standard/taxinvoice.scm:93 -#, fuzzy msgid "Job Number text" -msgstr "Teks terlalu pendek bagi suatu nomor telepon" +msgstr "Teks Nomor Pekerjaan" #: gnucash/report/reports/standard/taxinvoice.scm:94 -#, fuzzy msgid "Show Job name" -msgstr "Apakah menampilkan informasi pekerjaan dalam penyunting" +msgstr "Tampilkan nama Pekerjaan" #: gnucash/report/reports/standard/taxinvoice.scm:95 -#, fuzzy msgid "Show Job number" -msgstr "Tampilkan bagian Pekerjaan" +msgstr "Tampilkan nomor Pekerjaan" #: gnucash/report/reports/standard/taxinvoice.scm:96 -#, fuzzy msgid "Show net price" -msgstr "harga" +msgstr "Tampilkan harga bersih" #: gnucash/report/reports/standard/taxinvoice.scm:97 -#, fuzzy msgid "Invoice number next to title" -msgstr "Tampilkan diagnostik di samping nomor baris" +msgstr "Nomor faktur di sebelah judul" #: gnucash/report/reports/standard/taxinvoice.scm:98 -#, fuzzy msgid "table-border-collapse" -msgstr "Lipat semua" +msgstr "tabel-garistepi-kolaps" #: gnucash/report/reports/standard/taxinvoice.scm:99 -#, fuzzy msgid "table-header-border-color" -msgstr "tajuk kolom pada tabel" +msgstr "tabel-kepala-garistepi-warna" #: gnucash/report/reports/standard/taxinvoice.scm:100 -#, fuzzy msgid "table-cell-border-color" -msgstr "Warna Batas" +msgstr "tabel-sel-garistepi-warna" #: gnucash/report/reports/standard/taxinvoice.scm:101 -#, fuzzy msgid "Embedded CSS" -msgstr "Tidak tertanam" +msgstr "CSS Tertanam" #: gnucash/report/reports/standard/taxinvoice.scm:107 -#, fuzzy msgid "Logo filename" -msgstr "Logo:" +msgstr "Nama berkas logo" #: gnucash/report/reports/standard/taxinvoice.scm:108 -#, fuzzy msgid "Logo width" -msgstr "Logo:" +msgstr "Lebar logo" #: gnucash/report/reports/standard/taxinvoice.scm:136 -#, fuzzy msgid "Display the Tax Rate?" -msgstr "Suku Bunga" +msgstr "Tampilkan Tarif Pajak?" #: gnucash/report/reports/standard/taxinvoice.scm:137 -#, fuzzy msgid "Display the Units?" -msgstr "Unit:" +msgstr "Tampilkan Satuan?" #: gnucash/report/reports/standard/taxinvoice.scm:138 -#, fuzzy msgid "Display the contact?" -msgstr "Tampilkan bagian sebagai kontak buku alamat" +msgstr "Tampilkan kontak?" #: gnucash/report/reports/standard/taxinvoice.scm:139 -#, fuzzy msgid "Display the address?" -msgstr "Alamat" +msgstr "Tampilkan alamat?" #: gnucash/report/reports/standard/taxinvoice.scm:140 -#, fuzzy msgid "Display the Invoice Number?" -msgstr "faktur" +msgstr "Tampilkan Nomor Faktur?" #: gnucash/report/reports/standard/taxinvoice.scm:141 -#, fuzzy msgid "Display the Company Name?" -msgstr "_Nama Tampilan" +msgstr "Tampilkan Nama Perusahaan?" #: gnucash/report/reports/standard/taxinvoice.scm:142 -#, fuzzy msgid "Invoice Number next to title?" -msgstr "Tampilkan diagnostik di samping nomor baris" +msgstr "Nomor Faktur di sebelah judul?" #: gnucash/report/reports/standard/taxinvoice.scm:143 -#, fuzzy msgid "Display Job name?" -msgstr "pekerjaan" +msgstr "Tampilkan nama Pekerjaan?" #: gnucash/report/reports/standard/taxinvoice.scm:144 -#, fuzzy msgid "Invoice Job number?" -msgstr "faktur" +msgstr "Nomor Pekerjaan Faktur?" #: gnucash/report/reports/standard/taxinvoice.scm:145 -#, fuzzy msgid "Show net price?" -msgstr "harga" +msgstr "Tampilkan harga bersih?" #: gnucash/report/reports/standard/taxinvoice.scm:149 msgid "" @@ -28635,6 +28726,9 @@ msgid "" "either be in your .gnucash directory, or else in its proper place within the " "GnuCash installation directories." msgstr "" +"Nama berkas templat eguile sebagai bagian dari laporan ini. Berkas ini harus " +"berada dalam direktori .gnucash Anda, atau di lokasi lain di dalam direktori " +"instalasi GnuCash." #: gnucash/report/reports/standard/taxinvoice.scm:152 msgid "" @@ -28642,10 +28736,13 @@ msgid "" "should either be in your .gnucash directory, or else in its proper place " "within the GnuCash installation directories." msgstr "" +"Nama berkas lembar gaya CSS untuk digunakan pada laporan ini. Berkas ini " +"harus berada di direktori .gnucash Anda, atau di lokasi lain di dalam " +"direktori instalasi GnuCash." #: gnucash/report/reports/standard/taxinvoice.scm:162 msgid "Name of a file containing a logo to be used on the report." -msgstr "" +msgstr "Nama berkas yang berisi logo yang akan digunakan pada laporan." #: gnucash/report/reports/standard/taxinvoice.scm:165 msgid "" @@ -28658,293 +28755,274 @@ msgstr "" "skalanya." #: gnucash/report/reports/standard/taxinvoice.scm:166 -#, fuzzy msgid "Border-collapse?" -msgstr "Lipat semua" +msgstr "Garistepi-kolaps?" #: gnucash/report/reports/standard/taxinvoice.scm:167 #: gnucash/report/reports/standard/taxinvoice.scm:168 -#, fuzzy msgid "CSS color." -msgstr "CSS kustom" +msgstr "Warna CSS." #: gnucash/report/reports/standard/taxinvoice.scm:200 -#, fuzzy msgid "Invoice number: " -msgstr "faktur" +msgstr "Nomor faktur: " #: gnucash/report/reports/standard/taxinvoice.scm:202 msgid "To: " -msgstr "" +msgstr "Untuk: " #: gnucash/report/reports/standard/taxinvoice.scm:204 -#, fuzzy msgid "Your ref: " -msgstr "Mendorong ref \"%s\"" +msgstr "Ref Anda: " #: gnucash/report/reports/standard/taxinvoice.scm:206 -#, fuzzy msgid "Job number: " -msgstr "pekerjaan" +msgstr "Nomor pekerjaan: " #: gnucash/report/reports/standard/taxinvoice.scm:208 -#, fuzzy msgid "Job name: " -msgstr "pekerjaan" +msgstr "Nama Pekerjaan: " #: gnucash/report/reports/standard/taxinvoice.scm:216 -#, fuzzy msgid "Embedded CSS." -msgstr "Tidak tertanam" +msgstr "CSS Tertanam." #: gnucash/report/reports/standard/taxinvoice.scm:298 msgid "Display a customer invoice with tax columns (using eguile template)" msgstr "" +"Tampilkan faktur pelanggan dengan kolom pajak (menggunakan templat eguile)" #: gnucash/report/reports/standard/taxinvoice.scm:310 -#, fuzzy msgid "Unit" -msgstr "Unit" +msgstr "Satuan" #: gnucash/report/reports/standard/taxinvoice.scm:311 -#, fuzzy msgid "GST Rate" -msgstr "Suku Bunga" +msgstr "Tarif GST" #: gnucash/report/reports/standard/taxinvoice.scm:312 -#, fuzzy msgid "GST Amount" -msgstr "jumlah" +msgstr "Jumlah GST" #: gnucash/report/reports/standard/taxinvoice.scm:313 +#, fuzzy msgid "Amount Due (inc GST)" -msgstr "" +msgstr "Jumlah Karena (inc GST)" #: gnucash/report/reports/standard/taxinvoice.scm:314 -#, fuzzy msgid "Invoice #: " -msgstr "faktur" +msgstr "Faktur #: " #: gnucash/report/reports/standard/taxinvoice.scm:315 -#, fuzzy msgid "Reference: " -msgstr "REFERENSI" +msgstr "Referensi: " #: gnucash/report/reports/standard/taxinvoice.scm:316 msgid "Engagement: " -msgstr "" +msgstr "Keterikatan: " #: gnucash/report/reports/standard/taxinvoice.scm:322 #: gnucash/report/reports/standard/taxinvoice.scm:324 -#, fuzzy msgid "Australian Tax Invoice" -msgstr "Dolar Australia" +msgstr "Faktur Pajak Australia" #: gnucash/report/reports/standard/taxinvoice.scm:325 msgid "" "Display an Australian customer invoice with tax columns (using eguile " "template)" msgstr "" +"Tampilkan faktur pelanggan Australia dengan kolom pajak (menggunakan templat " +"eguile)" #: gnucash/report/reports/standard/trial-balance.scm:61 -#: gnucash/report/reports/standard/trial-balance.scm:569 -#, fuzzy +#: gnucash/report/reports/standard/trial-balance.scm:570 msgid "Trial Balance" -msgstr "neraca saldo" +msgstr "Neraca Saldo" #: gnucash/report/reports/standard/trial-balance.scm:71 -#, fuzzy msgid "Start of Adjusting/Closing" -msgstr "_Mulai" +msgstr "Mulai Penyesuaian/Penutupan" #: gnucash/report/reports/standard/trial-balance.scm:72 -#, fuzzy msgid "Date of Report" -msgstr "Lapo_rkan" +msgstr "Tanggal Laporan" #: gnucash/report/reports/standard/trial-balance.scm:73 -#, fuzzy msgid "Report variation" -msgstr "Sumbu Variasi" +msgstr "Variasi laporan" #: gnucash/report/reports/standard/trial-balance.scm:74 -#, fuzzy msgid "Kind of trial balance to generate." -msgstr "neraca saldo" +msgstr "Jenis neraca saldo yang dihasilkan." #: gnucash/report/reports/standard/trial-balance.scm:83 +#, fuzzy msgid "Merchandising" -msgstr "" +msgstr "Merchandising" #: gnucash/report/reports/standard/trial-balance.scm:84 -#, fuzzy msgid "Gross adjustment accounts." -msgstr "Penyesuaian:" +msgstr "Akun penyesuaian kotor." #: gnucash/report/reports/standard/trial-balance.scm:86 +#, fuzzy msgid "" "Do not net, but show gross debit/credit adjustments to these accounts. " "Merchandising businesses will normally select their inventory accounts here." msgstr "" +"Jangan bersih, tetapi tampilkan penyesuaian debit/kredit kotor untuk akun-" +"akun tersebut. Merchandising bisnis biasanya akan memilih inventaris mereka " +"account di sini." #: gnucash/report/reports/standard/trial-balance.scm:87 -#, fuzzy msgid "Income summary accounts" -msgstr "Ringkasan" +msgstr "Akun ikhtisar pendapatan" #: gnucash/report/reports/standard/trial-balance.scm:89 +#, fuzzy msgid "" "Adjustments made to these accounts are gross adjusted (see above) in the " "Adjustments, Adjusted Trial Balance, and Income Statement columns. Mostly " "useful for merchandising businesses." msgstr "" +"Penyesuaian dibuat untuk account tersebut kotor disesuaikan (lihat di atas) " +"di Penyesuaian, Neraca Saldo Disesuaikan, dan Pendapatan kolom Pernyataan. " +"Sebagian besar berguna untuk merchandise bisnis." #: gnucash/report/reports/standard/trial-balance.scm:92 -#, fuzzy msgid "Adjusting Entries pattern" -msgstr "Isi _jurnal" +msgstr "Pola Entri Penyesuaian" #: gnucash/report/reports/standard/trial-balance.scm:94 msgid "Any text in the Description column which identifies adjusting entries." msgstr "" +"Teks apapun di dalam kolom Deskripsi yang mengidentifikasikan entri " +"penyesuaian." #: gnucash/report/reports/standard/trial-balance.scm:96 msgid "Adjusting Entries pattern is case-sensitive" -msgstr "" +msgstr "Pola Entri Penyesuaian membedakan huruf besar/kecil" #: gnucash/report/reports/standard/trial-balance.scm:98 msgid "Causes the Adjusting Entries Pattern match to be case-sensitive." msgstr "" +"Menyebabkan pencocokan Pola Entri Penyesuaian membedakan huruf besar/kecil." #: gnucash/report/reports/standard/trial-balance.scm:100 msgid "Adjusting Entries Pattern is regular expression" -msgstr "" +msgstr "Pola Entri Penyesuaian adalah ekspresi reguler" #: gnucash/report/reports/standard/trial-balance.scm:102 msgid "" "Causes the Adjusting Entries Pattern to be treated as a regular expression." msgstr "" +"Menyebabkan Pola Entri Penyesuaian diperlakukan sebagai ekspresi reguler." #: gnucash/report/reports/standard/trial-balance.scm:204 -#, fuzzy msgid "Current Trial Balance" -msgstr "neraca saldo" +msgstr "Neraca Saldo Saat Ini" #: gnucash/report/reports/standard/trial-balance.scm:205 msgid "Uses the exact balances in the general journal" -msgstr "" +msgstr "Menggunakan saldo yang tepat dalam jurnal umum" #: gnucash/report/reports/standard/trial-balance.scm:207 -#, fuzzy msgid "Pre-adjustment Trial Balance" -msgstr "neraca saldo" +msgstr "Neraca Saldo Pra-penyesuaian" #: gnucash/report/reports/standard/trial-balance.scm:208 msgid "Ignores Adjusting/Closing entries" -msgstr "" +msgstr "Abaikan entri Penyesuaian/Penutup" #: gnucash/report/reports/standard/trial-balance.scm:210 -#, fuzzy msgid "Work Sheet" -msgstr "neraca" +msgstr "Lembar Kerja" #: gnucash/report/reports/standard/trial-balance.scm:211 msgid "Creates a complete end-of-period work sheet" -msgstr "" - -#: gnucash/report/reports/standard/trial-balance.scm:570 -msgid "Adjustments" -msgstr "" +msgstr "Membuat lembar kerja akhir-periode lengkap" #: gnucash/report/reports/standard/trial-balance.scm:571 -#, fuzzy -msgid "Adjusted Trial Balance" -msgstr "neraca saldo" +msgid "Adjustments" +msgstr "Penyesuaian" -#: gnucash/report/reports/standard/trial-balance.scm:860 -#, fuzzy +#: gnucash/report/reports/standard/trial-balance.scm:572 +msgid "Adjusted Trial Balance" +msgstr "Neraca Saldo Disesuaikan" + +#: gnucash/report/reports/standard/trial-balance.scm:861 msgid "Net Loss" -msgstr "bersih" +msgstr "Rugi Bersih" #: gnucash/report/reports/standard/view-column.scm:50 #: gnucash/report/reports/standard/view-column.scm:76 -#, fuzzy msgid "Number of columns" -msgstr "Cacah kolom yang mesti dicakup widget" +msgstr "Jumlah kolom" #: gnucash/report/reports/standard/view-column.scm:51 msgid "Number of columns before wrapping to a new row." -msgstr "" +msgstr "Jumlah kolom sebelum membuat baris baru." #: gnucash/report/reports/standard/view-column.scm:159 -#, fuzzy msgid "Edit Options" -msgstr "Su_nting Opsi Pengaitan…" +msgstr "Opsi Penyuntingan" #: gnucash/report/reports/standard/view-column.scm:166 -#, fuzzy msgid "Single Report" -msgstr "Tunggal" +msgstr "Laporan Tunggal" #: gnucash/report/reports/standard/view-column.scm:219 -#, fuzzy msgid "Multicolumn View" -msgstr "Tilik sebagai" +msgstr "Tampilan Multi Kolom" #: gnucash/report/reports/standard/view-column.scm:221 -#, fuzzy msgid "Custom Multicolumn Report" -msgstr "Kustom" +msgstr "Laporan Multi-kolom Tersuai" #: gnucash/report/reports/support/balsheet-eg.eguile.scm:167 -#, fuzzy msgid "Assets Accounts" -msgstr "aset bersih" +msgstr "Akun Aset" #: gnucash/report/reports/support/balsheet-eg.eguile.scm:173 -#, fuzzy msgid "Liability Accounts" -msgstr "tipe akun: Liabilitas" +msgstr "Akun Liabilitas" #: gnucash/report/reports/support/balsheet-eg.eguile.scm:179 -#, fuzzy msgid "Equity Accounts" -msgstr "ekuitas" +msgstr "Akun Ekuitas" #: gnucash/report/reports/support/balsheet-eg.eguile.scm:182 -#: gnucash/report/report-utilities.scm:119 -#, fuzzy +#: gnucash/report/report-utilities.scm:131 msgid "Trading Accounts" -msgstr "tipe akun: perdagangan" +msgstr "Akun Perdagangan" #: gnucash/report/reports/support/balsheet-eg.eguile.scm:249 -#, fuzzy msgid "Total Equity, Trading, and Liabilities" -msgstr "liabilitas/ekuitas" +msgstr "Total Ekuitas, Perdagangan, dan Liabilitas" #: gnucash/report/reports/support/balsheet-eg.eguile.scm:258 #, fuzzy msgid "Imbalance Amount" -msgstr "tak-seimbang" +msgstr "ketidakseimbangan Jumlah" #: gnucash/report/reports/support/balsheet-eg.eguile.scm:275 msgid "Exchange Rates used for this report" -msgstr "" +msgstr "Nilai Tukar yang digunakan pada laporan ini" #: gnucash/report/reports/support/receipt.eguile.scm:124 -#, fuzzy msgid "Invoice No." -msgstr "faktur" +msgstr "No. Faktur" #: gnucash/report/reports/support/receipt.eguile.scm:144 msgid "Descr." -msgstr "" +msgstr "Deskr." #: gnucash/report/reports/support/receipt.eguile.scm:279 #: gnucash/report/reports/support/taxinvoice.eguile.scm:424 msgid "" "No invoice has been selected -- please use the Options menu to select one." msgstr "" +"Tak ada faktur yang dipilih -- gunakan menu Opsi untuk memilih salah satu." #: gnucash/report/reports/support/receipt.eguile.scm:286 msgid "" @@ -28963,62 +29041,60 @@ msgstr "Situs Web" msgid "Invoice Date" msgstr "Tanggal Faktur" -#: gnucash/report/report-utilities.scm:107 +#: gnucash/report/report-utilities.scm:119 msgid "Stocks" msgstr "Saham" -#: gnucash/report/report-utilities.scm:108 +#: gnucash/report/report-utilities.scm:120 msgid "Mutual Funds" msgstr "Reksadana" -#: gnucash/report/report-utilities.scm:109 +#: gnucash/report/report-utilities.scm:121 #: libgnucash/engine/gnc-commodity.h:116 msgid "Currencies" msgstr "Mata Uang" -#: gnucash/report/report-utilities.scm:112 +#: gnucash/report/report-utilities.scm:124 msgid "Equities" msgstr "Ekuitas" -#: gnucash/report/report-utilities.scm:113 +#: gnucash/report/report-utilities.scm:125 msgid "Checking" msgstr "Giro" -#: gnucash/report/report-utilities.scm:114 +#: gnucash/report/report-utilities.scm:126 msgid "Savings" msgstr "Tabungan" -#: gnucash/report/report-utilities.scm:115 +#: gnucash/report/report-utilities.scm:127 msgid "Money Market" msgstr "Pasar Uang" -#: gnucash/report/report-utilities.scm:116 +#: gnucash/report/report-utilities.scm:128 msgid "Accounts Receivable" msgstr "Akun Piutang" -#: gnucash/report/report-utilities.scm:117 +#: gnucash/report/report-utilities.scm:129 msgid "Accounts Payable" msgstr "Akun Utang" -#: gnucash/report/report-utilities.scm:118 -#, fuzzy +#: gnucash/report/report-utilities.scm:130 msgid "Credit Lines" -msgstr "Kartu Kredit" +msgstr "Baris Kredit" -#: gnucash/report/report-utilities.scm:618 -#, fuzzy, scheme-format +#: gnucash/report/report-utilities.scm:630 +#, scheme-format msgid "Building '~a' report ..." -msgstr "Lapo_rkan" +msgstr "Membangun laporan '~a' ..." -#: gnucash/report/report-utilities.scm:624 -#, fuzzy, scheme-format +#: gnucash/report/report-utilities.scm:636 +#, scheme-format msgid "Rendering '~a' report ..." -msgstr "Merender halaman %d dari %d…" +msgstr "Merender laporan '~a' ..." -#: gnucash/report/report-utilities.scm:626 -#, fuzzy +#: gnucash/report/report-utilities.scm:638 msgid "Untitled" -msgstr "Tanpa Judul" +msgstr "Tak berjudul" #: gnucash/report/stylesheets/css.scm:119 msgid "CSS code. This field specifies the CSS code for styling reports." @@ -29026,37 +29102,36 @@ msgstr "Kode CSS. Bidang ini menentukan kode CSS untuk tampilan laporan." #: gnucash/report/stylesheets/css.scm:209 msgid "</style is disallowed in CSS. Using default CSS." -msgstr "" +msgstr "</style tidak diperbolehkan dalam CSS. Menggunakan CSS baku." #: gnucash/report/stylesheets/css.scm:228 msgid "CSS-based stylesheet (experimental)" -msgstr "" +msgstr "Lembar gaya berbasis CSS (eksperimental)" #: gnucash/report/stylesheets/footer.scm:55 #: gnucash/report/stylesheets/head-or-tail.scm:53 msgid "Preparer" -msgstr "" +msgstr "Penyiap laporan" #: gnucash/report/stylesheets/footer.scm:56 #: gnucash/report/stylesheets/head-or-tail.scm:54 msgid "Name of person preparing the report." -msgstr "" +msgstr "Nama orang yang mempersiapkan laporan." #: gnucash/report/stylesheets/footer.scm:62 #: gnucash/report/stylesheets/head-or-tail.scm:59 msgid "Prepared for" -msgstr "" +msgstr "Disiapkan untuk" #: gnucash/report/stylesheets/footer.scm:63 #: gnucash/report/stylesheets/head-or-tail.scm:60 msgid "Name of organization or company prepared for." -msgstr "" +msgstr "Nama organisasi atau perusahaan yang disiapkan." #: gnucash/report/stylesheets/footer.scm:69 #: gnucash/report/stylesheets/head-or-tail.scm:65 -#, fuzzy msgid "Show preparer info" -msgstr "Tampilkan info" +msgstr "Tampilkan info penyiap laporan" #: gnucash/report/stylesheets/footer.scm:70 #: gnucash/report/stylesheets/head-or-tail.scm:66 @@ -29110,23 +29185,20 @@ msgstr "Ubin latar belakang untuk laporan." #. Translators: Banner is an image like Logo. #: gnucash/report/stylesheets/footer.scm:97 #: gnucash/report/stylesheets/head-or-tail.scm:145 -#, fuzzy msgid "Heading Banner" -msgstr "Tajuk" +msgstr "Banner Tajuk" #: gnucash/report/stylesheets/footer.scm:97 #: gnucash/report/stylesheets/footer.scm:103 #: gnucash/report/stylesheets/head-or-tail.scm:145 #: gnucash/report/stylesheets/head-or-tail.scm:150 -#, fuzzy msgid "Banner for top of report." -msgstr "Menampilkan pesan penyambut" +msgstr "Banner untuk bagian atas laporan." #: gnucash/report/stylesheets/footer.scm:103 #: gnucash/report/stylesheets/head-or-tail.scm:150 -#, fuzzy msgid "Heading Alignment" -msgstr "Perataan" +msgstr "Perataan Tajuk" #: gnucash/report/stylesheets/footer.scm:106 #: gnucash/report/stylesheets/head-or-tail.scm:153 @@ -29135,9 +29207,8 @@ msgstr "Kiri" #: gnucash/report/stylesheets/footer.scm:107 #: gnucash/report/stylesheets/head-or-tail.scm:154 -#, fuzzy msgid "Align the banner to the left." -msgstr "Ratakan dengan tepi kiri target" +msgstr "Ratakan banner ke kiri." #: gnucash/report/stylesheets/footer.scm:109 #: gnucash/report/stylesheets/head-or-tail.scm:156 @@ -29146,9 +29217,8 @@ msgstr "Tengah" #: gnucash/report/stylesheets/footer.scm:110 #: gnucash/report/stylesheets/head-or-tail.scm:157 -#, fuzzy msgid "Align the banner in the center." -msgstr "Ratakan dengan pusat target" +msgstr "Ratakan banner di tengah." #: gnucash/report/stylesheets/footer.scm:112 #: gnucash/report/stylesheets/head-or-tail.scm:159 @@ -29157,9 +29227,8 @@ msgstr "Kanan" #: gnucash/report/stylesheets/footer.scm:113 #: gnucash/report/stylesheets/head-or-tail.scm:160 -#, fuzzy msgid "Align the banner to the right." -msgstr "Ratakan dengan tepi kanan target" +msgstr "Ratakan banner ke kanan." #: gnucash/report/stylesheets/footer.scm:118 #: gnucash/report/stylesheets/head-or-tail.scm:165 @@ -29224,54 +29293,48 @@ msgstr "Warna Sel Tabel" #: gnucash/report/stylesheets/footer.scm:145 #: gnucash/report/stylesheets/head-or-tail.scm:192 msgid "Default background for table cells." -msgstr "Latar belakang bawaan untuk sel tabel." +msgstr "Latar belakang baku untuk sel tabel." #: gnucash/report/stylesheets/footer.scm:152 #: gnucash/report/stylesheets/head-or-tail.scm:199 #: gnucash/report/stylesheets/plain.scm:63 -#, fuzzy msgid "Alternate Table Cell Color" -msgstr "Sel Tabel" +msgstr "Warna Sel Tabel Berseling" #: gnucash/report/stylesheets/footer.scm:153 #: gnucash/report/stylesheets/head-or-tail.scm:200 msgid "Default alternate background for table cells." -msgstr "" +msgstr "Latar belakang berseling baku untuk sel tabel." #: gnucash/report/stylesheets/footer.scm:160 #: gnucash/report/stylesheets/head-or-tail.scm:207 -#, fuzzy msgid "Subheading/Subtotal Cell Color" -msgstr "Kolom Warna Latar Sel" +msgstr "Warna Sel Subtajuk/Subtotal" #: gnucash/report/stylesheets/footer.scm:161 #: gnucash/report/stylesheets/head-or-tail.scm:208 -#, fuzzy msgid "Default color for subtotal rows." -msgstr "Skema warna bawaan untuk Builder" +msgstr "Warna baku untuk baris subtotal." #: gnucash/report/stylesheets/footer.scm:168 #: gnucash/report/stylesheets/head-or-tail.scm:215 msgid "Sub-subheading/total Cell Color" -msgstr "" +msgstr "Warna Sel sub-subtajuk/total" #: gnucash/report/stylesheets/footer.scm:169 #: gnucash/report/stylesheets/head-or-tail.scm:216 -#, fuzzy msgid "Color for subsubtotals." -msgstr "_Menurut Warna" +msgstr "Warna untuk subsubtotal." #: gnucash/report/stylesheets/footer.scm:176 #: gnucash/report/stylesheets/head-or-tail.scm:223 -#, fuzzy msgid "Grand Total Cell Color" -msgstr "Kolom Nama Warna Latar Sel" +msgstr "Warna Sel Total Keseluruhan" #: gnucash/report/stylesheets/footer.scm:177 #: gnucash/report/stylesheets/head-or-tail.scm:224 -#, fuzzy msgid "Color for grand totals." -msgstr "Amerika/Grand_Turk" +msgstr "Warna untuk total keseluruhan." #: gnucash/report/stylesheets/footer.scm:183 #: gnucash/report/stylesheets/footer.scm:189 @@ -29302,60 +29365,47 @@ msgstr "Jarak antar sel tabel." #: gnucash/report/stylesheets/plain.scm:74 #, fuzzy msgid "Table cell padding" -msgstr "Sel Tabel" +msgstr "Padding sel tabel" #: gnucash/report/stylesheets/footer.scm:190 #: gnucash/report/stylesheets/head-or-tail.scm:237 #: gnucash/report/stylesheets/plain.scm:74 +#, fuzzy msgid "Space between table cell edge and content." -msgstr "" +msgstr "Ruang antara tepi sel tabel dan konten." #: gnucash/report/stylesheets/footer.scm:196 #: gnucash/report/stylesheets/head-or-tail.scm:243 #: gnucash/report/stylesheets/plain.scm:79 -#, fuzzy msgid "Table border width" -msgstr "Lebar Batas" +msgstr "Lebar garis tepi tabel" #: gnucash/report/stylesheets/footer.scm:196 #: gnucash/report/stylesheets/head-or-tail.scm:243 #: gnucash/report/stylesheets/plain.scm:79 -#, fuzzy msgid "Bevel depth on tables." -msgstr "Kedalaman:" +msgstr "Kedalaman bevel tabel." #: gnucash/report/stylesheets/footer.scm:377 #: gnucash/report/stylesheets/head-or-tail.scm:432 #: gnucash/report/stylesheets/head-or-tail.scm:526 -#, fuzzy msgid "Prepared by: " -msgstr "" -"Bahkan bila Pemeriksaan Keseluruhan mengindikasikan bahwa disk " -"tidak sehat, mungkin tidak ada alasan untuk alarm. Namun, lebih " -"baik bersiap-siap dengan suatu backup untuk " -"mencegah kehilangan data." +msgstr "Disiapkan oleh: " #: gnucash/report/stylesheets/footer.scm:380 #: gnucash/report/stylesheets/head-or-tail.scm:440 #: gnucash/report/stylesheets/head-or-tail.scm:534 -#, fuzzy msgid "Prepared for: " -msgstr "" -"Bahkan bila Pemeriksaan Keseluruhan mengindikasikan bahwa disk " -"tidak sehat, mungkin tidak ada alasan untuk alarm. Namun, lebih " -"baik bersiap-siap dengan suatu backup untuk " -"mencegah kehilangan data." +msgstr "Disiapkan untuk: " #: gnucash/report/stylesheets/footer.scm:419 #: gnucash/report/stylesheets/footer.scm:435 -#, fuzzy msgid "Easy" msgstr "Mudah" #: gnucash/report/stylesheets/footer.scm:425 -#, fuzzy msgid "Fancy" -msgstr "Kesukaan" +msgstr "Lengkap" #: gnucash/report/stylesheets/footer.scm:436 msgid "Technicolor" @@ -29366,8 +29416,9 @@ msgid "Show receiver info" msgstr "Tampilkan info penerima" #: gnucash/report/stylesheets/head-or-tail.scm:72 +#, fuzzy msgid "Name of organization or company the report is prepared for." -msgstr "" +msgstr "Nama organisasi atau perusahaan laporan dipersiapkan untuk." #: gnucash/report/stylesheets/head-or-tail.scm:77 msgid "Show date" @@ -29401,57 +29452,55 @@ msgstr "String untuk informasi tambahan pada laporan." #: gnucash/report/stylesheets/head-or-tail.scm:108 msgid "Show preparer info at bottom" -msgstr "" +msgstr "Tampilkan info penyiap laporan di bagian bawah" #: gnucash/report/stylesheets/head-or-tail.scm:109 msgid "Per default the preparer info will be shown before the report data." msgstr "" +"Secara baku, informasi penyiap laporan akan ditampilkan sebelum data laporan." #: gnucash/report/stylesheets/head-or-tail.scm:114 -#, fuzzy msgid "Show receiver info at bottom" -msgstr "Tampilkan info" +msgstr "Tampilkan info penerima di bagian bawah" #: gnucash/report/stylesheets/head-or-tail.scm:115 msgid "Per default the receiver info will be shown before the report data." -msgstr "" +msgstr "Secara baku, informasi penerima akan ditampilkan sebelum data laporan." #: gnucash/report/stylesheets/head-or-tail.scm:120 -#, fuzzy msgid "Show date/time at bottom" -msgstr "Tampilkan layar bawah" +msgstr "Tampilkan tanggal/waktu di bagian bawah" #: gnucash/report/stylesheets/head-or-tail.scm:121 msgid "Per default the date/time info will be shown before the report data." msgstr "" +"Secara baku, informasi tanggal/waktu akan ditampilkan sebelum data laporan." #: gnucash/report/stylesheets/head-or-tail.scm:126 -#, fuzzy msgid "Show comments at bottom" -msgstr "Tampilkan layar bawah" +msgstr "Tampilkan komentar di bagian bawah" #: gnucash/report/stylesheets/head-or-tail.scm:127 msgid "" "Per default the additional comments text will be shown before the report " "data." msgstr "" +"Secara baku, teks komentar tambahan akan ditampilkan sebelum data laporan." #: gnucash/report/stylesheets/head-or-tail.scm:132 -#, fuzzy msgid "Show GnuCash version at bottom" -msgstr "Tampilkan layar bawah" +msgstr "Tampilkan versi GnuCash di bagian bawah" #: gnucash/report/stylesheets/head-or-tail.scm:133 msgid "Per default the GnuCash version will be shown before the report data." -msgstr "" +msgstr "Secara baku, versi GnuCash akan ditampilkan sebelum data laporan." #: gnucash/report/stylesheets/head-or-tail.scm:449 #: gnucash/report/stylesheets/head-or-tail.scm:456 #: gnucash/report/stylesheets/head-or-tail.scm:543 #: gnucash/report/stylesheets/head-or-tail.scm:550 -#, fuzzy msgid "Report Creation Date: " -msgstr "GladeCreateReason bagi kreasi ini" +msgstr "Tanggal Pembuatan Laporan: " #: gnucash/report/stylesheets/head-or-tail.scm:558 msgid "GnuCash " @@ -29459,24 +29508,20 @@ msgstr "GnuCash " #: gnucash/report/stylesheets/head-or-tail.scm:573 #: gnucash/report/stylesheets/head-or-tail.scm:577 -#, fuzzy msgid "Head or Tail" -msgstr "Mainline Head" +msgstr "Kepala atau Ekor" #: gnucash/report/stylesheets/plain.scm:47 -#, fuzzy msgid "Background color for reports." -msgstr "Pilih Warna Latar Belakang Node:" +msgstr "Warna latar belakang untuk laporan." #: gnucash/report/stylesheets/plain.scm:53 -#, fuzzy msgid "Background Pixmap" -msgstr "Pixmap" +msgstr "Pixmap Latar Belakang" #: gnucash/report/stylesheets/plain.scm:63 -#, fuzzy msgid "Background color for alternate lines." -msgstr "Warna garis kisi" +msgstr "Warna latar belakang untuk baris berseling." #: gnucash/report/stylesheets/plain.scm:227 msgid "Plain" @@ -29496,279 +29541,248 @@ msgstr "Tampilkan Deskripsi Akun" #: gnucash/report/trep-engine.scm:67 msgid "Show Informal Debit/Credit Headers" -msgstr "" +msgstr "Tampilkan Kepala Debit/Kredit Informal" #: gnucash/report/trep-engine.scm:69 msgid "Show subtotals only (hide transactional data)" -msgstr "" +msgstr "Tampilkan subtotal saja (sembunyikan data transaksional)" #: gnucash/report/trep-engine.scm:70 #, fuzzy msgid "Add indenting columns" -msgstr "Tambah dan hapus kolom:" +msgstr "Menambahkan indentasi kolom" #: gnucash/report/trep-engine.scm:79 -#, fuzzy msgid "Table for Exporting" -msgstr "Mengekspor…" +msgstr "Tabel untuk Mengekspor" #: gnucash/report/trep-engine.scm:87 -#, fuzzy msgid "Account Name Filter" -msgstr "Menyaring proses berdasarkan nama" +msgstr "Filter Nama Akun" #: gnucash/report/trep-engine.scm:89 msgid "Use regular expressions for account name filter" -msgstr "" +msgstr "Gunakan ekspresi reguler untuk filter nama akun" #: gnucash/report/trep-engine.scm:90 -#, fuzzy msgid "Transaction Filter" -msgstr "transaksi" +msgstr "Filter Transaksi" #: gnucash/report/trep-engine.scm:92 msgid "Use regular expressions for transaction filter" -msgstr "" +msgstr "Gunakan ekspresi reguler untuk filter transaksi" #: gnucash/report/trep-engine.scm:94 msgid "Transaction Filter excludes matched strings" -msgstr "" +msgstr "Filter Transaksi tidak termasuk string yang cocok" #: gnucash/report/trep-engine.scm:96 msgid "Transaction Filter is case insensitive" -msgstr "" +msgstr "Filter Transaksi tidak membedakan huruf besar/kecil" #: gnucash/report/trep-engine.scm:97 -#, fuzzy msgid "Reconcile Status" -msgstr "Status" +msgstr "Status Rekonsiliasi" #: gnucash/report/trep-engine.scm:98 msgid "Void Transactions" -msgstr "" +msgstr "Transaksi Batal" #: gnucash/report/trep-engine.scm:99 -#, fuzzy msgid "Closing transactions" -msgstr "Timpa tanda kurung penutup" +msgstr "Transaksi penutupan" #: gnucash/report/trep-engine.scm:109 msgid "" "No transactions were found that match the time interval and account " "selection specified in the Options panel." msgstr "" +"Tak ada transaksi yang ditemukan yang cocok dengan interval waktu dan " +"pemilihan akun yang ditentukan pada panel Opsi." #: gnucash/report/trep-engine.scm:148 -#, fuzzy msgid "Sort & subtotal by account name." -msgstr "Nama Akun tak boleh kosong" +msgstr "Urutkan & subtotal berdasar nama akun." #: gnucash/report/trep-engine.scm:155 -#, fuzzy msgid "Sort & subtotal by account code." -msgstr "kode akun" +msgstr "Urutkan & subtotal berdasar kode akun." #: gnucash/report/trep-engine.scm:169 -#, fuzzy msgid "Sort by the Reconciled Date." -msgstr "status transaksi: rekonsiliasi" +msgstr "Urutkan Tanggal Rekonsiliasi." #: gnucash/report/trep-engine.scm:177 -#, fuzzy msgid "Reconciled Status" -msgstr "Status" +msgstr "Status Rekonsiliasi" #: gnucash/report/trep-engine.scm:178 -#, fuzzy msgid "Sort by the Reconciled Status" -msgstr "status transaksi: rekonsiliasi" +msgstr "Urutkan berdasar Status Rekonsiliasi" #: gnucash/report/trep-engine.scm:186 -#, fuzzy msgid "Register Order" -msgstr "daftar" +msgstr "Urutan Register" #: gnucash/report/trep-engine.scm:187 -#, fuzzy msgid "Sort as in the register." -msgstr "Urut berdasarkan" +msgstr "Urutkan seperti dalam register." #: gnucash/report/trep-engine.scm:194 msgid "Sort by account transferred from/to's name." -msgstr "" +msgstr "Urutkan berdasar akun yang ditransfer dari/ke nama ini." #: gnucash/report/trep-engine.scm:201 msgid "Sort by account transferred from/to's code." -msgstr "" +msgstr "Urutkan berdasar akun yang ditransfer dari/ke kode ini." #: gnucash/report/trep-engine.scm:224 -#, fuzzy msgid "Sort by check number/action." -msgstr "Cacah butir dalam bilah aksi" +msgstr "Urutkan berdasar nomor/aksi cek." #: gnucash/report/trep-engine.scm:231 msgid "Sort by check/transaction number." -msgstr "" +msgstr "Urutkan berdasar nomor cek/transaksi." #: gnucash/report/trep-engine.scm:238 -#, fuzzy msgid "Sort by transaction number." -msgstr "transaksi" +msgstr "Urutkan berdasar nomor transaksi." #: gnucash/report/trep-engine.scm:252 -#, fuzzy msgid "Sort by transaction notes." -msgstr "transaksi" +msgstr "Urutkan berdasar catatan transaksi." #: gnucash/report/trep-engine.scm:259 -#, fuzzy msgid "Do not sort." -msgstr "_Urutkan..." +msgstr "Jangan mengurutkan." #: gnucash/report/trep-engine.scm:292 -#, fuzzy msgid "None." -msgstr "_Nihil" +msgstr "Tidak ada." #: gnucash/report/trep-engine.scm:299 -#, fuzzy msgid "Daily." -msgstr "Harian" +msgstr "Harian." #: gnucash/report/trep-engine.scm:306 -#, fuzzy msgid "Weekly." -msgstr "Mingguan" +msgstr "Mingguan." #: gnucash/report/trep-engine.scm:315 -#, fuzzy msgid "Monthly." -msgstr "Bulanan" +msgstr "Bulanan." #: gnucash/report/trep-engine.scm:324 msgid "Quarterly." msgstr "Per kuartal." #: gnucash/report/trep-engine.scm:333 -#, fuzzy msgid "Yearly." -msgstr "Tahunan" +msgstr "Tahunan." #: gnucash/report/trep-engine.scm:342 -#, fuzzy msgid "Do not do any filtering." -msgstr "Jangan memakai kata benda apapun." +msgstr "Jangan melakukan penyaringan apapun." #: gnucash/report/trep-engine.scm:345 msgid "Include Transactions to/from Filter Accounts" -msgstr "" +msgstr "Sertakan Transaksi ke/dari Akun Filter" #: gnucash/report/trep-engine.scm:346 msgid "Include transactions to/from filter accounts only." -msgstr "" +msgstr "Sertakan transaksi ke/dari akun filter saja." #: gnucash/report/trep-engine.scm:349 msgid "Exclude Transactions to/from Filter Accounts" -msgstr "" +msgstr "Kecualikan Transaksi ke/dari Akun Filter" #: gnucash/report/trep-engine.scm:350 msgid "Exclude transactions to/from all filter accounts." -msgstr "" +msgstr "Kecualikan transaksi ke/dari semua akun filter." #: gnucash/report/trep-engine.scm:356 msgid "Non-void only" -msgstr "" +msgstr "Hanya tak-batal" #: gnucash/report/trep-engine.scm:357 msgid "Show only non-voided transactions." -msgstr "" +msgstr "Tampilkan hanya transaksi yang tak-batal." #: gnucash/report/trep-engine.scm:361 -#, fuzzy msgid "Void only" -msgstr "Hanya" +msgstr "Hanya batal" #: gnucash/report/trep-engine.scm:362 -#, fuzzy msgid "Show only voided transactions." -msgstr "_Tampilkan folder yang dilanggan saja" +msgstr "Tampilkan hanya transaksi batal." #: gnucash/report/trep-engine.scm:366 -#, fuzzy msgid "Both" msgstr "Keduanya" #: gnucash/report/trep-engine.scm:367 msgid "Show both (and include void transactions in totals)." -msgstr "" +msgstr "Tampilkan keduanya (dan sertakan transaksi batal dalam total)." #: gnucash/report/trep-engine.scm:372 -#, fuzzy msgid "Exclude closing transactions" -msgstr "Exclude" +msgstr "Kecualikan transaksi penutupan" #: gnucash/report/trep-engine.scm:373 msgid "Exclude closing transactions from report." -msgstr "" +msgstr "Kecualikan transaksi penutupan dari laporan." #: gnucash/report/trep-engine.scm:377 msgid "Show both closing and regular transactions" -msgstr "" +msgstr "Tampilkan transaksi reguler dan penutupan" #: gnucash/report/trep-engine.scm:378 msgid "Show both (and include closing transactions in totals)." -msgstr "" +msgstr "Tampilkan keduanya (dan sertakan transaksi penutupan dalam total)." #: gnucash/report/trep-engine.scm:382 -#, fuzzy msgid "Show closing transactions only" -msgstr "_Tampilkan folder yang dilanggan saja" +msgstr "Tampilkan hanya transaksi penutupan" #: gnucash/report/trep-engine.scm:383 -#, fuzzy msgid "Show only closing transactions." -msgstr "_Tampilkan folder yang dilanggan saja" +msgstr "Tampilkan hanya transaksi penutupan." #: gnucash/report/trep-engine.scm:394 -#, fuzzy msgid "Show All Transactions" -msgstr "Menampilkan semua opsi bantuan" +msgstr "Tampilkan Semua Transaksi" #: gnucash/report/trep-engine.scm:399 -#, fuzzy msgid "Unreconciled only" -msgstr "Hanya _Ikon" +msgstr "Hanya tak-direkonsiliasi" #: gnucash/report/trep-engine.scm:404 -#, fuzzy msgid "Cleared only" -msgstr "Senarai ubah dibersihkan" +msgstr "Hanya klir" #: gnucash/report/trep-engine.scm:409 -#, fuzzy msgid "Reconciled only" -msgstr "status transaksi: rekonsiliasi" +msgstr "Hanya direkonsiliasi" #: gnucash/report/trep-engine.scm:417 msgid "Smallest to largest, earliest to latest." -msgstr "" +msgstr "Terkecil ke terbesar, paling awal ke terbaru." #: gnucash/report/trep-engine.scm:420 msgid "Largest to smallest, latest to earliest." -msgstr "" +msgstr "Terbesar ke terkecil, terbaru ke terlama." #: gnucash/report/trep-engine.scm:425 -#, fuzzy msgid "Use Global Preference" -msgstr "Gunakan pengaturan global" +msgstr "Gunakan Preferensi Global" #: gnucash/report/trep-engine.scm:426 msgid "Use reversing option specified in global preference." -msgstr "" +msgstr "Gunakan opsi pembalikan yang ditetapkan dalam preferensi global." #: gnucash/report/trep-engine.scm:430 msgid "Don't change any displayed amounts." -msgstr "" +msgstr "Jangan ubah nilai yang ditampilkan." #: gnucash/report/trep-engine.scm:433 msgid "Income and Expense" @@ -29776,34 +29790,37 @@ msgstr "Pendapatan dan Pengeluaran" #: gnucash/report/trep-engine.scm:434 msgid "Reverse amount display for Income and Expense Accounts." -msgstr "" +msgstr "Balik tampilan jumlah untuk Akun Pendapatan dan Pengeluaran." #: gnucash/report/trep-engine.scm:437 -#, fuzzy msgid "Credit Accounts" -msgstr "transfer kredit" +msgstr "Akun Kredit" #: gnucash/report/trep-engine.scm:438 msgid "" "Reverse amount display for Liability, Payable, Equity, Credit Card, and " "Income accounts." msgstr "" +"Balikkan tampilan jumlah untuk akun Liabilitas, Utang, Ekuitas, Kartu " +"Kredit, dan Pendapatan." #: gnucash/report/trep-engine.scm:540 msgid "Convert all transactions into a common currency." -msgstr "" +msgstr "Konversikan semua transaksi ke mata uang umum." #: gnucash/report/trep-engine.scm:559 msgid "Formats the table suitable for cut & paste exporting with extra cells." msgstr "" +"Format tabel sehingga sesuai untuk mengekspor potong & tempel dengan sel " +"ekstra." #: gnucash/report/trep-engine.scm:571 msgid "If no transactions matched" -msgstr "" +msgstr "Jika tak ada transaksi yang cocok" #: gnucash/report/trep-engine.scm:572 msgid "Display summary if no transactions were matched." -msgstr "" +msgstr "Tampilkan ikhtisar jika tak ada transaksi yang cocok." #: gnucash/report/trep-engine.scm:585 msgid "" @@ -29822,6 +29839,11 @@ msgid "" "match both Expenses:Car and Expenses:Flights. Use a period (.) to match a " "single character e.g. '20../.' will match 'Travel 2017/1 London'. " msgstr "" +"Secara baku, filter akun hanya akan melakukan pencarian substring saja. " +"Setel ini ke \"true\" untuk mengaktifkan kemampuan ekspresi reguler POSIX " +"secara penuh. 'Mobil|Pesawat' akan cocok dengan Pengeluaran:Mobil dan " +"Pengeluaran:Pesawat. Gunakan tanda titik (.) untuk mencocokkan karakter " +"tunggal, misal '20../.' akan cocok dengan 'Perjalanan 2017/1 Jakarta'. " #: gnucash/report/trep-engine.scm:603 msgid "" @@ -29842,25 +29864,31 @@ msgid "" "true to enable full POSIX regular expressions capabilities. '#work|#family' " "will match both tags within description, notes or memo. " msgstr "" +"Secara baku, filter transaksi hanya akan melakukan pencarian substring saja. " +"Setel ini ke \"true\" untuk mengaktifkan kemampuan ekspresi reguler POSIX " +"secara penuh. '#kerja|#keluarga' akan cocok dengan kedua tag di dalam " +"deksripsi, catatan, atau memo. " #: gnucash/report/trep-engine.scm:621 msgid "If this option is selected, transactions matching filter are excluded." msgstr "" +"Jika opsi ini dipilih, transaksi yang cocok dengan filter akan dikecualikan." #: gnucash/report/trep-engine.scm:628 msgid "" "If this option is selected, transactions matching filter is not case " "sensitive." msgstr "" +"Jika opsi ini dipilih, transaksi yang cocok dengan filter tidak membedakan " +"huruf besar/kecil." #: gnucash/report/trep-engine.scm:634 -#, fuzzy msgid "Filter by reconcile status." -msgstr "Menyaring pesan yang dipilih dari pesan-pesan sampah" +msgstr "Filter berdasar status rekonsiliasi." #: gnucash/report/trep-engine.scm:641 msgid "How to handle void transactions." -msgstr "" +msgstr "Bagaimana menangani transaksi yang batal." #: gnucash/report/trep-engine.scm:648 msgid "" @@ -29869,189 +29897,172 @@ msgid "" "expense accounts to equity, and must usually be excluded from periodic " "reporting." msgstr "" +"Secara baku, kebanyakan pengguna tidak diperbolehkan menyertakan transaksi " +"penutupan di dalam laporan transaksi. Transaksi penutupan adalah transfer " +"dari akun pendapatan dan pengeluran ke akun ekuitas, dan biasanya harus " +"dikeluarkan dari laporan periodik." #: gnucash/report/trep-engine.scm:674 -#, fuzzy msgid "Filter on these accounts." -msgstr "Penyaring" +msgstr "Filter pada akun tersebut." #: gnucash/report/trep-engine.scm:682 -#, fuzzy msgid "Filter account." -msgstr "Penyaring" +msgstr "Filter akun." #: gnucash/report/trep-engine.scm:775 -#, fuzzy msgid "Sort by this criterion first." -msgstr "Urutkan item yang baru-baru ini digunakan terlebih dahulu" +msgstr "Urutkan berdasar kriteria ini terlebih dahulu." #: gnucash/report/trep-engine.scm:786 msgid "Show the full account name for subtotals and subheadings?" -msgstr "" +msgstr "Tampilkan nama lengkap akun untuk subtotal dan subtajuk?" #: gnucash/report/trep-engine.scm:793 msgid "Show the account code for subtotals and subheadings?" -msgstr "" +msgstr "Tampilkan kode akun untuk subtotal dan subtajuk?" #: gnucash/report/trep-engine.scm:800 msgid "Show the account description for subheadings?" -msgstr "" +msgstr "Tampilkan deskripsi akun untuk subtajuk?" #: gnucash/report/trep-engine.scm:807 msgid "Show the informal headers for debit/credit accounts?" -msgstr "" +msgstr "Tampilkan kepala informal untuk akun debit/kredit?" #: gnucash/report/trep-engine.scm:814 msgid "Add indenting columns with grouping and subtotals?" -msgstr "" +msgstr "Tambahkan kolom indentasi dengan pengelompokan dan subtotal?" #: gnucash/report/trep-engine.scm:821 msgid "Show subtotals only, hiding transactional detail?" -msgstr "" +msgstr "Tampilkan hanya subtotal, dan sembunyikan detail transaksi?" #: gnucash/report/trep-engine.scm:828 -#, fuzzy msgid "Subtotal according to the primary key?" -msgstr "Tanda tangan pengikatan kunci primer" +msgstr "Subtotal menurut kunci primer?" #: gnucash/report/trep-engine.scm:837 gnucash/report/trep-engine.scm:876 -#, fuzzy msgid "Do a date subtotal." -msgstr "subtotal" +msgstr "Lakukan subtotal tanggal." #: gnucash/report/trep-engine.scm:847 -#, fuzzy msgid "Order of primary sorting." -msgstr "Cara mengurutkan berkas" +msgstr "Urutan penyortiran utama." #: gnucash/report/trep-engine.scm:856 -#, fuzzy msgid "Sort by this criterion second." -msgstr "Urut berdasarkan" +msgstr "Urutkan berdasar kriteria ini yang kedua." #: gnucash/report/trep-engine.scm:867 msgid "Subtotal according to the secondary key?" -msgstr "" +msgstr "Subtotal menurut kunci sekunder?" #: gnucash/report/trep-engine.scm:886 -#, fuzzy msgid "Order of Secondary sorting." -msgstr "Sekunder" +msgstr "Urutan penyortiran sekunder." #: gnucash/report/trep-engine.scm:941 -#, fuzzy msgid "Display the reconciled date?" -msgstr "status transaksi: rekonsiliasi" +msgstr "Tampilkan tanggal rekonsiliasi?" #: gnucash/report/trep-engine.scm:946 -#, fuzzy msgid "Display the notes if the memo is unavailable?" -msgstr "Tampilkan catatan di peta" +msgstr "Tampilkan catatan jika memo tak tersedia?" #: gnucash/report/trep-engine.scm:948 gnucash/report/trep-engine.scm:951 -#, fuzzy msgid "Display the full account name?" -msgstr "nama akun" +msgstr "Tampilkan nama lengkap akun?" #: gnucash/report/trep-engine.scm:949 -#, fuzzy msgid "Display the account code?" -msgstr "kode akun" +msgstr "Tampilkan kode akun?" #: gnucash/report/trep-engine.scm:952 -#, fuzzy msgid "Display the other account code?" -msgstr "kode akun" +msgstr "Tampilkan kode akun lain?" #: gnucash/report/trep-engine.scm:954 -#, fuzzy msgid "Display the transaction linked document" -msgstr "jumlah" +msgstr "Tampilkan dokumen tertaut transaksi" #: gnucash/report/trep-engine.scm:957 -#, fuzzy msgid "Display a subtotal summary table." -msgstr "Ringkasan Tabel Akses" +msgstr "Tampilkan tabel ikhtisar subtotal." #: gnucash/report/trep-engine.scm:965 -#, fuzzy msgid "Display the trans number?" -msgstr "Tampilkan nomor versi" +msgstr "Tampilkan nomor trans?" #: gnucash/report/trep-engine.scm:982 -#, fuzzy msgid "Display the account name?" -msgstr "_Nama Tampilan" +msgstr "Tampilkan nama akun?" #: gnucash/report/trep-engine.scm:992 msgid "" "Display the other account name? (if this is a split transaction, this " "parameter is guessed)." msgstr "" +"Tampilkan nama akun lain? (jika ini adalah transaksi split, parameter ini " +"akan ditebak)." #: gnucash/report/trep-engine.scm:1001 msgid "Amount of detail to display per transaction." -msgstr "" +msgstr "Jimlah detail untuk ditampilkan per transaksi." #: gnucash/report/trep-engine.scm:1004 -#, fuzzy msgid "Multi-Line" -msgstr "Perataan yang disukai bagi kalimat, bagi teks multi baris" +msgstr "Multi-Baris" #: gnucash/report/trep-engine.scm:1005 msgid "Display all splits in a transaction on a separate line." -msgstr "" +msgstr "Tampilkan semua split di dalam transaksi pada baris yang terpisah." #: gnucash/report/trep-engine.scm:1008 msgid "" "Display one line per transaction, merging multiple splits where required." msgstr "" +"Tampilkan satu baris per transaksi, gabungkan beberapa split jika diperlukan." #: gnucash/report/trep-engine.scm:1020 -#, fuzzy msgid "No amount display." -msgstr "jumlah" +msgstr "Tak ada tampilan jumlah." #: gnucash/report/trep-engine.scm:1031 -#, fuzzy msgid "Enable hyperlinks in amounts." -msgstr "Akti_fkan" +msgstr "Aktifkan tautan pada jumlah." #: gnucash/report/trep-engine.scm:1036 msgid "Reverse amount display for certain account types." -msgstr "" +msgstr "Balik tampilan jumlah untuk tipe akun tertentu." #: gnucash/report/trep-engine.scm:1179 -#, fuzzy msgid "Num/T-Num" -msgstr "No." +msgstr "Num/T-Num" #: gnucash/report/trep-engine.scm:1228 -#, fuzzy msgid "Transfer from/to" -msgstr "Transfer berkas Bluetooth dari %s" +msgstr "Transfer dari/ke" #. Translators: Balance b/f stands for "Balance #. brought forward". #: gnucash/report/trep-engine.scm:1429 -#, fuzzy msgid "Balance b/f" -msgstr "saldo pembukaan" +msgstr "Saldo b/f" #: gnucash/report/trep-engine.scm:1596 -#, fuzzy msgid "Split Transaction" -msgstr "transaksi" +msgstr "Transaksi Split" #: gnucash/report/trep-engine.scm:1844 msgid "CSV disabled for double column amounts" -msgstr "" +msgstr "CSV dinonaktifkan untuk jumlah dua kolom" #. Translators: Both ~a's are dates #: gnucash/report/trep-engine.scm:2236 -#, fuzzy, scheme-format +#, scheme-format msgid "From ~a to ~a" -msgstr "_Dari:" +msgstr "Dari ~a ke ~a" #: libgnucash/app-utils/app-utils.scm:259 msgid "Company Address" @@ -30082,9 +30093,8 @@ msgid "Company Contact Person" msgstr "Narahubung Perusahaan" #: libgnucash/app-utils/app-utils.scm:266 -#, fuzzy msgid "Fancy Date Format" -msgstr "format tanggal" +msgstr "Format Tanggal Lengkap" #: libgnucash/app-utils/app-utils.scm:267 msgid "custom" @@ -30096,7 +30106,7 @@ msgstr "Nomor Pajak" #: libgnucash/app-utils/business-prefs.scm:24 msgid "Counters" -msgstr "" +msgstr "Pencacah" #: libgnucash/app-utils/business-prefs.scm:31 msgid "Customer number format" @@ -30111,73 +30121,84 @@ msgid "" "The format string to use for generating customer numbers. This is a printf-" "style format string." msgstr "" +"Format string yang digunakan untuk membuat nomor pelanggan. Ini adalah " +"format string dengan gaya printf." #: libgnucash/app-utils/business-prefs.scm:34 msgid "" "The previous customer number generated. This number will be incremented to " "generate the next customer number." msgstr "" +"Nomor pelanggan sebelumnya yang telah dibuat. Nomor ini akan ditambah untuk " +"membuat nomor pelanggan berikutnya." #: libgnucash/app-utils/business-prefs.scm:35 -#, fuzzy msgid "Employee number format" -msgstr "karyawan" +msgstr "Format nomor pegawai" #: libgnucash/app-utils/business-prefs.scm:36 -#, fuzzy msgid "Employee number" -msgstr "karyawan" +msgstr "Nomor pegawai" #: libgnucash/app-utils/business-prefs.scm:37 msgid "" "The format string to use for generating employee numbers. This is a printf-" "style format string." msgstr "" +"Format string yang digunakan untuk membuat nomor pegawai. Ini adalah format " +"string dengan gaya printf." #: libgnucash/app-utils/business-prefs.scm:38 msgid "" "The previous employee number generated. This number will be incremented to " "generate the next employee number." msgstr "" +"Nomor pegawai sebelumnya yang telah dibuat. Nomor ini akan ditambah untuk " +"membuat nomor pegawai berikutnya." #: libgnucash/app-utils/business-prefs.scm:39 -#, fuzzy msgid "Invoice number format" -msgstr "Format angka" +msgstr "Format nomor faktur" #: libgnucash/app-utils/business-prefs.scm:41 msgid "" "The format string to use for generating invoice numbers. This is a printf-" "style format string." msgstr "" +"Format string yang digunakan untuk membuat nomor faktur. Ini adalah format " +"string dengan gaya printf." #: libgnucash/app-utils/business-prefs.scm:42 msgid "" "The previous invoice number generated. This number will be incremented to " "generate the next invoice number." msgstr "" +"Nomor faktur sebelumnya yang telah dibuat. Nomor ini akan ditambah untuk " +"membuat nomor faktur berikutnya." #: libgnucash/app-utils/business-prefs.scm:43 -#, fuzzy msgid "Bill number format" -msgstr "Format angka" +msgstr "Format nomor tagihan" #: libgnucash/app-utils/business-prefs.scm:44 -#, fuzzy msgid "Bill number" -msgstr "tagihan" +msgstr "Nomor tagihan" #: libgnucash/app-utils/business-prefs.scm:45 msgid "" "The format string to use for generating bill numbers. This is a printf-style " "format string." msgstr "" +"Format string yang digunakan untuk membuat nomor tagihan. Ini adalah format " +"string dengan gaya printf." #: libgnucash/app-utils/business-prefs.scm:46 msgid "" "The previous bill number generated. This number will be incremented to " "generate the next bill number." msgstr "" +"Nomor tagihan sebelumnya yang telah dibuat. Nomor ini akan ditambah untuk " +"membuat nomor tagihan berikutnya." #: libgnucash/app-utils/business-prefs.scm:47 msgid "Expense voucher number format" @@ -30200,8 +30221,8 @@ msgid "" "The previous expense voucher number generated. This number will be " "incremented to generate the next voucher number." msgstr "" -"Nomor voucer pengeluaran sebelumnya telah dibuat. Nomor ini akan ditambah " -"untuk membuat nomor voucer berikutnya." +"Nomor voucer pengeluaran sebelumnya yang telah dibuat. Nomor ini akan " +"ditambah untuk membuat nomor voucer berikutnya." #: libgnucash/app-utils/business-prefs.scm:51 msgid "Job number format" @@ -30224,7 +30245,7 @@ msgid "" "The previous job number generated. This number will be incremented to " "generate the next job number." msgstr "" -"Nomor pekerjaan sebelumnya telah dibuat. Nomor ini akan ditambah untuk " +"Nomor pekerjaan sebelumnya yang telah dibuat. Nomor ini akan ditambah untuk " "membuat nomor pekerjaan berikutnya." #: libgnucash/app-utils/business-prefs.scm:55 @@ -30248,8 +30269,8 @@ msgid "" "The previous order number generated. This number will be incremented to " "generate the next order number." msgstr "" -"Nomor pesanan sebelumnya telah dibuat. Nomor ini akan ditambah untuk membuat " -"nomor order berikutnya." +"Nomor pesanan sebelumnya yang telah dibuat. Nomor ini akan ditambah untuk " +"membuat nomor order berikutnya." #: libgnucash/app-utils/business-prefs.scm:59 msgid "Vendor number format" @@ -30272,8 +30293,8 @@ msgid "" "The previous vendor number generated. This number will be incremented to " "generate the next vendor number." msgstr "" -"Nomor vendor sebelumnya telah dibuat. Nomor ini akan ditambah untuk membuat " -"nomor vendor berikutnya." +"Nomor vendor sebelumnya yang telah dibuat. Nomor ini akan ditambah untuk " +"membuat nomor vendor berikutnya." #: libgnucash/app-utils/business-prefs.scm:72 msgid "The name of your business." @@ -30305,27 +30326,27 @@ msgstr "Alamat URL situs web Anda." #: libgnucash/app-utils/business-prefs.scm:107 msgid "The ID for your company (eg 'Tax-ID: 00-000000)." -msgstr "Nomor ID perusahaan Anda (misal 'ID-Pajak: 00-000000)." +msgstr "Nomor ID perusahaan Anda (misal 'ID-Pajak: 00-000000')." #: libgnucash/app-utils/business-prefs.scm:112 msgid "Default Customer TaxTable" -msgstr "Tabel Pajak Pelanggan Bawaan" +msgstr "Tabel Pajak Baku untuk Pelanggan" #: libgnucash/app-utils/business-prefs.scm:113 msgid "The default tax table to apply to customers." -msgstr "Tabel pajak bawaan untuk diterapkan ke pelanggan." +msgstr "Tabel pajak baku untuk diterapkan ke pelanggan." #: libgnucash/app-utils/business-prefs.scm:118 msgid "Default Vendor TaxTable" -msgstr "Tabel Pajak Vendor Bawaan" +msgstr "Tabel Pajak Baku untuk Vendor" #: libgnucash/app-utils/business-prefs.scm:119 msgid "The default tax table to apply to vendors." -msgstr "Tabel pajak bawaan untuk diterapkan ke vendor." +msgstr "Tabel pajak baku untuk diterapkan ke vendor." #: libgnucash/app-utils/business-prefs.scm:125 msgid "The default date format used for fancy printed dates." -msgstr "" +msgstr "Format tanggal baku yang digunakan untuk mencetak tanggal lengkap." #: libgnucash/app-utils/business-prefs.scm:133 msgid "" @@ -30334,6 +30355,10 @@ msgid "" "account register windows. If zero, all transactions can be edited and none " "are read-only." msgstr "" +"Pilih jumlah hari di mana setelahnya, transaksi akan menjadi hanya-baca dan " +"tidak dapat disunting lagi. Ambang batas ini ditandai dengan garis merah di " +"jendela register akun. Jika nol, semua transaksi dapat disunting dan tidak " +"ada yang hanya-baca." #: libgnucash/app-utils/business-prefs.scm:144 msgid "" @@ -30342,20 +30367,26 @@ msgid "" "register. Has corresponding effect on business features, reporting and " "imports/exports." msgstr "" +"Centang untuk memiliki bidang tindakan yang terpisah yang digunakan dalam " +"register untuk bidang 'Num' sebagai pengganti nomor transaksi; nomor " +"transaksi ditampilkan sebagai 'T-Num' pada baris kedua register. Berpengaruh " +"pada fitur-fitur bisnis, pelaporan dan impor/ekspor." #: libgnucash/app-utils/business-prefs.scm:150 msgid "" "Check to have trading accounts used for transactions involving more than one " "currency or commodity." msgstr "" +"Centang untuk memiliki akun perdagangan yang digunakan untuk transaksi yang " +"melibatkan lebih dari satu mata uang atau komoditas." #: libgnucash/app-utils/business-prefs.scm:158 msgid "Budget to be used when none has been otherwise specified." -msgstr "" +msgstr "Anggaran yang akan digunakan ketika tidak ada yang ditentukan." #: libgnucash/app-utils/business-prefs.scm:164 msgid "The electronic tax number of your business" -msgstr "" +msgstr "Nomor pajak elektronik bisnis Anda" #: libgnucash/app-utils/date-utilities.scm:425 #, scheme-format @@ -30364,7 +30395,8 @@ msgid "" "saved by a later version of GnuCash. Defaulting to today." msgstr "" "Mencoba mencari simbol tanggal '~a' yang tak diketahui. Laporan ini mungkin " -"disimpan dengan GnuCash versi yang lebih baru. Dikembalikan ke hari ini." +"disimpan dengan GnuCash versi yang lebih baru. Dikembalikan secara baku ke " +"hari ini." #: libgnucash/app-utils/date-utilities.scm:803 msgid "First day of the current calendar year." @@ -30573,21 +30605,19 @@ msgstr "Satu Tahun ke Depan." #: libgnucash/app-utils/gnc-exp-parser.c:622 msgid "Illegal variable in expression." -msgstr "" +msgstr "Variabel ilegal pada ekspresi." #: libgnucash/app-utils/gnc-exp-parser.c:633 msgid "Unbalanced parenthesis" msgstr "Tanda petik tak lengkap" #: libgnucash/app-utils/gnc-exp-parser.c:635 -#, fuzzy msgid "Stack overflow" -msgstr "Kesalahan overflow" +msgstr "Stack overflow" #: libgnucash/app-utils/gnc-exp-parser.c:637 -#, fuzzy msgid "Stack underflow" -msgstr "Kesalahan underflow" +msgstr "Stack underflow" #: libgnucash/app-utils/gnc-exp-parser.c:639 msgid "Undefined character" @@ -30619,18 +30649,36 @@ msgstr "Akun tak diketahui untuk guid [%s], membatalkan pembuatan SX [%s]." #: libgnucash/app-utils/gnc-sx-instance-model.c:1043 #, c-format msgid "Error parsing SX [%s] key [%s]=formula [%s] at [%s]: %s." -msgstr "" +msgstr "Galat saat mengurai SX [%s] kunci [%s]=rumus [%s] pada [%s]: %s." #: libgnucash/app-utils/gnc-sx-instance-model.c:1097 #: libgnucash/app-utils/gnc-sx-instance-model.c:1758 #, c-format msgid "Error %d in SX [%s] final gnc_numeric value, using 0 instead." -msgstr "" +msgstr "Galat %d pada SX [%s] nilai gnc_numerik final, menggunakan nilai 0." #: libgnucash/app-utils/gnc-sx-instance-model.c:1767 #, c-format msgid "No exchange rate available in SX [%s] for %s -> %s, value is zero." msgstr "" +"Tak ada nilai tukar yang tersedia pada SX [%s] untuk %s -> %s, nilainya nol." + +#: libgnucash/app-utils/gnc-ui-balances.c:407 +msgid "Account is already at Auto-Clear Balance." +msgstr "" + +#: libgnucash/app-utils/gnc-ui-balances.c:451 +msgid "Too many uncleared splits" +msgstr "" + +#: libgnucash/app-utils/gnc-ui-balances.c:467 +msgid "The selected amount cannot be cleared." +msgstr "Jumlah yang dipilih tidak bisa diklirkan." + +#: libgnucash/app-utils/gnc-ui-balances.c:473 +msgid "Cannot uniquely clear splits. Found multiple possibilities." +msgstr "" +"Tak dapat membersihkan split secara unik. Ditemukan beberapa kemungkinan." #. Translators: This and the following strings appear on #. * the account tab if the Tax Info column is displayed, @@ -30641,110 +30689,104 @@ msgstr "" #. * account generally corresponds to a specific line number #. * on a paper form and each form has a unique #. * identification (e.g., Form 1040, Schedule A). -#: libgnucash/app-utils/gnc-ui-util.c:625 +#: libgnucash/app-utils/gnc-ui-util.c:634 msgid "Tax-related but has no tax code" -msgstr "" +msgstr "Terkait-pajak tetapi tidak memiliki kode pajak" -#: libgnucash/app-utils/gnc-ui-util.c:639 -#, fuzzy +#: libgnucash/app-utils/gnc-ui-util.c:648 msgid "Tax entity type not specified" -msgstr "<%s> berisi string tidak dalam jenis tanda yang ditentukan" +msgstr "Tipe entitas pajak tak ditentukan" -#: libgnucash/app-utils/gnc-ui-util.c:694 +#: libgnucash/app-utils/gnc-ui-util.c:703 #, c-format msgid "Tax type %s: invalid code %s for account type" -msgstr "" +msgstr "Tipe pajak %s: kode tidak valid %s untuk tipe akun" -#: libgnucash/app-utils/gnc-ui-util.c:698 +#: libgnucash/app-utils/gnc-ui-util.c:707 #, c-format msgid "Not tax-related; tax type %s: invalid code %s for account type" msgstr "" +"Bukan terkait-pajak; tipe pajak %s: kode tidak valid %s untuk tipe akun" -#: libgnucash/app-utils/gnc-ui-util.c:711 -#, fuzzy, c-format +#: libgnucash/app-utils/gnc-ui-util.c:720 +#, c-format msgid "Invalid code %s for tax type %s" -msgstr "Tipe atribut tidak valid \"%s\"" +msgstr "Kode tidak valid %s untuk tipe pajak %s" -#: libgnucash/app-utils/gnc-ui-util.c:715 +#: libgnucash/app-utils/gnc-ui-util.c:724 #, c-format msgid "Not tax-related; invalid code %s for tax type %s" -msgstr "" +msgstr "Bukan terkait-pajak; kode tidak valid %s untuk tipe pajak %s" -#: libgnucash/app-utils/gnc-ui-util.c:733 +#: libgnucash/app-utils/gnc-ui-util.c:742 #, c-format msgid "No form: code %s, tax type %s" -msgstr "" +msgstr "Tak ada bentuk: kode %s, tipe pajak %s" -#: libgnucash/app-utils/gnc-ui-util.c:737 +#: libgnucash/app-utils/gnc-ui-util.c:746 #, c-format msgid "Not tax-related; no form: code %s, tax type %s" -msgstr "" +msgstr "Bukan terkait-pajak; tak ada bentuk: kode %s, tipe pajak %s" -#: libgnucash/app-utils/gnc-ui-util.c:754 -#: libgnucash/app-utils/gnc-ui-util.c:769 +#: libgnucash/app-utils/gnc-ui-util.c:763 +#: libgnucash/app-utils/gnc-ui-util.c:778 #, c-format msgid "No description: form %s, code %s, tax type %s" -msgstr "" +msgstr "Tak ada deskripsi: bentuk %s, kode %s, tipe pajak %s" -#: libgnucash/app-utils/gnc-ui-util.c:758 -#: libgnucash/app-utils/gnc-ui-util.c:773 +#: libgnucash/app-utils/gnc-ui-util.c:767 +#: libgnucash/app-utils/gnc-ui-util.c:782 #, c-format msgid "Not tax-related; no description: form %s, code %s, tax type %s" msgstr "" +"Bukan terkait-pajak; tak ada deskripsi: bentuk %s, kode %s, tipe pajak %s" -#: libgnucash/app-utils/gnc-ui-util.c:796 +#: libgnucash/app-utils/gnc-ui-util.c:805 #, c-format msgid "Not tax-related; %s%s: %s (code %s, tax type %s)" -msgstr "" +msgstr "Bukan terkait-pajak; %s%s: %s (kode %s, tipe pajak %s)" -#: libgnucash/app-utils/gnc-ui-util.c:843 +#: libgnucash/app-utils/gnc-ui-util.c:852 #, c-format msgid "(Tax-related subaccounts: %d)" -msgstr "" +msgstr "(Sub-akun terkait-pajak: %d)" -#: libgnucash/app-utils/gnc-ui-util.c:863 -#, fuzzy +#: libgnucash/app-utils/gnc-ui-util.c:872 msgctxt "Reconciled flag 'not cleared'" msgid "n" msgstr "n" -#: libgnucash/app-utils/gnc-ui-util.c:865 -#, fuzzy +#: libgnucash/app-utils/gnc-ui-util.c:874 msgctxt "Reconciled flag 'cleared'" msgid "c" msgstr "c" -#: libgnucash/app-utils/gnc-ui-util.c:867 -#, fuzzy +#: libgnucash/app-utils/gnc-ui-util.c:876 msgctxt "Reconciled flag 'reconciled'" msgid "y" msgstr "y" -#: libgnucash/app-utils/gnc-ui-util.c:869 -#, fuzzy +#: libgnucash/app-utils/gnc-ui-util.c:878 msgctxt "Reconciled flag 'frozen'" msgid "f" -msgstr "J" +msgstr "f" -#: libgnucash/app-utils/gnc-ui-util.c:871 -#, fuzzy +#: libgnucash/app-utils/gnc-ui-util.c:880 msgctxt "Reconciled flag 'void'" msgid "v" -msgstr "V" +msgstr "v" -#: libgnucash/app-utils/gnc-ui-util.c:911 -#, fuzzy +#: libgnucash/app-utils/gnc-ui-util.c:920 msgctxt "Document Link flag for 'web'" msgid "w" -msgstr "R" +msgstr "w" -#: libgnucash/app-utils/gnc-ui-util.c:913 -#, fuzzy +#: libgnucash/app-utils/gnc-ui-util.c:922 msgctxt "Document Link flag for 'file'" msgid "f" -msgstr "J" +msgstr "f" -#: libgnucash/app-utils/gnc-ui-util.c:942 +#: libgnucash/app-utils/gnc-ui-util.c:951 msgid "Opening Balances" msgstr "Saldo Awal" @@ -30757,8 +30799,10 @@ msgid "" "This report was saved using a later version of GnuCash. One of the newer ~a " "options '~a' is not available, fallback to the option '~a'." msgstr "" +"Laporan ini disimpan menggunakan versi GnuCash yang lebih baru. Salah satu " +"opsi ~a yang lebih baru '~a' tak tersedia, kembali mundur ke opsi '~a'." -#: libgnucash/app-utils/option-util.c:1696 +#: libgnucash/app-utils/option-util.c:1663 #, c-format msgid "" "There is a problem with option %s:%s.\n" @@ -30767,20 +30811,18 @@ msgstr "" "Ada masalah dengan opsi %s:%s.\n" "%s" -#: libgnucash/app-utils/option-util.c:1697 -#, fuzzy +#: libgnucash/app-utils/option-util.c:1664 msgid "Invalid option value" -msgstr "Nilai tak valid." +msgstr "Nilai opsi tak valid" #. Translators: this string refers to a file name that gets renamed #: libgnucash/core-utils/gnc-filepath-utils.cpp:647 -#, fuzzy msgid "Renamed to:" -msgstr "Dari daftar, pilih snapshot yang akan diubah nama." +msgstr "Diganti nama ke:" #: libgnucash/core-utils/gnc-filepath-utils.cpp:672 msgid "Notice" -msgstr "Perhatian" +msgstr "Pemberitahuan" #: libgnucash/core-utils/gnc-filepath-utils.cpp:677 msgid "Your gnucash metadata has been migrated." @@ -30802,35 +30844,36 @@ msgid "" "If you no longer intend to run {1} 2.6.x or older on this system you can " "safely remove the old directory." msgstr "" +"Jika Anda tidak akan menjalankan {1} 2.6.x atau lebih lama pada sistem ini, " +"Anda bisa dengan aman menghapus direktori lama." #: libgnucash/core-utils/gnc-filepath-utils.cpp:690 -#, fuzzy msgid "In addition:" -msgstr "Penjumlahan" +msgstr "Tambahan:" #: libgnucash/core-utils/gnc-filepath-utils.cpp:696 msgid "The following file has been copied to {1} instead:" msgid_plural "The following files have been copied to {1} instead:" -msgstr[0] "" -msgstr[1] "" +msgstr[0] "Berkas berikut telah disalin ke {1}:" +msgstr[1] "Berkas berikut telah disalin ke {1}:" #: libgnucash/core-utils/gnc-filepath-utils.cpp:700 msgid "The following file in {1} has been renamed:" -msgstr "" +msgstr "Berkas pada {1} berikut telah dinamai ulang:" #: libgnucash/core-utils/gnc-filepath-utils.cpp:710 msgid "The following file has become obsolete and will be ignored:" msgid_plural "The following files have become obsolete and will be ignored:" -msgstr[0] "" -msgstr[1] "" +msgstr[0] "Berkas berikut telah usang dan akan diabaikan:" +msgstr[1] "Berkas berikut telah usang dan akan diabaikan:" #: libgnucash/core-utils/gnc-filepath-utils.cpp:720 msgid "The following file could not be moved to {1}:" msgid_plural "The following files could not be moved to {1}:" -msgstr[0] "" -msgstr[1] "" +msgstr[0] "Berkas berikut tak dapat dipindahkan ke {1}:" +msgstr[1] "Berkas berikut tak dapat dipindahkan ke {1}:" -#: libgnucash/engine/Account.cpp:255 +#: libgnucash/engine/Account.cpp:256 #, c-format msgid "" "The separator character \"%s\" is used in one or more account names.\n" @@ -30841,52 +30884,58 @@ msgid "" "Below you will find the list of invalid account names:\n" "%s" msgstr "" +"Karakter pemisah \"%s\" digunakan dalam satu atau lebih nama akun.\n" +"\n" +"Ini akan menyebabkan tingkah laku yang tak diharapkan. Ubah nama akun atau " +"pilih karakter pemisah yang lain.\n" +"\n" +"Di bawah ini adalah daftar nama akun yang tak valid:\n" +"%s" -#: libgnucash/engine/Account.cpp:4317 +#: libgnucash/engine/Account.cpp:4364 msgid "Credit Card" msgstr "Kartu Kredit" -#: libgnucash/engine/Account.cpp:4319 +#: libgnucash/engine/Account.cpp:4366 msgid "Stock" msgstr "Saham" -#: libgnucash/engine/Account.cpp:4320 +#: libgnucash/engine/Account.cpp:4367 msgid "Mutual Fund" msgstr "Reksadana" -#: libgnucash/engine/Account.cpp:4325 +#: libgnucash/engine/Account.cpp:4372 msgid "A/Receivable" msgstr "A/Piutang" -#: libgnucash/engine/Account.cpp:4326 +#: libgnucash/engine/Account.cpp:4373 msgid "A/Payable" msgstr "A/Utang" -#: libgnucash/engine/Account.cpp:4327 -#, fuzzy +#: libgnucash/engine/Account.cpp:4374 msgid "Root" msgstr "Akar" -#: libgnucash/engine/Account.cpp:4769 -#, fuzzy +#: libgnucash/engine/Account.cpp:4816 msgid "Orphaned Gains" -msgstr "laba modal" +msgstr "Keuntungan Terlantar" -#: libgnucash/engine/Account.cpp:4783 libgnucash/engine/cap-gains.c:806 +#: libgnucash/engine/Account.cpp:4830 libgnucash/engine/cap-gains.c:806 #: libgnucash/engine/cap-gains.c:811 libgnucash/engine/cap-gains.c:812 msgid "Realized Gain/Loss" msgstr "Keuntungan/Kerugian Direalisasikan" -#: libgnucash/engine/Account.cpp:4785 +#: libgnucash/engine/Account.cpp:4832 msgid "" "Realized Gains or Losses from Commodity or Trading Accounts that haven't " "been recorded elsewhere." msgstr "" +"Keuntungan atau Kerugian yang direalisasikan dari Komoditas atau Akun " +"Perdagangan yang belum dicatat dimanapun." #: libgnucash/engine/gnc-commodity.h:113 -#, fuzzy msgid "All non-currency" -msgstr "mata uang" +msgstr "Semua bukan-mata uang" #: libgnucash/engine/gnc-date.cpp:79 msgid "%B %#d, %Y" @@ -30919,27 +30968,34 @@ msgstr "m-d" #: libgnucash/engine/gnc-datetime.cpp:554 msgid "Unknown date format specifier passed as argument." -msgstr "" +msgstr "Penentu format tanggal yang tak diketahui diteruskan sebagai argumen." #: libgnucash/engine/gnc-datetime.cpp:559 msgid "Value can't be parsed into a date using the selected date format." msgstr "" +"Nilai tak dapat diurai menjadi tanggal menggunakan format tanggal yang " +"dipilih." #: libgnucash/engine/gnc-datetime.cpp:564 msgid "Value appears to contain a year while the selected format forbids this." msgstr "" +"Nilai sepertinya berisi sebuah tahun sedangkan format yang dipilih melarang " +"hal ini." -#: libgnucash/engine/gnc-features.c:118 +#: libgnucash/engine/gnc-features.c:119 msgid "" "This Dataset contains features not supported by this version of GnuCash. You " "must use a newer version of GnuCash in order to support the following " "features:" msgstr "" +"Set data berikut berisi fitur-fitur yang tak didukung oleh GnuCash versi " +"ini. Anda harus menggunakan GnuCash versi yang lebih baru agar mendukung " +"fitur-fitur berikut:" #: libgnucash/engine/gncInvoice.c:1696 #, fuzzy msgid "Extra to Charge Card" -msgstr "Kartu" +msgstr "Ekstra untuk Mengisi Kartu" #: libgnucash/engine/gncInvoice.c:1735 msgid "Generated from an invoice. Try unposting the invoice." @@ -30950,93 +31006,81 @@ msgid " (posted)" msgstr " (dipos)" #: libgnucash/engine/gncOrder.c:550 -#, fuzzy msgid " (closed)" -msgstr "Stream telah ditutup" +msgstr " (ditutup)" #: libgnucash/engine/gncOwner.c:1015 -#, fuzzy msgid "Offset between documents: " -msgstr "Ofset" +msgstr "Ofset antar dokumen: " #: libgnucash/engine/gncOwner.c:1127 -#, fuzzy msgid "Lot Link" -msgstr "Lot" +msgstr "Tautan Lot" #: libgnucash/engine/policy.c:52 -#, fuzzy msgid "First In, First Out" -msgstr "_Depan:" +msgstr "Masuk Pertama, Keluar Pertama" #: libgnucash/engine/policy.c:53 msgid "Use oldest lots first." -msgstr "" +msgstr "Gunakan lot paling lama terlebih dahulu." #: libgnucash/engine/policy.c:55 -#, fuzzy msgid "Last In, First Out" -msgstr "Halaman terakhir akan dicetak pertama, dan seterusnya." +msgstr "Masuk Terakhir, Keluar Pertama" #: libgnucash/engine/policy.c:56 msgid "Use newest lots first." -msgstr "" +msgstr "Gunakan lot paling baru terlebih dahulu." #: libgnucash/engine/policy.c:59 msgid "Average cost of open lots." -msgstr "" +msgstr "Biaya rata-rata lot terbuka." #: libgnucash/engine/policy.c:62 -#, fuzzy msgid "Manually select lots." -msgstr "Memilih subtitel secara manual untuk film yang diputar." +msgstr "Pilih lot secara manual." #: libgnucash/engine/qofbookslots.h:66 -#, fuzzy msgid "Use Trading Accounts" -msgstr "Memakai sandi lain untuk akun yang berbeda." +msgstr "Gunakan Akun Perdagangan" #: libgnucash/engine/qofbookslots.h:67 -#, fuzzy msgid "Currency Accounting" -msgstr "mata uang" +msgstr "Akuntansi Mata Uang" #: libgnucash/engine/qofbookslots.h:68 -#, fuzzy msgid "Book Currency" -msgstr "mata uang" +msgstr "Mata Uang Buku" #: libgnucash/engine/qofbookslots.h:69 -#, fuzzy msgid "Default Gains Policy" -msgstr "Kebijakan:" +msgstr "Kebijakan Keuntungan Baku" #: libgnucash/engine/qofbookslots.h:70 -#, fuzzy msgid "Default Gain or Loss Account" -msgstr "tipe akun: Keuntungan & Kerugian" +msgstr "Akun Keuntungan atau Kerugian Baku" #: libgnucash/engine/qofbookslots.h:71 msgid "Day Threshold for Read-Only Transactions (red line)" -msgstr "" +msgstr "Ambang Hari untuk Transaksi Hanya-Baca (garis merah)" #: libgnucash/engine/qofbookslots.h:72 msgid "Use Split Action Field for Number" -msgstr "Gunakan Bidang Aksi Pemecahan untuk Angka" +msgstr "Gunakan Bidang Aksi Terpisah untuk Nomor" #: libgnucash/engine/qofbookslots.h:74 msgid "Budgeting" -msgstr "" +msgstr "Penganggaran" #: libgnucash/engine/qofbookslots.h:75 -#, fuzzy msgid "Default Budget" -msgstr "Anggaran" +msgstr "Anggaran Baku" #. Translators: " + " is an separator in a list of string-representations of recurrence frequencies #: libgnucash/engine/Recurrence.c:512 msgid " + " -msgstr "" +msgstr " + " #. Translators: %u is the recurrence multiplier, i.e. this #. event should occur every %u'th week. @@ -31045,30 +31089,30 @@ msgstr "" #: libgnucash/engine/Recurrence.c:628 libgnucash/engine/Recurrence.c:717 #: libgnucash/engine/Recurrence.c:748 libgnucash/engine/Recurrence.c:765 #: libgnucash/engine/Recurrence.c:779 libgnucash/engine/Recurrence.c:791 -#, fuzzy, c-format +#, c-format msgid " (x%u)" -msgstr "%X" +msgstr " (x%u)" #. Translators: %s is an already-localized form of the day of the week. #: libgnucash/engine/Recurrence.c:661 -#, fuzzy, c-format +#, c-format msgid "last %s" -msgstr "Terakhir diperbarui: %s" +msgstr "%s terakhir" #. Translators: %s is the string 1st, 2nd, 3rd and so on, and #. * %s is an already-localized form of the day of the week. #: libgnucash/engine/Recurrence.c:675 -#, fuzzy, c-format +#, c-format msgid "%s %s" -msgstr "kait unix: %s%s %s %s %s\n" +msgstr "%s %s" #. Translators: %d is the number of Recurrences in the list. #: libgnucash/engine/Recurrence.c:727 -#, fuzzy, c-format +#, c-format msgid "Unknown, %d-size list." -msgstr "Tipe bus %d tak dikenal" +msgstr "Tak diketahui, daftar berukuran %d." -#: libgnucash/engine/ScrubBusiness.c:547 +#: libgnucash/engine/ScrubBusiness.c:548 msgid "" "Please delete this transaction. Explanation at https://wiki.gnucash.org/wiki/" "Business_Features_Issues#Double_posting" @@ -31076,235 +31120,48 @@ msgstr "" "Silakan menghapus transaksi ini. Penjelasan di https://wiki.gnucash.org/wiki/" "Business_Features_Issues#Double_posting" -#: libgnucash/engine/ScrubBusiness.c:563 +#: libgnucash/engine/ScrubBusiness.c:564 msgid "" "Please delete this transaction. Explanation at https://wiki.gnucash.org/wiki/" "Business_Features_Issues#I_can.27t_delete_a_transaction_of_type_.22I.22_from_the_AR.2FAP_account" msgstr "" +"Silakan menghapus transaksi ini. Penjelasan di https://wiki.gnucash.org/wiki/" +"Business_Features_Issues#I_can.27t_delete_a_transaction_of_type_.22I.22_from_the_AR.2FAP_account" -#: libgnucash/engine/ScrubBusiness.c:614 +#: libgnucash/engine/ScrubBusiness.c:615 #, c-format msgid "Checking business lots in account %s: %u of %u" -msgstr "" +msgstr "Memeriksa lot bisnis di akun %s: %u dari %u" -#: libgnucash/engine/ScrubBusiness.c:664 +#: libgnucash/engine/ScrubBusiness.c:669 #, c-format msgid "Checking business splits in account %s: %u of %u" -msgstr "" +msgstr "Memeriksa split bisnis pada akun %s: %u dari %u" -#: libgnucash/engine/Scrub.c:124 +#: libgnucash/engine/Scrub.c:134 #, c-format msgid "Looking for orphans in account %s: %u of %u" -msgstr "" +msgstr "Mencari yang terlantar di akun %s: %u dari %u" -#: libgnucash/engine/Scrub.c:329 +#: libgnucash/engine/Scrub.c:344 #, c-format msgid "Looking for imbalances in account %s: %u of %u" -msgstr "" +msgstr "Mencari ketidakseimbangan di akun %s: %u dari %u" #: libgnucash/engine/Split.c:1625 -#, fuzzy msgctxt "" "Displayed account code of the other account in a multi-split transaction" msgid "Split" -msgstr "Belah" +msgstr "Split" #: libgnucash/engine/Transaction.c:2707 -#, fuzzy msgid "Voided transaction" -msgstr "status transaksi: dibatalkan" +msgstr "Transaksi dibatalkan" #: libgnucash/engine/Transaction.c:2719 -#, fuzzy msgid "Transaction Voided" -msgstr "status transaksi: dibatalkan" +msgstr "Transaksi Dibatalkan" #: libgnucash/tax/us/txf.scm:98 msgid "No help available." msgstr "Tak ada bantuan yang tersedia." - -#~ msgid "Business Links" -#~ msgstr "Taut Bisnis" - -#~ msgid "_Manage Document Link" -#~ msgstr "_Kelola Taut Dokumen" - -#~ msgid "Date/Time" -#~ msgstr "Tanggal/Waktu" - -#, fuzzy -#~ msgid "One year." -#~ msgstr "Tahun ini" - -#~ msgid "Links" -#~ msgstr "Tautan" - -#, scheme-format -#~ msgid "No transactions were found associated with the ~a." -#~ msgstr "Tak ditemukan transaksi yang berasosiasi dengan ~a." - -#~ msgid "Change a Business Association" -#~ msgstr "Ubah Asosiasi Bisnis" - -#~ msgid "Transaction Associations" -#~ msgstr "Asosiasi Transaksi" - -#~ msgid "Open Association:" -#~ msgstr "Buka Asosiasi:" - -#~ msgid "_Transaction Associations" -#~ msgstr "Asosiasi _Transaksi" - -#~ msgid "Business _Associations" -#~ msgstr "_Asosiasi Bisnis" - -#~ msgid "_Update Association for Invoice" -#~ msgstr "_Perbarui Asosiasi untuk Faktur" - -#~ msgid "_Open Association for Invoice" -#~ msgstr "_Buka Asosiasi untuk Faktur" - -#~ msgid "_Remove Association from Invoice" -#~ msgstr "_Hapus Asosiasi dari Faktur" - -#~ msgid "_Update Association for Bill" -#~ msgstr "_Perbarui Asosiasi untuk Tagihan" - -#~ msgid "_Open Association for Bill" -#~ msgstr "_Buka Asosiasi untuk Tagihan" - -#~ msgid "_Remove Association from Bill" -#~ msgstr "_Hapus Asosiasi dari Tagihan" - -#~ msgid "_Update Association for Voucher" -#~ msgstr "_Perbarui Asosiasi untuk Voucer" - -#~ msgid "_Open Association for Voucher" -#~ msgstr "_Buka Asosiasi untuk Voucer" - -#~ msgid "_Remove Association from Voucher" -#~ msgstr "_Hapus Asosiasi dari Voucer" - -#~ msgid "_Update Association for Credit Note" -#~ msgstr "_Perbarui Asosiasi untuk Nota Kredit" - -#~ msgid "_Open Association for Credit Note" -#~ msgstr "_Buka Asosiasi untuk Nota Kredit" - -#~ msgid "_Remove Association from Credit Note" -#~ msgstr "_Hapus Asosiasi dari Nota Kredit" - -#~ msgid "Update Association for current invoice" -#~ msgstr "Perbarui Asosiasi untuk faktur saat ini" - -#~ msgid "Open Association for current invoice" -#~ msgstr "Buka Asosiasi untuk faktur saat ini" - -#~ msgid "Remove Association from invoice" -#~ msgstr "Hapus Asosiasi dari faktur" - -#, fuzzy -#~ msgid "Open Association for current bill" -#~ msgstr "Membuka salinan dokumen saat ini" - -#, fuzzy -#~ msgid "Remove Association from bill" -#~ msgstr "Menghapus placeholder dari %s" - -#~ msgid "Update Association for current voucher" -#~ msgstr "Perbarui Asosiasi untuk voucer saat ini" - -#~ msgid "Open Association for current voucher" -#~ msgstr "Buka Asosiasi untuk voucer saat ini" - -#~ msgid "Remove Association from voucher" -#~ msgstr "Hapus Asosiasi dari voucer" - -#~ msgid "Update Association for credit note" -#~ msgstr "Perbarui Asosiasi untuk nota kredit" - -#~ msgid "Open Association for credit note" -#~ msgstr "Buka Asosiasi untuk nota kredit" - -#~ msgid "Remove Association from credit note" -#~ msgstr "Hapus Asosiasi untuk nota kredit" - -#~ msgid "Jump to the corresponding transaction in the other account" -#~ msgstr "Lompat ke transaksi yang sesuai di akun yang lain" - -#~ msgid "Update _Association for Transaction" -#~ msgstr "Perbarui _Asosiasi untuk Transaksi" - -#~ msgid "_Open Association for Transaction" -#~ msgstr "_Buka Asosiasi untuk Transaksi" - -#~ msgid "Re_move Association from Transaction" -#~ msgstr "B_uang Asosiasi dari Transaksi" - -#~ msgid "Open Associated Invoice" -#~ msgstr "Buka Faktur Terasosiasi" - -#~ msgid "Update Association for the current transaction" -#~ msgstr "Perbarui Asosiasi untuk transaksi saat ini" - -#~ msgid "Remove the association from the current transaction" -#~ msgstr "Buang asosiasi dari transaksi saat ini" - -#~ msgid "Open the associated invoice" -#~ msgstr "Buka faktur terasosiasi" - -#~ msgid "Update Association" -#~ msgstr "Perbarui Asosiasi" - -#~ msgid "Open Association" -#~ msgstr "Buka Asosiasi" - -#~ msgid "Remove Association" -#~ msgstr "Hapus Asosiasi" - -#~ msgid "Open Invoice" -#~ msgstr "Buka Faktur" - -#, fuzzy -#~ msgid "_File Association" -#~ msgstr "Asosiasi Manual atau Otomatis" - -#, fuzzy -#~ msgid "_Location Association" -#~ msgstr "Lokasi" - -#, fuzzy -#~ msgid "All Associations" -#~ msgstr "Perluas Semu_a" - -#, fuzzy -#~ msgid "_Locate Associations" -#~ msgstr "Temukan _Penunjuk" - -#, fuzzy -#~ msgid "Association" -#~ msgstr "Asosiasi Manual atau Otomatis" - -#, fuzzy -#~ msgid "Associated Files" -#~ msgstr "Ruang Lingkup" - -#~ msgid "Keep Associated Entry" -#~ msgstr "Pertahankan Entri yang Berasosiasi" - -#, fuzzy -#~ msgid "Font to use for the main heading" -#~ msgstr "Menentukan memakai fonta sistem" - -#, fuzzy -#~ msgid "Font to use for everything else" -#~ msgstr "Menentukan memakai fonta sistem" - -#, fuzzy -#~ msgid "Display the transaction association" -#~ msgstr "transaksi" - -#, fuzzy -#~ msgctxt "Association flag for 'file'" -#~ msgid "f" -#~ msgstr "J" From ae39df07eb81614dd8316ba2c191c80fe41f5b85 Mon Sep 17 00:00:00 2001 From: Robert Fewell <14uBobIT@gmail.com> Date: Sun, 22 Nov 2020 10:35:32 +0000 Subject: [PATCH 148/167] Bug 720564 - Search in General Ledger If you search from a General Ledger the search results will update the General Ledger and the only way to get back the contents is to close and reopen the General Ledger. This change makes it the same as any other register in that the search results are opened in a new search page. --- gnucash/register/ledger-core/gnc-ledger-display.c | 3 +++ 1 file changed, 3 insertions(+) diff --git a/gnucash/register/ledger-core/gnc-ledger-display.c b/gnucash/register/ledger-core/gnc-ledger-display.c index fb36bf4ac9..15281a8cd2 100644 --- a/gnucash/register/ledger-core/gnc-ledger-display.c +++ b/gnucash/register/ledger-core/gnc-ledger-display.c @@ -184,6 +184,9 @@ find_by_query (gpointer find_data, gpointer user_data) Query* q = find_data; GNCLedgerDisplay* ld = user_data; + if (ld->reg->type != SEARCH_LEDGER) + return FALSE; + if (!q || !ld) return FALSE; From 026856122c2317e9b430b913f6faa6ca31f2cbc0 Mon Sep 17 00:00:00 2001 From: Robert Fewell <14uBobIT@gmail.com> Date: Sun, 22 Nov 2020 10:36:55 +0000 Subject: [PATCH 149/167] Bug 355498 - When there is only one result from a 'Find', select it. --- gnucash/gnome-search/dialog-search.c | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/gnucash/gnome-search/dialog-search.c b/gnucash/gnome-search/dialog-search.c index 5c434f9f43..96e9cdc38b 100644 --- a/gnucash/gnome-search/dialog-search.c +++ b/gnucash/gnome-search/dialog-search.c @@ -367,6 +367,15 @@ gnc_search_dialog_display_results (GNCSearchWindow *sw) max_count = gnc_prefs_get_float(GNC_PREFS_GROUP_SEARCH_GENERAL, GNC_PREF_NEW_SEARCH_LIMIT); if (gnc_query_view_get_num_entries(GNC_QUERY_VIEW(sw->result_view)) < max_count) gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON (sw->new_rb), TRUE); + + /* If there is only one item then select it */ + if (gnc_query_view_get_num_entries (GNC_QUERY_VIEW(sw->result_view)) == 1) + { + GtkTreeSelection *selection = gtk_tree_view_get_selection (GTK_TREE_VIEW(sw->result_view)); + GtkTreePath *path = gtk_tree_path_new_first (); + gtk_tree_selection_select_path (selection, path); + gtk_tree_path_free (path); + } } static void From faaa580de79dfaad90b563c430f4ec4504befb0d Mon Sep 17 00:00:00 2001 From: Robert Fewell <14uBobIT@gmail.com> Date: Sun, 22 Nov 2020 10:37:59 +0000 Subject: [PATCH 150/167] GNCAccountSel with a New button If the GNCAccountSel widget is set to be modal, using the 'New' button returns the newly created account so use it for the selection. --- gnucash/gnome-utils/gnc-account-sel.c | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/gnucash/gnome-utils/gnc-account-sel.c b/gnucash/gnome-utils/gnc-account-sel.c index 9d240f5678..d34c30e21d 100644 --- a/gnucash/gnome-utils/gnc-account-sel.c +++ b/gnucash/gnome-utils/gnc-account-sel.c @@ -493,10 +493,15 @@ static void gas_new_account_click( GtkButton *b, gpointer ud ) { GNCAccountSel *gas = (GNCAccountSel*)ud; + Account *account = NULL; GtkWindow *parent = GTK_WINDOW (gtk_widget_get_toplevel (GTK_WIDGET (gas))); if (gas->isModal) - gnc_ui_new_accounts_from_name_window_with_types (parent, NULL, - gas->acctTypeFilters ); + { + account = gnc_ui_new_accounts_from_name_window_with_types (parent, NULL, + gas->acctTypeFilters ); + if (account) + gnc_account_sel_set_account (gas, account, FALSE); + } else gnc_ui_new_account_with_types (parent, gnc_get_current_book(), gas->acctTypeFilters ); From d518500a309a015c05e388af3a109acbdd8ccaf4 Mon Sep 17 00:00:00 2001 From: Robert Fewell <14uBobIT@gmail.com> Date: Sun, 22 Nov 2020 10:38:57 +0000 Subject: [PATCH 151/167] Change source files gnc-account-sel.* for space and tabs --- gnucash/gnome-utils/gnc-account-sel.c | 290 ++++++++++++-------------- gnucash/gnome-utils/gnc-account-sel.h | 20 +- 2 files changed, 144 insertions(+), 166 deletions(-) diff --git a/gnucash/gnome-utils/gnc-account-sel.c b/gnucash/gnome-utils/gnc-account-sel.c index d34c30e21d..9174a663ca 100644 --- a/gnucash/gnome-utils/gnc-account-sel.c +++ b/gnucash/gnome-utils/gnc-account-sel.c @@ -89,35 +89,32 @@ gnc_account_sel_get_type (void) }; account_sel_type = g_type_register_static (GTK_TYPE_BOX, - "GNCAccountSel", - &account_sel_info, 0); + "GNCAccountSel", + &account_sel_info, 0); } - return account_sel_type; } -static -void -gnc_account_sel_event_cb( QofInstance *entity, +static void +gnc_account_sel_event_cb (QofInstance *entity, QofEventId event_type, gpointer user_data, - gpointer event_data ) + gpointer event_data) { - if ( ! ( event_type == QOF_EVENT_CREATE - || event_type == QOF_EVENT_MODIFY - || event_type == QOF_EVENT_DESTROY ) - || !GNC_IS_ACCOUNT(entity) ) + if (!(event_type == QOF_EVENT_CREATE + || event_type == QOF_EVENT_MODIFY + || event_type == QOF_EVENT_DESTROY) + || !GNC_IS_ACCOUNT(entity)) { return; } - gas_populate_list( (GNCAccountSel*)user_data ); + gas_populate_list ((GNCAccountSel*)user_data); } -static -void +static void gnc_account_sel_class_init (GNCAccountSelClass *klass) { - GObjectClass *object_class = G_OBJECT_CLASS (klass); + GObjectClass *object_class = G_OBJECT_CLASS(klass); parent_class = g_type_class_peek_parent (klass); @@ -137,14 +134,14 @@ gnc_account_sel_class_init (GNCAccountSelClass *klass) } static void -combo_changed_cb(GNCAccountSel *gas, gpointer combo) +combo_changed_cb (GNCAccountSel *gas, gpointer combo) { - gint selected = gtk_combo_box_get_active (GTK_COMBO_BOX (combo)); + gint selected = gtk_combo_box_get_active (GTK_COMBO_BOX(combo)); if (selected == gas->currentSelection) return; gas->currentSelection = selected; - g_signal_emit_by_name(gas, "account_sel_changed"); + g_signal_emit_by_name (gas, "account_sel_changed"); } static void @@ -159,37 +156,37 @@ gnc_account_sel_init (GNCAccountSel *gas) gas->newAccountButton = NULL; gas->currentSelection = -1; - g_object_set(gas, "spacing", 2, (gchar*)NULL); + g_object_set (gas, "spacing", 2, (gchar*)NULL); // Set the name for this widget so it can be easily manipulated with css gtk_widget_set_name (GTK_WIDGET(gas), "gnc-id-account-select"); - gas->store = gtk_list_store_new(NUM_ACCT_COLS, G_TYPE_STRING, G_TYPE_POINTER); - widget = gtk_combo_box_new_with_model_and_entry(GTK_TREE_MODEL(gas->store)); + gas->store = gtk_list_store_new (NUM_ACCT_COLS, G_TYPE_STRING, G_TYPE_POINTER); + widget = gtk_combo_box_new_with_model_and_entry (GTK_TREE_MODEL(gas->store)); gas->combo = GTK_COMBO_BOX(widget); - gtk_combo_box_set_entry_text_column(GTK_COMBO_BOX(widget), ACCT_COL_NAME); - g_object_unref(gas->store); - g_signal_connect_swapped(gas->combo, "changed", - G_CALLBACK(combo_changed_cb), gas); - gtk_container_add( GTK_CONTAINER(gas), widget ); + gtk_combo_box_set_entry_text_column (GTK_COMBO_BOX(widget), ACCT_COL_NAME); + g_object_unref (gas->store); + g_signal_connect_swapped (gas->combo, "changed", + G_CALLBACK(combo_changed_cb), gas); + gtk_container_add (GTK_CONTAINER(gas), widget); /* Add completion. */ - gnc_cbwe_require_list_item(GTK_COMBO_BOX(widget)); + gnc_cbwe_require_list_item (GTK_COMBO_BOX(widget)); /* Get the accounts, place into combo list */ - gas_populate_list( gas ); + gas_populate_list (gas); gas->eventHandlerId = - qof_event_register_handler( gnc_account_sel_event_cb, gas ); + qof_event_register_handler (gnc_account_sel_event_cb, gas); gas->initDone = TRUE; } void -gnc_account_sel_set_hexpand ( GNCAccountSel *gas, gboolean expand ) +gnc_account_sel_set_hexpand (GNCAccountSel *gas, gboolean expand) { - gtk_widget_set_hexpand( GTK_WIDGET(gas), expand ); - gtk_widget_set_hexpand( GTK_WIDGET(gas->combo), expand ); + gtk_widget_set_hexpand (GTK_WIDGET(gas), expand); + gtk_widget_set_hexpand (GTK_WIDGET(gas->combo), expand); } typedef struct @@ -198,9 +195,8 @@ typedef struct GList **outList; } account_filter_data; -static -void -gas_populate_list( GNCAccountSel *gas ) +static void +gas_populate_list (GNCAccountSel *gas) { account_filter_data atnd; Account *root; @@ -211,56 +207,52 @@ gas_populate_list( GNCAccountSel *gas ) GList *accts, *ptr, *filteredAccts; gchar *currentSel, *name; - entry = GTK_ENTRY(gtk_bin_get_child(GTK_BIN(gas->combo))); - currentSel = gtk_editable_get_chars( - GTK_EDITABLE(entry), 0, -1 ); + entry = GTK_ENTRY(gtk_bin_get_child (GTK_BIN(gas->combo))); + currentSel = gtk_editable_get_chars (GTK_EDITABLE(entry), 0, -1 ); - g_signal_handlers_block_by_func( gas->combo, combo_changed_cb , gas ); + g_signal_handlers_block_by_func (gas->combo, combo_changed_cb , gas); - root = gnc_book_get_root_account( gnc_get_current_book() ); - accts = gnc_account_get_descendants_sorted( root ); + root = gnc_book_get_root_account (gnc_get_current_book ()); + accts = gnc_account_get_descendants_sorted (root); filteredAccts = NULL; atnd.gas = gas; atnd.outList = &filteredAccts; - g_list_foreach( accts, gas_filter_accounts, (gpointer)&atnd ); - g_list_free( accts ); + g_list_foreach (accts, gas_filter_accounts, (gpointer)&atnd); + g_list_free (accts); - gtk_list_store_clear(gas->store); + gtk_list_store_clear (gas->store); for (ptr = filteredAccts, i = 0; ptr; ptr = g_list_next(ptr), i++) { acc = ptr->data; - name = gnc_account_get_full_name(acc); - gtk_list_store_append(gas->store, &iter); - gtk_list_store_set(gas->store, &iter, - ACCT_COL_NAME, name, - ACCT_COL_PTR, acc, - -1); - if (g_utf8_collate(name, currentSel) == 0) + name = gnc_account_get_full_name (acc); + gtk_list_store_append (gas->store, &iter); + gtk_list_store_set (gas->store, &iter, + ACCT_COL_NAME, name, + ACCT_COL_PTR, acc, + -1); + if (g_utf8_collate (name, currentSel) == 0) { active = i; - g_free(name); + g_free (name); } } /* If the account which was in the text box before still exists, then * reset to it. */ if (active != -1) - gtk_combo_box_set_active(GTK_COMBO_BOX(gas->combo), active); + gtk_combo_box_set_active (GTK_COMBO_BOX(gas->combo), active); - g_signal_handlers_unblock_by_func( gas->combo, combo_changed_cb , gas ); + g_signal_handlers_unblock_by_func (gas->combo, combo_changed_cb , gas); - g_list_free( filteredAccts ); - if ( currentSel ) - { - g_free( currentSel ); - } + g_list_free (filteredAccts); + if (currentSel) + g_free (currentSel); } -static -void -gas_filter_accounts( gpointer data, gpointer user_data ) +static void +gas_filter_accounts (gpointer data, gpointer user_data) { account_filter_data *atnd; Account *a; @@ -268,53 +260,47 @@ gas_filter_accounts( gpointer data, gpointer user_data ) atnd = (account_filter_data*)user_data; a = (Account*)data; /* Filter as we've been configured to do. */ - if ( atnd->gas->acctTypeFilters ) + if (atnd->gas->acctTypeFilters) { /* g_list_find is the poor-mans '(member ...)', especially * easy when the data pointers in the list are just casted * account type identifiers. */ - if ( g_list_find( atnd->gas->acctTypeFilters, - GINT_TO_POINTER(xaccAccountGetType( a )) ) - == NULL ) + if (g_list_find (atnd->gas->acctTypeFilters, + GINT_TO_POINTER(xaccAccountGetType (a))) + == NULL) { return; } } - if ( atnd->gas->acctCommodityFilters ) + if (atnd->gas->acctCommodityFilters) { - if ( g_list_find_custom( atnd->gas->acctCommodityFilters, - GINT_TO_POINTER(xaccAccountGetCommodity( a )), - gnc_commodity_compare_void) - == NULL ) + if (g_list_find_custom (atnd->gas->acctCommodityFilters, + GINT_TO_POINTER(xaccAccountGetCommodity (a)), + gnc_commodity_compare_void) + == NULL) { return; } } - - - *atnd->outList = g_list_append( *atnd->outList, a ); + *atnd->outList = g_list_append (*atnd->outList, a); } - GtkWidget * gnc_account_sel_new (void) { - GNCAccountSel *gas; + GNCAccountSel *gas = g_object_new (GNC_TYPE_ACCOUNT_SEL, NULL); - gas = g_object_new (GNC_TYPE_ACCOUNT_SEL, NULL); - - return GTK_WIDGET (gas); + return GTK_WIDGET(gas); } typedef struct { GNCAccountSel *gas; - Account *acct; + Account *acct; } gas_find_data; -static -gboolean +static gboolean gnc_account_sel_find_account (GtkTreeModel *model, GtkTreePath *path, GtkTreeIter *iter, @@ -322,93 +308,89 @@ gnc_account_sel_find_account (GtkTreeModel *model, { Account *model_acc; - gtk_tree_model_get(model, iter, ACCT_COL_PTR, &model_acc, -1); + gtk_tree_model_get (model, iter, ACCT_COL_PTR, &model_acc, -1); if (data->acct != model_acc) return FALSE; - gtk_combo_box_set_active_iter(GTK_COMBO_BOX(data->gas->combo), iter); + gtk_combo_box_set_active_iter (GTK_COMBO_BOX(data->gas->combo), iter); return TRUE; } + void -gnc_account_sel_set_account( GNCAccountSel *gas, Account *acct, gboolean set_default_acct ) +gnc_account_sel_set_account (GNCAccountSel *gas, Account *acct, + gboolean set_default_acct) { gas_find_data data; if (set_default_acct) { - gtk_combo_box_set_active(GTK_COMBO_BOX(gas->combo), 0); - if ( !acct ) + gtk_combo_box_set_active (GTK_COMBO_BOX(gas->combo), 0); + if (!acct) return; } else { - gtk_combo_box_set_active( GTK_COMBO_BOX(gas->combo), -1 ); - if ( !acct ) + gtk_combo_box_set_active (GTK_COMBO_BOX(gas->combo), -1 ); + if (!acct) { - GtkEntry *entry = GTK_ENTRY(gtk_bin_get_child(GTK_BIN(gas->combo))); - gtk_editable_delete_text(GTK_EDITABLE(entry), 0, -1); + GtkEntry *entry = GTK_ENTRY(gtk_bin_get_child (GTK_BIN(gas->combo))); + gtk_editable_delete_text (GTK_EDITABLE(entry), 0, -1); return; } } data.gas = gas; data.acct = acct; - gtk_tree_model_foreach(GTK_TREE_MODEL(gas->store), - (GtkTreeModelForeachFunc)gnc_account_sel_find_account, - &data); + gtk_tree_model_foreach (GTK_TREE_MODEL(gas->store), + (GtkTreeModelForeachFunc)gnc_account_sel_find_account, + &data); } Account* -gnc_account_sel_get_account( GNCAccountSel *gas ) +gnc_account_sel_get_account (GNCAccountSel *gas) { GtkTreeIter iter; Account *acc; - if (!gtk_combo_box_get_active_iter(GTK_COMBO_BOX(gas->combo), &iter)) + if (!gtk_combo_box_get_active_iter (GTK_COMBO_BOX(gas->combo), &iter)) return NULL; - gtk_tree_model_get(GTK_TREE_MODEL(gas->store), &iter, - ACCT_COL_PTR, &acc, - -1); + gtk_tree_model_get (GTK_TREE_MODEL(gas->store), &iter, + ACCT_COL_PTR, &acc, + -1); return acc; } - void -gnc_account_sel_set_acct_filters( GNCAccountSel *gas, GList *typeFilters, GList *commodityFilters ) +gnc_account_sel_set_acct_filters (GNCAccountSel *gas, GList *typeFilters, + GList *commodityFilters) { - if ( gas->acctTypeFilters != NULL ) + if (gas->acctTypeFilters != NULL) { - g_list_free( gas->acctTypeFilters ); + g_list_free (gas->acctTypeFilters); gas->acctTypeFilters = NULL; } - if ( gas->acctCommodityFilters != NULL) + if (gas->acctCommodityFilters != NULL) { - g_list_free( gas->acctCommodityFilters ); + g_list_free (gas->acctCommodityFilters); gas->acctCommodityFilters = NULL; } /* If both filters are null, then no filters exist. */ - if (( ! typeFilters ) && ( ! commodityFilters)) - { + if ((!typeFilters) && (!commodityFilters)) return; - } /* This works because the GNCAccountTypes in the list are * ints-casted-as-pointers. */ if (typeFilters) - { - gas->acctTypeFilters = g_list_copy( typeFilters ); - } + gas->acctTypeFilters = g_list_copy (typeFilters); /* Save the commodity filter list */ if (commodityFilters) - { - gas->acctCommodityFilters = g_list_copy(commodityFilters); - } + gas->acctCommodityFilters = g_list_copy (commodityFilters); - gas_populate_list( gas ); + gas_populate_list (gas); } static void @@ -417,14 +399,12 @@ gnc_account_sel_finalize (GObject *object) GNCAccountSel *gas; g_return_if_fail (object != NULL); - g_return_if_fail (GNC_IS_ACCOUNT_SEL (object)); + g_return_if_fail (GNC_IS_ACCOUNT_SEL(object)); - gas = GNC_ACCOUNT_SEL (object); + gas = GNC_ACCOUNT_SEL(object); if (gas->acctTypeFilters) - { g_list_free (gas->acctTypeFilters); - } G_OBJECT_CLASS (parent_class)->finalize (object); } @@ -435,9 +415,9 @@ gnc_account_sel_dispose (GObject *object) GNCAccountSel *gas; g_return_if_fail (object != NULL); - g_return_if_fail (GNC_IS_ACCOUNT_SEL (object)); + g_return_if_fail (GNC_IS_ACCOUNT_SEL(object)); - gas = GNC_ACCOUNT_SEL (object); + gas = GNC_ACCOUNT_SEL(object); if (gas->eventHandlerId) { @@ -449,74 +429,75 @@ gnc_account_sel_dispose (GObject *object) } void -gnc_account_sel_set_new_account_ability( GNCAccountSel *gas, - gboolean state ) +gnc_account_sel_set_new_account_ability (GNCAccountSel *gas, + gboolean state) { g_return_if_fail (gas != NULL); - if ( state == (gas->newAccountButton != NULL) ) + if (state == (gas->newAccountButton != NULL)) { /* We're already in that state; don't do anything. */ return; } - if ( gas->newAccountButton ) + if (gas->newAccountButton) { - g_assert( state == TRUE ); + g_assert (state == TRUE); /* destroy the existing button. */ - gtk_container_remove( GTK_CONTAINER(gas), - gas->newAccountButton ); - gtk_widget_destroy( gas->newAccountButton ); + gtk_container_remove (GTK_CONTAINER(gas), gas->newAccountButton); + gtk_widget_destroy (gas->newAccountButton); gas->newAccountButton = NULL; return; } /* create the button. */ - gas->newAccountButton = gtk_button_new_with_label( _("New...") ); - g_signal_connect( gas->newAccountButton, + gas->newAccountButton = gtk_button_new_with_label (_("New...")); + g_signal_connect (gas->newAccountButton, "clicked", - G_CALLBACK( gas_new_account_click ), - gas ); - gtk_box_pack_start( GTK_BOX(gas), gas->newAccountButton, - FALSE, FALSE, 0 ); + G_CALLBACK(gas_new_account_click), + gas); + + gtk_box_pack_start (GTK_BOX(gas), gas->newAccountButton, + FALSE, FALSE, 0); } void -gnc_account_sel_set_new_account_modal( GNCAccountSel *gas, - gboolean state ) +gnc_account_sel_set_new_account_modal (GNCAccountSel *gas, + gboolean state) { g_return_if_fail (gas != NULL); gas->isModal = state; } static void -gas_new_account_click( GtkButton *b, gpointer ud ) +gas_new_account_click (GtkButton *b, gpointer ud) { GNCAccountSel *gas = (GNCAccountSel*)ud; Account *account = NULL; - GtkWindow *parent = GTK_WINDOW (gtk_widget_get_toplevel (GTK_WIDGET (gas))); + GtkWindow *parent = GTK_WINDOW(gtk_widget_get_toplevel (GTK_WIDGET(gas))); if (gas->isModal) { account = gnc_ui_new_accounts_from_name_window_with_types (parent, NULL, - gas->acctTypeFilters ); + gas->acctTypeFilters); if (account) gnc_account_sel_set_account (gas, account, FALSE); } else gnc_ui_new_account_with_types (parent, gnc_get_current_book(), - gas->acctTypeFilters ); + gas->acctTypeFilters); } gint -gnc_account_sel_get_num_account( GNCAccountSel *gas ) +gnc_account_sel_get_num_account (GNCAccountSel *gas) { if (NULL == gas) return 0; - return gtk_tree_model_iter_n_children( GTK_TREE_MODEL(gas->store), NULL ); + + return gtk_tree_model_iter_n_children (GTK_TREE_MODEL(gas->store), NULL); } void -gnc_account_sel_purge_account( GNCAccountSel *gas, +gnc_account_sel_purge_account (GNCAccountSel *gas, Account *target, gboolean recursive) { @@ -525,43 +506,40 @@ gnc_account_sel_purge_account( GNCAccountSel *gas, Account *acc; gboolean more; - if (!gtk_tree_model_get_iter_first(model, &iter)) + if (!gtk_tree_model_get_iter_first (model, &iter)) return; if (!recursive) { do { - gtk_tree_model_get(model, &iter, ACCT_COL_PTR, &acc, -1); + gtk_tree_model_get (model, &iter, ACCT_COL_PTR, &acc, -1); if (acc == target) { - gtk_list_store_remove(gas->store, &iter); + gtk_list_store_remove (gas->store, &iter); break; } } - while (gtk_tree_model_iter_next(model, &iter)); + while (gtk_tree_model_iter_next (model, &iter)); } else { do { - gtk_tree_model_get(model, &iter, ACCT_COL_PTR, &acc, -1); + gtk_tree_model_get (model, &iter, ACCT_COL_PTR, &acc, -1); while (acc) { if (acc == target) break; - acc = gnc_account_get_parent(acc); + acc = gnc_account_get_parent (acc); } if (acc == target) - more = gtk_list_store_remove(gas->store, &iter); + more = gtk_list_store_remove (gas->store, &iter); else - more = gtk_tree_model_iter_next(model, &iter); + more = gtk_tree_model_iter_next (model, &iter); } while (more); } - - gtk_combo_box_set_active(GTK_COMBO_BOX(gas->combo), 0); + gtk_combo_box_set_active (GTK_COMBO_BOX(gas->combo), 0); } - - diff --git a/gnucash/gnome-utils/gnc-account-sel.h b/gnucash/gnome-utils/gnc-account-sel.h index 6deece10d1..7ec5f116f2 100644 --- a/gnucash/gnome-utils/gnc-account-sel.h +++ b/gnucash/gnome-utils/gnc-account-sel.h @@ -74,12 +74,13 @@ GtkWidget* gnc_account_sel_new (void); * list, then it doesn't change the state of the GAS. If the account is * NULL, then the first list selection is made if set_default_acct is TRUE. **/ -void gnc_account_sel_set_account( GNCAccountSel *gas, Account *acct, gboolean set_default_acct ); +void gnc_account_sel_set_account (GNCAccountSel *gas, Account *acct, + gboolean set_default_acct); /** * Returns the currently-selected Account. If, for some reason the selection * is in a bad state, NULL will be returned. **/ -Account* gnc_account_sel_get_account( GNCAccountSel *gas ); +Account* gnc_account_sel_get_account (GNCAccountSel *gas); /** * The GNCAccountSel can be setup to filter the accounts displayed. @@ -87,25 +88,24 @@ Account* gnc_account_sel_get_account( GNCAccountSel *gas ); * @param commodityFilters A GList of gnc_commodity types which are allowed. * The list is copied, of course. **/ -void gnc_account_sel_set_acct_filters( GNCAccountSel *gas, GList *typeFilters, GList *commodityFilters ); +void gnc_account_sel_set_acct_filters (GNCAccountSel *gas, GList *typeFilters, + GList *commodityFilters); /** * Conditional inclusion of a new-account button to the right of the * combobox. * @param state TRUE if the new-account button is desired, FALSE otherwise. **/ -void gnc_account_sel_set_new_account_ability( GNCAccountSel *gas, - gboolean state ); +void gnc_account_sel_set_new_account_ability (GNCAccountSel *gas, gboolean state); /** * Conditional call of the new-account window in modal mode. * @param state TRUE if the new-account window should be modal, FALSE otherwise. **/ -void gnc_account_sel_set_new_account_modal( GNCAccountSel *gas, - gboolean state ); +void gnc_account_sel_set_new_account_modal (GNCAccountSel *gas, gboolean state); -gint gnc_account_sel_get_num_account( GNCAccountSel *gas ); -void gnc_account_sel_purge_account( GNCAccountSel *gas, Account *acc, gboolean recursive); -void gnc_account_sel_set_hexpand ( GNCAccountSel *gas, gboolean expand); +gint gnc_account_sel_get_num_account (GNCAccountSel *gas); +void gnc_account_sel_purge_account (GNCAccountSel *gas, Account *acc, gboolean recursive); +void gnc_account_sel_set_hexpand (GNCAccountSel *gas, gboolean expand); #endif /* GNC_ACCOUNT_SEL_H */ From c2f9c5bfb1330b642c1bcc178cea7deedd070c07 Mon Sep 17 00:00:00 2001 From: Robert Fewell <14uBobIT@gmail.com> Date: Sun, 22 Nov 2020 10:39:44 +0000 Subject: [PATCH 152/167] Bug 106746 - Selecting New account in Loan Assistant Set the modal property on the GNCAccountSel widgets, that way the new account will selected. --- gnucash/gnome/assistant-loan.cpp | 2 ++ 1 file changed, 2 insertions(+) diff --git a/gnucash/gnome/assistant-loan.cpp b/gnucash/gnome/assistant-loan.cpp index e7df7383ac..ed08172f62 100644 --- a/gnucash/gnome/assistant-loan.cpp +++ b/gnucash/gnome/assistant-loan.cpp @@ -637,6 +637,7 @@ gnc_loan_assistant_create( LoanAssistantData *ldd ) gtk_widget_set_halign (GTK_WIDGET(gas), GTK_ALIGN_FILL); gnc_account_sel_set_hexpand (GNC_ACCOUNT_SEL(gas), true); + gnc_account_sel_set_new_account_modal (GNC_ACCOUNT_SEL(gas), true); g_object_set (GTK_WIDGET(gas), "margin", 2, nullptr); *(gas_data[i].loc) = gas; } @@ -730,6 +731,7 @@ gnc_loan_assistant_create( LoanAssistantData *ldd ) gtk_widget_set_sensitive( GTK_WIDGET(ldd->optEscrowHBox), FALSE ); ldd->optEscrowGAS = GNC_ACCOUNT_SEL(gnc_account_sel_new()); gnc_account_sel_set_hexpand (GNC_ACCOUNT_SEL(ldd->optEscrowGAS), true); + gnc_account_sel_set_new_account_modal (GNC_ACCOUNT_SEL(ldd->optEscrowGAS), true); gnc_account_sel_set_new_account_ability( ldd->optEscrowGAS, TRUE ); gtk_container_add( GTK_CONTAINER(ldd->optEscrowHBox), GTK_WIDGET(ldd->optEscrowGAS) ); From 3676728d2f8a19f7f66ccaa43230bd3c75d17b95 Mon Sep 17 00:00:00 2001 From: Robert Fewell <14uBobIT@gmail.com> Date: Sun, 22 Nov 2020 10:41:44 +0000 Subject: [PATCH 153/167] Bug 330930 - Financial Calculator resets payment period to zero When the preference option 'Numbers, Date, Time' -> 'Automatic Decimal Point' is set and you change the 'Payment periods' to say 11 you end up with zero as number entered becomes 0.11 To fix this treat the Periods GNCAmountEdit widget as a plain GtkEntry and not use the GNCAmountEdit evaluate functions. --- gnucash/gnome/dialog-fincalc.c | 53 ++++++++++++++++++++++++---------- 1 file changed, 38 insertions(+), 15 deletions(-) diff --git a/gnucash/gnome/dialog-fincalc.c b/gnucash/gnome/dialog-fincalc.c index 495152c670..995b6cd8c3 100644 --- a/gnucash/gnome/dialog-fincalc.c +++ b/gnucash/gnome/dialog-fincalc.c @@ -183,12 +183,21 @@ gui_to_fi(FinCalcDialog *fcd) GtkToggleButton *toggle; gnc_numeric npp; int i; + const gchar *text; if (fcd == NULL) return; - npp = - gnc_amount_edit_get_amount(GNC_AMOUNT_EDIT(fcd->amounts[PAYMENT_PERIODS])); + /* treat PAYMENT_PERIODS as a plain GtkEntry */ + text = gtk_entry_get_text (GTK_ENTRY(GNC_AMOUNT_EDIT(fcd->amounts[PAYMENT_PERIODS]))); + if (text && *text) + { + gnc_numeric out; + gboolean result = string_to_gnc_numeric (text, &out); + npp = gnc_numeric_convert (out, 1, GNC_HOW_RND_TRUNC); + } + else + npp = gnc_numeric_zero (); fcd->financial_info.npp = npp.num; fcd->financial_info.ir = @@ -338,10 +347,14 @@ can_calc_value(FinCalcDialog *fcd, FinCalcValue value, int *error_item) return missing; } - if (!gnc_amount_edit_evaluate (GNC_AMOUNT_EDIT (fcd->amounts[i]))) + /* treat PAYMENT_PERIODS as a plain GtkEntry */ + if (i != PAYMENT_PERIODS) { - *error_item = i; - return bad_exp; + if (!gnc_amount_edit_evaluate (GNC_AMOUNT_EDIT (fcd->amounts[i]))) + { + *error_item = i; + return bad_exp; + } } } @@ -371,17 +384,27 @@ can_calc_value(FinCalcDialog *fcd, FinCalcValue value, int *error_item) case PRESENT_VALUE: case PERIODIC_PAYMENT: case FUTURE_VALUE: - nvalue = gnc_amount_edit_get_amount - (GNC_AMOUNT_EDIT(fcd->amounts[PAYMENT_PERIODS])); - if (gnc_numeric_zero_p (nvalue)) { - *error_item = PAYMENT_PERIODS; - return _("The number of payments cannot be zero."); - } - if (gnc_numeric_negative_p (nvalue)) - { - *error_item = PAYMENT_PERIODS; - return _("The number of payments cannot be negative."); + /* treat PAYMENT_PERIODS as a plain GtkEntry */ + GNCAmountEdit *edit = GNC_AMOUNT_EDIT(fcd->amounts[PAYMENT_PERIODS]); + const gchar *text = gtk_entry_get_text (GTK_ENTRY(edit)); + gboolean result = string_to_gnc_numeric (text, &nvalue); + + if (!result) + { + *error_item = PAYMENT_PERIODS; + return bad_exp; + } + if (gnc_numeric_zero_p (nvalue)) + { + *error_item = PAYMENT_PERIODS; + return _("The number of payments cannot be zero."); + } + if (gnc_numeric_negative_p (nvalue)) + { + *error_item = PAYMENT_PERIODS; + return _("The number of payments cannot be negative."); + } } break; default: From 3be79359651eea57d417d57eaec97976f0b3fbbe Mon Sep 17 00:00:00 2001 From: Christopher Lam Date: Sat, 21 Nov 2020 00:09:59 +0800 Subject: [PATCH 154/167] [date-utilities] Convert reldate list into srfi-9 records --- libgnucash/app-utils/date-utilities.scm | 450 +++++++----------------- 1 file changed, 131 insertions(+), 319 deletions(-) diff --git a/libgnucash/app-utils/date-utilities.scm b/libgnucash/app-utils/date-utilities.scm index 6d7faae88a..7fdfa0bbe4 100644 --- a/libgnucash/app-utils/date-utilities.scm +++ b/libgnucash/app-utils/date-utilities.scm @@ -22,6 +22,7 @@ (use-modules (gnucash core-utils)) +(use-modules (srfi srfi-9)) ;; get stuff from localtime date vector (define (gnc:date-get-year datevec) @@ -408,14 +409,17 @@ ;; relative-date functions start here ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; -(define (gnc:reldate-get-symbol x) (vector-ref x 0)) -(define (gnc:reldate-get-string x) (vector-ref x 1)) -(define (gnc:reldate-get-desc x) (vector-ref x 2)) -(define (gnc:reldate-get-fn x) (vector-ref x 3)) +(define-record-type :reldates + (make-reldate symbol string desc fn) + gnc:reldate? + (symbol gnc:reldate-get-symbol) + (string gnc:reldate-get-string) + (desc gnc:reldate-get-desc) + (fn gnc:reldate-get-fn)) ;; the globally available hash of reldates (hash-key = reldate ;; symbols, hash-value = a vector, reldate data). -(define gnc:relative-date-hash #f) +(define gnc:relative-date-hash (make-hash-table)) (define (gnc:get-absolute-from-relative-date date-symbol) ;; used in options.scm @@ -781,346 +785,154 @@ Defaulting to today.")) (set-tm:isdst now -1) (gnc-mktime now)))) -;; There is no GNC:RELATIVE-DATES list like the one mentioned in -;; gnucash-design.info, is there? Here are the currently defined -;; items, loosely grouped. -;;today -;;start-cal-year end-cal-year start-prev-year end-prev-year -;;start-this-month end-this-month start-prev-month end-prev-month -;;start-current-quarter end-current-quarter start-prev-quarter -;;end-prev-quarter -;;one-month-ago three-months-ago six-months-ago one-year-ago -;;start-cur-fin-year start-prev-fin-year end-prev-fin-year +(for-each + (lambda (reldate) + (hashq-set! gnc:relative-date-hash + (gnc:reldate-get-symbol reldate) + reldate)) -(define gnc:reldate-string-db (gnc:make-string-database)) -(define gnc:relative-date-values #f) -(unless gnc:relative-date-hash - (gnc:reldate-string-db - 'store 'start-cal-year-string - (N_ "Start of this year")) - (gnc:reldate-string-db - 'store 'start-cal-year-desc - (N_ "First day of the current calendar year.")) + (list + (make-reldate 'start-cal-year + (G_ "Start of this year") + (G_ "First day of the current calendar year.") + gnc:get-start-cal-year) - (gnc:reldate-string-db - 'store 'end-cal-year-string - (N_ "End of this year")) - (gnc:reldate-string-db - 'store 'end-cal-year-desc - (N_ "Last day of the current calendar year.")) + (make-reldate 'end-cal-year + (G_ "End of this year") + (G_ "Last day of the current calendar year.") + gnc:get-end-cal-year) - (gnc:reldate-string-db - 'store 'start-prev-year-string - (N_ "Start of previous year")) - (gnc:reldate-string-db - 'store 'start-prev-year-desc - (N_ "First day of the previous calendar year.")) + (make-reldate 'start-prev-year + (G_ "Start of previous year") + (G_ "First day of the previous calendar year.") + gnc:get-start-prev-year) - (gnc:reldate-string-db - 'store 'end-prev-year-string - (N_ "End of previous year")) - (gnc:reldate-string-db - 'store 'end-prev-year-desc - (N_ "Last day of the previous calendar year.")) + (make-reldate 'start-next-year + (G_ "Start of next year") + (G_ "First day of the next calendar year.") + gnc:get-start-next-year) - (gnc:reldate-string-db - 'store 'start-next-year-string - (N_ "Start of next year")) - (gnc:reldate-string-db - 'store 'start-next-year-desc - (N_ "First day of the next calendar year.")) + (make-reldate 'end-prev-year + (G_ "End of previous year") + (G_ "Last day of the previous calendar year.") + gnc:get-end-prev-year) - (gnc:reldate-string-db - 'store 'end-next-year-string - (N_ "End of next year")) - (gnc:reldate-string-db - 'store 'end-next-year-desc - (N_ "Last day of the next calendar year.")) + (make-reldate 'end-next-year + (G_ "End of next year") + (G_ "Last day of the next calendar year.") + gnc:get-end-next-year) - (gnc:reldate-string-db - 'store 'start-accounting-period-string - (N_ "Start of accounting period")) - (gnc:reldate-string-db - 'store 'start-accounting-period-desc - (N_ "First day of the accounting period, as set in the global preferences.")) + (make-reldate 'start-accounting-period + (G_ "Start of accounting period") + (G_ "First day of the accounting period, as set in the global preferences.") + gnc:get-start-accounting-period) - (gnc:reldate-string-db - 'store 'end-accounting-period-string - (N_ "End of accounting period")) - (gnc:reldate-string-db - 'store 'end-accounting-period-desc - (N_ "Last day of the accounting period, as set in the global preferences.")) + (make-reldate 'end-accounting-period + (G_ "End of accounting period") + (G_ "Last day of the accounting period, as set in the global preferences.") + gnc:get-end-accounting-period) - (gnc:reldate-string-db - 'store 'start-this-month-string - (N_ "Start of this month")) - (gnc:reldate-string-db - 'store 'start-this-month-desc - (N_ "First day of the current month.")) + (make-reldate 'start-this-month + (G_ "Start of this month") + (G_ "First day of the current month.") + gnc:get-start-this-month) - (gnc:reldate-string-db - 'store 'end-this-month-string - (N_ "End of this month")) - (gnc:reldate-string-db - 'store 'end-this-month-desc - (N_ "Last day of the current month.")) + (make-reldate 'end-this-month + (G_ "End of this month") + (G_ "Last day of the current month.") + gnc:get-end-this-month) - (gnc:reldate-string-db - 'store 'start-prev-month-string - (N_ "Start of previous month")) - (gnc:reldate-string-db - 'store 'start-prev-month-desc - (N_ "First day of the previous month.")) + (make-reldate 'start-prev-month + (G_ "Start of previous month") + (G_ "First day of the previous month.") + gnc:get-start-prev-month) - (gnc:reldate-string-db - 'store 'end-prev-month-string - (N_ "End of previous month")) - (gnc:reldate-string-db - 'store 'end-prev-month-desc - (N_ "Last day of previous month.")) + (make-reldate 'end-prev-month + (G_ "End of previous month") + (G_ "Last day of previous month.") + gnc:get-end-prev-month) - (gnc:reldate-string-db - 'store 'start-next-month-string - (N_ "Start of next month")) - (gnc:reldate-string-db - 'store 'start-next-month-desc - (N_ "First day of the next month.")) + (make-reldate 'start-next-month + (G_ "Start of next month") + (G_ "First day of the next month.") + gnc:get-start-next-month) - (gnc:reldate-string-db - 'store 'end-next-month-string - (N_ "End of next month")) - (gnc:reldate-string-db - 'store 'end-next-month-desc - (N_ "Last day of next month.")) + (make-reldate 'end-next-month + (G_ "End of next month") + (G_ "Last day of next month.") + gnc:get-end-next-month) - (gnc:reldate-string-db - 'store 'start-current-quarter-string - (N_ "Start of current quarter")) - (gnc:reldate-string-db - 'store 'start-current-quarter-desc - (N_ "First day of the current quarterly accounting period.")) + (make-reldate 'start-current-quarter + (G_ "Start of current quarter") + (G_ "First day of the current quarterly accounting period.") + gnc:get-start-current-quarter) - (gnc:reldate-string-db - 'store 'end-current-quarter-string - (N_ "End of current quarter")) - (gnc:reldate-string-db - 'store 'end-current-quarter-desc - (N_ "Last day of the current quarterly accounting period.")) + (make-reldate 'end-current-quarter + (G_ "End of current quarter") + (G_ "Last day of the current quarterly accounting period.") + gnc:get-end-current-quarter) - (gnc:reldate-string-db - 'store 'start-prev-quarter-string - (N_ "Start of previous quarter")) - (gnc:reldate-string-db - 'store 'start-prev-quarter-desc - (N_ "First day of the previous quarterly accounting period.")) + (make-reldate 'start-prev-quarter + (G_ "Start of previous quarter") + (G_ "First day of the previous quarterly accounting period.") + gnc:get-start-prev-quarter) - (gnc:reldate-string-db - 'store 'end-prev-quarter-string - (N_ "End of previous quarter")) - (gnc:reldate-string-db - 'store 'end-prev-quarter-desc - (N_ "Last day of previous quarterly accounting period.")) + (make-reldate 'end-prev-quarter + (G_ "End of previous quarter") + (G_ "Last day of previous quarterly accounting period.") + gnc:get-end-prev-quarter) - (gnc:reldate-string-db - 'store 'start-next-quarter-string - (N_ "Start of next quarter")) - (gnc:reldate-string-db - 'store 'start-next-quarter-desc - (N_ "First day of the next quarterly accounting period.")) + (make-reldate 'start-next-quarter + (G_ "Start of next quarter") + (G_ "First day of the next quarterly accounting period.") + gnc:get-start-next-quarter) - (gnc:reldate-string-db - 'store 'end-next-quarter-string - (N_ "End of next quarter")) - (gnc:reldate-string-db - 'store 'end-next-quarter-desc - (N_ "Last day of next quarterly accounting period.")) + (make-reldate 'end-next-quarter + (G_ "End of next quarter") + (G_ "Last day of next quarterly accounting period.") + gnc:get-end-next-quarter) - (gnc:reldate-string-db - 'store 'today-string - (N_ "Today")) - (gnc:reldate-string-db - 'store 'today-desc (N_ "The current date.")) + (make-reldate 'today + (G_ "Today") + (G_ "The current date.") + gnc:get-today) - (gnc:reldate-string-db - 'store 'one-month-ago-string - (N_ "One Month Ago")) - (gnc:reldate-string-db - 'store 'one-month-ago-desc (N_ "One Month Ago.")) + (make-reldate 'one-month-ago + (G_ "One Month Ago") + (G_ "One Month Ago.") + gnc:get-one-month-ago) - (gnc:reldate-string-db - 'store 'one-week-ago-string - (N_ "One Week Ago")) - (gnc:reldate-string-db - 'store 'one-week-ago-desc (N_ "One Week Ago.")) + (make-reldate 'three-months-ago + (G_ "Three Months Ago") + (G_ "Three Months Ago.") + gnc:get-three-months-ago) - (gnc:reldate-string-db - 'store 'three-months-ago-string - (N_ "Three Months Ago")) - (gnc:reldate-string-db - 'store 'three-months-ago-desc (N_ "Three Months Ago.")) + (make-reldate 'six-months-ago + (G_ "Six Months Ago") + (G_ "Six Months Ago.") + gnc:get-three-months-ago) - (gnc:reldate-string-db - 'store 'six-months-ago-string - (N_ "Six Months Ago")) - (gnc:reldate-string-db - 'store 'six-months-ago-desc (N_ "Six Months Ago.")) + (make-reldate 'one-year-ago + (G_ "One Year Ago") + (G_ "One Year Ago.") + gnc:get-one-year-ago) - (gnc:reldate-string-db - 'store 'one-year-ago-string (N_ "One Year Ago")) - (gnc:reldate-string-db - 'store 'one-year-ago-desc (N_ "One Year Ago.")) + (make-reldate 'one-month-ahead + (G_ "One Month Ahead") + (G_ "One Month Ahead.") + gnc:get-one-month-ahead) - (gnc:reldate-string-db - 'store 'one-month-ahead-string - (N_ "One Month Ahead")) - (gnc:reldate-string-db - 'store 'one-month-ahead-desc (N_ "One Month Ahead.")) + (make-reldate 'three-months-ahead + (G_ "Three Months Ahead") + (G_ "Three Months Ahead.") + gnc:get-three-months-ahead) - (gnc:reldate-string-db - 'store 'one-week-ahead-string - (N_ "One Week Ahead")) - (gnc:reldate-string-db - 'store 'one-week-ahead-desc (N_ "One Week Ahead.")) + (make-reldate 'six-months-ahead + (G_ "Six Months Ahead") + (G_ "Six Months Ahead.") + gnc:get-three-months-ahead) - (gnc:reldate-string-db - 'store 'three-months-ahead-string - (N_ "Three Months Ahead")) - (gnc:reldate-string-db - 'store 'three-months-ahead-desc (N_ "Three Months Ahead.")) - - (gnc:reldate-string-db - 'store 'six-months-ahead-string - (N_ "Six Months Ahead")) - (gnc:reldate-string-db - 'store 'six-months-ahead-desc (N_ "Six Months Ahead.")) - - (gnc:reldate-string-db - 'store 'one-year-ahead-string (N_ "One Year Ahead")) - (gnc:reldate-string-db - 'store 'one-year-ahead-desc (N_ "One Year Ahead.")) - - (set! gnc:relative-date-values - (list - (vector 'start-cal-year - (gnc:reldate-string-db 'lookup 'start-cal-year-string) - (gnc:reldate-string-db 'lookup 'start-cal-year-desc) - gnc:get-start-cal-year) - (vector 'end-cal-year - (gnc:reldate-string-db 'lookup 'end-cal-year-string) - (gnc:reldate-string-db 'lookup 'end-cal-year-desc) - gnc:get-end-cal-year) - (vector 'start-prev-year - (gnc:reldate-string-db 'lookup 'start-prev-year-string) - (gnc:reldate-string-db 'lookup 'start-prev-year-desc) - gnc:get-start-prev-year) - (vector 'start-next-year - (gnc:reldate-string-db 'lookup 'start-next-year-string) - (gnc:reldate-string-db 'lookup 'start-next-year-desc) - gnc:get-start-next-year) - (vector 'end-prev-year - (gnc:reldate-string-db 'lookup 'end-prev-year-string) - (gnc:reldate-string-db 'lookup 'end-prev-year-desc) - gnc:get-end-prev-year) - (vector 'end-next-year - (gnc:reldate-string-db 'lookup 'end-next-year-string) - (gnc:reldate-string-db 'lookup 'end-next-year-desc) - gnc:get-end-next-year) - (vector 'start-accounting-period - (gnc:reldate-string-db 'lookup 'start-accounting-period-string) - (gnc:reldate-string-db 'lookup 'start-accounting-period-desc) - gnc:get-start-accounting-period) - (vector 'end-accounting-period - (gnc:reldate-string-db 'lookup 'end-accounting-period-string) - (gnc:reldate-string-db 'lookup 'end-accounting-period-desc) - gnc:get-end-accounting-period) - (vector 'start-this-month - (gnc:reldate-string-db 'lookup 'start-this-month-string) - (gnc:reldate-string-db 'lookup 'start-this-month-desc) - gnc:get-start-this-month) - (vector 'end-this-month - (gnc:reldate-string-db 'lookup 'end-this-month-string) - (gnc:reldate-string-db 'lookup 'end-this-month-desc) - gnc:get-end-this-month) - (vector 'start-prev-month - (gnc:reldate-string-db 'lookup 'start-prev-month-string) - (gnc:reldate-string-db 'lookup 'start-prev-month-desc) - gnc:get-start-prev-month) - (vector 'end-prev-month - (gnc:reldate-string-db 'lookup 'end-prev-month-string) - (gnc:reldate-string-db 'lookup 'end-prev-month-desc) - gnc:get-end-prev-month) - (vector 'start-next-month - (gnc:reldate-string-db 'lookup 'start-next-month-string) - (gnc:reldate-string-db 'lookup 'start-next-month-desc) - gnc:get-start-next-month) - (vector 'end-next-month - (gnc:reldate-string-db 'lookup 'end-next-month-string) - (gnc:reldate-string-db 'lookup 'end-next-month-desc) - gnc:get-end-next-month) - (vector 'start-current-quarter - (gnc:reldate-string-db 'lookup 'start-current-quarter-string) - (gnc:reldate-string-db 'lookup 'start-current-quarter-desc) - gnc:get-start-current-quarter) - (vector 'end-current-quarter - (gnc:reldate-string-db 'lookup 'end-current-quarter-string) - (gnc:reldate-string-db 'lookup 'end-current-quarter-desc) - gnc:get-end-current-quarter) - (vector 'start-prev-quarter - (gnc:reldate-string-db 'lookup 'start-prev-quarter-string) - (gnc:reldate-string-db 'lookup 'start-prev-quarter-desc) - gnc:get-start-prev-quarter) - (vector 'end-prev-quarter - (gnc:reldate-string-db 'lookup 'end-prev-quarter-string) - (gnc:reldate-string-db 'lookup 'end-prev-quarter-desc) - gnc:get-end-prev-quarter) - (vector 'start-next-quarter - (gnc:reldate-string-db 'lookup 'start-next-quarter-string) - (gnc:reldate-string-db 'lookup 'start-next-quarter-desc) - gnc:get-start-next-quarter) - (vector 'end-next-quarter - (gnc:reldate-string-db 'lookup 'end-next-quarter-string) - (gnc:reldate-string-db 'lookup 'end-next-quarter-desc) - gnc:get-end-next-quarter) - (vector 'today - (gnc:reldate-string-db 'lookup 'today-string) - (gnc:reldate-string-db 'lookup 'today-desc) - gnc:get-today) - (vector 'one-month-ago - (gnc:reldate-string-db 'lookup 'one-month-ago-string) - (gnc:reldate-string-db 'lookup 'one-month-ago-desc) - gnc:get-one-month-ago) - (vector 'three-months-ago - (gnc:reldate-string-db 'lookup 'three-months-ago-string) - (gnc:reldate-string-db 'lookup 'three-months-ago-desc) - gnc:get-three-months-ago) - (vector 'six-months-ago - (gnc:reldate-string-db 'lookup 'six-months-ago-string) - (gnc:reldate-string-db 'lookup 'six-months-ago-desc) - gnc:get-three-months-ago) - (vector 'one-year-ago - (gnc:reldate-string-db 'lookup 'one-year-ago-string) - (gnc:reldate-string-db 'lookup 'one-year-ago-desc) - gnc:get-one-year-ago) - (vector 'one-month-ahead - (gnc:reldate-string-db 'lookup 'one-month-ahead-string) - (gnc:reldate-string-db 'lookup 'one-month-ahead-desc) - gnc:get-one-month-ahead) - (vector 'three-months-ahead - (gnc:reldate-string-db 'lookup 'three-months-ahead-string) - (gnc:reldate-string-db 'lookup 'three-months-ahead-desc) - gnc:get-three-months-ahead) - (vector 'six-months-ahead - (gnc:reldate-string-db 'lookup 'six-months-ahead-string) - (gnc:reldate-string-db 'lookup 'six-months-ahead-desc) - gnc:get-three-months-ahead) - (vector 'one-year-ahead - (gnc:reldate-string-db 'lookup 'one-year-ahead-string) - (gnc:reldate-string-db 'lookup 'one-year-ahead-desc) - gnc:get-one-year-ahead))) - - ;; initialise gnc:relative-date-hash - (set! gnc:relative-date-hash (make-hash-table)) - (for-each - (lambda (reldate) - (hash-set! gnc:relative-date-hash (gnc:reldate-get-symbol reldate) reldate)) - gnc:relative-date-values)) + (make-reldate 'one-year-ahead + (G_ "One Year Ahead") + (G_ "One Year Ahead.") + gnc:get-one-year-ahead))) From b67bf4b761b3d73c32c3e6662c6626e30ff5e2cb Mon Sep 17 00:00:00 2001 From: Christopher Lam Date: Sun, 22 Nov 2020 21:21:58 +0800 Subject: [PATCH 155/167] [c-interface] deprecate gnc:make-string-database --- libgnucash/app-utils/c-interface.scm | 2 ++ 1 file changed, 2 insertions(+) diff --git a/libgnucash/app-utils/c-interface.scm b/libgnucash/app-utils/c-interface.scm index 486b4d442f..a2bb2a0122 100644 --- a/libgnucash/app-utils/c-interface.scm +++ b/libgnucash/app-utils/c-interface.scm @@ -78,6 +78,8 @@ ;; translated with gettext. (define (gnc:make-string-database) (define string-hash (make-hash-table)) + (issue-deprecation-warning "gnc:make-string-database is deprecate. record \ +translatable strings with N_ and G_.") (lambda args (match args (('lookup key) (G_ (hash-ref string-hash key))) From 8b5dd55dc4248f8dcf43f65d582549f23ee12a44 Mon Sep 17 00:00:00 2001 From: Christopher Lam Date: Sun, 22 Nov 2020 21:56:35 +0800 Subject: [PATCH 156/167] Revert "[c-interface] deprecate gnc:make-string-database" This reverts commit b67bf4b761b3d73c32c3e6662c6626e30ff5e2cb. --- libgnucash/app-utils/c-interface.scm | 2 -- 1 file changed, 2 deletions(-) diff --git a/libgnucash/app-utils/c-interface.scm b/libgnucash/app-utils/c-interface.scm index a2bb2a0122..486b4d442f 100644 --- a/libgnucash/app-utils/c-interface.scm +++ b/libgnucash/app-utils/c-interface.scm @@ -78,8 +78,6 @@ ;; translated with gettext. (define (gnc:make-string-database) (define string-hash (make-hash-table)) - (issue-deprecation-warning "gnc:make-string-database is deprecate. record \ -translatable strings with N_ and G_.") (lambda args (match args (('lookup key) (G_ (hash-ref string-hash key))) From 72982de588f5a495c7a927cf02d8d3347d890fe4 Mon Sep 17 00:00:00 2001 From: Christopher Lam Date: Sun, 22 Nov 2020 21:56:42 +0800 Subject: [PATCH 157/167] Revert "[date-utilities] Convert reldate list into srfi-9 records" This reverts commit 3be79359651eea57d417d57eaec97976f0b3fbbe. --- libgnucash/app-utils/date-utilities.scm | 450 +++++++++++++++++------- 1 file changed, 319 insertions(+), 131 deletions(-) diff --git a/libgnucash/app-utils/date-utilities.scm b/libgnucash/app-utils/date-utilities.scm index 7fdfa0bbe4..6d7faae88a 100644 --- a/libgnucash/app-utils/date-utilities.scm +++ b/libgnucash/app-utils/date-utilities.scm @@ -22,7 +22,6 @@ (use-modules (gnucash core-utils)) -(use-modules (srfi srfi-9)) ;; get stuff from localtime date vector (define (gnc:date-get-year datevec) @@ -409,17 +408,14 @@ ;; relative-date functions start here ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; -(define-record-type :reldates - (make-reldate symbol string desc fn) - gnc:reldate? - (symbol gnc:reldate-get-symbol) - (string gnc:reldate-get-string) - (desc gnc:reldate-get-desc) - (fn gnc:reldate-get-fn)) +(define (gnc:reldate-get-symbol x) (vector-ref x 0)) +(define (gnc:reldate-get-string x) (vector-ref x 1)) +(define (gnc:reldate-get-desc x) (vector-ref x 2)) +(define (gnc:reldate-get-fn x) (vector-ref x 3)) ;; the globally available hash of reldates (hash-key = reldate ;; symbols, hash-value = a vector, reldate data). -(define gnc:relative-date-hash (make-hash-table)) +(define gnc:relative-date-hash #f) (define (gnc:get-absolute-from-relative-date date-symbol) ;; used in options.scm @@ -785,154 +781,346 @@ Defaulting to today.")) (set-tm:isdst now -1) (gnc-mktime now)))) -(for-each - (lambda (reldate) - (hashq-set! gnc:relative-date-hash - (gnc:reldate-get-symbol reldate) - reldate)) +;; There is no GNC:RELATIVE-DATES list like the one mentioned in +;; gnucash-design.info, is there? Here are the currently defined +;; items, loosely grouped. +;;today +;;start-cal-year end-cal-year start-prev-year end-prev-year +;;start-this-month end-this-month start-prev-month end-prev-month +;;start-current-quarter end-current-quarter start-prev-quarter +;;end-prev-quarter +;;one-month-ago three-months-ago six-months-ago one-year-ago +;;start-cur-fin-year start-prev-fin-year end-prev-fin-year - (list - (make-reldate 'start-cal-year - (G_ "Start of this year") - (G_ "First day of the current calendar year.") - gnc:get-start-cal-year) +(define gnc:reldate-string-db (gnc:make-string-database)) +(define gnc:relative-date-values #f) +(unless gnc:relative-date-hash + (gnc:reldate-string-db + 'store 'start-cal-year-string + (N_ "Start of this year")) + (gnc:reldate-string-db + 'store 'start-cal-year-desc + (N_ "First day of the current calendar year.")) - (make-reldate 'end-cal-year - (G_ "End of this year") - (G_ "Last day of the current calendar year.") - gnc:get-end-cal-year) + (gnc:reldate-string-db + 'store 'end-cal-year-string + (N_ "End of this year")) + (gnc:reldate-string-db + 'store 'end-cal-year-desc + (N_ "Last day of the current calendar year.")) - (make-reldate 'start-prev-year - (G_ "Start of previous year") - (G_ "First day of the previous calendar year.") - gnc:get-start-prev-year) + (gnc:reldate-string-db + 'store 'start-prev-year-string + (N_ "Start of previous year")) + (gnc:reldate-string-db + 'store 'start-prev-year-desc + (N_ "First day of the previous calendar year.")) - (make-reldate 'start-next-year - (G_ "Start of next year") - (G_ "First day of the next calendar year.") - gnc:get-start-next-year) + (gnc:reldate-string-db + 'store 'end-prev-year-string + (N_ "End of previous year")) + (gnc:reldate-string-db + 'store 'end-prev-year-desc + (N_ "Last day of the previous calendar year.")) - (make-reldate 'end-prev-year - (G_ "End of previous year") - (G_ "Last day of the previous calendar year.") - gnc:get-end-prev-year) + (gnc:reldate-string-db + 'store 'start-next-year-string + (N_ "Start of next year")) + (gnc:reldate-string-db + 'store 'start-next-year-desc + (N_ "First day of the next calendar year.")) - (make-reldate 'end-next-year - (G_ "End of next year") - (G_ "Last day of the next calendar year.") - gnc:get-end-next-year) + (gnc:reldate-string-db + 'store 'end-next-year-string + (N_ "End of next year")) + (gnc:reldate-string-db + 'store 'end-next-year-desc + (N_ "Last day of the next calendar year.")) - (make-reldate 'start-accounting-period - (G_ "Start of accounting period") - (G_ "First day of the accounting period, as set in the global preferences.") - gnc:get-start-accounting-period) + (gnc:reldate-string-db + 'store 'start-accounting-period-string + (N_ "Start of accounting period")) + (gnc:reldate-string-db + 'store 'start-accounting-period-desc + (N_ "First day of the accounting period, as set in the global preferences.")) - (make-reldate 'end-accounting-period - (G_ "End of accounting period") - (G_ "Last day of the accounting period, as set in the global preferences.") - gnc:get-end-accounting-period) + (gnc:reldate-string-db + 'store 'end-accounting-period-string + (N_ "End of accounting period")) + (gnc:reldate-string-db + 'store 'end-accounting-period-desc + (N_ "Last day of the accounting period, as set in the global preferences.")) - (make-reldate 'start-this-month - (G_ "Start of this month") - (G_ "First day of the current month.") - gnc:get-start-this-month) + (gnc:reldate-string-db + 'store 'start-this-month-string + (N_ "Start of this month")) + (gnc:reldate-string-db + 'store 'start-this-month-desc + (N_ "First day of the current month.")) - (make-reldate 'end-this-month - (G_ "End of this month") - (G_ "Last day of the current month.") - gnc:get-end-this-month) + (gnc:reldate-string-db + 'store 'end-this-month-string + (N_ "End of this month")) + (gnc:reldate-string-db + 'store 'end-this-month-desc + (N_ "Last day of the current month.")) - (make-reldate 'start-prev-month - (G_ "Start of previous month") - (G_ "First day of the previous month.") - gnc:get-start-prev-month) + (gnc:reldate-string-db + 'store 'start-prev-month-string + (N_ "Start of previous month")) + (gnc:reldate-string-db + 'store 'start-prev-month-desc + (N_ "First day of the previous month.")) - (make-reldate 'end-prev-month - (G_ "End of previous month") - (G_ "Last day of previous month.") - gnc:get-end-prev-month) + (gnc:reldate-string-db + 'store 'end-prev-month-string + (N_ "End of previous month")) + (gnc:reldate-string-db + 'store 'end-prev-month-desc + (N_ "Last day of previous month.")) - (make-reldate 'start-next-month - (G_ "Start of next month") - (G_ "First day of the next month.") - gnc:get-start-next-month) + (gnc:reldate-string-db + 'store 'start-next-month-string + (N_ "Start of next month")) + (gnc:reldate-string-db + 'store 'start-next-month-desc + (N_ "First day of the next month.")) - (make-reldate 'end-next-month - (G_ "End of next month") - (G_ "Last day of next month.") - gnc:get-end-next-month) + (gnc:reldate-string-db + 'store 'end-next-month-string + (N_ "End of next month")) + (gnc:reldate-string-db + 'store 'end-next-month-desc + (N_ "Last day of next month.")) - (make-reldate 'start-current-quarter - (G_ "Start of current quarter") - (G_ "First day of the current quarterly accounting period.") - gnc:get-start-current-quarter) + (gnc:reldate-string-db + 'store 'start-current-quarter-string + (N_ "Start of current quarter")) + (gnc:reldate-string-db + 'store 'start-current-quarter-desc + (N_ "First day of the current quarterly accounting period.")) - (make-reldate 'end-current-quarter - (G_ "End of current quarter") - (G_ "Last day of the current quarterly accounting period.") - gnc:get-end-current-quarter) + (gnc:reldate-string-db + 'store 'end-current-quarter-string + (N_ "End of current quarter")) + (gnc:reldate-string-db + 'store 'end-current-quarter-desc + (N_ "Last day of the current quarterly accounting period.")) - (make-reldate 'start-prev-quarter - (G_ "Start of previous quarter") - (G_ "First day of the previous quarterly accounting period.") - gnc:get-start-prev-quarter) + (gnc:reldate-string-db + 'store 'start-prev-quarter-string + (N_ "Start of previous quarter")) + (gnc:reldate-string-db + 'store 'start-prev-quarter-desc + (N_ "First day of the previous quarterly accounting period.")) - (make-reldate 'end-prev-quarter - (G_ "End of previous quarter") - (G_ "Last day of previous quarterly accounting period.") - gnc:get-end-prev-quarter) + (gnc:reldate-string-db + 'store 'end-prev-quarter-string + (N_ "End of previous quarter")) + (gnc:reldate-string-db + 'store 'end-prev-quarter-desc + (N_ "Last day of previous quarterly accounting period.")) - (make-reldate 'start-next-quarter - (G_ "Start of next quarter") - (G_ "First day of the next quarterly accounting period.") - gnc:get-start-next-quarter) + (gnc:reldate-string-db + 'store 'start-next-quarter-string + (N_ "Start of next quarter")) + (gnc:reldate-string-db + 'store 'start-next-quarter-desc + (N_ "First day of the next quarterly accounting period.")) - (make-reldate 'end-next-quarter - (G_ "End of next quarter") - (G_ "Last day of next quarterly accounting period.") - gnc:get-end-next-quarter) + (gnc:reldate-string-db + 'store 'end-next-quarter-string + (N_ "End of next quarter")) + (gnc:reldate-string-db + 'store 'end-next-quarter-desc + (N_ "Last day of next quarterly accounting period.")) - (make-reldate 'today - (G_ "Today") - (G_ "The current date.") - gnc:get-today) + (gnc:reldate-string-db + 'store 'today-string + (N_ "Today")) + (gnc:reldate-string-db + 'store 'today-desc (N_ "The current date.")) - (make-reldate 'one-month-ago - (G_ "One Month Ago") - (G_ "One Month Ago.") - gnc:get-one-month-ago) + (gnc:reldate-string-db + 'store 'one-month-ago-string + (N_ "One Month Ago")) + (gnc:reldate-string-db + 'store 'one-month-ago-desc (N_ "One Month Ago.")) - (make-reldate 'three-months-ago - (G_ "Three Months Ago") - (G_ "Three Months Ago.") - gnc:get-three-months-ago) + (gnc:reldate-string-db + 'store 'one-week-ago-string + (N_ "One Week Ago")) + (gnc:reldate-string-db + 'store 'one-week-ago-desc (N_ "One Week Ago.")) - (make-reldate 'six-months-ago - (G_ "Six Months Ago") - (G_ "Six Months Ago.") - gnc:get-three-months-ago) + (gnc:reldate-string-db + 'store 'three-months-ago-string + (N_ "Three Months Ago")) + (gnc:reldate-string-db + 'store 'three-months-ago-desc (N_ "Three Months Ago.")) - (make-reldate 'one-year-ago - (G_ "One Year Ago") - (G_ "One Year Ago.") - gnc:get-one-year-ago) + (gnc:reldate-string-db + 'store 'six-months-ago-string + (N_ "Six Months Ago")) + (gnc:reldate-string-db + 'store 'six-months-ago-desc (N_ "Six Months Ago.")) - (make-reldate 'one-month-ahead - (G_ "One Month Ahead") - (G_ "One Month Ahead.") - gnc:get-one-month-ahead) + (gnc:reldate-string-db + 'store 'one-year-ago-string (N_ "One Year Ago")) + (gnc:reldate-string-db + 'store 'one-year-ago-desc (N_ "One Year Ago.")) - (make-reldate 'three-months-ahead - (G_ "Three Months Ahead") - (G_ "Three Months Ahead.") - gnc:get-three-months-ahead) + (gnc:reldate-string-db + 'store 'one-month-ahead-string + (N_ "One Month Ahead")) + (gnc:reldate-string-db + 'store 'one-month-ahead-desc (N_ "One Month Ahead.")) - (make-reldate 'six-months-ahead - (G_ "Six Months Ahead") - (G_ "Six Months Ahead.") - gnc:get-three-months-ahead) + (gnc:reldate-string-db + 'store 'one-week-ahead-string + (N_ "One Week Ahead")) + (gnc:reldate-string-db + 'store 'one-week-ahead-desc (N_ "One Week Ahead.")) - (make-reldate 'one-year-ahead - (G_ "One Year Ahead") - (G_ "One Year Ahead.") - gnc:get-one-year-ahead))) + (gnc:reldate-string-db + 'store 'three-months-ahead-string + (N_ "Three Months Ahead")) + (gnc:reldate-string-db + 'store 'three-months-ahead-desc (N_ "Three Months Ahead.")) + + (gnc:reldate-string-db + 'store 'six-months-ahead-string + (N_ "Six Months Ahead")) + (gnc:reldate-string-db + 'store 'six-months-ahead-desc (N_ "Six Months Ahead.")) + + (gnc:reldate-string-db + 'store 'one-year-ahead-string (N_ "One Year Ahead")) + (gnc:reldate-string-db + 'store 'one-year-ahead-desc (N_ "One Year Ahead.")) + + (set! gnc:relative-date-values + (list + (vector 'start-cal-year + (gnc:reldate-string-db 'lookup 'start-cal-year-string) + (gnc:reldate-string-db 'lookup 'start-cal-year-desc) + gnc:get-start-cal-year) + (vector 'end-cal-year + (gnc:reldate-string-db 'lookup 'end-cal-year-string) + (gnc:reldate-string-db 'lookup 'end-cal-year-desc) + gnc:get-end-cal-year) + (vector 'start-prev-year + (gnc:reldate-string-db 'lookup 'start-prev-year-string) + (gnc:reldate-string-db 'lookup 'start-prev-year-desc) + gnc:get-start-prev-year) + (vector 'start-next-year + (gnc:reldate-string-db 'lookup 'start-next-year-string) + (gnc:reldate-string-db 'lookup 'start-next-year-desc) + gnc:get-start-next-year) + (vector 'end-prev-year + (gnc:reldate-string-db 'lookup 'end-prev-year-string) + (gnc:reldate-string-db 'lookup 'end-prev-year-desc) + gnc:get-end-prev-year) + (vector 'end-next-year + (gnc:reldate-string-db 'lookup 'end-next-year-string) + (gnc:reldate-string-db 'lookup 'end-next-year-desc) + gnc:get-end-next-year) + (vector 'start-accounting-period + (gnc:reldate-string-db 'lookup 'start-accounting-period-string) + (gnc:reldate-string-db 'lookup 'start-accounting-period-desc) + gnc:get-start-accounting-period) + (vector 'end-accounting-period + (gnc:reldate-string-db 'lookup 'end-accounting-period-string) + (gnc:reldate-string-db 'lookup 'end-accounting-period-desc) + gnc:get-end-accounting-period) + (vector 'start-this-month + (gnc:reldate-string-db 'lookup 'start-this-month-string) + (gnc:reldate-string-db 'lookup 'start-this-month-desc) + gnc:get-start-this-month) + (vector 'end-this-month + (gnc:reldate-string-db 'lookup 'end-this-month-string) + (gnc:reldate-string-db 'lookup 'end-this-month-desc) + gnc:get-end-this-month) + (vector 'start-prev-month + (gnc:reldate-string-db 'lookup 'start-prev-month-string) + (gnc:reldate-string-db 'lookup 'start-prev-month-desc) + gnc:get-start-prev-month) + (vector 'end-prev-month + (gnc:reldate-string-db 'lookup 'end-prev-month-string) + (gnc:reldate-string-db 'lookup 'end-prev-month-desc) + gnc:get-end-prev-month) + (vector 'start-next-month + (gnc:reldate-string-db 'lookup 'start-next-month-string) + (gnc:reldate-string-db 'lookup 'start-next-month-desc) + gnc:get-start-next-month) + (vector 'end-next-month + (gnc:reldate-string-db 'lookup 'end-next-month-string) + (gnc:reldate-string-db 'lookup 'end-next-month-desc) + gnc:get-end-next-month) + (vector 'start-current-quarter + (gnc:reldate-string-db 'lookup 'start-current-quarter-string) + (gnc:reldate-string-db 'lookup 'start-current-quarter-desc) + gnc:get-start-current-quarter) + (vector 'end-current-quarter + (gnc:reldate-string-db 'lookup 'end-current-quarter-string) + (gnc:reldate-string-db 'lookup 'end-current-quarter-desc) + gnc:get-end-current-quarter) + (vector 'start-prev-quarter + (gnc:reldate-string-db 'lookup 'start-prev-quarter-string) + (gnc:reldate-string-db 'lookup 'start-prev-quarter-desc) + gnc:get-start-prev-quarter) + (vector 'end-prev-quarter + (gnc:reldate-string-db 'lookup 'end-prev-quarter-string) + (gnc:reldate-string-db 'lookup 'end-prev-quarter-desc) + gnc:get-end-prev-quarter) + (vector 'start-next-quarter + (gnc:reldate-string-db 'lookup 'start-next-quarter-string) + (gnc:reldate-string-db 'lookup 'start-next-quarter-desc) + gnc:get-start-next-quarter) + (vector 'end-next-quarter + (gnc:reldate-string-db 'lookup 'end-next-quarter-string) + (gnc:reldate-string-db 'lookup 'end-next-quarter-desc) + gnc:get-end-next-quarter) + (vector 'today + (gnc:reldate-string-db 'lookup 'today-string) + (gnc:reldate-string-db 'lookup 'today-desc) + gnc:get-today) + (vector 'one-month-ago + (gnc:reldate-string-db 'lookup 'one-month-ago-string) + (gnc:reldate-string-db 'lookup 'one-month-ago-desc) + gnc:get-one-month-ago) + (vector 'three-months-ago + (gnc:reldate-string-db 'lookup 'three-months-ago-string) + (gnc:reldate-string-db 'lookup 'three-months-ago-desc) + gnc:get-three-months-ago) + (vector 'six-months-ago + (gnc:reldate-string-db 'lookup 'six-months-ago-string) + (gnc:reldate-string-db 'lookup 'six-months-ago-desc) + gnc:get-three-months-ago) + (vector 'one-year-ago + (gnc:reldate-string-db 'lookup 'one-year-ago-string) + (gnc:reldate-string-db 'lookup 'one-year-ago-desc) + gnc:get-one-year-ago) + (vector 'one-month-ahead + (gnc:reldate-string-db 'lookup 'one-month-ahead-string) + (gnc:reldate-string-db 'lookup 'one-month-ahead-desc) + gnc:get-one-month-ahead) + (vector 'three-months-ahead + (gnc:reldate-string-db 'lookup 'three-months-ahead-string) + (gnc:reldate-string-db 'lookup 'three-months-ahead-desc) + gnc:get-three-months-ahead) + (vector 'six-months-ahead + (gnc:reldate-string-db 'lookup 'six-months-ahead-string) + (gnc:reldate-string-db 'lookup 'six-months-ahead-desc) + gnc:get-three-months-ahead) + (vector 'one-year-ahead + (gnc:reldate-string-db 'lookup 'one-year-ahead-string) + (gnc:reldate-string-db 'lookup 'one-year-ahead-desc) + gnc:get-one-year-ahead))) + + ;; initialise gnc:relative-date-hash + (set! gnc:relative-date-hash (make-hash-table)) + (for-each + (lambda (reldate) + (hash-set! gnc:relative-date-hash (gnc:reldate-get-symbol reldate) reldate)) + gnc:relative-date-values)) From d11bdb3e3af518de86ef52a58c609b1e879929cc Mon Sep 17 00:00:00 2001 From: Christopher Lam Date: Sun, 22 Nov 2020 22:36:51 +0800 Subject: [PATCH 158/167] Bug 798015 - cash flow numerical-overflow error is caused by pricedb containing an invalid gnc_numeric price. multiplication of (invalid) price with amount causes a report crash. Fix: if invalid price, return zero for amount converted to report currency. --- libgnucash/engine/gnc-pricedb.c | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/libgnucash/engine/gnc-pricedb.c b/libgnucash/engine/gnc-pricedb.c index 481df22adc..654c88fc54 100644 --- a/libgnucash/engine/gnc-pricedb.c +++ b/libgnucash/engine/gnc-pricedb.c @@ -2616,6 +2616,10 @@ static gnc_numeric convert_amount_at_date (GNCPriceDB *pdb, price = gnc_pricedb_get_nearest_price (pdb, orig_currency, new_currency, t); + /* the price retrieved may be invalid. return zero. see 798015 */ + if (gnc_numeric_check (price)) + return gnc_numeric_zero (); + return gnc_numeric_mul (amount, price, gnc_commodity_get_fraction (new_currency), GNC_HOW_DENOM_EXACT | GNC_HOW_RND_ROUND); From 8f32992100c6b1ca2554b023d3cf6df2b8aafca7 Mon Sep 17 00:00:00 2001 From: Christopher Lam Date: Mon, 23 Nov 2020 07:48:57 +0800 Subject: [PATCH 159/167] [gnc-engine-guile.c] return #f when gnc_numeric has error otherwise it'd throw guile div/0 exception --- bindings/guile/gnc-engine-guile.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/bindings/guile/gnc-engine-guile.c b/bindings/guile/gnc-engine-guile.c index 06daad9e2a..ada25aab55 100644 --- a/bindings/guile/gnc-engine-guile.c +++ b/bindings/guile/gnc-engine-guile.c @@ -1731,8 +1731,8 @@ gnc_scm_to_numeric(SCM gncnum) SCM gnc_numeric_to_scm(gnc_numeric arg) { - return scm_divide(scm_from_int64(arg.num), - scm_from_int64(arg.denom)); + return gnc_numeric_check (arg) ? SCM_BOOL_F : + scm_divide (scm_from_int64 (arg.num), scm_from_int64 (arg.denom)); } static SCM From a1c517b4ba107818ed289833ba9f1318cc01ed4d Mon Sep 17 00:00:00 2001 From: Christopher Lam Date: Mon, 23 Nov 2020 21:33:35 +0800 Subject: [PATCH 160/167] [gnc_scm_to_numeric] create NaN gnc_numeric instead of runtime error If guile calls a C function which expects gnc_numeric but sends a non-number, it will create a gnc_numeric_error object. This will allow error gnc_numeric to be handled elsewhere. Also the overflow gnc_numeric was incorrectly created. --- bindings/guile/gnc-engine-guile.c | 20 +++++++++++++++----- 1 file changed, 15 insertions(+), 5 deletions(-) diff --git a/bindings/guile/gnc-engine-guile.c b/bindings/guile/gnc-engine-guile.c index ada25aab55..36915cd64c 100644 --- a/bindings/guile/gnc-engine-guile.c +++ b/bindings/guile/gnc-engine-guile.c @@ -1721,11 +1721,21 @@ gnc_scm2query (SCM query_scm) gnc_numeric gnc_scm_to_numeric(SCM gncnum) { - if (scm_is_signed_integer(scm_numerator(gncnum), INT64_MIN, INT64_MAX) && - scm_is_signed_integer(scm_denominator(gncnum), INT64_MIN, INT64_MAX)) - return gnc_numeric_create(scm_to_int64(scm_numerator(gncnum)), - scm_to_int64(scm_denominator(gncnum))); - return gnc_numeric_create(0, GNC_ERROR_OVERFLOW); + SCM num, denom; + + /* Not a number. */ + if (!scm_is_number (gncnum)) + return gnc_numeric_error (GNC_ERROR_ARG); + + num = scm_numerator (gncnum); + denom = scm_denominator (gncnum); + + /* scm overflows 64-bit numbers */ + if (!scm_is_signed_integer (num, INT64_MIN, INT64_MAX) || + !scm_is_signed_integer (denom, INT64_MIN, INT64_MAX)) + return gnc_numeric_error (GNC_ERROR_OVERFLOW); + + return gnc_numeric_create (scm_to_int64 (num), scm_to_int64 (denom)); } SCM From 1bf863d9a1a033268bb65863b98553eb04510413 Mon Sep 17 00:00:00 2001 From: John Ralls Date: Tue, 24 Nov 2020 14:53:34 -0800 Subject: [PATCH 161/167] Register: Don't double-delete when typing over a selection. In numcell or formulacell. --- gnucash/register/register-core/formulacell.c | 2 ++ gnucash/register/register-core/numcell.c | 2 ++ 2 files changed, 4 insertions(+) diff --git a/gnucash/register/register-core/formulacell.c b/gnucash/register/register-core/formulacell.c index 76027d4b75..f5fbba6bdd 100644 --- a/gnucash/register/register-core/formulacell.c +++ b/gnucash/register/register-core/formulacell.c @@ -151,6 +151,8 @@ gnc_formula_cell_modify_verify( BasicCell *_cell, if (change == NULL) { gnc_basic_cell_set_value_internal( &cell->cell, newval ); + // Remove any selection. + *end_selection = *start_selection = *cursor_position; return; } diff --git a/gnucash/register/register-core/numcell.c b/gnucash/register/register-core/numcell.c index ff92adfbee..644462832b 100644 --- a/gnucash/register/register-core/numcell.c +++ b/gnucash/register/register-core/numcell.c @@ -92,6 +92,8 @@ gnc_num_cell_modify_verify (BasicCell *_cell, /* then just accept the proposed change */ { gnc_basic_cell_set_value_internal (&cell->cell, newval); + // Remove any selection. + *end_selection = *start_selection = *cursor_position; return; } From ac6312608043314f456119698be6f59eaaa8ad86 Mon Sep 17 00:00:00 2001 From: "Frank H. Ellenberger" Date: Thu, 26 Nov 2020 14:51:49 +0100 Subject: [PATCH 162/167] L10N: Update Glossaries to commit 3d7e66d LANG, translated, fuzzy, untranslated messages: bg: 181, 10, 5 ca: 175, 15, 6 da: 169, 18, 9 de: 196. de_CH: 175, 15, 6 el: 10, 124, 62 es: 158, 20, 18 fi: 145, 2, 49 fr: 184, 6, 6 he: 192, 2, 2 hr: 195, 1 hu: 174, 16, 6 id: 177, 6, 13 it: 193, 1, 2 lt: 182, 9, 5 nb: 189, 7 nl: 195, 1 pl: 174, 15, 7 pt: 192, 2, 2 pt_BR: 174, 15, 7 ru: 150, 24, 22 rw: 7, 133, 56 sk: 174, 15, 7 sv: 168, 15, 13 vi: 175, 15, 6 zh_CN: 174, 16, 6 zh_TW: 170, 14, 12 --- po/glossary/ar.po | 8 +- po/glossary/bg.po | 9 +- po/glossary/ca.po | 8 +- po/glossary/da.po | 8 +- po/glossary/de_CH.po | 8 +- po/glossary/el.po | 8 +- po/glossary/es.po | 9 +- po/glossary/fi.po | 8 +- po/glossary/fr.po | 8 +- po/glossary/he.po | 8 +- po/glossary/hr.po | 8 +- po/glossary/hu.po | 8 +- po/glossary/id.po | 6 +- po/glossary/it.po | 8 +- po/glossary/lt.po | 9 +- po/glossary/nb.po | 9 +- po/glossary/nl.po | 8 +- po/glossary/pl.po | 9 +- po/glossary/pt.po | 8 +- po/glossary/pt_BR.po | 8 +- po/glossary/ru.po | 8 +- po/glossary/rw.po | 8 +- po/glossary/sk.po | 8 +- po/glossary/sv.po | 8 +- po/glossary/vi.po | 9 +- po/glossary/zh_CN.po | 8 +- po/glossary/zh_TW.po | 8 +- po/pt.po | 2710 ++++++++++++++++++++++-------------------- 28 files changed, 1611 insertions(+), 1319 deletions(-) diff --git a/po/glossary/ar.po b/po/glossary/ar.po index 74831a1b84..7b8d661221 100644 --- a/po/glossary/ar.po +++ b/po/glossary/ar.po @@ -5,7 +5,9 @@ msgid "" msgstr "" "Project-Id-Version: GnuCash 2.6.8\n" -"POT-Creation-Date: 2020-08-08 18:07+0200\n" +"Report-Msgid-Bugs-To: https://bugs.gnucash.org/enter_bug.cgi?" +"product=GnuCash&component=Translations\n" +"POT-Creation-Date: 2020-11-26 14:29+0100\n" "PO-Revision-Date: \n" "Last-Translator: Frank H. Ellenberger \n" "Language-Team: None\n" @@ -366,6 +368,10 @@ msgstr "" msgid "double entry" msgstr "" +#. "Transactions or bills/invoices can contain a document link which links either to some file on the local disk or to some arbitrary URL." +msgid "document link" +msgstr "" + #. "a person who works for somebody or a company in return for wages" msgid "employee" msgstr "" diff --git a/po/glossary/bg.po b/po/glossary/bg.po index 089cc896d6..1c0c60c4ee 100644 --- a/po/glossary/bg.po +++ b/po/glossary/bg.po @@ -6,8 +6,9 @@ msgid "" msgstr "" "Project-Id-Version: gnucash 2.2.5\n" -"Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2020-08-08 18:07+0200\n" +"Report-Msgid-Bugs-To: https://bugs.gnucash.org/enter_bug.cgi?" +"product=GnuCash&component=Translations\n" +"POT-Creation-Date: 2020-11-26 14:29+0100\n" "PO-Revision-Date: 2011-10-25 13:18+0200\n" "Last-Translator: Rosi Dimova \n" "Language-Team: BG \n" @@ -382,6 +383,10 @@ msgstr "отстъпка" msgid "double entry" msgstr "двустранно счетоводство" +#. "Transactions or bills/invoices can contain a document link which links either to some file on the local disk or to some arbitrary URL." +msgid "document link" +msgstr "" + #. "a person who works for somebody or a company in return for wages" msgid "employee" msgstr "служител" diff --git a/po/glossary/ca.po b/po/glossary/ca.po index d7150e797c..be1a9c9719 100644 --- a/po/glossary/ca.po +++ b/po/glossary/ca.po @@ -6,7 +6,9 @@ msgid "" msgstr "" "Project-Id-Version: gnucash-glossary 2.2\n" -"POT-Creation-Date: 2020-08-08 18:07+0200\n" +"Report-Msgid-Bugs-To: https://bugs.gnucash.org/enter_bug.cgi?" +"product=GnuCash&component=Translations\n" +"POT-Creation-Date: 2020-11-26 14:29+0100\n" "PO-Revision-Date: 2008-08-03 16:43+0200\n" "Last-Translator: David Planella Molas \n" "Language-Team: Catalan \n" @@ -379,6 +381,10 @@ msgstr "compte" msgid "double entry" msgstr "entrada doble" +#. "Transactions or bills/invoices can contain a document link which links either to some file on the local disk or to some arbitrary URL." +msgid "document link" +msgstr "" + #. "a person who works for somebody or a company in return for wages" msgid "employee" msgstr "treballador" diff --git a/po/glossary/da.po b/po/glossary/da.po index a678b7bc9f..9f0cae9ac0 100644 --- a/po/glossary/da.po +++ b/po/glossary/da.po @@ -7,7 +7,9 @@ msgid "" msgstr "" "Project-Id-Version: gnucash-glossary 2.3.5\n" -"POT-Creation-Date: 2020-08-08 18:07+0200\n" +"Report-Msgid-Bugs-To: https://bugs.gnucash.org/enter_bug.cgi?" +"product=GnuCash&component=Translations\n" +"POT-Creation-Date: 2020-11-26 14:29+0100\n" "PO-Revision-Date: 2009-09-04 22:41+0200\n" "Last-Translator: Joe Hansen \n" "Language-Team: Danish \n" @@ -380,6 +382,10 @@ msgstr "konto" msgid "double entry" msgstr "dobbelt bogholderi" +#. "Transactions or bills/invoices can contain a document link which links either to some file on the local disk or to some arbitrary URL." +msgid "document link" +msgstr "" + #. "a person who works for somebody or a company in return for wages" msgid "employee" msgstr "medarbejder" diff --git a/po/glossary/de_CH.po b/po/glossary/de_CH.po index d134824e10..0349c05cac 100644 --- a/po/glossary/de_CH.po +++ b/po/glossary/de_CH.po @@ -5,7 +5,9 @@ msgid "" msgstr "" "Project-Id-Version: gnucash 1.7\n" -"POT-Creation-Date: 2020-08-08 18:07+0200\n" +"Report-Msgid-Bugs-To: https://bugs.gnucash.org/enter_bug.cgi?" +"product=GnuCash&component=Translations\n" +"POT-Creation-Date: 2020-11-26 14:29+0100\n" "PO-Revision-Date: 2008-03-03 00:47+0100\n" "Last-Translator: Raffael Luthiger \n" "Language-Team: DE\n" @@ -380,6 +382,10 @@ msgstr "Konto" msgid "double entry" msgstr "Doppelte Buchführung" +#. "Transactions or bills/invoices can contain a document link which links either to some file on the local disk or to some arbitrary URL." +msgid "document link" +msgstr "" + #. "a person who works for somebody or a company in return for wages" msgid "employee" msgstr "Angestellter<" diff --git a/po/glossary/el.po b/po/glossary/el.po index 86b09eaf35..4a9a2f0c87 100644 --- a/po/glossary/el.po +++ b/po/glossary/el.po @@ -5,7 +5,9 @@ msgid "" msgstr "" "Project-Id-Version: gnucash-glossary 1.0\n" -"POT-Creation-Date: 2020-08-08 18:07+0200\n" +"Report-Msgid-Bugs-To: https://bugs.gnucash.org/enter_bug.cgi?" +"product=GnuCash&component=Translations\n" +"POT-Creation-Date: 2020-11-26 14:29+0100\n" "PO-Revision-Date: 2001-12-28 00:17+0000\n" "Last-Translator: Simos Xenitellis \n" "Language-Team: Greek \n" @@ -427,6 +429,10 @@ msgstr "λογαριασμός" msgid "double entry" msgstr "διπλό" +#. "Transactions or bills/invoices can contain a document link which links either to some file on the local disk or to some arbitrary URL." +msgid "document link" +msgstr "" + #. "a person who works for somebody or a company in return for wages" #, fuzzy msgid "employee" diff --git a/po/glossary/es.po b/po/glossary/es.po index e455f820d8..92a8eaeedd 100644 --- a/po/glossary/es.po +++ b/po/glossary/es.po @@ -8,8 +8,9 @@ msgid "" msgstr "" "Project-Id-Version: gnucash-glossary 1.8.9\n" -"Report-Msgid-Bugs-To: Eneko Lacunza \n" -"POT-Creation-Date: 2020-08-08 18:07+0200\n" +"Report-Msgid-Bugs-To: https://bugs.gnucash.org/enter_bug.cgi?" +"product=GnuCash&component=Translations\n" +"POT-Creation-Date: 2020-11-26 14:29+0100\n" "PO-Revision-Date: 2004-11-23 22:19+0100\n" "Last-Translator: Eneko Lacunza \n" "Language-Team: Spanish \n" @@ -381,6 +382,10 @@ msgstr "cuenta" msgid "double entry" msgstr "partida doble" +#. "Transactions or bills/invoices can contain a document link which links either to some file on the local disk or to some arbitrary URL." +msgid "document link" +msgstr "" + #. "a person who works for somebody or a company in return for wages" msgid "employee" msgstr "empleado" diff --git a/po/glossary/fi.po b/po/glossary/fi.po index 8dc7d2e4ec..4780e96d70 100644 --- a/po/glossary/fi.po +++ b/po/glossary/fi.po @@ -5,7 +5,9 @@ msgid "" msgstr "" "Project-Id-Version: GnuCash 3.10\n" -"POT-Creation-Date: 2020-08-08 18:07+0200\n" +"Report-Msgid-Bugs-To: https://bugs.gnucash.org/enter_bug.cgi?" +"product=GnuCash&component=Translations\n" +"POT-Creation-Date: 2020-11-26 14:29+0100\n" "PO-Revision-Date: 2020-04-18 20:54+0300\n" "Last-Translator: Marko Kohtala \n" "Language-Team: \n" @@ -368,6 +370,10 @@ msgstr "alennus" msgid "double entry" msgstr "kahdenkertainen" +#. "Transactions or bills/invoices can contain a document link which links either to some file on the local disk or to some arbitrary URL." +msgid "document link" +msgstr "" + #. "a person who works for somebody or a company in return for wages" msgid "employee" msgstr "työntekijä" diff --git a/po/glossary/fr.po b/po/glossary/fr.po index 33fa86e36c..dbb52a6e43 100644 --- a/po/glossary/fr.po +++ b/po/glossary/fr.po @@ -7,7 +7,9 @@ msgid "" msgstr "" "Project-Id-Version: gnucash 2.0\n" -"POT-Creation-Date: 2020-08-08 18:07+0200\n" +"Report-Msgid-Bugs-To: https://bugs.gnucash.org/enter_bug.cgi?" +"product=GnuCash&component=Translations\n" +"POT-Creation-Date: 2020-11-26 14:29+0100\n" "PO-Revision-Date: 2018-10-25 12:30+0200\n" "Last-Translator: La Boussole \n" "Language-Team: français \n" @@ -378,6 +380,10 @@ msgstr "escompte" msgid "double entry" msgstr "entrée double" +#. "Transactions or bills/invoices can contain a document link which links either to some file on the local disk or to some arbitrary URL." +msgid "document link" +msgstr "" + #. "a person who works for somebody or a company in return for wages" msgid "employee" msgstr "employé(e)" diff --git a/po/glossary/he.po b/po/glossary/he.po index 5435489745..d2a146e0d0 100644 --- a/po/glossary/he.po +++ b/po/glossary/he.po @@ -6,7 +6,9 @@ msgid "" msgstr "" "Project-Id-Version: gnucash 3.6\n" -"POT-Creation-Date: 2020-08-08 18:07+0200\n" +"Report-Msgid-Bugs-To: https://bugs.gnucash.org/enter_bug.cgi?" +"product=GnuCash&component=Translations\n" +"POT-Creation-Date: 2020-11-26 14:29+0100\n" "PO-Revision-Date: 2019-08-12 17:55+0300\n" "Last-Translator: Avi Markovitz \n" "Language-Team: HE\n" @@ -370,6 +372,10 @@ msgstr "הנחה" msgid "double entry" msgstr "הכנסה כפולה" +#. "Transactions or bills/invoices can contain a document link which links either to some file on the local disk or to some arbitrary URL." +msgid "document link" +msgstr "" + #. "a person who works for somebody or a company in return for wages" msgid "employee" msgstr "עובד" diff --git a/po/glossary/hr.po b/po/glossary/hr.po index 3f918fc10f..527b54020c 100644 --- a/po/glossary/hr.po +++ b/po/glossary/hr.po @@ -5,7 +5,9 @@ msgid "" msgstr "" "Project-Id-Version: GnuCash Glossary 3.10\n" -"POT-Creation-Date: 2020-08-08 18:07+0200\n" +"Report-Msgid-Bugs-To: https://bugs.gnucash.org/enter_bug.cgi?" +"product=GnuCash&component=Translations\n" +"POT-Creation-Date: 2020-11-26 14:29+0100\n" "PO-Revision-Date: 2020-04-17 17:25+0200\n" "Last-Translator: Milo Ivir \n" "Language-Team: \n" @@ -371,6 +373,10 @@ msgstr "skonto" msgid "double entry" msgstr "dvojno knjigovodstvo" +#. "Transactions or bills/invoices can contain a document link which links either to some file on the local disk or to some arbitrary URL." +msgid "document link" +msgstr "" + #. "a person who works for somebody or a company in return for wages" msgid "employee" msgstr "radnik" diff --git a/po/glossary/hu.po b/po/glossary/hu.po index 2b53a9a918..19aaf711ab 100644 --- a/po/glossary/hu.po +++ b/po/glossary/hu.po @@ -5,7 +5,9 @@ msgid "" msgstr "" "Project-Id-Version: @gnucash@\n" -"POT-Creation-Date: 2020-08-08 18:07+0200\n" +"Report-Msgid-Bugs-To: https://bugs.gnucash.org/enter_bug.cgi?" +"product=GnuCash&component=Translations\n" +"POT-Creation-Date: 2020-11-26 14:29+0100\n" "PO-Revision-Date: 2007-07-31 22:59+0200\n" "Last-Translator: Kornel Tako \n" "Language-Team: Hungarian \n" @@ -380,6 +382,10 @@ msgstr "Számla " msgid "double entry" msgstr "Dupla bejegyzés" +#. "Transactions or bills/invoices can contain a document link which links either to some file on the local disk or to some arbitrary URL." +msgid "document link" +msgstr "" + #. "a person who works for somebody or a company in return for wages" msgid "employee" msgstr "Munkatárs" diff --git a/po/glossary/id.po b/po/glossary/id.po index c3bcbc2b84..6c2920acc8 100644 --- a/po/glossary/id.po +++ b/po/glossary/id.po @@ -9,7 +9,7 @@ msgstr "" "Project-Id-Version: GnuCash 4.1\n" "Report-Msgid-Bugs-To: https://bugs.gnucash.org/enter_bug.cgi?" "product=GnuCash&component=Translations\n" -"POT-Creation-Date: 2020-08-13 14:52+0700\n" +"POT-Creation-Date: 2020-11-26 14:29+0100\n" "PO-Revision-Date: 2020-08-15 21:20+0700\n" "Last-Translator: Triyan W. Nugroho \n" "Language-Team: Indonesian\n" @@ -372,6 +372,10 @@ msgstr "diskon" msgid "double entry" msgstr "pembukuan ganda" +#. "Transactions or bills/invoices can contain a document link which links either to some file on the local disk or to some arbitrary URL." +msgid "document link" +msgstr "" + #. "a person who works for somebody or a company in return for wages" msgid "employee" msgstr "karyawan" diff --git a/po/glossary/it.po b/po/glossary/it.po index 941bf5f3a9..07516e0634 100644 --- a/po/glossary/it.po +++ b/po/glossary/it.po @@ -16,7 +16,9 @@ msgid "" msgstr "" "Project-Id-Version: gnucash-glossary 1.7.4\n" -"POT-Creation-Date: 2020-08-08 18:07+0200\n" +"Report-Msgid-Bugs-To: https://bugs.gnucash.org/enter_bug.cgi?" +"product=GnuCash&component=Translations\n" +"POT-Creation-Date: 2020-11-26 14:29+0100\n" "PO-Revision-Date: 2020-07-09 03:18+0200\n" "Last-Translator: Giuseppe Foti \n" "Language-Team: Italian \n" @@ -380,6 +382,10 @@ msgstr "sconto" msgid "double entry" msgstr "partita doppia" +#. "Transactions or bills/invoices can contain a document link which links either to some file on the local disk or to some arbitrary URL." +msgid "document link" +msgstr "" + #. "a person who works for somebody or a company in return for wages" msgid "employee" msgstr "lavoratore" diff --git a/po/glossary/lt.po b/po/glossary/lt.po index 99e38e0904..734876b4ed 100644 --- a/po/glossary/lt.po +++ b/po/glossary/lt.po @@ -4,8 +4,9 @@ msgid "" msgstr "" "Project-Id-Version: lt\n" -"Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2020-08-08 18:07+0200\n" +"Report-Msgid-Bugs-To: https://bugs.gnucash.org/enter_bug.cgi?" +"product=GnuCash&component=Translations\n" +"POT-Creation-Date: 2020-11-26 14:29+0100\n" "PO-Revision-Date: 2011-08-28 20:55+0300\n" "Last-Translator: Aurimas Fišeras \n" "Language-Team: komp_lt@konf.lt\n" @@ -378,6 +379,10 @@ msgstr "nuolaida" msgid "double entry" msgstr "dvejybinis į́rašas" +#. "Transactions or bills/invoices can contain a document link which links either to some file on the local disk or to some arbitrary URL." +msgid "document link" +msgstr "" + #. "a person who works for somebody or a company in return for wages" msgid "employee" msgstr "darbuotojas" diff --git a/po/glossary/nb.po b/po/glossary/nb.po index 8ec6a7e9d3..31af7c7fde 100644 --- a/po/glossary/nb.po +++ b/po/glossary/nb.po @@ -9,8 +9,9 @@ msgid "" msgstr "" "Project-Id-Version: gnucash-glossary 0.1\n" -"Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2020-08-08 18:07+0200\n" +"Report-Msgid-Bugs-To: https://bugs.gnucash.org/enter_bug.cgi?" +"product=GnuCash&component=Translations\n" +"POT-Creation-Date: 2020-11-26 14:29+0100\n" "PO-Revision-Date: 2020-08-16 18:02+0200\n" "Last-Translator: John Erling Blad \n" "Language-Team: Norwegian/Bokmaal \n" @@ -372,6 +373,10 @@ msgstr "rabatt" msgid "double entry" msgstr "dobbel bokføring" +#. "Transactions or bills/invoices can contain a document link which links either to some file on the local disk or to some arbitrary URL." +msgid "document link" +msgstr "" + #. "a person who works for somebody or a company in return for wages" msgid "employee" msgstr "arbeidstaker" diff --git a/po/glossary/nl.po b/po/glossary/nl.po index 67c63cf0cf..19a15c8806 100644 --- a/po/glossary/nl.po +++ b/po/glossary/nl.po @@ -6,7 +6,9 @@ msgid "" msgstr "" "Project-Id-Version: GnuCash 4.1+\n" -"POT-Creation-Date: 2020-08-08 18:07+0200\n" +"Report-Msgid-Bugs-To: https://bugs.gnucash.org/enter_bug.cgi?" +"product=GnuCash&component=Translations\n" +"POT-Creation-Date: 2020-11-26 14:29+0100\n" "PO-Revision-Date: 2020-08-18 17:43+0200\n" "Last-Translator: Geert Janssens \n" "Language-Team: NONE\n" @@ -368,6 +370,10 @@ msgstr "korting" msgid "double entry" msgstr "dubbele boekhouding" +#. "Transactions or bills/invoices can contain a document link which links either to some file on the local disk or to some arbitrary URL." +msgid "document link" +msgstr "" + #. "a person who works for somebody or a company in return for wages" msgid "employee" msgstr "medewerker" diff --git a/po/glossary/pl.po b/po/glossary/pl.po index aa0d407349..c1b904eb28 100644 --- a/po/glossary/pl.po +++ b/po/glossary/pl.po @@ -6,8 +6,9 @@ msgid "" msgstr "" "Project-Id-Version: GnuCash 2.2.x\n" -"Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2020-08-08 18:07+0200\n" +"Report-Msgid-Bugs-To: https://bugs.gnucash.org/enter_bug.cgi?" +"product=GnuCash&component=Translations\n" +"POT-Creation-Date: 2020-11-26 14:29+0100\n" "PO-Revision-Date: 2010-09-06 12:20+0200\n" "Last-Translator: Radzisław Galler \n" "Language-Team: Polish \n" @@ -379,6 +380,10 @@ msgstr "konto" msgid "double entry" msgstr "podwójny zapis" +#. "Transactions or bills/invoices can contain a document link which links either to some file on the local disk or to some arbitrary URL." +msgid "document link" +msgstr "" + #. "a person who works for somebody or a company in return for wages" msgid "employee" msgstr "pracownik" diff --git a/po/glossary/pt.po b/po/glossary/pt.po index 634a1cd16c..402dde1140 100644 --- a/po/glossary/pt.po +++ b/po/glossary/pt.po @@ -6,7 +6,9 @@ msgid "" msgstr "" "Project-Id-Version: gnucash-2.4\n" -"POT-Creation-Date: 2020-08-08 18:07+0200\n" +"Report-Msgid-Bugs-To: https://bugs.gnucash.org/enter_bug.cgi?" +"product=GnuCash&component=Translations\n" +"POT-Creation-Date: 2020-11-26 14:29+0100\n" "PO-Revision-Date: 2018-10-09 09:47+0100\n" "Last-Translator: Tiago Neiva \n" "Language-Team: Portuguese \n" @@ -373,6 +375,10 @@ msgstr "desconto" msgid "double entry" msgstr "dupla entrada" +#. "Transactions or bills/invoices can contain a document link which links either to some file on the local disk or to some arbitrary URL." +msgid "document link" +msgstr "" + #. "a person who works for somebody or a company in return for wages" msgid "employee" msgstr "empregado" diff --git a/po/glossary/pt_BR.po b/po/glossary/pt_BR.po index e83ac83ffa..8c9951a1aa 100644 --- a/po/glossary/pt_BR.po +++ b/po/glossary/pt_BR.po @@ -10,7 +10,9 @@ msgid "" msgstr "" "Project-Id-Version: 1.8\n" -"POT-Creation-Date: 2020-08-08 18:07+0200\n" +"Report-Msgid-Bugs-To: https://bugs.gnucash.org/enter_bug.cgi?" +"product=GnuCash&component=Translations\n" +"POT-Creation-Date: 2020-11-26 14:29+0100\n" "PO-Revision-Date: 2007-07-08 00:44-0300\n" "Last-Translator: Leonardo Ferreira Fontenelle \n" "Language-Team: none\n" @@ -382,6 +384,10 @@ msgstr "conta" msgid "double entry" msgstr "dupla entrada" +#. "Transactions or bills/invoices can contain a document link which links either to some file on the local disk or to some arbitrary URL." +msgid "document link" +msgstr "" + #. "a person who works for somebody or a company in return for wages" msgid "employee" msgstr "funcionário" diff --git a/po/glossary/ru.po b/po/glossary/ru.po index 35ab89e77a..18740b2e88 100644 --- a/po/glossary/ru.po +++ b/po/glossary/ru.po @@ -5,7 +5,9 @@ msgid "" msgstr "" "Project-Id-Version: ru\n" -"POT-Creation-Date: 2020-08-08 18:07+0200\n" +"Report-Msgid-Bugs-To: https://bugs.gnucash.org/enter_bug.cgi?" +"product=GnuCash&component=Translations\n" +"POT-Creation-Date: 2020-11-26 14:29+0100\n" "PO-Revision-Date: 2008-01-30 00:10+0300\n" "Last-Translator: Sergey Belyashov \n" "Language-Team: russian \n" @@ -386,6 +388,10 @@ msgstr "счет" msgid "double entry" msgstr "двойная бухгалтерия" +#. "Transactions or bills/invoices can contain a document link which links either to some file on the local disk or to some arbitrary URL." +msgid "document link" +msgstr "" + #. "a person who works for somebody or a company in return for wages" msgid "employee" msgstr "сотрудник" diff --git a/po/glossary/rw.po b/po/glossary/rw.po index fd334a137e..55f330562e 100644 --- a/po/glossary/rw.po +++ b/po/glossary/rw.po @@ -14,7 +14,9 @@ msgid "" msgstr "" "Project-Id-Version: gnucash-glossary 1.8.9\n" -"POT-Creation-Date: 2020-08-08 18:07+0200\n" +"Report-Msgid-Bugs-To: https://bugs.gnucash.org/enter_bug.cgi?" +"product=GnuCash&component=Translations\n" +"POT-Creation-Date: 2020-11-26 14:29+0100\n" "PO-Revision-Date: 2005-04-04 10:55-0700\n" "Last-Translator: Steven Michael Murphy \n" "Language-Team: Kinyarwanda \n" @@ -457,6 +459,10 @@ msgstr "Aderesi" msgid "double entry" msgstr "MAHARAKUBIRI Icyinjijwe" +#. "Transactions or bills/invoices can contain a document link which links either to some file on the local disk or to some arbitrary URL." +msgid "document link" +msgstr "" + #. "a person who works for somebody or a company in return for wages" msgid "employee" msgstr "" diff --git a/po/glossary/sk.po b/po/glossary/sk.po index 1dd1377edf..3fe0b83bb9 100644 --- a/po/glossary/sk.po +++ b/po/glossary/sk.po @@ -7,7 +7,9 @@ msgid "" msgstr "" "Project-Id-Version: gnucash-glossary\n" -"POT-Creation-Date: 2020-08-08 18:07+0200\n" +"Report-Msgid-Bugs-To: https://bugs.gnucash.org/enter_bug.cgi?" +"product=GnuCash&component=Translations\n" +"POT-Creation-Date: 2020-11-26 14:29+0100\n" "PO-Revision-Date: 2008-11-14 21:02+0100\n" "Last-Translator: Zdenko Podobny \n" "Language-Team: Slovak \n" @@ -381,6 +383,10 @@ msgstr "účet" msgid "double entry" msgstr "podvojnosť" +#. "Transactions or bills/invoices can contain a document link which links either to some file on the local disk or to some arbitrary URL." +msgid "document link" +msgstr "" + #. "a person who works for somebody or a company in return for wages" msgid "employee" msgstr "zamestnanec" diff --git a/po/glossary/sv.po b/po/glossary/sv.po index f5bfb2efc7..0df6fcd889 100644 --- a/po/glossary/sv.po +++ b/po/glossary/sv.po @@ -8,7 +8,9 @@ msgid "" msgstr "" "Project-Id-Version: gnucash-glossary 1.9.1\n" -"POT-Creation-Date: 2020-08-08 18:07+0200\n" +"Report-Msgid-Bugs-To: https://bugs.gnucash.org/enter_bug.cgi?" +"product=GnuCash&component=Translations\n" +"POT-Creation-Date: 2020-11-26 14:29+0100\n" "PO-Revision-Date: 2006-05-04 07:47+0200\n" "Last-Translator: Jonas Norling \n" "Language-Team: Swedish \n" @@ -381,6 +383,10 @@ msgstr "konto" msgid "double entry" msgstr "dubbel bokföring" +#. "Transactions or bills/invoices can contain a document link which links either to some file on the local disk or to some arbitrary URL." +msgid "document link" +msgstr "" + #. "a person who works for somebody or a company in return for wages" msgid "employee" msgstr "anställd" diff --git a/po/glossary/vi.po b/po/glossary/vi.po index dd34cf7ea3..ba441bf00a 100644 --- a/po/glossary/vi.po +++ b/po/glossary/vi.po @@ -5,8 +5,9 @@ msgid "" msgstr "" "Project-Id-Version: gnucash-glossary-1.9.1\n" -"Report-Msgid-Bugs-To: bug-gnucash@gnu.org\n" -"POT-Creation-Date: 2020-08-08 18:07+0200\n" +"Report-Msgid-Bugs-To: https://bugs.gnucash.org/enter_bug.cgi?" +"product=GnuCash&component=Translations\n" +"POT-Creation-Date: 2020-11-26 14:29+0100\n" "PO-Revision-Date: 2006-03-09 22:30+1030\n" "Last-Translator: Clytie Siddall \n" "Language-Team: Vietnamese \n" @@ -380,6 +381,10 @@ msgstr "tài khoản" msgid "double entry" msgstr "kế toán kép" +#. "Transactions or bills/invoices can contain a document link which links either to some file on the local disk or to some arbitrary URL." +msgid "document link" +msgstr "" + #. "a person who works for somebody or a company in return for wages" msgid "employee" msgstr "nhân viên" diff --git a/po/glossary/zh_CN.po b/po/glossary/zh_CN.po index 62e87bedff..d1288f56f1 100644 --- a/po/glossary/zh_CN.po +++ b/po/glossary/zh_CN.po @@ -5,7 +5,9 @@ msgid "" msgstr "" "Project-Id-Version: gnucash-glossary\n" -"POT-Creation-Date: 2020-08-08 18:07+0200\n" +"Report-Msgid-Bugs-To: https://bugs.gnucash.org/enter_bug.cgi?" +"product=GnuCash&component=Translations\n" +"POT-Creation-Date: 2020-11-26 14:29+0100\n" "PO-Revision-Date: 2010-05-05 13:47+1000\n" "Last-Translator: Tao Wang \n" "Language-Team: Simplified Chinese \n" @@ -447,6 +449,10 @@ msgstr "会计科目" msgid "double entry" msgstr "复式记账" +#. "Transactions or bills/invoices can contain a document link which links either to some file on the local disk or to some arbitrary URL." +msgid "document link" +msgstr "" + # 为某个人或者某个公司工作并且赚取薪金的人 #. "a person who works for somebody or a company in return for wages" msgid "employee" diff --git a/po/glossary/zh_TW.po b/po/glossary/zh_TW.po index f7eeb7be1f..0a560e096a 100644 --- a/po/glossary/zh_TW.po +++ b/po/glossary/zh_TW.po @@ -6,7 +6,9 @@ msgid "" msgstr "" "Project-Id-Version: gnucash-glossary\n" -"POT-Creation-Date: 2020-08-08 18:07+0200\n" +"Report-Msgid-Bugs-To: https://bugs.gnucash.org/enter_bug.cgi?" +"product=GnuCash&component=Translations\n" +"POT-Creation-Date: 2020-11-26 14:29+0100\n" "PO-Revision-Date: 2011-03-10 22:11+0800\n" "Last-Translator: Kuang-che Wu \n" "Language-Team: traditional Chinese \n" @@ -377,6 +379,10 @@ msgstr "折扣" msgid "double entry" msgstr "複式簿記" +#. "Transactions or bills/invoices can contain a document link which links either to some file on the local disk or to some arbitrary URL." +msgid "document link" +msgstr "" + #. "a person who works for somebody or a company in return for wages" msgid "employee" msgstr "僱員" diff --git a/po/pt.po b/po/pt.po index 652061eb2a..317e182c0a 100644 --- a/po/pt.po +++ b/po/pt.po @@ -8,7 +8,7 @@ msgstr "" "Project-Id-Version: GnuCash 3.3\n" "Report-Msgid-Bugs-To: https://bugs.gnucash.org/enter_bug.cgi?" "product=GnuCash&component=Translations\n" -"POT-Creation-Date: 2020-10-14 01:49+0200\n" +"POT-Creation-Date: 2020-11-26 13:39+0100\n" "PO-Revision-Date: 2019-07-07 09:03+0100\n" "Last-Translator: Pedro Albuquerque \n" "Language-Team: Portuguese \n" @@ -818,7 +818,7 @@ msgid "Selected" msgstr "Seleccionados" #: gnucash/gnome/assistant-hierarchy.c:767 -#: gnucash/gnome-utils/gnc-tree-view-account.c:2335 +#: gnucash/gnome-utils/gnc-tree-view-account.c:2366 msgid "Account Types" msgstr "Tipos de conta" @@ -855,16 +855,17 @@ msgid "No" msgstr "Não" #: gnucash/gnome/assistant-hierarchy.c:1335 -#: gnucash/gnome-utils/dialog-options.c:717 -#: gnucash/gnome-utils/gnc-tree-view-account.c:965 +#: gnucash/gnome-utils/dialog-options.c:729 +#: gnucash/gnome-utils/gnc-tree-view-account.c:988 #: gnucash/gtkbuilder/dialog-account.glade:272 msgid "Placeholder" msgstr "Marcador de posição" #: gnucash/gnome/assistant-hierarchy.c:1352 -#: gnucash/gnome-utils/dialog-account.c:313 -#: gnucash/gtkbuilder/dialog-account.glade:1838 -#: libgnucash/app-utils/gnc-ui-util.c:1072 +#: gnucash/gnome-utils/dialog-account.c:351 +#: gnucash/gnome-utils/gnc-tree-view-account.c:996 +#: gnucash/gtkbuilder/dialog-account.glade:1855 +#: libgnucash/app-utils/gnc-ui-util.c:1102 msgid "Opening Balance" msgstr "Saldo inicial" @@ -927,44 +928,44 @@ msgstr "Pagamentos diversos" #. Translators: %s is "Taxes", #. * "Insurance", or similar. -#: gnucash/gnome/assistant-loan.cpp:763 +#: gnucash/gnome/assistant-loan.cpp:765 #, c-format msgid "... pay \"%s\"?" msgstr "... pagar \"%s\"?" -#: gnucash/gnome/assistant-loan.cpp:775 +#: gnucash/gnome/assistant-loan.cpp:777 msgid "via Escrow account?" msgstr "usando uma conta de garantia?" -#: gnucash/gnome/assistant-loan.cpp:922 +#: gnucash/gnome/assistant-loan.cpp:924 #: gnucash/gnome-utils/gnc-tree-model-split-reg.c:2902 #: gnucash/register/ledger-core/split-register.c:2667 msgid "Loan" msgstr "Empréstimo" #. Translators: %s is "Taxes", or "Insurance", or similar -#: gnucash/gnome/assistant-loan.cpp:1457 +#: gnucash/gnome/assistant-loan.cpp:1459 #, c-format msgid "Loan Repayment Option: \"%s\"" msgstr "Opção de pagamento de empréstimo: \"%s\"" #. Translators: The following symbols will build the * #. * header line of exported CSV files: -#: gnucash/gnome/assistant-loan.cpp:1859 gnucash/gnome/dialog-lot-viewer.c:937 +#: gnucash/gnome/assistant-loan.cpp:1861 gnucash/gnome/dialog-lot-viewer.c:937 #: gnucash/gnome/gnc-split-reg.c:682 gnucash/gnome/reconcile-view.c:429 #: gnucash/gnome-utils/gnc-tree-view-price.c:408 #: gnucash/gtkbuilder/dialog-doclink.glade:612 #: gnucash/gtkbuilder/dialog-payment.glade:253 #: gnucash/gtkbuilder/dialog-payment.glade:374 #: gnucash/gtkbuilder/dialog-transfer.glade:138 -#: gnucash/gtkbuilder/gnc-plugin-page-register2.glade:475 +#: gnucash/gtkbuilder/gnc-plugin-page-register2.glade:522 #: gnucash/gtkbuilder/gnc-plugin-page-register.glade:366 #: gnucash/import-export/bi-import/dialog-bi-import-gui.c:148 #: gnucash/import-export/csv-exp/csv-transactions-export.c:613 #: gnucash/import-export/csv-exp/csv-transactions-export.c:622 #: gnucash/import-export/csv-imp/gnc-imp-props-price.cpp:49 #: gnucash/import-export/csv-imp/gnc-imp-props-tx.cpp:58 -#: gnucash/import-export/import-main-matcher.c:1034 +#: gnucash/import-export/import-main-matcher.c:1087 #: gnucash/import-export/import-match-picker.c:393 #: gnucash/import-export/import-match-picker.c:433 #: gnucash/import-export/qif-imp/assistant-qif-import.c:3700 @@ -992,7 +993,7 @@ msgstr "Opção de pagamento de empréstimo: \"%s\"" #: gnucash/report/reports/standard/owner-report.scm:50 #: gnucash/report/reports/standard/portfolio.scm:51 #: gnucash/report/reports/standard/register.scm:130 -#: gnucash/report/reports/standard/register.scm:382 +#: gnucash/report/reports/standard/register.scm:353 #: gnucash/report/reports/support/receipt.eguile.scm:143 #: gnucash/report/reports/support/taxinvoice.eguile.scm:268 #: gnucash/report/trep-engine.scm:161 gnucash/report/trep-engine.scm:940 @@ -1000,8 +1001,8 @@ msgstr "Opção de pagamento de empréstimo: \"%s\"" msgid "Date" msgstr "Data" -#: gnucash/gnome/assistant-loan.cpp:1865 gnucash/gnome/assistant-loan.cpp:2844 -#: gnucash/gnome/assistant-loan.cpp:2906 gnucash/gnome/assistant-loan.cpp:2919 +#: gnucash/gnome/assistant-loan.cpp:1867 gnucash/gnome/assistant-loan.cpp:2846 +#: gnucash/gnome/assistant-loan.cpp:2908 gnucash/gnome/assistant-loan.cpp:2921 #: gnucash/gnome-utils/gnc-tree-model-split-reg.c:2863 #: gnucash/gnome-utils/gnc-tree-model-split-reg.c:2904 #: gnucash/gnome-utils/gnc-tree-model-split-reg.c:2909 @@ -1016,18 +1017,18 @@ msgstr "Data" #: gnucash/register/ledger-core/split-register.c:2685 #: gnucash/report/reports/standard/new-owner-report.scm:294 #: gnucash/report/reports/standard/owner-report.scm:357 -#: libgnucash/engine/Account.cpp:144 libgnucash/engine/Account.cpp:152 -#: libgnucash/engine/Account.cpp:173 libgnucash/engine/gncOwner.c:814 +#: libgnucash/engine/Account.cpp:145 libgnucash/engine/Account.cpp:153 +#: libgnucash/engine/Account.cpp:174 libgnucash/engine/gncOwner.c:814 #: libgnucash/engine/gncOwner.c:847 libgnucash/engine/gncOwner.c:877 #: libgnucash/engine/gncOwner.c:890 msgid "Payment" msgstr "Pagamento" -#: gnucash/gnome/assistant-loan.cpp:1871 gnucash/gnome/assistant-loan.cpp:2939 +#: gnucash/gnome/assistant-loan.cpp:1873 gnucash/gnome/assistant-loan.cpp:2941 msgid "Principal" msgstr "Principal" -#: gnucash/gnome/assistant-loan.cpp:1877 gnucash/gnome/assistant-loan.cpp:2959 +#: gnucash/gnome/assistant-loan.cpp:1879 gnucash/gnome/assistant-loan.cpp:2961 #: gnucash/gnome-utils/gnc-tree-model-split-reg.c:2858 #: gnucash/gnome-utils/gnc-tree-model-split-reg.c:2895 #: gnucash/gnome-utils/gnc-tree-model-split-reg.c:2903 @@ -1044,7 +1045,7 @@ msgstr "Principal" msgid "Interest" msgstr "Juros" -#: gnucash/gnome/assistant-loan.cpp:2845 +#: gnucash/gnome/assistant-loan.cpp:2847 msgid "Escrow Payment" msgstr "Pagamentos de garantia" @@ -1066,7 +1067,7 @@ msgstr "Erro ao adicionar cotação." #: gnucash/import-export/aqb/gnc-ab-utils.c:541 #: gnucash/import-export/bi-import/dialog-bi-import-gui.c:151 #: gnucash/import-export/csv-imp/gnc-imp-props-tx.cpp:65 -#: gnucash/import-export/import-main-matcher.c:1035 +#: gnucash/import-export/import-main-matcher.c:1088 #: gnucash/import-export/import-match-picker.c:392 #: gnucash/import-export/qif-imp/dialog-account-picker.c:433 #: gnucash/register/ledger-core/split-register-model.c:341 @@ -1081,7 +1082,7 @@ msgstr "Erro ao adicionar cotação." #: gnucash/report/reports/standard/owner-report.scm:48 #: gnucash/report/reports/standard/portfolio.scm:253 #: gnucash/report/reports/standard/register.scm:143 -#: gnucash/report/reports/standard/register.scm:407 +#: gnucash/report/reports/standard/register.scm:378 #: gnucash/report/trep-engine.scm:1218 msgid "Account" msgstr "Conta" @@ -1101,7 +1102,7 @@ msgstr "Símbolo" #: gnucash/report/reports/standard/general-ledger.scm:78 #: gnucash/report/reports/standard/general-ledger.scm:98 #: gnucash/report/reports/standard/register.scm:146 -#: gnucash/report/reports/standard/register.scm:412 +#: gnucash/report/reports/standard/register.scm:383 #: gnucash/report/trep-engine.scm:953 gnucash/report/trep-engine.scm:1078 #: gnucash/report/trep-engine.scm:1240 msgid "Shares" @@ -1112,8 +1113,8 @@ msgid "You don't have any stock accounts with balances!" msgstr "Não tem nenhuma conta de acções com saldos!" #: gnucash/gnome/business-gnome-utils.c:73 -#: gnucash/gnome/business-gnome-utils.c:260 gnucash/gnome/dialog-invoice.c:1462 -#: gnucash/gnome/dialog-invoice.c:1540 +#: gnucash/gnome/business-gnome-utils.c:260 gnucash/gnome/dialog-invoice.c:1476 +#: gnucash/gnome/dialog-invoice.c:1554 #: gnucash/gnome-utils/gnc-general-select.c:220 msgid "Select..." msgstr "Seleccionar..." @@ -1124,28 +1125,28 @@ msgid "Edit..." msgstr "Editar..." #: gnucash/gnome/business-gnome-utils.c:219 gnucash/gnome/dialog-doclink.c:740 -#: gnucash/gnome/dialog-invoice.c:2586 gnucash/gnome/dialog-invoice.c:2811 -#: gnucash/gnome/dialog-invoice.c:2812 gnucash/gnome/dialog-invoice.c:3521 -#: gnucash/gnome-search/dialog-search.c:1064 +#: gnucash/gnome/dialog-invoice.c:2600 gnucash/gnome/dialog-invoice.c:2825 +#: gnucash/gnome/dialog-invoice.c:2826 gnucash/gnome/dialog-invoice.c:3535 +#: gnucash/gnome-search/dialog-search.c:1073 #: gnucash/gnome-utils/gnc-tree-view-split-reg.c:2998 #: gnucash/gtkbuilder/dialog-bi-import-gui.glade:147 #: gnucash/report/reports/standard/invoice.scm:787 -#: libgnucash/engine/Account.cpp:172 libgnucash/engine/gncInvoice.c:1082 +#: libgnucash/engine/Account.cpp:173 libgnucash/engine/gncInvoice.c:1082 msgid "Bill" msgstr "Pagamento" #: gnucash/gnome/business-gnome-utils.c:222 gnucash/gnome/dialog-doclink.c:744 -#: gnucash/gnome/dialog-invoice.c:2592 gnucash/gnome/dialog-invoice.c:2818 -#: gnucash/gnome/dialog-invoice.c:2819 +#: gnucash/gnome/dialog-invoice.c:2606 gnucash/gnome/dialog-invoice.c:2832 +#: gnucash/gnome/dialog-invoice.c:2833 msgid "Voucher" msgstr "Vale" #: gnucash/gnome/business-gnome-utils.c:225 gnucash/gnome/dialog-doclink.c:748 -#: gnucash/gnome/dialog-invoice.c:3535 +#: gnucash/gnome/dialog-invoice.c:3549 #: gnucash/gnome/gnc-plugin-page-invoice.c:570 #: gnucash/gnome/gnc-plugin-page-register.c:633 -#: gnucash/gnome/gnc-plugin-page-report.c:1804 -#: gnucash/gnome-search/dialog-search.c:1080 +#: gnucash/gnome/gnc-plugin-page-report.c:1848 +#: gnucash/gnome-search/dialog-search.c:1089 #: gnucash/gnome-utils/gnc-tree-model-split-reg.c:2908 #: gnucash/gnome-utils/gnc-tree-view-split-reg.c:3073 #: gnucash/gtkbuilder/dialog-bi-import-gui.glade:167 @@ -1161,7 +1162,7 @@ msgstr "Vale" #: gnucash/report/reports/standard/taxinvoice.scm:173 #: gnucash/report/reports/support/receipt.eguile.scm:91 #: gnucash/report/reports/support/taxinvoice.eguile.scm:106 -#: libgnucash/engine/Account.cpp:153 libgnucash/engine/gncInvoice.c:1080 +#: libgnucash/engine/Account.cpp:154 libgnucash/engine/gncInvoice.c:1080 msgid "Invoice" msgstr "Factura" @@ -1171,7 +1172,7 @@ msgstr "Factura" #: gnucash/import-export/csv-imp/gnc-imp-props-price.cpp:48 #: gnucash/import-export/csv-imp/gnc-imp-props-tx.cpp:56 #: gnucash/import-export/import-pending-matches.c:192 -#: gnucash/report/reports/standard/register.scm:228 +#: gnucash/report/reports/standard/register.scm:217 #: gnucash/report/trep-engine.scm:258 gnucash/report/trep-engine.scm:291 #: gnucash/report/trep-engine.scm:341 gnucash/report/trep-engine.scm:429 #: gnucash/report/trep-engine.scm:1020 libgnucash/engine/gncOwner.c:213 @@ -1258,7 +1259,7 @@ msgid "Term \"%s\" is in use. You cannot delete it." msgstr "As condições \"%s\" estão em uso. Não as pode eliminar." #: gnucash/gnome/dialog-billterms.c:678 -#: gnucash/gnome-utils/dialog-tax-table.c:670 +#: gnucash/gnome-utils/dialog-tax-table.c:673 #, c-format msgid "Are you sure you want to delete \"%s\"?" msgstr "Tem a certeza que quer eliminar \"%s\"?" @@ -1307,21 +1308,23 @@ msgstr "Eliminar mercadoria?" #: gnucash/gnome/dialog-price-edit-db.c:206 #: gnucash/gnome/dialog-price-editor.c:232 gnucash/gnome/dialog-tax-info.c:1189 #: gnucash/gnome/gnc-plugin-budget.c:289 -#: gnucash/gnome/gnc-plugin-page-account-tree.c:1765 +#: gnucash/gnome/gnc-plugin-page-account-tree.c:1799 #: gnucash/gnome/gnc-plugin-page-invoice.c:184 #: gnucash/gnome/gnc-plugin-page-owner-tree.c:1111 #: gnucash/gnome/gnc-plugin-page-register2.c:1630 -#: gnucash/gnome/gnc-plugin-page-register.c:1984 +#: gnucash/gnome/gnc-plugin-page-register.c:1990 #: gnucash/gnome/gnc-split-reg.c:975 gnucash/gnome/gnc-split-reg.c:1013 #: gnucash/gnome/gnc-split-reg.c:1235 gnucash/gnome/gnc-split-reg.c:1503 #: gnucash/gnome/gnc-split-reg.c:1543 gnucash/gnome/window-reconcile2.c:2124 #: gnucash/gnome/window-reconcile.c:2345 #: gnucash/gnome-search/search-account.c:237 -#: gnucash/gnome-utils/dialog-account.c:679 -#: gnucash/gnome-utils/dialog-tax-table.c:600 +#: gnucash/gnome-utils/dialog-account.c:722 +#: gnucash/gnome-utils/dialog-options.c:224 +#: gnucash/gnome-utils/dialog-tax-table.c:603 #: gnucash/gnome-utils/gnc-file.c:118 gnucash/gnome-utils/gnc-file.c:366 #: gnucash/gnome-utils/gnc-file.c:664 gnucash/gnome-utils/gnc-gui-query.c:300 -#: gnucash/gnome-utils/gnc-main-window.c:1293 +#: gnucash/gnome-utils/gnc-main-window.c:1307 +#: gnucash/gnome-utils/gnc-main-window.c:1448 #: gnucash/gnome-utils/gnc-tree-control-split-reg.c:886 #: gnucash/gnome-utils/gnc-tree-control-split-reg.c:1023 #: gnucash/gnome-utils/gnc-tree-control-split-reg.c:1063 @@ -1331,7 +1334,7 @@ msgstr "Eliminar mercadoria?" #: gnucash/gtkbuilder/dialog-account.glade:383 #: gnucash/gtkbuilder/dialog-account.glade:817 #: gnucash/gtkbuilder/dialog-account.glade:1133 -#: gnucash/gtkbuilder/dialog-account.glade:1901 +#: gnucash/gtkbuilder/dialog-account.glade:1918 #: gnucash/gtkbuilder/dialog-account-picker.glade:174 #: gnucash/gtkbuilder/dialog-bi-import-gui.glade:39 #: gnucash/gtkbuilder/dialog-billterms.glade:791 @@ -1350,7 +1353,7 @@ msgstr "Eliminar mercadoria?" #: gnucash/gtkbuilder/dialog-fincalc.glade:122 #: gnucash/gtkbuilder/dialog-import.glade:46 #: gnucash/gtkbuilder/dialog-import.glade:334 -#: gnucash/gtkbuilder/dialog-import.glade:1018 +#: gnucash/gtkbuilder/dialog-import.glade:1034 #: gnucash/gtkbuilder/dialog-invoice.glade:675 #: gnucash/gtkbuilder/dialog-invoice.glade:1199 #: gnucash/gtkbuilder/dialog-job.glade:41 @@ -1380,12 +1383,12 @@ msgstr "Eliminar mercadoria?" #: gnucash/gtkbuilder/gnc-plugin-page-budget.glade:437 #: gnucash/gtkbuilder/gnc-plugin-page-budget.glade:882 #: gnucash/gtkbuilder/gnc-plugin-page-register2.glade:30 -#: gnucash/gtkbuilder/gnc-plugin-page-register2.glade:184 -#: gnucash/gtkbuilder/gnc-plugin-page-register2.glade:691 +#: gnucash/gtkbuilder/gnc-plugin-page-register2.glade:231 +#: gnucash/gtkbuilder/gnc-plugin-page-register2.glade:738 #: gnucash/gtkbuilder/gnc-plugin-page-register.glade:31 -#: gnucash/gtkbuilder/gnc-plugin-page-register.glade:588 -#: gnucash/gtkbuilder/gnc-plugin-page-register.glade:934 -#: gnucash/gtkbuilder/gnc-plugin-page-register.glade:1144 +#: gnucash/gtkbuilder/gnc-plugin-page-register.glade:582 +#: gnucash/gtkbuilder/gnc-plugin-page-register.glade:787 +#: gnucash/gtkbuilder/gnc-plugin-page-register.glade:1128 #: gnucash/gtkbuilder/gnc-tree-view-owner.glade:24 #: gnucash/gtkbuilder/window-autoclear.glade:22 #: gnucash/gtkbuilder/window-reconcile.glade:21 @@ -1406,7 +1409,7 @@ msgstr "_Cancelar" #: gnucash/gnome/dialog-commodities.c:218 #: gnucash/gnome/dialog-price-edit-db.c:207 -#: gnucash/gnome/gnc-plugin-page-account-tree.c:1766 +#: gnucash/gnome/gnc-plugin-page-account-tree.c:1800 #: gnucash/gnome/gnc-plugin-page-invoice.c:189 #: gnucash/gnome/gnc-plugin-page-owner-tree.c:1112 #: gnucash/gnome/gnc-plugin-page-sx-list.c:162 @@ -1449,7 +1452,7 @@ msgstr "O crédito tem de ser um valor positivo, ou ficar em branco." #: gnucash/gnome/dialog-customer.c:432 gnucash/gnome/dialog-employee.c:287 #: gnucash/gnome/dialog-job.c:242 gnucash/gnome/dialog-vendor.c:299 -#: gnucash/gnome-utils/dialog-account.c:1505 +#: gnucash/gnome-utils/dialog-account.c:1575 msgid "" msgstr "" @@ -1458,7 +1461,7 @@ msgid "Edit Customer" msgstr "Editar cliente" #: gnucash/gnome/dialog-customer.c:441 -#: gnucash/gnome-search/dialog-search.c:1070 +#: gnucash/gnome-search/dialog-search.c:1079 #: gnucash/gtkbuilder/dialog-customer.glade:31 msgid "New Customer" msgstr "Novo cliente" @@ -1476,9 +1479,9 @@ msgid "Customer's Invoices" msgstr "Facturas do cliente" #: gnucash/gnome/dialog-customer.c:913 gnucash/gnome/dialog-employee.c:694 -#: gnucash/gnome/dialog-invoice.c:3287 gnucash/gnome/dialog-invoice.c:3296 -#: gnucash/gnome/dialog-invoice.c:3307 gnucash/gnome/dialog-invoice.c:3562 -#: gnucash/gnome/dialog-invoice.c:3568 gnucash/gnome/dialog-job.c:561 +#: gnucash/gnome/dialog-invoice.c:3301 gnucash/gnome/dialog-invoice.c:3310 +#: gnucash/gnome/dialog-invoice.c:3321 gnucash/gnome/dialog-invoice.c:3576 +#: gnucash/gnome/dialog-invoice.c:3582 gnucash/gnome/dialog-job.c:561 #: gnucash/gnome/gnc-plugin-page-owner-tree.c:237 #: gnucash/gnome/gnc-plugin-page-owner-tree.c:296 #: gnucash/gtkbuilder/dialog-payment.glade:61 @@ -1511,8 +1514,8 @@ msgstr "Nome da empresa" msgid "Contact" msgstr "Contacto" -#: gnucash/gnome/dialog-customer.c:938 gnucash/gnome/dialog-invoice.c:3432 -#: gnucash/gnome/dialog-invoice.c:3586 gnucash/gnome/dialog-job.c:591 +#: gnucash/gnome/dialog-customer.c:938 gnucash/gnome/dialog-invoice.c:3446 +#: gnucash/gnome/dialog-invoice.c:3600 gnucash/gnome/dialog-job.c:591 #: gnucash/gnome/dialog-order.c:888 gnucash/gnome/dialog-vendor.c:741 #: gnucash/import-export/customer-import/dialog-customer-import-gui.c:129 #: gnucash/report/reports/aging.scm:537 @@ -1650,7 +1653,7 @@ msgstr "Detalhes da transacção" #: gnucash/gnome/dialog-lot-viewer.c:953 gnucash/gnome/dialog-tax-info.c:1397 #: gnucash/gnome/gnc-split-reg.c:700 gnucash/gnome/reconcile-view.c:417 #: gnucash/gnome-utils/gnc-tree-model-budget.c:102 -#: gnucash/gnome-utils/gnc-tree-view-account.c:805 +#: gnucash/gnome-utils/gnc-tree-view-account.c:828 #: gnucash/gnome-utils/gnc-tree-view-split-reg.c:2812 #: gnucash/gtkbuilder/dialog-book-close.glade:163 #: gnucash/gtkbuilder/dialog-choose-owner.glade:97 @@ -1660,14 +1663,14 @@ msgstr "Detalhes da transacção" #: gnucash/import-export/csv-exp/csv-transactions-export.c:615 #: gnucash/import-export/csv-exp/csv-transactions-export.c:624 #: gnucash/import-export/csv-imp/gnc-imp-props-tx.cpp:60 -#: gnucash/import-export/import-main-matcher.c:1038 +#: gnucash/import-export/import-main-matcher.c:1091 #: gnucash/import-export/import-match-picker.c:395 #: gnucash/import-export/import-match-picker.c:435 #: gnucash/import-export/qif-imp/assistant-qif-import.c:3710 #: gnucash/import-export/qif-imp/assistant-qif-import.c:3761 #: gnucash/register/ledger-core/gncEntryLedgerModel.c:67 #: gnucash/register/ledger-core/split-register-model.c:295 -#: gnucash/report/reports/standard/account-summary.scm:408 +#: gnucash/report/reports/standard/account-summary.scm:409 #: gnucash/report/reports/standard/customer-summary.scm:73 #: gnucash/report/reports/standard/general-journal.scm:96 #: gnucash/report/reports/standard/general-ledger.scm:70 @@ -1679,7 +1682,7 @@ msgstr "Detalhes da transacção" #: gnucash/report/reports/standard/new-owner-report.scm:240 #: gnucash/report/reports/standard/owner-report.scm:54 #: gnucash/report/reports/standard/register.scm:138 -#: gnucash/report/reports/standard/register.scm:397 +#: gnucash/report/reports/standard/register.scm:368 #: gnucash/report/reports/support/taxinvoice.eguile.scm:270 #: gnucash/report/trep-engine.scm:215 gnucash/report/trep-engine.scm:945 #: gnucash/report/trep-engine.scm:1073 gnucash/report/trep-engine.scm:1198 @@ -1719,7 +1722,7 @@ msgid "Edit Employee" msgstr "Editar empregado" #: gnucash/gnome/dialog-employee.c:296 -#: gnucash/gnome-search/dialog-search.c:1074 +#: gnucash/gnome-search/dialog-search.c:1083 #: gnucash/gtkbuilder/dialog-employee.glade:7 msgid "New Employee" msgstr "Novo empregado" @@ -1740,7 +1743,7 @@ msgstr "Número do empregado" msgid "Employee Username" msgstr "Nome de utilizador do empregado" -#: gnucash/gnome/dialog-employee.c:707 gnucash/gnome/dialog-invoice.c:3412 +#: gnucash/gnome/dialog-employee.c:707 gnucash/gnome/dialog-invoice.c:3426 #: gnucash/gnome-utils/gnc-tree-view-owner.c:364 msgid "Employee Name" msgstr "Nome do empregado" @@ -1777,7 +1780,7 @@ msgstr "Nome" msgid "Find Employee" msgstr "Procurar empregado" -#: gnucash/gnome/dialog-fincalc.c:319 +#: gnucash/gnome/dialog-fincalc.c:328 msgid "" "This program can only calculate one value at a time. You must enter values " "for all but one quantity." @@ -1785,7 +1788,7 @@ msgstr "" "Este programa só pode calcular um valor de cada vez. Insira valores para " "todas menos uma quantidade." -#: gnucash/gnome/dialog-fincalc.c:321 +#: gnucash/gnome/dialog-fincalc.c:330 msgid "" "GnuCash cannot determine the value in one of the fields. You must enter a " "valid expression." @@ -1793,15 +1796,15 @@ msgstr "" "O GnuCash não pode determinar o valor de um dos campos. Tem de inserir uma " "expressão válida." -#: gnucash/gnome/dialog-fincalc.c:360 +#: gnucash/gnome/dialog-fincalc.c:373 msgid "The interest rate cannot be zero." msgstr "A taxa de juro não pode ser zero." -#: gnucash/gnome/dialog-fincalc.c:379 +#: gnucash/gnome/dialog-fincalc.c:401 msgid "The number of payments cannot be zero." msgstr "O número de prestações não pode ser zero." -#: gnucash/gnome/dialog-fincalc.c:384 +#: gnucash/gnome/dialog-fincalc.c:406 msgid "The number of payments cannot be negative." msgstr "O número de prestações não pode ser negativo." @@ -1814,7 +1817,7 @@ msgid "Place Holder" msgstr "Marcador de posição" #: gnucash/gnome/dialog-find-account.c:388 -#: gnucash/gnome-utils/gnc-tree-view-account.c:957 +#: gnucash/gnome-utils/gnc-tree-view-account.c:980 #: gnucash/gtkbuilder/dialog-account.glade:322 msgid "Hidden" msgstr "Oculta" @@ -1871,7 +1874,7 @@ msgid "Share Price" msgstr "Cotação de acção" #: gnucash/gnome/dialog-find-transactions2.c:124 -#: gnucash/gnome/dialog-invoice.c:3581 gnucash/gnome/dialog-lot-viewer.c:967 +#: gnucash/gnome/dialog-invoice.c:3595 gnucash/gnome/dialog-lot-viewer.c:967 #: gnucash/gnome/gnc-split-reg.c:694 gnucash/gnome/reconcile-view.c:413 #: gnucash/gnome-utils/gnc-tree-view-split-reg.c:2892 #: gnucash/gnome-utils/gnc-tree-view-split-reg.c:2904 @@ -1880,7 +1883,7 @@ msgstr "Cotação de acção" #: gnucash/gtkbuilder/assistant-loan.glade:764 #: gnucash/gtkbuilder/dialog-transfer.glade:112 #: gnucash/import-export/csv-imp/gnc-imp-props-price.cpp:50 -#: gnucash/import-export/import-main-matcher.c:1037 +#: gnucash/import-export/import-main-matcher.c:1090 #: gnucash/import-export/import-match-picker.c:394 #: gnucash/import-export/import-match-picker.c:434 #: gnucash/import-export/qif-imp/assistant-qif-import.c:3721 @@ -1893,8 +1896,8 @@ msgstr "Cotação de acção" #: gnucash/report/reports/standard/job-report.scm:45 #: gnucash/report/reports/standard/new-owner-report.scm:244 #: gnucash/report/reports/standard/owner-report.scm:59 -#: gnucash/report/reports/standard/register.scm:427 -#: gnucash/report/reports/standard/register.scm:676 +#: gnucash/report/reports/standard/register.scm:398 +#: gnucash/report/reports/standard/register.scm:647 #: gnucash/report/trep-engine.scm:207 gnucash/report/trep-engine.scm:1016 #: gnucash/report/trep-engine.scm:1067 gnucash/report/trep-engine.scm:1348 #: gnucash/report/trep-engine.scm:1364 gnucash/report/trep-engine.scm:2058 @@ -1911,14 +1914,14 @@ msgstr "Montante" #: gnucash/report/reports/standard/advanced-portfolio.scm:1080 #: gnucash/report/reports/standard/portfolio.scm:258 #: gnucash/report/reports/standard/register.scm:158 -#: gnucash/report/reports/standard/register.scm:436 +#: gnucash/report/reports/standard/register.scm:407 msgid "Value" msgstr "Valor" #: gnucash/gnome/dialog-find-transactions2.c:128 #: gnucash/gnome/dialog-find-transactions.c:126 -#: gnucash/gnome/dialog-invoice.c:3332 gnucash/gnome/dialog-invoice.c:3366 -#: gnucash/gnome/dialog-invoice.c:3400 +#: gnucash/gnome/dialog-invoice.c:3346 gnucash/gnome/dialog-invoice.c:3380 +#: gnucash/gnome/dialog-invoice.c:3414 #: gnucash/gnome-utils/gnc-tree-view-split-reg.c:2720 #: gnucash/gtkbuilder/dialog-invoice.glade:93 #: gnucash/import-export/bi-import/dialog-bi-import-gui.c:161 @@ -1931,10 +1934,10 @@ msgstr "Data de emissão" #: gnucash/gnome/dialog-find-transactions.c:132 #: gnucash/gnome/dialog-find-transactions.c:171 #: gnucash/gnome/dialog-find-transactions.c:177 -#: gnucash/gnome/gnc-plugin-page-register.c:2476 -#: gnucash/gnome/gnc-plugin-page-register.c:4160 -#: gnucash/gnome-search/dialog-search.c:866 -#: gnucash/gnome-search/dialog-search.c:872 +#: gnucash/gnome/gnc-plugin-page-register.c:2482 +#: gnucash/gnome/gnc-plugin-page-register.c:4166 +#: gnucash/gnome-search/dialog-search.c:875 +#: gnucash/gnome-search/dialog-search.c:881 #: gnucash/import-export/csv-exp/csv-transactions-export.c:626 #: gnucash/report/trep-engine.scm:223 msgid "Number/Action" @@ -1946,9 +1949,9 @@ msgstr "Número/Acção" #: gnucash/gnome/dialog-find-transactions.c:133 #: gnucash/gnome/dialog-find-transactions.c:170 #: gnucash/gnome/dialog-find-transactions.c:178 -#: gnucash/gnome/gnc-plugin-page-register.c:2481 -#: gnucash/gnome/gnc-split-reg.c:703 gnucash/gnome-search/dialog-search.c:865 -#: gnucash/gnome-search/dialog-search.c:873 +#: gnucash/gnome/gnc-plugin-page-register.c:2487 +#: gnucash/gnome/gnc-split-reg.c:703 gnucash/gnome-search/dialog-search.c:874 +#: gnucash/gnome-search/dialog-search.c:882 #: gnucash/gnome-utils/gnc-tree-view-split-reg.c:2749 #: gnucash/gnome-utils/gnc-tree-view-split-reg.c:2751 #: gnucash/gnome-utils/gnc-tree-view-split-reg.c:2769 @@ -1970,10 +1973,10 @@ msgstr "Acção" #: gnucash/gnome/dialog-find-transactions.c:136 #: gnucash/gnome/dialog-find-transactions.c:173 #: gnucash/gnome/dialog-find-transactions.c:179 -#: gnucash/gnome/gnc-plugin-page-register.c:2475 -#: gnucash/gnome/gnc-plugin-page-register.c:4159 -#: gnucash/gnome-search/dialog-search.c:868 -#: gnucash/gnome-search/dialog-search.c:874 +#: gnucash/gnome/gnc-plugin-page-register.c:2481 +#: gnucash/gnome/gnc-plugin-page-register.c:4165 +#: gnucash/gnome-search/dialog-search.c:877 +#: gnucash/gnome-search/dialog-search.c:883 #: gnucash/import-export/csv-exp/csv-transactions-export.c:614 #: gnucash/import-export/csv-exp/csv-transactions-export.c:623 #: gnucash/report/trep-engine.scm:237 @@ -1986,9 +1989,9 @@ msgstr "Número de transacção" #: gnucash/gnome/dialog-find-transactions.c:137 #: gnucash/gnome/dialog-find-transactions.c:172 #: gnucash/gnome/dialog-find-transactions.c:180 -#: gnucash/gnome/gnc-plugin-page-register.c:2480 -#: gnucash/gnome/gnc-split-reg.c:691 gnucash/gnome-search/dialog-search.c:867 -#: gnucash/gnome-search/dialog-search.c:875 +#: gnucash/gnome/gnc-plugin-page-register.c:2486 +#: gnucash/gnome/gnc-split-reg.c:691 gnucash/gnome-search/dialog-search.c:876 +#: gnucash/gnome-search/dialog-search.c:884 #: gnucash/gnome-utils/gnc-tree-view-split-reg.c:2765 #: gnucash/gtkbuilder/dialog-payment.glade:264 #: gnucash/gtkbuilder/gnc-date-format.glade:98 @@ -2015,14 +2018,14 @@ msgstr "Descrição, notas ou memorando" #: gnucash/gtkbuilder/dialog-transfer.glade:215 #: gnucash/import-export/csv-exp/csv-transactions-export.c:626 #: gnucash/import-export/csv-imp/gnc-imp-props-tx.cpp:69 -#: gnucash/import-export/import-main-matcher.c:1039 +#: gnucash/import-export/import-main-matcher.c:1092 #: gnucash/import-export/import-match-picker.c:396 #: gnucash/import-export/import-match-picker.c:436 #: gnucash/register/ledger-core/split-register-model.c:355 #: gnucash/report/reports/standard/general-ledger.scm:71 #: gnucash/report/reports/standard/general-ledger.scm:91 #: gnucash/report/reports/standard/register.scm:140 -#: gnucash/report/reports/standard/register.scm:402 +#: gnucash/report/reports/standard/register.scm:373 #: gnucash/report/trep-engine.scm:244 gnucash/report/trep-engine.scm:971 #: gnucash/report/trep-engine.scm:1095 gnucash/report/trep-engine.scm:1208 #: gnucash/report/trep-engine.scm:1209 @@ -2032,7 +2035,7 @@ msgstr "Nota" #: gnucash/gnome/dialog-find-transactions2.c:155 #: gnucash/gnome/dialog-find-transactions.c:155 #: gnucash/gnome/gnc-split-reg.c:706 -#: gnucash/gnome-utils/gnc-tree-view-account.c:937 +#: gnucash/gnome-utils/gnc-tree-view-account.c:960 #: gnucash/gnome-utils/gnc-tree-view-owner.c:473 #: gnucash/gnome-utils/gnc-tree-view-split-reg.c:2814 #: gnucash/gtkbuilder/assistant-acct-period.glade:155 @@ -2049,7 +2052,7 @@ msgstr "Nota" #: gnucash/import-export/csv-imp/gnc-imp-props-tx.cpp:61 #: gnucash/import-export/customer-import/dialog-customer-import-gui.c:138 #: gnucash/register/ledger-core/split-register-model.c:491 -#: gnucash/report/reports/standard/account-summary.scm:436 +#: gnucash/report/reports/standard/account-summary.scm:437 #: gnucash/report/reports/standard/balsheet-eg.scm:195 #: gnucash/report/reports/standard/receipt.scm:38 #: gnucash/report/reports/standard/taxinvoice.scm:78 @@ -2061,7 +2064,7 @@ msgstr "Notas" #: gnucash/gnome/dialog-find-transactions2.c:229 #: gnucash/gnome/dialog-find-transactions.c:229 -#: gnucash/gnome-search/dialog-search.c:1473 +#: gnucash/gnome-search/dialog-search.c:1482 msgid "Find Transaction" msgstr "Localizar transacção" @@ -2136,18 +2139,18 @@ msgstr "Id online" msgid "You need to supply Billing Information." msgstr "Tem de indicar a informação de facturação." -#: gnucash/gnome/dialog-invoice.c:711 +#: gnucash/gnome/dialog-invoice.c:725 msgid "Are you sure you want to delete the selected entry?" msgstr "Tem a certeza que quer eliminar a transacção seleccionada?" -#: gnucash/gnome/dialog-invoice.c:713 +#: gnucash/gnome/dialog-invoice.c:727 msgid "" "This entry is attached to an order and will be deleted from that as well!" msgstr "" "Esta transacção está inserida numa encomenda e será eliminada daí também!" -#: gnucash/gnome/dialog-invoice.c:822 gnucash/gnome/dialog-invoice.c:3341 -#: gnucash/gnome/dialog-invoice.c:3375 gnucash/gnome/dialog-invoice.c:3409 +#: gnucash/gnome/dialog-invoice.c:836 gnucash/gnome/dialog-invoice.c:3355 +#: gnucash/gnome/dialog-invoice.c:3389 gnucash/gnome/dialog-invoice.c:3423 #: gnucash/gnome-utils/gnc-tree-view-split-reg.c:2736 #: gnucash/import-export/bi-import/dialog-bi-import-gui.c:162 #: gnucash/register/ledger-core/split-register-model.c:239 @@ -2164,30 +2167,30 @@ msgstr "" msgid "Due Date" msgstr "Data de vencimento" -#: gnucash/gnome/dialog-invoice.c:823 gnucash/report/reports/aging.scm:388 +#: gnucash/gnome/dialog-invoice.c:837 gnucash/report/reports/aging.scm:388 #: gnucash/report/reports/standard/new-aging.scm:130 #: gnucash/report/reports/standard/new-owner-report.scm:961 #: gnucash/report/reports/standard/owner-report.scm:613 msgid "Post Date" msgstr "Data de emissão" -#: gnucash/gnome/dialog-invoice.c:824 +#: gnucash/gnome/dialog-invoice.c:838 msgid "Post to Account" msgstr "Emitir para conta" -#: gnucash/gnome/dialog-invoice.c:825 +#: gnucash/gnome/dialog-invoice.c:839 msgid "Accumulate Splits?" msgstr "Acumular parcelas?" -#: gnucash/gnome/dialog-invoice.c:917 +#: gnucash/gnome/dialog-invoice.c:931 msgid "The Invoice must have at least one Entry." msgstr "A factura tem de ter pelo menos uma entrada." -#: gnucash/gnome/dialog-invoice.c:937 +#: gnucash/gnome/dialog-invoice.c:951 msgid "Do you really want to post the invoice?" msgstr "Tem a certeza que quer emitir a factura?" -#: gnucash/gnome/dialog-invoice.c:955 +#: gnucash/gnome/dialog-invoice.c:969 msgid "" "One or more of the entries are for accounts different from the invoice/bill " "currency. You will be asked a conversion rate for each." @@ -2195,133 +2198,133 @@ msgstr "" "Uma ou mais das entradas são para contas com moeda diferente da da factura/" "nota. Ser-lhe-á pedida uma taxa de câmbio para cada uma." -#: gnucash/gnome/dialog-invoice.c:1088 +#: gnucash/gnome/dialog-invoice.c:1102 msgid "The post action was canceled because not all exchange rates were given." msgstr "" "A emissão foi cancelada porque nem todas as taxas de câmbio foram indicadas." -#: gnucash/gnome/dialog-invoice.c:1372 +#: gnucash/gnome/dialog-invoice.c:1386 msgid "Total:" msgstr "Total:" -#: gnucash/gnome/dialog-invoice.c:1378 +#: gnucash/gnome/dialog-invoice.c:1392 msgid "Subtotal:" msgstr "Sub-total:" -#: gnucash/gnome/dialog-invoice.c:1379 +#: gnucash/gnome/dialog-invoice.c:1393 msgid "Tax:" msgstr "Imposto:" -#: gnucash/gnome/dialog-invoice.c:1383 +#: gnucash/gnome/dialog-invoice.c:1397 msgid "Total Cash:" msgstr "Total em dinheiro:" -#: gnucash/gnome/dialog-invoice.c:1384 +#: gnucash/gnome/dialog-invoice.c:1398 msgid "Total Charge:" msgstr "Total de gastos:" -#: gnucash/gnome/dialog-invoice.c:1853 gnucash/gnome/dialog-payment.c:1331 +#: gnucash/gnome/dialog-invoice.c:1867 gnucash/gnome/dialog-payment.c:1331 #: gnucash/gtkbuilder/dialog-invoice.glade:857 #: gnucash/report/reports/standard/invoice.scm:793 #: libgnucash/engine/gncInvoice.c:1088 msgid "Credit Note" msgstr "Nota de crédito" -#: gnucash/gnome/dialog-invoice.c:2049 +#: gnucash/gnome/dialog-invoice.c:2063 msgid "PAID" msgstr "PAGO" -#: gnucash/gnome/dialog-invoice.c:2051 +#: gnucash/gnome/dialog-invoice.c:2065 #: gnucash/report/reports/standard/new-owner-report.scm:577 msgid "UNPAID" msgstr "POR PAGAR" -#: gnucash/gnome/dialog-invoice.c:2099 gnucash/gnome/dialog-invoice.c:2118 -#: gnucash/gnome/dialog-invoice.c:2137 +#: gnucash/gnome/dialog-invoice.c:2113 gnucash/gnome/dialog-invoice.c:2132 +#: gnucash/gnome/dialog-invoice.c:2151 msgid "New Credit Note" msgstr "Nova nota de crédito" -#: gnucash/gnome/dialog-invoice.c:2100 +#: gnucash/gnome/dialog-invoice.c:2114 #: gnucash/gnome/gnc-plugin-page-owner-tree.c:292 -#: gnucash/gnome-search/dialog-search.c:1082 +#: gnucash/gnome-search/dialog-search.c:1091 #: gnucash/gtkbuilder/dialog-invoice.glade:642 msgid "New Invoice" msgstr "Nova factura" -#: gnucash/gnome/dialog-invoice.c:2105 gnucash/gnome/dialog-invoice.c:2124 -#: gnucash/gnome/dialog-invoice.c:2143 +#: gnucash/gnome/dialog-invoice.c:2119 gnucash/gnome/dialog-invoice.c:2138 +#: gnucash/gnome/dialog-invoice.c:2157 msgid "Edit Credit Note" msgstr "Editar nota de crédito" -#: gnucash/gnome/dialog-invoice.c:2106 +#: gnucash/gnome/dialog-invoice.c:2120 msgid "Edit Invoice" msgstr "Editar factura" -#: gnucash/gnome/dialog-invoice.c:2109 gnucash/gnome/dialog-invoice.c:2128 -#: gnucash/gnome/dialog-invoice.c:2147 +#: gnucash/gnome/dialog-invoice.c:2123 gnucash/gnome/dialog-invoice.c:2142 +#: gnucash/gnome/dialog-invoice.c:2161 msgid "View Credit Note" msgstr "Ver nota de crédito" -#: gnucash/gnome/dialog-invoice.c:2110 +#: gnucash/gnome/dialog-invoice.c:2124 msgid "View Invoice" msgstr "Ver factura" -#: gnucash/gnome/dialog-invoice.c:2119 +#: gnucash/gnome/dialog-invoice.c:2133 #: gnucash/gnome/gnc-plugin-page-owner-tree.c:291 -#: gnucash/gnome-search/dialog-search.c:1066 +#: gnucash/gnome-search/dialog-search.c:1075 msgid "New Bill" msgstr "Novo pagamento" -#: gnucash/gnome/dialog-invoice.c:2125 +#: gnucash/gnome/dialog-invoice.c:2139 msgid "Edit Bill" msgstr "Editar pagamento" -#: gnucash/gnome/dialog-invoice.c:2129 +#: gnucash/gnome/dialog-invoice.c:2143 msgid "View Bill" msgstr "Ver pagamento" -#: gnucash/gnome/dialog-invoice.c:2138 -#: gnucash/gnome-search/dialog-search.c:1078 +#: gnucash/gnome/dialog-invoice.c:2152 +#: gnucash/gnome-search/dialog-search.c:1087 msgid "New Expense Voucher" msgstr "Novo vale de despesa" -#: gnucash/gnome/dialog-invoice.c:2144 +#: gnucash/gnome/dialog-invoice.c:2158 msgid "Edit Expense Voucher" msgstr "Editar vale de despesa" -#: gnucash/gnome/dialog-invoice.c:2148 +#: gnucash/gnome/dialog-invoice.c:2162 msgid "View Expense Voucher" msgstr "Ver vale de despesa" -#: gnucash/gnome/dialog-invoice.c:2471 +#: gnucash/gnome/dialog-invoice.c:2485 #, fuzzy #| msgid "No Linked Account" msgid "Open Linked Document:" msgstr "Sem conta ligada" -#: gnucash/gnome/dialog-invoice.c:2585 gnucash/gnome/dialog-invoice.c:2810 +#: gnucash/gnome/dialog-invoice.c:2599 gnucash/gnome/dialog-invoice.c:2824 msgid "Bill Information" msgstr "Informação de facturação" -#: gnucash/gnome/dialog-invoice.c:2587 gnucash/gnome/dialog-invoice.c:2813 -#: gnucash/gnome/dialog-invoice.c:3382 +#: gnucash/gnome/dialog-invoice.c:2601 gnucash/gnome/dialog-invoice.c:2827 +#: gnucash/gnome/dialog-invoice.c:3396 msgid "Bill ID" msgstr "Número de pagamento" -#: gnucash/gnome/dialog-invoice.c:2591 gnucash/gnome/dialog-invoice.c:2817 +#: gnucash/gnome/dialog-invoice.c:2605 gnucash/gnome/dialog-invoice.c:2831 msgid "Voucher Information" msgstr "Informação do vale" -#: gnucash/gnome/dialog-invoice.c:2593 gnucash/gnome/dialog-invoice.c:2820 -#: gnucash/gnome/dialog-invoice.c:3416 +#: gnucash/gnome/dialog-invoice.c:2607 gnucash/gnome/dialog-invoice.c:2834 +#: gnucash/gnome/dialog-invoice.c:3430 msgid "Voucher ID" msgstr "Número de vale" -#: gnucash/gnome/dialog-invoice.c:3149 +#: gnucash/gnome/dialog-invoice.c:3163 msgid "Date of duplicated entries" msgstr "Data das entradas duplicadas" -#: gnucash/gnome/dialog-invoice.c:3204 +#: gnucash/gnome/dialog-invoice.c:3218 msgid "" "One or more selected invoices have already been posted.\n" "Re-check your selection." @@ -2329,54 +2332,54 @@ msgstr "" "Uma ou mais facturas seleccionadas já foram emitidas.\n" "Reveja a sua selecção." -#: gnucash/gnome/dialog-invoice.c:3208 +#: gnucash/gnome/dialog-invoice.c:3222 msgid "Do you really want to post these invoices?" msgstr "Tem a certeza que quer emitir estas facturas?" -#: gnucash/gnome/dialog-invoice.c:3286 gnucash/gnome/dialog-invoice.c:3567 +#: gnucash/gnome/dialog-invoice.c:3300 gnucash/gnome/dialog-invoice.c:3581 msgid "View/Edit Invoice" msgstr "Ver/Editar factura" -#: gnucash/gnome/dialog-invoice.c:3288 gnucash/gnome/dialog-invoice.c:3297 -#: gnucash/gnome/dialog-invoice.c:3308 +#: gnucash/gnome/dialog-invoice.c:3302 gnucash/gnome/dialog-invoice.c:3311 +#: gnucash/gnome/dialog-invoice.c:3322 #: gnucash/gnome/gnc-plugin-page-invoice.c:455 #: gnucash/gnome/gnc-plugin-page-register2.c:501 #: gnucash/gnome/gnc-plugin-page-register.c:624 msgid "Duplicate" msgstr "Duplicar" -#: gnucash/gnome/dialog-invoice.c:3289 gnucash/gnome/dialog-invoice.c:3298 -#: gnucash/gnome/dialog-invoice.c:3309 +#: gnucash/gnome/dialog-invoice.c:3303 gnucash/gnome/dialog-invoice.c:3312 +#: gnucash/gnome/dialog-invoice.c:3323 #: gnucash/gnome/gnc-plugin-page-invoice.c:459 msgid "Post" msgstr "Emitir" -#: gnucash/gnome/dialog-invoice.c:3290 gnucash/gnome/dialog-invoice.c:3299 -#: gnucash/gnome/dialog-invoice.c:3310 +#: gnucash/gnome/dialog-invoice.c:3304 gnucash/gnome/dialog-invoice.c:3313 +#: gnucash/gnome/dialog-invoice.c:3324 msgid "Printable Report" msgstr "Relatório imprimível" -#: gnucash/gnome/dialog-invoice.c:3295 gnucash/gnome/dialog-invoice.c:3561 +#: gnucash/gnome/dialog-invoice.c:3309 gnucash/gnome/dialog-invoice.c:3575 msgid "View/Edit Bill" msgstr "Ver/Editar pagamento" #. Translators: The terms 'Voucher' and 'Expense Voucher' are used #. interchangeably in gnucash and mean the same thing. -#: gnucash/gnome/dialog-invoice.c:3306 +#: gnucash/gnome/dialog-invoice.c:3320 msgid "View/Edit Voucher" msgstr "Ver/Editar vale" -#: gnucash/gnome/dialog-invoice.c:3320 +#: gnucash/gnome/dialog-invoice.c:3334 msgid "Invoice Owner" msgstr "Títular da factura" -#: gnucash/gnome/dialog-invoice.c:3323 +#: gnucash/gnome/dialog-invoice.c:3337 #: gnucash/report/reports/standard/invoice.scm:327 msgid "Invoice Notes" msgstr "Notas da factura" -#: gnucash/gnome/dialog-invoice.c:3326 gnucash/gnome/dialog-invoice.c:3360 -#: gnucash/gnome/dialog-invoice.c:3394 gnucash/gnome/dialog-invoice.c:3423 +#: gnucash/gnome/dialog-invoice.c:3340 gnucash/gnome/dialog-invoice.c:3374 +#: gnucash/gnome/dialog-invoice.c:3408 gnucash/gnome/dialog-invoice.c:3437 #: gnucash/gnome/dialog-job.c:574 gnucash/gnome/dialog-job.c:587 #: gnucash/gnome/dialog-order.c:886 gnucash/gtkbuilder/dialog-invoice.glade:310 #: gnucash/gtkbuilder/dialog-invoice.glade:944 @@ -2385,18 +2388,18 @@ msgstr "Notas da factura" msgid "Billing ID" msgstr "Número de pagamento" -#: gnucash/gnome/dialog-invoice.c:3329 gnucash/gnome/dialog-invoice.c:3363 -#: gnucash/gnome/dialog-invoice.c:3397 +#: gnucash/gnome/dialog-invoice.c:3343 gnucash/gnome/dialog-invoice.c:3377 +#: gnucash/gnome/dialog-invoice.c:3411 msgid "Is Paid?" msgstr "Está paga?" -#: gnucash/gnome/dialog-invoice.c:3335 gnucash/gnome/dialog-invoice.c:3369 -#: gnucash/gnome/dialog-invoice.c:3403 +#: gnucash/gnome/dialog-invoice.c:3349 gnucash/gnome/dialog-invoice.c:3383 +#: gnucash/gnome/dialog-invoice.c:3417 msgid "Is Posted?" msgstr "Está emitida?" -#: gnucash/gnome/dialog-invoice.c:3338 gnucash/gnome/dialog-invoice.c:3372 -#: gnucash/gnome/dialog-invoice.c:3406 gnucash/gnome/dialog-order.c:875 +#: gnucash/gnome/dialog-invoice.c:3352 gnucash/gnome/dialog-invoice.c:3386 +#: gnucash/gnome/dialog-invoice.c:3420 gnucash/gnome/dialog-order.c:875 #: gnucash/gtkbuilder/dialog-invoice.glade:67 #: gnucash/gtkbuilder/dialog-invoice.glade:762 #: gnucash/gtkbuilder/dialog-order.glade:135 @@ -2405,35 +2408,35 @@ msgstr "Está emitida?" msgid "Date Opened" msgstr "Data de abertura" -#: gnucash/gnome/dialog-invoice.c:3344 gnucash/gnome/dialog-invoice.c:3378 +#: gnucash/gnome/dialog-invoice.c:3358 gnucash/gnome/dialog-invoice.c:3392 msgid "Company Name " msgstr "Nome da empresa" -#: gnucash/gnome/dialog-invoice.c:3348 +#: gnucash/gnome/dialog-invoice.c:3362 #: gnucash/gtkbuilder/dialog-invoice.glade:41 #: gnucash/gtkbuilder/dialog-invoice.glade:749 msgid "Invoice ID" msgstr "Número de factura" -#: gnucash/gnome/dialog-invoice.c:3354 +#: gnucash/gnome/dialog-invoice.c:3368 msgid "Bill Owner" msgstr "Títular do pagamento" -#: gnucash/gnome/dialog-invoice.c:3357 +#: gnucash/gnome/dialog-invoice.c:3371 msgid "Bill Notes" msgstr "Notas do pagamento" -#: gnucash/gnome/dialog-invoice.c:3388 +#: gnucash/gnome/dialog-invoice.c:3402 msgid "Voucher Owner" msgstr "Títular do vale" -#: gnucash/gnome/dialog-invoice.c:3391 +#: gnucash/gnome/dialog-invoice.c:3405 msgid "Voucher Notes" msgstr "Notas do vale" -#: gnucash/gnome/dialog-invoice.c:3425 gnucash/gnome/dialog-invoice.c:3584 +#: gnucash/gnome/dialog-invoice.c:3439 gnucash/gnome/dialog-invoice.c:3598 #: gnucash/gnome/dialog-lot-viewer.c:860 gnucash/gnome/dialog-tax-info.c:1235 -#: gnucash/gnome-utils/gnc-tree-view-account.c:788 +#: gnucash/gnome-utils/gnc-tree-view-account.c:811 #: gnucash/gnome-utils/gnc-tree-view-owner.c:401 #: gnucash/gnome-utils/gnc-tree-view-price.c:420 #: gnucash/gnome-utils/gnc-tree-view-split-reg.c:2872 @@ -2445,7 +2448,7 @@ msgstr "Notas do vale" #: gnucash/gtkbuilder/dialog-payment.glade:280 #: gnucash/gtkbuilder/dialog-tax-info.glade:127 #: gnucash/register/ledger-core/split-register-model.c:362 -#: gnucash/report/reports/standard/account-summary.scm:407 +#: gnucash/report/reports/standard/account-summary.scm:408 #: gnucash/report/reports/standard/customer-summary.scm:72 #: gnucash/report/reports/standard/job-report.scm:43 #: gnucash/report/reports/standard/new-owner-report.scm:52 @@ -2454,26 +2457,26 @@ msgstr "Notas do vale" msgid "Type" msgstr "Tipo" -#: gnucash/gnome/dialog-invoice.c:3427 +#: gnucash/gnome/dialog-invoice.c:3441 #: gnucash/register/ledger-core/split-register-model.c:309 #: gnucash/report/reports/standard/new-owner-report.scm:819 msgid "Paid" msgstr "Paga" -#: gnucash/gnome/dialog-invoice.c:3430 +#: gnucash/gnome/dialog-invoice.c:3444 msgid "Posted" msgstr "Emitida" -#: gnucash/gnome/dialog-invoice.c:3435 gnucash/gnome/dialog-invoice.c:3588 +#: gnucash/gnome/dialog-invoice.c:3449 gnucash/gnome/dialog-invoice.c:3602 msgid "Due" msgstr "Devida" -#: gnucash/gnome/dialog-invoice.c:3437 gnucash/gnome/dialog-lot-viewer.c:866 +#: gnucash/gnome/dialog-invoice.c:3451 gnucash/gnome/dialog-lot-viewer.c:866 #: gnucash/gnome/dialog-order.c:893 msgid "Opened" msgstr "Aberta" -#: gnucash/gnome/dialog-invoice.c:3439 gnucash/gnome/dialog-lot-viewer.c:947 +#: gnucash/gnome/dialog-invoice.c:3453 gnucash/gnome/dialog-lot-viewer.c:947 #: gnucash/gnome/dialog-order.c:895 gnucash/gnome/reconcile-view.c:421 #: gnucash/gnome/reconcile-view.c:425 #: gnucash/gtkbuilder/dialog-payment.glade:473 @@ -2484,53 +2487,53 @@ msgstr "Aberta" #: gnucash/report/reports/standard/general-journal.scm:95 #: gnucash/report/reports/standard/general-ledger.scm:89 #: gnucash/report/reports/standard/register.scm:136 -#: gnucash/report/reports/standard/register.scm:392 +#: gnucash/report/reports/standard/register.scm:363 #: gnucash/report/trep-engine.scm:944 gnucash/report/trep-engine.scm:1072 #: gnucash/report/trep-engine.scm:1180 msgid "Num" msgstr "Nº." -#: gnucash/gnome/dialog-invoice.c:3520 +#: gnucash/gnome/dialog-invoice.c:3534 msgid "Find Bill" msgstr "Localizar pagamentos" -#: gnucash/gnome/dialog-invoice.c:3527 +#: gnucash/gnome/dialog-invoice.c:3541 msgid "Find Expense Voucher" msgstr "Localizar vale de despesa" -#: gnucash/gnome/dialog-invoice.c:3528 -#: gnucash/gnome-search/dialog-search.c:1076 +#: gnucash/gnome/dialog-invoice.c:3542 +#: gnucash/gnome-search/dialog-search.c:1085 #: gnucash/report/reports/standard/invoice.scm:789 msgid "Expense Voucher" msgstr "Vale de despesa" -#: gnucash/gnome/dialog-invoice.c:3534 +#: gnucash/gnome/dialog-invoice.c:3548 msgid "Find Invoice" msgstr "Localizar factura" #. Translators: %d is the number of bills/credit notes due. This is a #. ngettext(3) message. -#: gnucash/gnome/dialog-invoice.c:3668 +#: gnucash/gnome/dialog-invoice.c:3682 #, c-format msgid "The following vendor document is due:" msgid_plural "The following %d vendor documents are due:" msgstr[0] "É devido o seguinte documento de fornecedor:" msgstr[1] "São devidos os seguintes %d documentos de fornecedor:" -#: gnucash/gnome/dialog-invoice.c:3672 +#: gnucash/gnome/dialog-invoice.c:3686 msgid "Due Bills Reminder" msgstr "Aviso de pagamentos devidos" #. Translators: %d is the number of invoices/credit notes due. This is a #. ngettext(3) message. -#: gnucash/gnome/dialog-invoice.c:3679 +#: gnucash/gnome/dialog-invoice.c:3693 #, c-format msgid "The following customer document is due:" msgid_plural "The following %d customer documents are due:" msgstr[0] "É devido o seguinte documento de cliente:" msgstr[1] "São devidos os seguintes %d documentos de cliente:" -#: gnucash/gnome/dialog-invoice.c:3683 +#: gnucash/gnome/dialog-invoice.c:3697 msgid "Due Invoices Reminder" msgstr "Lembrete de facturas devidas" @@ -2546,7 +2549,7 @@ msgstr "Tem de escolher um titular para esta tarefa." msgid "Edit Job" msgstr "Editar tarefa" -#: gnucash/gnome/dialog-job.c:251 gnucash/gnome-search/dialog-search.c:1086 +#: gnucash/gnome/dialog-job.c:251 gnucash/gnome-search/dialog-search.c:1095 msgid "New Job" msgstr "Nova tarefa" @@ -2603,19 +2606,19 @@ msgstr "Fechada" #: gnucash/gnome/dialog-lot-viewer.c:886 #: gnucash/gtkbuilder/assistant-acct-period.glade:143 -#: gnucash/report/html-fonts.scm:69 -#: gnucash/report/reports/standard/register.scm:376 +#: gnucash/report/html-fonts.scm:93 +#: gnucash/report/reports/standard/register.scm:347 msgid "Title" msgstr "Título" #: gnucash/gnome/dialog-lot-viewer.c:893 gnucash/gnome/dialog-lot-viewer.c:985 -#: gnucash/gnome-utils/gnc-tree-view-account.c:831 +#: gnucash/gnome-utils/gnc-tree-view-account.c:854 #: gnucash/gnome-utils/gnc-tree-view-owner.c:457 #: gnucash/gnome-utils/gnc-tree-view-owner.c:465 #: gnucash/gnome-utils/gnc-tree-view-split-reg.c:3112 #: gnucash/register/ledger-core/split-register-model.c:320 #: gnucash/register/ledger-core/split-register-model.c:484 -#: gnucash/report/reports/standard/account-summary.scm:421 +#: gnucash/report/reports/standard/account-summary.scm:422 #: gnucash/report/reports/standard/balance-forecast.scm:248 #: gnucash/report/reports/standard/job-report.scm:206 #: gnucash/report/reports/standard/new-owner-report.scm:58 @@ -2726,7 +2729,7 @@ msgstr "" "Por favor, especifique a taxa de câmbio." #: gnucash/gnome/dialog-payment.c:1269 gnucash/gnome/search-owner.c:211 -#: gnucash/gnome-search/dialog-search.c:1068 +#: gnucash/gnome-search/dialog-search.c:1077 #: gnucash/gnome-utils/gnc-tree-view-split-reg.c:2783 #: gnucash/gtkbuilder/dialog-customer.glade:479 #: gnucash/gtkbuilder/dialog-customer-import-gui.glade:151 @@ -2745,7 +2748,7 @@ msgid "Customer" msgstr "Cliente" #: gnucash/gnome/dialog-payment.c:1273 gnucash/gnome/search-owner.c:212 -#: gnucash/gnome-search/dialog-search.c:1100 +#: gnucash/gnome-search/dialog-search.c:1109 #: gnucash/gnome-utils/gnc-tree-view-split-reg.c:2794 #: gnucash/gtkbuilder/dialog-customer-import-gui.glade:168 #: gnucash/gtkbuilder/dialog-payment.glade:44 @@ -2759,7 +2762,7 @@ msgid "Vendor" msgstr "Fornecedor" #: gnucash/gnome/dialog-payment.c:1277 gnucash/gnome/search-owner.c:213 -#: gnucash/gnome-search/dialog-search.c:1072 +#: gnucash/gnome-search/dialog-search.c:1081 #: gnucash/gtkbuilder/dialog-employee.glade:510 #: gnucash/gtkbuilder/dialog-payment.glade:48 #: gnucash/report/reports/standard/job-report.scm:513 @@ -2939,7 +2942,7 @@ msgid "Custom" msgstr "Personalizado" #: gnucash/gnome/dialog-print-check.c:2602 -#: gnucash/gtkbuilder/dialog-preferences.glade:3314 +#: gnucash/gtkbuilder/dialog-preferences.glade:3431 #: gnucash/gtkbuilder/dialog-print-check.glade:264 msgid "Top" msgstr "Topo" @@ -2971,23 +2974,23 @@ msgstr "Linhas" msgid "Cols" msgstr "Colunas" -#: gnucash/gnome/dialog-report-style-sheet.c:171 +#: gnucash/gnome/dialog-report-style-sheet.c:172 #, c-format msgid "HTML Style Sheet Properties: %s" msgstr "Propriedades da folha de estilo HTML: %s" -#: gnucash/gnome/dialog-report-style-sheet.c:265 +#: gnucash/gnome/dialog-report-style-sheet.c:269 msgid "You must provide a name for the new style sheet." msgstr "Tem de fornecer um nome para a nova folha de estilo." -#: gnucash/gnome/dialog-report-style-sheet.c:516 +#: gnucash/gnome/dialog-report-style-sheet.c:520 msgid "Style Sheet Name" msgstr "Nome da folha de estilo" #: gnucash/gnome/dialog-sx-editor2.c:164 gnucash/gnome/dialog-sx-editor.c:167 #: gnucash/gnome/gnc-plugin-page-sx-list.c:150 #: gnucash/gnome/window-reconcile2.c:2161 gnucash/gnome/window-reconcile.c:2382 -#: gnucash/gnome-utils/gnc-main-window.c:270 +#: gnucash/gnome-utils/gnc-main-window.c:273 #: gnucash/gtkbuilder/dialog-billterms.glade:677 #: gnucash/gtkbuilder/dialog-commodities.glade:155 #: gnucash/gtkbuilder/dialog-price.glade:872 @@ -3003,12 +3006,12 @@ msgid "_Transaction" msgstr "_Transacção" #: gnucash/gnome/dialog-sx-editor2.c:166 gnucash/gnome/dialog-sx-editor.c:169 -#: gnucash/gnome-utils/gnc-main-window.c:271 +#: gnucash/gnome-utils/gnc-main-window.c:274 msgid "_View" msgstr "_Ver" #: gnucash/gnome/dialog-sx-editor2.c:167 gnucash/gnome/dialog-sx-editor.c:170 -#: gnucash/gnome-utils/gnc-main-window.c:272 +#: gnucash/gnome-utils/gnc-main-window.c:275 msgid "_Actions" msgstr "_Acções" @@ -3188,7 +3191,7 @@ msgid "Created" msgstr "Criada" #: gnucash/gnome/dialog-sx-since-last-run.c:468 -#: gnucash/gtkbuilder/dialog-preferences.glade:1590 +#: gnucash/gtkbuilder/dialog-preferences.glade:1707 #: gnucash/report/reports/standard/balsheet-pnl.scm:241 #: gnucash/report/trep-engine.scm:577 msgid "Never" @@ -3218,12 +3221,12 @@ msgstr[1] "" "(%d transacções criadas automaticamente)" #: gnucash/gnome/dialog-sx-since-last-run.c:1005 -#: gnucash/gnome-search/dialog-search.c:1092 +#: gnucash/gnome-search/dialog-search.c:1101 msgid "Transaction" msgstr "Transacção" #: gnucash/gnome/dialog-sx-since-last-run.c:1021 -#: gnucash/gtkbuilder/gnc-plugin-page-register2.glade:617 +#: gnucash/gtkbuilder/gnc-plugin-page-register2.glade:664 #: gnucash/gtkbuilder/gnc-plugin-page-register.glade:508 msgid "Status" msgstr "Estado" @@ -3241,7 +3244,7 @@ msgid "Form Line Data: " msgstr "Dados de linha de formulário:" #: gnucash/gnome/dialog-tax-info.c:291 -#: gnucash/report/reports/standard/account-summary.scm:406 +#: gnucash/report/reports/standard/account-summary.scm:407 msgid "Code" msgstr "Código" @@ -3293,7 +3296,7 @@ msgstr "Tem de indicar uma morada para pagamento." msgid "Edit Vendor" msgstr "Editar fornecedor" -#: gnucash/gnome/dialog-vendor.c:308 gnucash/gnome-search/dialog-search.c:1102 +#: gnucash/gnome/dialog-vendor.c:308 gnucash/gnome-search/dialog-search.c:1111 #: gnucash/gtkbuilder/dialog-vendor.glade:31 msgid "New Vendor" msgstr "Novo fornecedor" @@ -3336,17 +3339,17 @@ msgstr "Procurar fornecedor" #: gnucash/report/reports/standard/balsheet-pnl.scm:1264 #: gnucash/report/reports/standard/net-charts.scm:350 #: gnucash/report/reports/standard/net-charts.scm:420 -#: gnucash/report/report-utilities.scm:110 libgnucash/engine/Account.cpp:170 -#: libgnucash/engine/Account.cpp:4322 libgnucash/engine/Scrub.c:449 +#: gnucash/report/report-utilities.scm:122 libgnucash/engine/Account.cpp:171 +#: libgnucash/engine/Account.cpp:4369 libgnucash/engine/Scrub.c:464 msgid "Income" msgstr "Receita" #: gnucash/gnome/gnc-budget-view.c:502 #: gnucash/import-export/qif-imp/qif-dialog-utils.scm:80 #: gnucash/import-export/qif-imp/qif-dialog-utils.scm:85 -#: gnucash/report/reports/standard/budget-income-statement.scm:520 +#: gnucash/report/reports/standard/budget-income-statement.scm:521 #: gnucash/report/reports/standard/income-statement.scm:512 -#: gnucash/report/report-utilities.scm:111 +#: gnucash/report/report-utilities.scm:123 msgid "Expenses" msgstr "Despesas" @@ -3368,7 +3371,7 @@ msgstr "Abrir um orçamento existente" #: gnucash/gnome/gnc-budget-view.c:1652 gnucash/gnome/window-reconcile2.c:1069 #: gnucash/gnome/window-reconcile.c:1122 -#: gnucash/gnome-utils/gnc-tree-view-account.c:900 +#: gnucash/gnome-utils/gnc-tree-view-account.c:923 #: gnucash/report/html-acct-table.scm:793 gnucash/report/reports/aging.scm:543 #: gnucash/report/reports/aging.scm:830 #: gnucash/report/reports/locale-specific/de_DE/taxtxf.scm:294 @@ -3376,8 +3379,8 @@ msgstr "Abrir um orçamento existente" #: gnucash/report/reports/standard/budget-flow.scm:168 #: gnucash/report/reports/standard/budget-flow.scm:247 #: gnucash/report/reports/standard/budget.scm:511 -#: gnucash/report/reports/standard/customer-summary.scm:476 #: gnucash/report/reports/standard/customer-summary.scm:478 +#: gnucash/report/reports/standard/customer-summary.scm:480 #: gnucash/report/reports/standard/invoice.scm:104 #: gnucash/report/reports/standard/invoice.scm:252 #: gnucash/report/reports/standard/new-aging.scm:200 @@ -3415,7 +3418,7 @@ msgstr "Abrir um ficheiro existente do GnuCash" #: gnucash/gnome/gnc-plugin-basic-commands.c:121 #: gnucash/gnome-utils/gnc-file.c:100 gnucash/gnome-utils/gnc-file.c:666 -#: gnucash/gnome-utils/gnc-main-window.c:1294 +#: gnucash/gnome-utils/gnc-main-window.c:1308 #: gnucash/html/gnc-html-webkit1.c:1198 msgid "_Save" msgstr "_Gravar" @@ -3650,8 +3653,9 @@ msgstr "Seleccionar um orçamento" #: gnucash/gnome/gnc-plugin-budget.c:290 #: gnucash/gnome-search/search-account.c:238 -#: gnucash/gnome-utils/dialog-account.c:680 +#: gnucash/gnome-utils/dialog-account.c:723 #: gnucash/gnome-utils/gnc-gui-query.c:297 +#: gnucash/gnome-utils/gnc-main-window.c:1449 #: gnucash/gtkbuilder/assistant-xml-encoding.glade:217 #: gnucash/gtkbuilder/dialog-account.glade:35 #: gnucash/gtkbuilder/dialog-account.glade:832 @@ -3674,7 +3678,7 @@ msgstr "Seleccionar um orçamento" #: gnucash/gtkbuilder/dialog-import.glade:61 #: gnucash/gtkbuilder/dialog-import.glade:191 #: gnucash/gtkbuilder/dialog-import.glade:349 -#: gnucash/gtkbuilder/dialog-import.glade:1034 +#: gnucash/gtkbuilder/dialog-import.glade:1050 #: gnucash/gtkbuilder/dialog-invoice.glade:691 #: gnucash/gtkbuilder/dialog-invoice.glade:1214 #: gnucash/gtkbuilder/dialog-job.glade:57 @@ -3703,12 +3707,12 @@ msgstr "Seleccionar um orçamento" #: gnucash/gtkbuilder/gnc-plugin-page-budget.glade:451 #: gnucash/gtkbuilder/gnc-plugin-page-budget.glade:897 #: gnucash/gtkbuilder/gnc-plugin-page-register2.glade:45 -#: gnucash/gtkbuilder/gnc-plugin-page-register2.glade:199 -#: gnucash/gtkbuilder/gnc-plugin-page-register2.glade:706 +#: gnucash/gtkbuilder/gnc-plugin-page-register2.glade:246 +#: gnucash/gtkbuilder/gnc-plugin-page-register2.glade:753 #: gnucash/gtkbuilder/gnc-plugin-page-register.glade:46 -#: gnucash/gtkbuilder/gnc-plugin-page-register.glade:603 -#: gnucash/gtkbuilder/gnc-plugin-page-register.glade:949 -#: gnucash/gtkbuilder/gnc-plugin-page-register.glade:1159 +#: gnucash/gtkbuilder/gnc-plugin-page-register.glade:597 +#: gnucash/gtkbuilder/gnc-plugin-page-register.glade:802 +#: gnucash/gtkbuilder/gnc-plugin-page-register.glade:1143 #: gnucash/gtkbuilder/gnc-tree-view-owner.glade:39 #: gnucash/gtkbuilder/window-autoclear.glade:38 #: gnucash/gtkbuilder/window-reconcile.glade:36 @@ -4088,7 +4092,7 @@ msgstr "Renumerar os filhos da conta seleccionada" #: gnucash/gnome/gnc-plugin-page-owner-tree.c:185 #: gnucash/gnome/gnc-plugin-page-register2.c:340 #: gnucash/gnome/gnc-plugin-page-register.c:458 -#: gnucash/gnome-utils/gnc-main-window.c:342 +#: gnucash/gnome-utils/gnc-main-window.c:345 msgid "_Filter By..." msgstr "_Filtrar por..." @@ -4098,9 +4102,9 @@ msgstr "_Filtrar por..." #: gnucash/gnome/gnc-plugin-page-owner-tree.c:189 #: gnucash/gnome/gnc-plugin-page-register2.c:344 #: gnucash/gnome/gnc-plugin-page-register.c:462 -#: gnucash/gnome/gnc-plugin-page-report.c:1182 +#: gnucash/gnome/gnc-plugin-page-report.c:1226 #: gnucash/gnome/gnc-plugin-page-sx-list.c:169 -#: gnucash/gnome-utils/gnc-main-window.c:346 +#: gnucash/gnome-utils/gnc-main-window.c:349 msgid "_Refresh" msgstr "_Actualizar" @@ -4109,9 +4113,9 @@ msgstr "_Actualizar" #: gnucash/gnome/gnc-plugin-page-owner-tree.c:190 #: gnucash/gnome/gnc-plugin-page-register2.c:345 #: gnucash/gnome/gnc-plugin-page-register.c:463 -#: gnucash/gnome/gnc-plugin-page-report.c:1183 +#: gnucash/gnome/gnc-plugin-page-report.c:1227 #: gnucash/gnome/gnc-plugin-page-sx-list.c:170 -#: gnucash/gnome-utils/gnc-main-window.c:347 +#: gnucash/gnome-utils/gnc-main-window.c:350 msgid "Refresh this window" msgstr "Actualizar esta janela" @@ -4245,20 +4249,22 @@ msgstr "Nova" msgid "Delete" msgstr "Eliminar" -#: gnucash/gnome/gnc-plugin-page-account-tree.c:440 -#: gnucash/gnome/gnc-plugin-page-register.c:1934 +#: gnucash/gnome/gnc-plugin-page-account-tree.c:454 +#: gnucash/gnome/gnc-plugin-page-account-tree.c:2001 +#: gnucash/gnome/gnc-plugin-page-register.c:1939 +#: gnucash/gnome/gnc-plugin-page-register.c:5022 msgid "'Check & Repair' is currently running, do you want to abort it?" msgstr "" -#: gnucash/gnome/gnc-plugin-page-account-tree.c:498 -#: gnucash/gnome/gnc-plugin-page-account-tree.c:504 +#: gnucash/gnome/gnc-plugin-page-account-tree.c:520 +#: gnucash/gnome/gnc-plugin-page-account-tree.c:526 #: gnucash/gnome-utils/gnc-tree-view-split-reg.c:2829 #: gnucash/gnome-utils/gnc-tree-view-split-reg.c:2831 #: gnucash/gnome-utils/gnc-tree-view-split-reg.c:2833 #: gnucash/gnome-utils/gnc-tree-view-split-reg.c:2835 #: gnucash/gnome-utils/gnc-tree-view-split-reg.c:2846 #: gnucash/gnome-utils/gnc-tree-view-split-reg.c:2850 -#: gnucash/gtkbuilder/dialog-preferences.glade:863 +#: gnucash/gtkbuilder/dialog-preferences.glade:980 #: gnucash/report/report-core.scm:78 #: gnucash/report/reports/example/average-balance.scm:92 #: gnucash/report/reports/example/average-balance.scm:296 @@ -4284,7 +4290,7 @@ msgstr "" msgid "Accounts" msgstr "Contas" -#: gnucash/gnome/gnc-plugin-page-account-tree.c:1407 +#: gnucash/gnome/gnc-plugin-page-account-tree.c:1429 #, fuzzy, c-format msgid "" "Account %s does not have the same currency as the one you're moving " @@ -4294,27 +4300,27 @@ msgstr "" "Está prestes a sobrescrever uma transacção existente. Tem a certeza que o " "quer fazer?" -#: gnucash/gnome/gnc-plugin-page-account-tree.c:1415 +#: gnucash/gnome/gnc-plugin-page-account-tree.c:1437 #, fuzzy msgid "_Pick another account" msgstr "_Seleccionar conta de transferência" -#: gnucash/gnome/gnc-plugin-page-account-tree.c:1416 +#: gnucash/gnome/gnc-plugin-page-account-tree.c:1438 msgid "_Do it anyway" msgstr "" -#: gnucash/gnome/gnc-plugin-page-account-tree.c:1499 -#: gnucash/gnome/gnc-plugin-page-account-tree.c:1635 +#: gnucash/gnome/gnc-plugin-page-account-tree.c:1521 +#: gnucash/gnome/gnc-plugin-page-account-tree.c:1657 #: gnucash/gnome/gnc-plugin-page-owner-tree.c:1094 msgid "(no name)" msgstr "(sem nome)" -#: gnucash/gnome/gnc-plugin-page-account-tree.c:1510 +#: gnucash/gnome/gnc-plugin-page-account-tree.c:1532 #, c-format msgid "Deleting account %s" msgstr "A eliminar conta %s" -#: gnucash/gnome/gnc-plugin-page-account-tree.c:1625 +#: gnucash/gnome/gnc-plugin-page-account-tree.c:1647 msgid "" "The list below shows objects which make use of the account which you want to " "delete.\n" @@ -4326,42 +4332,42 @@ msgstr "" "Primeiro tem de eliminar estes objectos ou modificá-los para que utilizem " "outra conta." -#: gnucash/gnome/gnc-plugin-page-account-tree.c:1704 +#: gnucash/gnome/gnc-plugin-page-account-tree.c:1738 #, c-format msgid "The account %s will be deleted." msgstr "A conta %s será eliminada." -#: gnucash/gnome/gnc-plugin-page-account-tree.c:1713 +#: gnucash/gnome/gnc-plugin-page-account-tree.c:1747 #, c-format msgid "All transactions in this account will be moved to the account %s." msgstr "Todas as transacções nesta conta serão movidas para a conta %s." -#: gnucash/gnome/gnc-plugin-page-account-tree.c:1720 +#: gnucash/gnome/gnc-plugin-page-account-tree.c:1754 #, c-format msgid "All transactions in this account will be deleted." msgstr "Todas as transacções nesta conta serão eliminadas." -#: gnucash/gnome/gnc-plugin-page-account-tree.c:1729 +#: gnucash/gnome/gnc-plugin-page-account-tree.c:1763 #, fuzzy, c-format msgid "Its sub-account will be moved to the account %s." msgstr "Todas as suas sub-contas serão movidas para a conta %s." -#: gnucash/gnome/gnc-plugin-page-account-tree.c:1735 +#: gnucash/gnome/gnc-plugin-page-account-tree.c:1769 #, fuzzy, c-format msgid "Its subaccount will be deleted." msgstr "Todas as suas sub-contas serão eliminadas." -#: gnucash/gnome/gnc-plugin-page-account-tree.c:1739 +#: gnucash/gnome/gnc-plugin-page-account-tree.c:1773 #, c-format msgid "All sub-account transactions will be moved to the account %s." msgstr "Todas as transacções da sub-conta serão movidas para a conta %s." -#: gnucash/gnome/gnc-plugin-page-account-tree.c:1746 +#: gnucash/gnome/gnc-plugin-page-account-tree.c:1780 #, c-format msgid "All sub-account transactions will be deleted." msgstr "Todas as transacções da sub-conta serão eliminadas." -#: gnucash/gnome/gnc-plugin-page-account-tree.c:1752 +#: gnucash/gnome/gnc-plugin-page-account-tree.c:1786 msgid "Are you sure you want to do this?" msgstr "Tem a certeza que quer eliminar esta linha?" @@ -4437,7 +4443,7 @@ msgid "Refresh this window." msgstr "Actualizar esta janela" #: gnucash/gnome/gnc-plugin-page-budget.c:210 -#: gnucash/gnome/gnc-plugin-page-report.c:1088 +#: gnucash/gnome/gnc-plugin-page-report.c:1132 #: gnucash/gtkbuilder/assistant-csv-export.glade:107 #: gnucash/gtkbuilder/dialog-print-check.glade:643 msgid "Options" @@ -4509,8 +4515,8 @@ msgstr "Copiar" #: gnucash/gnome/gnc-plugin-page-invoice.c:135 #: gnucash/gnome/gnc-plugin-page-register2.c:240 #: gnucash/gnome/gnc-plugin-page-register.c:349 -#: gnucash/gnome/gnc-plugin-page-report.c:1177 -#: gnucash/gnome-utils/gnc-main-window.c:325 +#: gnucash/gnome/gnc-plugin-page-report.c:1221 +#: gnucash/gnome-utils/gnc-main-window.c:328 msgid "_Paste" msgstr "Co_lar" @@ -4572,12 +4578,12 @@ msgstr "Manter ordem normal de facturação" #: gnucash/gnome/gnc-plugin-page-invoice.c:248 #: gnucash/gtkbuilder/assistant-stock-split.glade:123 -#: gnucash/gtkbuilder/dialog-account.glade:1744 +#: gnucash/gtkbuilder/dialog-account.glade:1761 #: gnucash/gtkbuilder/dialog-price.glade:175 #: gnucash/gtkbuilder/dialog-print-check.glade:701 -#: gnucash/gtkbuilder/gnc-plugin-page-register2.glade:79 -#: gnucash/gtkbuilder/gnc-plugin-page-register.glade:662 -#: gnucash/gtkbuilder/gnc-plugin-page-register.glade:985 +#: gnucash/gtkbuilder/gnc-plugin-page-register2.glade:94 +#: gnucash/gtkbuilder/gnc-plugin-page-register.glade:647 +#: gnucash/gtkbuilder/gnc-plugin-page-register.glade:861 msgid "_Date" msgstr "_Data" @@ -4586,7 +4592,7 @@ msgid "Sort by date" msgstr "Ordenar por data" #: gnucash/gnome/gnc-plugin-page-invoice.c:249 -#: gnucash/gtkbuilder/gnc-plugin-page-register.glade:681 +#: gnucash/gtkbuilder/gnc-plugin-page-register.glade:880 msgid "Date of _Entry" msgstr "Data de _registo" @@ -4616,7 +4622,7 @@ msgid "Sort by price" msgstr "Ordenar por preço" #: gnucash/gnome/gnc-plugin-page-invoice.c:252 -#: gnucash/gtkbuilder/gnc-plugin-page-register.glade:776 +#: gnucash/gtkbuilder/gnc-plugin-page-register.glade:975 msgid "Descri_ption" msgstr "D_escrição" @@ -5312,36 +5318,36 @@ msgstr "_Imprimir cheques..." #: gnucash/gnome/gnc-plugin-page-register2.c:230 #: gnucash/gnome/gnc-plugin-page-register.c:339 -#: gnucash/gnome/gnc-plugin-page-report.c:1167 -#: gnucash/gnome-utils/gnc-main-window.c:315 +#: gnucash/gnome/gnc-plugin-page-report.c:1211 +#: gnucash/gnome-utils/gnc-main-window.c:318 msgid "Cu_t" msgstr "Cor_tar" #: gnucash/gnome/gnc-plugin-page-register2.c:231 #: gnucash/gnome/gnc-plugin-page-register.c:340 -#: gnucash/gnome/gnc-plugin-page-report.c:1168 -#: gnucash/gnome-utils/gnc-main-window.c:316 +#: gnucash/gnome/gnc-plugin-page-report.c:1212 +#: gnucash/gnome-utils/gnc-main-window.c:319 msgid "Cut the current selection and copy it to clipboard" msgstr "Cortar a selecção actual para a área de transferência" #: gnucash/gnome/gnc-plugin-page-register2.c:235 #: gnucash/gnome/gnc-plugin-page-register.c:344 -#: gnucash/gnome/gnc-plugin-page-report.c:1172 -#: gnucash/gnome-utils/gnc-main-window.c:320 +#: gnucash/gnome/gnc-plugin-page-report.c:1216 +#: gnucash/gnome-utils/gnc-main-window.c:323 msgid "_Copy" msgstr "_Copiar" #: gnucash/gnome/gnc-plugin-page-register2.c:236 #: gnucash/gnome/gnc-plugin-page-register.c:345 -#: gnucash/gnome/gnc-plugin-page-report.c:1173 -#: gnucash/gnome-utils/gnc-main-window.c:321 +#: gnucash/gnome/gnc-plugin-page-report.c:1217 +#: gnucash/gnome-utils/gnc-main-window.c:324 msgid "Copy the current selection to clipboard" msgstr "Copiar a selecção actual para a área de transferência" #: gnucash/gnome/gnc-plugin-page-register2.c:241 #: gnucash/gnome/gnc-plugin-page-register.c:350 -#: gnucash/gnome/gnc-plugin-page-report.c:1178 -#: gnucash/gnome-utils/gnc-main-window.c:326 +#: gnucash/gnome/gnc-plugin-page-report.c:1222 +#: gnucash/gnome-utils/gnc-main-window.c:329 msgid "Paste the clipboard content at the cursor position" msgstr "Colar a área de transferência na posição do cursor" @@ -5560,7 +5566,7 @@ msgstr "" #: gnucash/gnome/gnc-plugin-page-register2.c:458 #: gnucash/gnome/gnc-plugin-page-register.c:581 -#: gnucash/gtkbuilder/dialog-preferences.glade:2657 +#: gnucash/gtkbuilder/dialog-preferences.glade:2774 msgid "Transaction _Journal" msgstr "_Diário de transacções" @@ -5571,7 +5577,7 @@ msgstr "Mostrar transacções expandidas com todas as parcelas" #: gnucash/gnome/gnc-plugin-page-register2.c:502 #: gnucash/gnome/gnc-plugin-page-register.c:625 -#: gnucash/gnome-search/dialog-search.c:1096 +#: gnucash/gnome-search/dialog-search.c:1105 msgid "Split" msgstr "Parcelas" @@ -5589,7 +5595,7 @@ msgstr "Agendar" #: gnucash/gnome/gnc-plugin-page-register2.c:507 #: gnucash/gnome/gnc-plugin-page-register.c:630 -#: gnucash/gnome/window-autoclear.c:91 +#: gnucash/gnome/window-autoclear.c:88 msgid "Auto-clear" msgstr "Auto-confirmar" @@ -5606,13 +5612,13 @@ msgstr "Diário geral 2" #. Translators: %s is the name #. of the tab page #: gnucash/gnome/gnc-plugin-page-register2.c:1620 -#: gnucash/gnome/gnc-plugin-page-register.c:1974 +#: gnucash/gnome/gnc-plugin-page-register.c:1980 #, c-format msgid "Save changes to %s?" msgstr "Gravar alterações em %s?" #: gnucash/gnome/gnc-plugin-page-register2.c:1624 -#: gnucash/gnome/gnc-plugin-page-register.c:1978 +#: gnucash/gnome/gnc-plugin-page-register.c:1984 msgid "" "This register has pending changes to a transaction. Would you like to save " "the changes to this transaction, discard the transaction, or cancel the " @@ -5622,12 +5628,12 @@ msgstr "" "alterações a esta transacção, descartar a transacção ou cancelar a operação?" #: gnucash/gnome/gnc-plugin-page-register2.c:1627 -#: gnucash/gnome/gnc-plugin-page-register.c:1981 +#: gnucash/gnome/gnc-plugin-page-register.c:1987 msgid "_Discard Transaction" msgstr "_Descartar transacção" #: gnucash/gnome/gnc-plugin-page-register2.c:1631 -#: gnucash/gnome/gnc-plugin-page-register.c:1985 +#: gnucash/gnome/gnc-plugin-page-register.c:1991 msgid "_Save Transaction" msgstr "_Gravar transacção" @@ -5636,35 +5642,35 @@ msgstr "_Gravar transacção" #: gnucash/gnome/gnc-plugin-page-register2.c:1707 #: gnucash/gnome/gnc-plugin-page-register2.c:1730 #: gnucash/gnome/gnc-plugin-page-register2.c:1778 -#: gnucash/gnome/gnc-plugin-page-register.c:2018 -#: gnucash/gnome/gnc-plugin-page-register.c:2053 -#: gnucash/gnome/gnc-plugin-page-register.c:2066 -#: gnucash/gnome/gnc-plugin-page-register.c:2129 -#: gnucash/gnome/gnc-plugin-page-register.c:2234 -#: gnucash/gnome/gnc-plugin-page-register.c:2372 +#: gnucash/gnome/gnc-plugin-page-register.c:2024 +#: gnucash/gnome/gnc-plugin-page-register.c:2059 +#: gnucash/gnome/gnc-plugin-page-register.c:2072 +#: gnucash/gnome/gnc-plugin-page-register.c:2135 +#: gnucash/gnome/gnc-plugin-page-register.c:2240 +#: gnucash/gnome/gnc-plugin-page-register.c:2378 msgid "unknown" msgstr "desconhecido" #: gnucash/gnome/gnc-plugin-page-register2.c:1681 #: gnucash/gnome/gnc-plugin-page-register2.c:2416 #: gnucash/gnome/gnc-plugin-page-register.c:906 -#: gnucash/gnome/gnc-plugin-page-register.c:2039 -#: gnucash/gnome/gnc-plugin-page-register.c:3511 +#: gnucash/gnome/gnc-plugin-page-register.c:2045 +#: gnucash/gnome/gnc-plugin-page-register.c:3517 #: gnucash/report/reports/standard/general-journal.scm:36 msgid "General Journal" msgstr "Diário geral" #: gnucash/gnome/gnc-plugin-page-register2.c:1683 #: gnucash/gnome/gnc-plugin-page-register2.c:2422 -#: gnucash/gnome/gnc-plugin-page-register.c:2041 -#: gnucash/gnome/gnc-plugin-page-register.c:3517 +#: gnucash/gnome/gnc-plugin-page-register.c:2047 +#: gnucash/gnome/gnc-plugin-page-register.c:3523 msgid "Portfolio" msgstr "Portfólio" #: gnucash/gnome/gnc-plugin-page-register2.c:1685 #: gnucash/gnome/gnc-plugin-page-register2.c:2428 -#: gnucash/gnome/gnc-plugin-page-register.c:2043 -#: gnucash/gnome/gnc-plugin-page-register.c:3523 +#: gnucash/gnome/gnc-plugin-page-register.c:2049 +#: gnucash/gnome/gnc-plugin-page-register.c:3529 msgid "Search Results" msgstr "Resultados da procura" @@ -5673,35 +5679,35 @@ msgid "General Journal Report" msgstr "Relatório do diário geral" #: gnucash/gnome/gnc-plugin-page-register2.c:2424 -#: gnucash/gnome/gnc-plugin-page-register.c:3519 +#: gnucash/gnome/gnc-plugin-page-register.c:3525 msgid "Portfolio Report" msgstr "Relatório de Portfólio" #: gnucash/gnome/gnc-plugin-page-register2.c:2430 -#: gnucash/gnome/gnc-plugin-page-register.c:3525 +#: gnucash/gnome/gnc-plugin-page-register.c:3531 msgid "Search Results Report" msgstr "Relatório de resultados da procura" #: gnucash/gnome/gnc-plugin-page-register2.c:2434 -#: gnucash/gnome/gnc-plugin-page-register.c:3529 -#: gnucash/gtkbuilder/dialog-preferences.glade:2567 +#: gnucash/gnome/gnc-plugin-page-register.c:3535 +#: gnucash/gtkbuilder/dialog-preferences.glade:2684 #: gnucash/report/reports/standard/general-journal.scm:37 #: gnucash/report/reports/standard/register.scm:64 msgid "Register" msgstr "Diário" #: gnucash/gnome/gnc-plugin-page-register2.c:2436 -#: gnucash/report/reports/standard/register.scm:378 +#: gnucash/report/reports/standard/register.scm:349 msgid "Register Report" msgstr "Relatório de registo" #: gnucash/gnome/gnc-plugin-page-register2.c:2452 -#: gnucash/gnome/gnc-plugin-page-register.c:3547 +#: gnucash/gnome/gnc-plugin-page-register.c:3553 msgid "and subaccounts" msgstr "e sub-contas" #: gnucash/gnome/gnc-plugin-page-register2.c:2484 -#: gnucash/gnome/gnc-plugin-page-register.c:3576 +#: gnucash/gnome/gnc-plugin-page-register.c:3582 #: gnucash/gnome-utils/gnc-tree-model-split-reg.c:2874 #: gnucash/gnome-utils/gnc-tree-model-split-reg.c:2893 #: gnucash/gnome-utils/gnc-tree-model-split-reg.c:2911 @@ -5713,34 +5719,34 @@ msgstr "e sub-contas" #: gnucash/register/ledger-core/split-register.c:2658 #: gnucash/register/ledger-core/split-register.c:2676 #: gnucash/report/reports/standard/general-journal.scm:83 -#: gnucash/report/reports/standard/register.scm:372 -#: gnucash/report/reports/standard/trial-balance.scm:595 +#: gnucash/report/reports/standard/register.scm:343 +#: gnucash/report/reports/standard/trial-balance.scm:596 #: gnucash/report/trep-engine.scm:1357 gnucash/report/trep-engine.scm:1374 -#: libgnucash/engine/Account.cpp:177 +#: libgnucash/engine/Account.cpp:178 msgid "Credit" msgstr "Crédito" #: gnucash/gnome/gnc-plugin-page-register2.c:2487 -#: gnucash/gnome/gnc-plugin-page-register.c:3580 +#: gnucash/gnome/gnc-plugin-page-register.c:3586 #: gnucash/gnome-utils/gnc-tree-view-split-reg.c:3099 #: gnucash/gnome-utils/gnc-tree-view-split-reg.c:3104 #: gnucash/gtkbuilder/dialog-payment.glade:296 #: gnucash/register/ledger-core/split-register.c:2521 #: gnucash/report/reports/standard/general-journal.scm:82 -#: gnucash/report/reports/standard/register.scm:370 -#: gnucash/report/reports/standard/trial-balance.scm:592 +#: gnucash/report/reports/standard/register.scm:341 +#: gnucash/report/reports/standard/trial-balance.scm:593 #: gnucash/report/trep-engine.scm:1354 gnucash/report/trep-engine.scm:1371 -#: libgnucash/engine/Account.cpp:157 +#: libgnucash/engine/Account.cpp:158 msgid "Debit" msgstr "Débito" #: gnucash/gnome/gnc-plugin-page-register2.c:2653 -#: gnucash/gnome/gnc-plugin-page-register.c:3713 +#: gnucash/gnome/gnc-plugin-page-register.c:3719 msgid "Print checks from multiple accounts?" msgstr "Imprimir cheques de múltiplas contas?" #: gnucash/gnome/gnc-plugin-page-register2.c:2655 -#: gnucash/gnome/gnc-plugin-page-register.c:3715 +#: gnucash/gnome/gnc-plugin-page-register.c:3721 msgid "" "This search result contains splits from more than one account. Do you want " "to print the checks even though they are not all from the same account?" @@ -5749,12 +5755,12 @@ msgstr "" "imprimir os cheques, mesmo que não sejam todos da mesma conta?" #: gnucash/gnome/gnc-plugin-page-register2.c:2665 -#: gnucash/gnome/gnc-plugin-page-register.c:3725 +#: gnucash/gnome/gnc-plugin-page-register.c:3731 msgid "_Print checks" msgstr "_Imprimir cheques" #: gnucash/gnome/gnc-plugin-page-register2.c:2684 -#: gnucash/gnome/gnc-plugin-page-register.c:3744 +#: gnucash/gnome/gnc-plugin-page-register.c:3750 msgid "" "You can only print checks from a bank account register or search results." msgstr "" @@ -5762,15 +5768,15 @@ msgstr "" "procura." #: gnucash/gnome/gnc-plugin-page-register2.c:2896 -#: gnucash/gnome/gnc-plugin-page-register.c:3941 +#: gnucash/gnome/gnc-plugin-page-register.c:3947 msgid "You cannot void a transaction with reconciled or cleared splits." msgstr "" "Não pode esvaziar uma transacção com parcelas recociliadas ou confirmadas." #. Translators: The %s is the name of the plugin page #: gnucash/gnome/gnc-plugin-page-register2.c:3039 -#: gnucash/gnome/gnc-plugin-page-register.c:4212 -#: gnucash/gnome-utils/gnc-tree-view-account.c:2296 +#: gnucash/gnome/gnc-plugin-page-register.c:4218 +#: gnucash/gnome-utils/gnc-tree-view-account.c:2327 #: gnucash/gnome-utils/gnc-tree-view-owner.c:1175 #, c-format msgid "Filter %s by..." @@ -5804,7 +5810,7 @@ msgid "Remo_ve Other Splits" msgstr "Remo_ver outras parcelas" #: gnucash/gnome/gnc-plugin-page-register.c:454 -#: gnucash/gnome-utils/gnc-main-window.c:338 +#: gnucash/gnome-utils/gnc-main-window.c:341 msgid "_Sort By..." msgstr "_Ordenar por..." @@ -5827,71 +5833,71 @@ msgid "" msgstr "" "Tentou abrir uma conta no diário antigo enquanto está aberta no novo diário." -#: gnucash/gnome/gnc-plugin-page-register.c:3378 +#: gnucash/gnome/gnc-plugin-page-register.c:3384 msgid "Filter By:" msgstr "Filtrar por:" -#: gnucash/gnome/gnc-plugin-page-register.c:3392 +#: gnucash/gnome/gnc-plugin-page-register.c:3398 msgid "Start Date:" msgstr "Data inicial:" -#: gnucash/gnome/gnc-plugin-page-register.c:3398 +#: gnucash/gnome/gnc-plugin-page-register.c:3404 msgid "Show previous number of days:" msgstr "Mostrar número prévio de dias:" -#: gnucash/gnome/gnc-plugin-page-register.c:3405 +#: gnucash/gnome/gnc-plugin-page-register.c:3411 msgid "End Date:" msgstr "Data final:" -#: gnucash/gnome/gnc-plugin-page-register.c:3415 +#: gnucash/gnome/gnc-plugin-page-register.c:3421 #: gnucash/report/trep-engine.scm:124 gnucash/report/trep-engine.scm:398 msgid "Unreconciled" msgstr "Não reconciliada" -#: gnucash/gnome/gnc-plugin-page-register.c:3417 +#: gnucash/gnome/gnc-plugin-page-register.c:3423 #: gnucash/gnome-search/search-reconciled.c:218 -#: gnucash/gnome-utils/gnc-tree-view-account.c:852 +#: gnucash/gnome-utils/gnc-tree-view-account.c:875 #: gnucash/report/trep-engine.scm:125 gnucash/report/trep-engine.scm:403 msgid "Cleared" msgstr "Confirmada" -#: gnucash/gnome/gnc-plugin-page-register.c:3419 +#: gnucash/gnome/gnc-plugin-page-register.c:3425 #: gnucash/gnome-search/search-reconciled.c:221 -#: gnucash/gnome-utils/gnc-tree-view-account.c:866 +#: gnucash/gnome-utils/gnc-tree-view-account.c:889 #: gnucash/import-export/csv-imp/gnc-imp-props-tx.cpp:70 #: gnucash/import-export/import-match-picker.c:437 #: gnucash/report/trep-engine.scm:126 gnucash/report/trep-engine.scm:408 msgid "Reconciled" msgstr "Reconciliada" -#: gnucash/gnome/gnc-plugin-page-register.c:3421 +#: gnucash/gnome/gnc-plugin-page-register.c:3427 #: gnucash/gnome-search/search-reconciled.c:224 #: gnucash/report/trep-engine.scm:127 msgid "Frozen" msgstr "Suspensa" -#: gnucash/gnome/gnc-plugin-page-register.c:3423 +#: gnucash/gnome/gnc-plugin-page-register.c:3429 #: gnucash/gnome-search/search-reconciled.c:227 #: gnucash/report/trep-engine.scm:128 msgid "Voided" msgstr "Esvaziada" -#: gnucash/gnome/gnc-plugin-page-register.c:3427 -#: gnucash/gnome/gnc-plugin-page-register.c:3429 +#: gnucash/gnome/gnc-plugin-page-register.c:3433 +#: gnucash/gnome/gnc-plugin-page-register.c:3435 msgid "Hide:" msgstr "Ocultar:" -#: gnucash/gnome/gnc-plugin-page-register.c:3429 +#: gnucash/gnome/gnc-plugin-page-register.c:3435 msgid "Show:" msgstr "Mostrar:" -#: gnucash/gnome/gnc-plugin-page-register.c:3513 -#: gnucash/gnome/gnc-plugin-page-register.c:3531 +#: gnucash/gnome/gnc-plugin-page-register.c:3519 +#: gnucash/gnome/gnc-plugin-page-register.c:3537 #: gnucash/report/reports/standard/transaction.scm:33 msgid "Transaction Report" msgstr "Relatório de transacções" -#: gnucash/gnome/gnc-plugin-page-register.c:3948 +#: gnucash/gnome/gnc-plugin-page-register.c:3954 #: gnucash/gnome/gnc-split-reg.c:1160 #: gnucash/gnome-utils/gnc-tree-control-split-reg.c:68 #, c-format @@ -5899,24 +5905,24 @@ msgid "This transaction is marked read-only with the comment: '%s'" msgstr "" "Esta transacção está marcada como só de leitura com o comentário: \"%s\"" -#: gnucash/gnome/gnc-plugin-page-register.c:4028 +#: gnucash/gnome/gnc-plugin-page-register.c:4034 #: gnucash/gnome/gnc-split-reg.c:1131 #: gnucash/gnome-utils/gnc-tree-control-split-reg.c:1121 msgid "A reversing entry has already been created for this transaction." msgstr "Já foi criada uma entrada reversa para esta transacção." -#: gnucash/gnome/gnc-plugin-page-register.c:4035 +#: gnucash/gnome/gnc-plugin-page-register.c:4041 #, fuzzy msgid "Reverse Transaction" msgstr "Adicionar transacção _reversa" -#: gnucash/gnome/gnc-plugin-page-register.c:4036 +#: gnucash/gnome/gnc-plugin-page-register.c:4042 #, fuzzy msgid "New Transaction Information" msgstr "Informação da transacção" #. Translators: The %s is the name of the plugin page -#: gnucash/gnome/gnc-plugin-page-register.c:4124 +#: gnucash/gnome/gnc-plugin-page-register.c:4130 #, c-format msgid "Sort %s by..." msgstr "Ordenar %s por..." @@ -5924,48 +5930,48 @@ msgstr "Ordenar %s por..." #. Translators: %s refer to the following in #. order: invoice type, invoice ID, owner name, #. posted date, amount -#: gnucash/gnome/gnc-plugin-page-register.c:4702 +#: gnucash/gnome/gnc-plugin-page-register.c:4708 #, c-format msgid "%s %s from %s, posted %s, amount %s" msgstr "" -#: gnucash/gnome/gnc-plugin-page-register.c:4711 +#: gnucash/gnome/gnc-plugin-page-register.c:4717 #, fuzzy #| msgid "Select Account" msgid "Select document" msgstr "Seleccionar conta" -#: gnucash/gnome/gnc-plugin-page-register.c:4712 +#: gnucash/gnome/gnc-plugin-page-register.c:4718 msgid "Several documents are linked with this transaction. Please choose one:" msgstr "" -#: gnucash/gnome/gnc-plugin-page-register.c:4713 +#: gnucash/gnome/gnc-plugin-page-register.c:4719 #: gnucash/gnome-search/dialog-search.c:323 #: gnucash/gnome-utils/gnc-cell-renderer-date.c:172 msgid "Select" msgstr "Seleccionar" -#: gnucash/gnome/gnc-plugin-page-register.c:4761 +#: gnucash/gnome/gnc-plugin-page-register.c:4767 #, fuzzy #| msgid "Post Date" msgid "Go to Date" msgstr "Data de emissão" -#: gnucash/gnome/gnc-plugin-page-register.c:5016 +#: gnucash/gnome/gnc-plugin-page-register.c:5045 #, c-format msgid "Checking splits in current register: %u of %u" msgstr "A verificar divisões no diário actual: %u de %u" -#: gnucash/gnome/gnc-plugin-page-report.c:287 -#: gnucash/gnome/gnc-plugin-page-report.c:288 +#: gnucash/gnome/gnc-plugin-page-report.c:300 +#: gnucash/gnome/gnc-plugin-page-report.c:301 msgid "The numeric ID of the report." msgstr "A ID numérica do relatório." -#: gnucash/gnome/gnc-plugin-page-report.c:1086 +#: gnucash/gnome/gnc-plugin-page-report.c:1130 msgid "Print" msgstr "Imprimir" -#: gnucash/gnome/gnc-plugin-page-report.c:1087 +#: gnucash/gnome/gnc-plugin-page-report.c:1131 #: gnucash/gnome-utils/dialog-file-access.c:319 #: gnucash/gnome-utils/gnc-file.c:109 gnucash/gnome-utils/gnc-file.c:351 msgid "Export" @@ -5973,21 +5979,21 @@ msgstr "Exportar" #. Translators: This string is meant to be a short alternative for "Save Report Configuration" #. * to be used as toolbar button label. -#: gnucash/gnome/gnc-plugin-page-report.c:1091 +#: gnucash/gnome/gnc-plugin-page-report.c:1135 msgid "Save Config" msgstr "Gravar configuração" #. Translators: This string is meant to be a short alternative for "Save Report Configuration As..." #. * to be used as toolbar button label. -#: gnucash/gnome/gnc-plugin-page-report.c:1094 +#: gnucash/gnome/gnc-plugin-page-report.c:1138 msgid "Save Config As..." msgstr "Gravar configuração como..." -#: gnucash/gnome/gnc-plugin-page-report.c:1095 +#: gnucash/gnome/gnc-plugin-page-report.c:1139 msgid "Make Pdf" msgstr "Criar PDF" -#: gnucash/gnome/gnc-plugin-page-report.c:1147 +#: gnucash/gnome/gnc-plugin-page-report.c:1191 #, fuzzy, c-format msgid "" "Update the current report's saved configuration. The report configuration " @@ -5996,7 +6002,7 @@ msgstr "" "Actualizar a configuração de relatório actualmente gravada. O relatório será " "gravado no ficheiro %s " -#: gnucash/gnome/gnc-plugin-page-report.c:1150 +#: gnucash/gnome/gnc-plugin-page-report.c:1194 #, fuzzy, c-format msgid "" "Add the current report's configuration to the `Reports->Saved Report " @@ -6005,98 +6011,98 @@ msgstr "" "Adicionar a configuração de relatório ao menu \"Configurações de relatório " "gravadas\". O relatório será gravado no ficheiro %s " -#: gnucash/gnome/gnc-plugin-page-report.c:1156 +#: gnucash/gnome/gnc-plugin-page-report.c:1200 msgid "_Print Report..." msgstr "Im_primir relatório..." -#: gnucash/gnome/gnc-plugin-page-report.c:1157 +#: gnucash/gnome/gnc-plugin-page-report.c:1201 msgid "Print the current report" msgstr "Imprimir o relatório actual" -#: gnucash/gnome/gnc-plugin-page-report.c:1161 +#: gnucash/gnome/gnc-plugin-page-report.c:1205 msgid "Export as P_DF..." msgstr "Exportar como P_DF..." -#: gnucash/gnome/gnc-plugin-page-report.c:1162 +#: gnucash/gnome/gnc-plugin-page-report.c:1206 msgid "Export the current report as a PDF document" msgstr "Exportar o relatório actual como documento PDF" -#: gnucash/gnome/gnc-plugin-page-report.c:1187 +#: gnucash/gnome/gnc-plugin-page-report.c:1231 msgid "Save _Report Configuration" msgstr "Gravar configuração de _relatório" -#: gnucash/gnome/gnc-plugin-page-report.c:1191 +#: gnucash/gnome/gnc-plugin-page-report.c:1235 msgid "Save Report Configuration As..." msgstr "Gravar configuração de relatório como..." -#: gnucash/gnome/gnc-plugin-page-report.c:1195 +#: gnucash/gnome/gnc-plugin-page-report.c:1239 msgid "Export _Report" msgstr "Exportar _relatório" -#: gnucash/gnome/gnc-plugin-page-report.c:1196 +#: gnucash/gnome/gnc-plugin-page-report.c:1240 msgid "Export HTML-formatted report to file" msgstr "Exportar relatório em formato HTML para um ficheiro" -#: gnucash/gnome/gnc-plugin-page-report.c:1200 +#: gnucash/gnome/gnc-plugin-page-report.c:1244 msgid "_Report Options" msgstr "Opções do _relatório" -#: gnucash/gnome/gnc-plugin-page-report.c:1201 -#: gnucash/report/html-utilities.scm:252 +#: gnucash/gnome/gnc-plugin-page-report.c:1245 +#: gnucash/report/html-utilities.scm:276 msgid "Edit report options" msgstr "Editar opções do relatório" -#: gnucash/gnome/gnc-plugin-page-report.c:1206 +#: gnucash/gnome/gnc-plugin-page-report.c:1250 msgid "Back" msgstr "Recuar" -#: gnucash/gnome/gnc-plugin-page-report.c:1207 +#: gnucash/gnome/gnc-plugin-page-report.c:1251 msgid "Move back one step in the history" msgstr "Recuar um passo no histórico" -#: gnucash/gnome/gnc-plugin-page-report.c:1211 +#: gnucash/gnome/gnc-plugin-page-report.c:1255 msgid "Forward" msgstr "Avançar" -#: gnucash/gnome/gnc-plugin-page-report.c:1212 +#: gnucash/gnome/gnc-plugin-page-report.c:1256 msgid "Move forward one step in the history" msgstr "Avançar um passo no histórico" -#: gnucash/gnome/gnc-plugin-page-report.c:1216 +#: gnucash/gnome/gnc-plugin-page-report.c:1260 msgid "Reload" msgstr "Recarregar" -#: gnucash/gnome/gnc-plugin-page-report.c:1217 +#: gnucash/gnome/gnc-plugin-page-report.c:1261 msgid "Reload the current page" msgstr "Recarregar a página actual" -#: gnucash/gnome/gnc-plugin-page-report.c:1221 +#: gnucash/gnome/gnc-plugin-page-report.c:1265 msgid "Stop" msgstr "Parar" -#: gnucash/gnome/gnc-plugin-page-report.c:1222 +#: gnucash/gnome/gnc-plugin-page-report.c:1266 msgid "Cancel outstanding HTML requests" msgstr "Cancelar pedidos HTML pendentes" -#: gnucash/gnome/gnc-plugin-page-report.c:1469 -#: gnucash/gnome/gnc-plugin-page-report.c:1502 +#: gnucash/gnome/gnc-plugin-page-report.c:1513 +#: gnucash/gnome/gnc-plugin-page-report.c:1546 msgid "HTML" msgstr "HTML" -#: gnucash/gnome/gnc-plugin-page-report.c:1472 +#: gnucash/gnome/gnc-plugin-page-report.c:1516 msgid "Choose export format" msgstr "Escolha o formato de exportação" -#: gnucash/gnome/gnc-plugin-page-report.c:1473 +#: gnucash/gnome/gnc-plugin-page-report.c:1517 msgid "Choose the export format for this report:" msgstr "Escolha o formato de exportação para este relatório:" -#: gnucash/gnome/gnc-plugin-page-report.c:1513 +#: gnucash/gnome/gnc-plugin-page-report.c:1557 #, c-format msgid "Save %s To File" msgstr "Gravar %s num ficheiro" -#: gnucash/gnome/gnc-plugin-page-report.c:1542 +#: gnucash/gnome/gnc-plugin-page-report.c:1586 #, c-format msgid "" "You cannot save to that filename.\n" @@ -6107,41 +6113,41 @@ msgstr "" "\n" "%s" -#: gnucash/gnome/gnc-plugin-page-report.c:1552 +#: gnucash/gnome/gnc-plugin-page-report.c:1596 msgid "You cannot save to that file." msgstr "Não pode gravar nesse ficheiro." -#: gnucash/gnome/gnc-plugin-page-report.c:1561 +#: gnucash/gnome/gnc-plugin-page-report.c:1605 #: gnucash/gnome-utils/gnc-file.c:1300 gnucash/gnome-utils/gnc-file.c:1547 #: gnucash/import-export/csv-exp/assistant-csv-export.c:741 #, c-format msgid "The file %s already exists. Are you sure you want to overwrite it?" msgstr "O ficheiro %s já existe. Tem a certeza que o quer sobrescrever?" -#: gnucash/gnome/gnc-plugin-page-report.c:1676 -#: gnucash/gnome/gnc-plugin-page-report.c:1700 gnucash/gnucash-commands.cpp:224 +#: gnucash/gnome/gnc-plugin-page-report.c:1720 +#: gnucash/gnome/gnc-plugin-page-report.c:1744 gnucash/gnucash-commands.cpp:224 #: gnucash/gnucash-commands.cpp:252 msgid "" "This report must be upgraded to return a document object with export-string " "or export-error." msgstr "" -#: gnucash/gnome/gnc-plugin-page-report.c:1710 +#: gnucash/gnome/gnc-plugin-page-report.c:1754 #, c-format msgid "Could not open the file %s. The error is: %s" msgstr "Impossível abrir o ficheiro %s. O erro é: %s" -#: gnucash/gnome/gnc-plugin-page-report.c:1750 +#: gnucash/gnome/gnc-plugin-page-report.c:1794 msgid "GnuCash-Report" msgstr "Relatório GnuCash" -#: gnucash/gnome/gnc-plugin-page-report.c:1796 +#: gnucash/gnome/gnc-plugin-page-report.c:1840 #: gnucash/gtkbuilder/business-prefs.glade:26 #: gnucash/report/reports/standard/invoice.scm:903 msgid "Printable Invoice" msgstr "Factura imprimível" -#: gnucash/gnome/gnc-plugin-page-report.c:1797 +#: gnucash/gnome/gnc-plugin-page-report.c:1841 #: gnucash/gtkbuilder/business-prefs.glade:29 #: gnucash/report/reports/standard/taxinvoice.scm:295 #: gnucash/report/reports/standard/taxinvoice.scm:297 @@ -6150,13 +6156,13 @@ msgstr "Factura imprimível" msgid "Tax Invoice" msgstr "Factura de imposto" -#: gnucash/gnome/gnc-plugin-page-report.c:1798 +#: gnucash/gnome/gnc-plugin-page-report.c:1842 #: gnucash/gtkbuilder/business-prefs.glade:32 #: gnucash/report/reports/standard/invoice.scm:912 msgid "Easy Invoice" msgstr "Factura fácil" -#: gnucash/gnome/gnc-plugin-page-report.c:1799 +#: gnucash/gnome/gnc-plugin-page-report.c:1843 #: gnucash/gtkbuilder/business-prefs.glade:35 #: gnucash/report/reports/standard/invoice.scm:921 msgid "Fancy Invoice" @@ -6674,7 +6680,7 @@ msgstr "" msgid "You have not selected an owner" msgstr "Não seleccionou um titular" -#: gnucash/gnome/search-owner.c:214 gnucash/gnome-search/dialog-search.c:1084 +#: gnucash/gnome/search-owner.c:214 gnucash/gnome-search/dialog-search.c:1093 #: gnucash/gtkbuilder/dialog-invoice.glade:284 #: gnucash/gtkbuilder/dialog-invoice.glade:506 #: gnucash/gtkbuilder/dialog-invoice.glade:931 @@ -6720,19 +6726,11 @@ msgstr "Preço não existe: %s" msgid "Business" msgstr "Negócios" -#: gnucash/gnome/window-autoclear.c:138 -msgid "Searching for splits to clear ..." -msgstr "A procurar parcelas para confirmar..." - -#: gnucash/gnome/window-autoclear.c:241 -msgid "Cannot uniquely clear splits. Found multiple possibilities." -msgstr "" -"Impossível confirmar parcelas exclusivamente. Encontradas múltiplas " -"possibilidades." - -#: gnucash/gnome/window-autoclear.c:248 -msgid "The selected amount cannot be cleared." -msgstr "O montante seleccionado não pode ser confirmado." +#: gnucash/gnome/window-autoclear.c:115 +#, fuzzy +#| msgid "Created Transactions" +msgid "Cleared Transactions" +msgstr "Transacções criadas" #: gnucash/gnome/window-reconcile2.c:417 gnucash/gnome/window-reconcile.c:458 msgid "Interest Payment" @@ -6799,7 +6797,7 @@ msgid "Reconciled Balance" msgstr "Saldo reconciliado" #: gnucash/gnome/window-reconcile2.c:1798 gnucash/gnome/window-reconcile.c:1991 -#: gnucash/report/reports/standard/cash-flow.scm:310 +#: gnucash/report/reports/standard/cash-flow.scm:312 msgid "Difference" msgstr "Diferença" @@ -6833,7 +6831,7 @@ msgstr "Cont_a" #: gnucash/gnome/window-reconcile2.c:2103 #: gnucash/gnome/window-reconcile2.c:2184 gnucash/gnome/window-reconcile.c:2324 #: gnucash/gnome/window-reconcile.c:2405 -#: gnucash/gnome-utils/gnc-main-window.c:278 +#: gnucash/gnome-utils/gnc-main-window.c:281 #: gnucash/gtkbuilder/dialog-account.glade:1117 #: gnucash/gtkbuilder/dialog-bi-import-gui.glade:23 #: gnucash/gtkbuilder/dialog-book-close.glade:22 @@ -6842,13 +6840,13 @@ msgstr "Cont_a" #: gnucash/gtkbuilder/dialog-customer-import-gui.glade:25 #: gnucash/gtkbuilder/dialog-custom-report.glade:28 #: gnucash/gtkbuilder/dialog-employee.glade:23 -#: gnucash/gtkbuilder/dialog-import.glade:1001 +#: gnucash/gtkbuilder/dialog-import.glade:1017 #: gnucash/gtkbuilder/dialog-invoice.glade:658 #: gnucash/gtkbuilder/dialog-job.glade:24 #: gnucash/gtkbuilder/dialog-options.glade:21 #: gnucash/gtkbuilder/dialog-order.glade:25 #: gnucash/gtkbuilder/dialog-order.glade:441 -#: gnucash/gtkbuilder/dialog-preferences.glade:142 +#: gnucash/gtkbuilder/dialog-preferences.glade:258 #: gnucash/gtkbuilder/dialog-print-check.glade:316 #: gnucash/gtkbuilder/dialog-search.glade:21 #: gnucash/gtkbuilder/dialog-sx.glade:763 @@ -6905,12 +6903,12 @@ msgid "Edit the main account for this register" msgstr "Editar a conta principal deste diário" #: gnucash/gnome/window-reconcile2.c:2147 gnucash/gnome/window-reconcile.c:2368 -#: gnucash/gnome-utils/gnc-main-window.c:353 +#: gnucash/gnome-utils/gnc-main-window.c:356 msgid "_Check & Repair" msgstr "Verificar & _Corrigir" #: gnucash/gnome/window-reconcile2.c:2156 gnucash/gnome/window-reconcile.c:2377 -#: gnucash/gtkbuilder/dialog-account.glade:1730 +#: gnucash/gtkbuilder/dialog-account.glade:1747 msgid "_Balance" msgstr "_Saldo" @@ -6994,7 +6992,7 @@ msgstr "Não há opções para este relatório." msgid "You must select an item from the list" msgstr "Tem de seleccionar um item da lista" -#: gnucash/gnome-search/dialog-search.c:693 +#: gnucash/gnome-search/dialog-search.c:702 #: gnucash/gnome-utils/gnc-recurrence.c:552 #: gnucash/gtkbuilder/dialog-commodities.glade:137 #: gnucash/gtkbuilder/dialog-doclink.glade:218 @@ -7002,24 +7000,24 @@ msgstr "Tem de seleccionar um item da lista" msgid "_Remove" msgstr "_Remover" -#: gnucash/gnome-search/dialog-search.c:1088 +#: gnucash/gnome-search/dialog-search.c:1097 msgid "Order" msgstr "Encomenda" -#: gnucash/gnome-search/dialog-search.c:1090 +#: gnucash/gnome-search/dialog-search.c:1099 #: gnucash/gtkbuilder/dialog-order.glade:425 msgid "New Order" msgstr "Nova encomenda" -#: gnucash/gnome-search/dialog-search.c:1094 +#: gnucash/gnome-search/dialog-search.c:1103 msgid "New Transaction" msgstr "Nova transacção" -#: gnucash/gnome-search/dialog-search.c:1098 +#: gnucash/gnome-search/dialog-search.c:1107 msgid "New Split" msgstr "Nova parcela" -#: gnucash/gnome-search/dialog-search.c:1107 +#: gnucash/gnome-search/dialog-search.c:1116 #, fuzzy msgctxt "" "Item represents an unknown object type (in the sense of bill, customer, " @@ -7027,18 +7025,18 @@ msgctxt "" msgid "New item" msgstr "_Novo item..." -#: gnucash/gnome-search/dialog-search.c:1150 +#: gnucash/gnome-search/dialog-search.c:1159 #: gnucash/gnome-utils/gnc-recurrence.c:549 #: gnucash/gtkbuilder/dialog-commodities.glade:120 #: gnucash/gtkbuilder/dialog-price.glade:837 msgid "_Add" msgstr "_Adicionar" -#: gnucash/gnome-search/dialog-search.c:1160 +#: gnucash/gnome-search/dialog-search.c:1169 msgid "all criteria are met" msgstr "satisfaz todos os critérios" -#: gnucash/gnome-search/dialog-search.c:1161 +#: gnucash/gnome-search/dialog-search.c:1170 msgid "any criteria are met" msgstr "satisfaz qualquer critério" @@ -7059,7 +7057,7 @@ msgid "matches no accounts" msgstr "igual a nenhuma conta" #: gnucash/gnome-search/search-account.c:195 -#: gnucash/report/reports/standard/cash-flow.scm:254 +#: gnucash/report/reports/standard/cash-flow.scm:256 msgid "Selected Accounts" msgstr "Contas seleccionadas" @@ -7397,15 +7395,15 @@ msgstr "A codificação já foi adicionada à lista." msgid "This is an invalid encoding." msgstr "Esta é uma codificação inválida." -#: gnucash/gnome-utils/dialog-account.c:488 +#: gnucash/gnome-utils/dialog-account.c:531 msgid "Could not create opening balance." msgstr "Impossível criar saldo inicial." -#: gnucash/gnome-utils/dialog-account.c:696 +#: gnucash/gnome-utils/dialog-account.c:739 msgid "Give the children the same type?" msgstr "Dar o mesmo tipo aos filhos?" -#: gnucash/gnome-utils/dialog-account.c:707 +#: gnucash/gnome-utils/dialog-account.c:750 #, c-format msgid "" "The children of the edited account have to be changed to type \"%s\" to make " @@ -7414,27 +7412,27 @@ msgstr "" "Os filhos da conta editada têm de ser alterados para o tipo \"%s\" para os " "tornar compatíveis." -#: gnucash/gnome-utils/dialog-account.c:718 +#: gnucash/gnome-utils/dialog-account.c:761 msgid "_Show children accounts" msgstr "_Mostrar contas filho" -#: gnucash/gnome-utils/dialog-account.c:788 +#: gnucash/gnome-utils/dialog-account.c:831 msgid "The account must be given a name." msgstr "Tem de ser dado um nome à conta." -#: gnucash/gnome-utils/dialog-account.c:814 +#: gnucash/gnome-utils/dialog-account.c:857 msgid "There is already an account with that name." msgstr "Já existe uma conta com esse nome." -#: gnucash/gnome-utils/dialog-account.c:823 +#: gnucash/gnome-utils/dialog-account.c:866 msgid "You must choose a valid parent account." msgstr "Tem de escolher uma conta-mãe válida." -#: gnucash/gnome-utils/dialog-account.c:832 +#: gnucash/gnome-utils/dialog-account.c:875 msgid "You must select an account type." msgstr "Tem de seleccionar um tipo de conta." -#: gnucash/gnome-utils/dialog-account.c:841 +#: gnucash/gnome-utils/dialog-account.c:884 msgid "" "The selected account type is incompatible with the one of the selected " "parent." @@ -7442,15 +7440,15 @@ msgstr "" "O tipo de conta seleccionada é incompatível com o tipo da conta-mãe " "seleccionada." -#: gnucash/gnome-utils/dialog-account.c:853 +#: gnucash/gnome-utils/dialog-account.c:896 msgid "You must choose a commodity." msgstr "Tem de escolher uma mercadoria." -#: gnucash/gnome-utils/dialog-account.c:909 +#: gnucash/gnome-utils/dialog-account.c:955 msgid "You must enter a valid opening balance or leave it blank." msgstr "Tem de inserir um saldo inicial válido ou deixar em branco." -#: gnucash/gnome-utils/dialog-account.c:933 +#: gnucash/gnome-utils/dialog-account.c:979 msgid "" "You must select a transfer account or choose the opening balances equity " "account." @@ -7458,7 +7456,18 @@ msgstr "" "Tem de seleccionar uma conta de transferência ou escolher a conta de capital " "próprio para os saldos iniciais." -#: gnucash/gnome-utils/dialog-account.c:1350 +#: gnucash/gnome-utils/dialog-account.c:1331 +msgid "" +"An account with opening balance already exists for the desired currency." +msgstr "" + +#: gnucash/gnome-utils/dialog-account.c:1332 +#, fuzzy +#| msgid "Cancel the current entry" +msgid "Cannot change currency" +msgstr "Cancelar a transacção actual" + +#: gnucash/gnome-utils/dialog-account.c:1419 msgid "" "This Account contains Transactions.\n" "Changing this option is not possible." @@ -7466,22 +7475,22 @@ msgstr "" "Esta conta contém transacções.\n" "Não é possível alterar esta opção." -#: gnucash/gnome-utils/dialog-account.c:1539 +#: gnucash/gnome-utils/dialog-account.c:1609 msgid "Edit Account" msgstr "Editar conta" -#: gnucash/gnome-utils/dialog-account.c:1542 +#: gnucash/gnome-utils/dialog-account.c:1612 #, c-format msgid "(%d) New Accounts" msgstr "(%d) novas contas" -#: gnucash/gnome-utils/dialog-account.c:1552 +#: gnucash/gnome-utils/dialog-account.c:1622 #: gnucash/gtkbuilder/dialog-account.glade:1100 #: gnucash/gtkbuilder/dialog-account-picker.glade:158 msgid "New Account" msgstr "Nova conta" -#: gnucash/gnome-utils/dialog-account.c:2113 +#: gnucash/gnome-utils/dialog-account.c:2183 #, c-format msgid "" "Renumber the immediate sub-accounts of %s? This will replace the account " @@ -7490,7 +7499,7 @@ msgstr "" "Renumerar as sub-contas imediatas de %s? Isto substitui o campo de código de " "conta para cada conta-filho com um código gerado de novo." -#: gnucash/gnome-utils/dialog-account.c:2218 +#: gnucash/gnome-utils/dialog-account.c:2288 #, fuzzy, c-format msgid "" "Set the account color for account '%s' including all sub-accounts to the " @@ -7499,7 +7508,7 @@ msgstr "" "Definir a cor da conta para \"%s\" incluindo todas as sub-contas para a cor " "seleccionada:" -#: gnucash/gnome-utils/dialog-account.c:2245 +#: gnucash/gnome-utils/dialog-account.c:2315 #, fuzzy, c-format msgid "" "Set the account placeholder value for account '%s' including all sub-accounts" @@ -7507,7 +7516,7 @@ msgstr "" "Definir a cor da conta para \"%s\" incluindo todas as sub-contas para a cor " "seleccionada:" -#: gnucash/gnome-utils/dialog-account.c:2259 +#: gnucash/gnome-utils/dialog-account.c:2329 #, fuzzy, c-format msgid "" "Set the account hidden value for account '%s' including all sub-accounts" @@ -7592,7 +7601,7 @@ msgid "Cu_rrency" msgstr "_Moeda" #: gnucash/gnome-utils/dialog-commodity.c:773 -#: gnucash/gnome-utils/dialog-options.c:701 +#: gnucash/gnome-utils/dialog-options.c:713 #: gnucash/gnome-utils/gnc-tree-view-owner.c:412 #: gnucash/gnome-utils/gnc-tree-view-price.c:402 #: gnucash/gtkbuilder/dialog-customer.glade:511 @@ -7600,7 +7609,7 @@ msgstr "_Moeda" #: gnucash/gtkbuilder/dialog-transfer.glade:424 #: gnucash/gtkbuilder/dialog-transfer.glade:437 #: gnucash/gtkbuilder/dialog-vendor.glade:507 -#: libgnucash/engine/Account.cpp:4321 +#: libgnucash/engine/Account.cpp:4368 msgid "Currency" msgstr "Moeda" @@ -7670,7 +7679,11 @@ msgstr "Início de caminho não definido, a usar \"%s\" para caminhos relativos" msgid "Existing" msgstr "Usar existente" -#: gnucash/gnome-utils/dialog-dup-trans.c:250 +#: gnucash/gnome-utils/dialog-dup-trans.c:148 +msgid "Use +- keys to increment/decrement number" +msgstr "" + +#: gnucash/gnome-utils/dialog-dup-trans.c:297 msgid "Action/Number" msgstr "Acção/Número" @@ -7696,7 +7709,33 @@ msgstr "Gravar como..." msgid "_Save As" msgstr "Gra_var como..." -#: gnucash/gnome-utils/dialog-options.c:641 +#: gnucash/gnome-utils/dialog-options.c:226 +#: gnucash/gnome-utils/gnc-main-window.c:305 +#: gnucash/gtkbuilder/dialog-billterms.glade:729 +#: gnucash/gtkbuilder/dialog-commodities.glade:173 +#: gnucash/gtkbuilder/dialog-custom-report.glade:45 +#: gnucash/gtkbuilder/dialog-doclink.glade:546 +#: gnucash/gtkbuilder/dialog-fincalc.glade:107 +#: gnucash/gtkbuilder/dialog-find-account.glade:68 +#: gnucash/gtkbuilder/dialog-imap-editor.glade:80 +#: gnucash/gtkbuilder/dialog-import.glade:496 +#: gnucash/gtkbuilder/dialog-lot-viewer.glade:89 +#: gnucash/gtkbuilder/dialog-order.glade:42 +#: gnucash/gtkbuilder/dialog-preferences.glade:147 +#: gnucash/gtkbuilder/dialog-preferences.glade:274 +#: gnucash/gtkbuilder/dialog-price.glade:939 +#: gnucash/gtkbuilder/dialog-query-view.glade:22 +#: gnucash/gtkbuilder/dialog-report.glade:272 +#: gnucash/gtkbuilder/dialog-report.glade:679 +#: gnucash/gtkbuilder/dialog-search.glade:52 +#: gnucash/gtkbuilder/dialog-tax-table.glade:254 +#: gnucash/gtkbuilder/dialog-totd.glade:56 +#: gnucash/gtkbuilder/gnc-plugin-page-budget.glade:736 +#: gnucash/import-export/aqb/dialog-ab.glade:43 +msgid "_Close" +msgstr "_Fechar" + +#: gnucash/gnome-utils/dialog-options.c:653 msgid "" "Because no accounts have been set up yet, you will need to return to this " "dialog (via File->Properties), after account setup, if you want to set a " @@ -7706,17 +7745,17 @@ msgstr "" "Ficheiro->Propriedades) após a definição das contas, se quiser predefinir " "uma conta de ganhos/perdas." -#: gnucash/gnome-utils/dialog-options.c:685 +#: gnucash/gnome-utils/dialog-options.c:697 msgid "Select no account" msgstr "Não seleccionar conta" -#: gnucash/gnome-utils/dialog-options.c:718 -#: gnucash/gnome-utils/gnc-tree-view-account.c:966 +#: gnucash/gnome-utils/dialog-options.c:730 +#: gnucash/gnome-utils/gnc-tree-view-account.c:989 msgctxt "Column header for 'Placeholder'" msgid "P" msgstr "" -#: gnucash/gnome-utils/dialog-options.c:785 +#: gnucash/gnome-utils/dialog-options.c:797 msgid "" "There are no income or expense accounts of the specified\n" "book currency; you will have to return to this dialog\n" @@ -7728,7 +7767,7 @@ msgstr "" "após a definição das contas, se quiser definir uma conta\n" "predefinida de ganhos/perdas." -#: gnucash/gnome-utils/dialog-options.c:854 +#: gnucash/gnome-utils/dialog-options.c:865 #: gnucash/import-export/qif-imp/dialog-account-picker.c:299 #, c-format msgid "" @@ -7738,87 +7777,87 @@ msgstr "" "A conta %s é uma conta marcadora de posição e não permite transacções. Por " "favor, escolha outra conta." -#: gnucash/gnome-utils/dialog-options.c:1284 +#: gnucash/gnome-utils/dialog-options.c:1292 msgid "Book currency" msgstr "Moeda do livro" -#: gnucash/gnome-utils/dialog-options.c:1309 +#: gnucash/gnome-utils/dialog-options.c:1317 msgid "Default lot tracking policy" msgstr "Política predefinida de rastreio do lote" -#: gnucash/gnome-utils/dialog-options.c:1333 +#: gnucash/gnome-utils/dialog-options.c:1340 msgid "Default gain/loss account" msgstr "Conta predefinida de ganhos/perdas" -#: gnucash/gnome-utils/dialog-options.c:1501 -#: gnucash/gnome-utils/dialog-options.c:1647 +#: gnucash/gnome-utils/dialog-options.c:1506 +#: gnucash/gnome-utils/dialog-options.c:1650 msgid "Select All" msgstr "Seleccionar tudo" -#: gnucash/gnome-utils/dialog-options.c:1503 +#: gnucash/gnome-utils/dialog-options.c:1508 msgid "Select all accounts." msgstr "Seleccionar todas as contas." -#: gnucash/gnome-utils/dialog-options.c:1508 -#: gnucash/gnome-utils/dialog-options.c:1654 +#: gnucash/gnome-utils/dialog-options.c:1513 +#: gnucash/gnome-utils/dialog-options.c:1657 msgid "Clear All" msgstr "Limpar tudo" -#: gnucash/gnome-utils/dialog-options.c:1510 +#: gnucash/gnome-utils/dialog-options.c:1515 msgid "Clear the selection and unselect all accounts." msgstr "Limpar a selecção e remover a selecção de todas as contas." -#: gnucash/gnome-utils/dialog-options.c:1515 +#: gnucash/gnome-utils/dialog-options.c:1520 msgid "Select Children" msgstr "Seleccionar filhos" -#: gnucash/gnome-utils/dialog-options.c:1517 +#: gnucash/gnome-utils/dialog-options.c:1522 msgid "Select all descendents of selected account." msgstr "Seleccionar todas as contas-filho da conta seleccionada." -#: gnucash/gnome-utils/dialog-options.c:1523 -#: gnucash/gnome-utils/dialog-options.c:1661 +#: gnucash/gnome-utils/dialog-options.c:1528 +#: gnucash/gnome-utils/dialog-options.c:1664 msgid "Select Default" msgstr "Seleccionar predefinição" -#: gnucash/gnome-utils/dialog-options.c:1525 +#: gnucash/gnome-utils/dialog-options.c:1530 msgid "Select the default account selection." msgstr "Seleccionar a selecção predefinida de contas." -#: gnucash/gnome-utils/dialog-options.c:1542 +#: gnucash/gnome-utils/dialog-options.c:1547 msgid "Show Hidden Accounts" msgstr "Mostrar contas ocultas" -#: gnucash/gnome-utils/dialog-options.c:1544 +#: gnucash/gnome-utils/dialog-options.c:1549 msgid "Show accounts that have been marked hidden." msgstr "Mostrar contas que foram marcadas como ocultas." -#: gnucash/gnome-utils/dialog-options.c:1649 +#: gnucash/gnome-utils/dialog-options.c:1652 msgid "Select all entries." msgstr "Seleccionar todas as entradas." -#: gnucash/gnome-utils/dialog-options.c:1656 +#: gnucash/gnome-utils/dialog-options.c:1659 msgid "Clear the selection and unselect all entries." msgstr "Limpar a selecção e remover a selecção de todas as entradas." -#: gnucash/gnome-utils/dialog-options.c:1663 +#: gnucash/gnome-utils/dialog-options.c:1666 msgid "Select the default selection." msgstr "Seleccionar a selecção predefinida." -#: gnucash/gnome-utils/dialog-options.c:1856 +#: gnucash/gnome-utils/dialog-options.c:1860 msgid "Reset defaults" msgstr "Repor predefinições" -#: gnucash/gnome-utils/dialog-options.c:1858 +#: gnucash/gnome-utils/dialog-options.c:1862 msgid "Reset all values to their defaults." msgstr "Repor todos os valores nas predefinições." -#: gnucash/gnome-utils/dialog-options.c:2253 +#: gnucash/gnome-utils/dialog-options.c:2263 msgid "Page" msgstr "Página" -#: gnucash/gnome-utils/dialog-options.c:2879 -#: gnucash/gnome-utils/dialog-preferences.c:1374 +#: gnucash/gnome-utils/dialog-options.c:2890 +#: gnucash/gnome-utils/dialog-preferences.c:1465 #: gnucash/gtkbuilder/dialog-fincalc.glade:254 #: gnucash/gtkbuilder/dialog-fincalc.glade:269 #: gnucash/gtkbuilder/dialog-fincalc.glade:284 @@ -7827,23 +7866,23 @@ msgstr "Página" msgid "Clear" msgstr "Limpar" -#: gnucash/gnome-utils/dialog-options.c:2880 +#: gnucash/gnome-utils/dialog-options.c:2891 msgid "Clear any selected image file." msgstr "Limpar qualquer ficheiro de imagem seleccionado." -#: gnucash/gnome-utils/dialog-options.c:2882 +#: gnucash/gnome-utils/dialog-options.c:2893 msgid "Select image" msgstr "Seleccionar imagem" -#: gnucash/gnome-utils/dialog-options.c:2884 +#: gnucash/gnome-utils/dialog-options.c:2895 msgid "Select an image file." msgstr "Seleccionar um ficheiro de imagem." -#: gnucash/gnome-utils/dialog-options.c:3065 +#: gnucash/gnome-utils/dialog-options.c:3075 msgid "Pixels" msgstr "Pixels" -#: gnucash/gnome-utils/dialog-options.c:3071 +#: gnucash/gnome-utils/dialog-options.c:3081 msgid "Percent" msgstr "Percentagem" @@ -7853,17 +7892,17 @@ msgstr "Percentagem" #. names with other account names that are more suitable for your #. language - just keep in mind to have exactly two %s in your #. translation. -#: gnucash/gnome-utils/dialog-preferences.c:165 +#: gnucash/gnome-utils/dialog-preferences.c:166 #, c-format msgid "Income%sSalary%sTaxable" msgstr "Receitas%sSalário%sTaxável" -#: gnucash/gnome-utils/dialog-preferences.c:826 +#: gnucash/gnome-utils/dialog-preferences.c:899 msgid "Path does not exist, " msgstr "Caminho inexistente, " -#: gnucash/gnome-utils/dialog-preferences.c:882 -#: gnucash/gnome-utils/dialog-preferences.c:1371 +#: gnucash/gnome-utils/dialog-preferences.c:955 +#: gnucash/gnome-utils/dialog-preferences.c:1462 msgid "Select a folder" msgstr "Seleccione uma pasta" @@ -7888,30 +7927,30 @@ msgstr "Valor de percentagem tem que ser entre -100 e 100." msgid "You must choose a Tax Account." msgstr "Tem de escolher uma conta de impostos" -#: gnucash/gnome-utils/dialog-tax-table.c:630 +#: gnucash/gnome-utils/dialog-tax-table.c:633 msgid "Rename" msgstr "Renomear" -#: gnucash/gnome-utils/dialog-tax-table.c:631 +#: gnucash/gnome-utils/dialog-tax-table.c:634 msgid "Please enter new name" msgstr "Por favor, insira o novo nome" -#: gnucash/gnome-utils/dialog-tax-table.c:632 +#: gnucash/gnome-utils/dialog-tax-table.c:635 #: gnucash/gtkbuilder/dialog-tax-table.glade:72 msgid "_Rename" msgstr "_Renomear" -#: gnucash/gnome-utils/dialog-tax-table.c:638 +#: gnucash/gnome-utils/dialog-tax-table.c:641 #, c-format msgid "Tax table name \"%s\" already exists." msgstr "A tabela de impostos \"%s\" já existe." -#: gnucash/gnome-utils/dialog-tax-table.c:662 +#: gnucash/gnome-utils/dialog-tax-table.c:665 #, c-format msgid "Tax table \"%s\" is in use. You cannot delete it." msgstr "A tabela de impostos \"%s\" está em uso. Não a pode eliminar." -#: gnucash/gnome-utils/dialog-tax-table.c:710 +#: gnucash/gnome-utils/dialog-tax-table.c:713 msgid "" "You cannot remove the last entry from the tax table. Try deleting the tax " "table if you want to do that." @@ -7919,7 +7958,7 @@ msgstr "" "Não pode remover a última linha da tabela de impostos. Experimente antes " "eliminar a tabela de impostos se é isso que pretende." -#: gnucash/gnome-utils/dialog-tax-table.c:717 +#: gnucash/gnome-utils/dialog-tax-table.c:720 msgid "Are you sure you want to delete this entry?" msgstr "Tem a certeza que quer eliminar esta entrada?" @@ -8038,7 +8077,7 @@ msgstr "Lembrar e não perguntar novamente nesta _sessão." msgid "Don't tell me again this _session." msgstr "Não me dizer novamente nesta _sessão." -#: gnucash/gnome-utils/gnc-account-sel.c:475 +#: gnucash/gnome-utils/gnc-account-sel.c:454 msgid "New..." msgstr "Novo..." @@ -8193,14 +8232,14 @@ msgstr "Frequência" msgid "(unnamed)" msgstr "(sem nome)" -#: gnucash/gnome-utils/gnc-file.c:94 gnucash/gnome-utils/gnc-main-window.c:282 +#: gnucash/gnome-utils/gnc-file.c:94 gnucash/gnome-utils/gnc-main-window.c:285 #: gnucash/import-export/bi-import/gnc-plugin-bi-import.c:57 #: gnucash/import-export/customer-import/gnc-plugin-customer-import.c:57 msgid "_Import" msgstr "_Importar" #: gnucash/gnome-utils/gnc-file.c:96 gnucash/gnome-utils/gnc-file.c:335 -#: gnucash/gtkbuilder/dialog-preferences.glade:2151 +#: gnucash/gtkbuilder/dialog-preferences.glade:2268 #: gnucash/import-export/qif-imp/gnc-plugin-qif-import.c:140 msgid "Import" msgstr "Importar" @@ -8210,7 +8249,7 @@ msgstr "Importar" msgid "Save" msgstr "Gravar" -#: gnucash/gnome-utils/gnc-file.c:106 gnucash/gnome-utils/gnc-main-window.c:283 +#: gnucash/gnome-utils/gnc-file.c:106 gnucash/gnome-utils/gnc-main-window.c:286 msgid "_Export" msgstr "_Exportar" @@ -8497,7 +8536,7 @@ msgid "Save changes to the file?" msgstr "Gravar alterações ao ficheiro?" #: gnucash/gnome-utils/gnc-file.c:656 -#: gnucash/gnome-utils/gnc-main-window.c:1287 +#: gnucash/gnome-utils/gnc-main-window.c:1301 #, c-format msgid "If you don't save, changes from the past %d minute will be discarded." msgid_plural "" @@ -8546,7 +8585,7 @@ msgstr "_Criar novo ficheiro" msgid "Open _Anyway" msgstr "_Abrir mesmo assim" -#: gnucash/gnome-utils/gnc-file.c:857 gnucash/gnome-utils/gnc-main-window.c:307 +#: gnucash/gnome-utils/gnc-file.c:857 gnucash/gnome-utils/gnc-main-window.c:310 msgid "_Quit" msgstr "_Sair" @@ -8591,7 +8630,7 @@ msgstr "" "continuar?" #: gnucash/gnome-utils/gnc-file.c:1680 -#: gnucash/gnome-utils/gnc-main-window.c:1255 +#: gnucash/gnome-utils/gnc-main-window.c:1269 msgid "" msgstr "" @@ -8619,14 +8658,14 @@ msgstr "" msgid "Expected location" msgstr "Localização antiga:" -#: gnucash/gnome-utils/gnc-gnome-utils.c:446 -#: gnucash/gnome-utils/gnc-gnome-utils.c:486 +#: gnucash/gnome-utils/gnc-gnome-utils.c:460 +#: gnucash/gnome-utils/gnc-gnome-utils.c:500 #, fuzzy #| msgid "GnuCash could not find the associated file." msgid "GnuCash could not find the linked document." msgstr "O GnuCash não conseguiu encontrar o ficheiro associado." -#: gnucash/gnome-utils/gnc-gnome-utils.c:516 +#: gnucash/gnome-utils/gnc-gnome-utils.c:530 #, fuzzy msgid "GnuCash could not open the linked document:" msgstr "O GnuCash não conseguiu abrir o URI associado:" @@ -8638,235 +8677,211 @@ msgstr "O GnuCash não conseguiu abrir o URI associado:" msgid "Enter a user name and password to connect to: %s" msgstr "Insira o seu nome de utilizador e senha para ligar a: %s" -#: gnucash/gnome-utils/gnc-main-window.c:130 +#: gnucash/gnome-utils/gnc-main-window.c:131 #, c-format msgid "Changes will be saved automatically in %u seconds" msgstr "As alterações serão automaticamente gravadas em %u segundos" -#: gnucash/gnome-utils/gnc-main-window.c:269 +#: gnucash/gnome-utils/gnc-main-window.c:272 msgid "_File" msgstr "_Ficheiro" -#: gnucash/gnome-utils/gnc-main-window.c:273 +#: gnucash/gnome-utils/gnc-main-window.c:276 msgid "Tra_nsaction" msgstr "Tra_nsacção" -#: gnucash/gnome-utils/gnc-main-window.c:274 +#: gnucash/gnome-utils/gnc-main-window.c:277 msgid "_Reports" msgstr "_Relatórios" -#: gnucash/gnome-utils/gnc-main-window.c:275 +#: gnucash/gnome-utils/gnc-main-window.c:278 msgid "_Tools" msgstr "Ferramen_tas" -#: gnucash/gnome-utils/gnc-main-window.c:276 +#: gnucash/gnome-utils/gnc-main-window.c:279 msgid "E_xtensions" msgstr "E_xtensões" -#: gnucash/gnome-utils/gnc-main-window.c:277 +#: gnucash/gnome-utils/gnc-main-window.c:280 msgid "_Windows" msgstr "_Janelas" -#: gnucash/gnome-utils/gnc-main-window.c:285 +#: gnucash/gnome-utils/gnc-main-window.c:288 msgid "_Print..." msgstr "_Imprimir..." -#: gnucash/gnome-utils/gnc-main-window.c:286 +#: gnucash/gnome-utils/gnc-main-window.c:289 msgid "Print the currently active page" msgstr "Fechar página actualmente activa" -#: gnucash/gnome-utils/gnc-main-window.c:292 +#: gnucash/gnome-utils/gnc-main-window.c:295 msgid "Pa_ge Setup..." msgstr "Confi_gurar página..." -#: gnucash/gnome-utils/gnc-main-window.c:293 +#: gnucash/gnome-utils/gnc-main-window.c:296 msgid "Specify the page size and orientation for printing" msgstr "Especificar o tamanho e orientação da página para impressão" -#: gnucash/gnome-utils/gnc-main-window.c:297 +#: gnucash/gnome-utils/gnc-main-window.c:300 msgid "Proper_ties" msgstr "Proprie_dades" -#: gnucash/gnome-utils/gnc-main-window.c:298 +#: gnucash/gnome-utils/gnc-main-window.c:301 msgid "Edit the properties of the current file" msgstr "Editar as propriedades do ficheiro actual" -#: gnucash/gnome-utils/gnc-main-window.c:302 -#: gnucash/gtkbuilder/dialog-billterms.glade:729 -#: gnucash/gtkbuilder/dialog-commodities.glade:173 -#: gnucash/gtkbuilder/dialog-custom-report.glade:45 -#: gnucash/gtkbuilder/dialog-doclink.glade:546 -#: gnucash/gtkbuilder/dialog-fincalc.glade:107 -#: gnucash/gtkbuilder/dialog-find-account.glade:68 -#: gnucash/gtkbuilder/dialog-imap-editor.glade:80 -#: gnucash/gtkbuilder/dialog-import.glade:496 -#: gnucash/gtkbuilder/dialog-lot-viewer.glade:89 -#: gnucash/gtkbuilder/dialog-order.glade:42 -#: gnucash/gtkbuilder/dialog-preferences.glade:158 -#: gnucash/gtkbuilder/dialog-price.glade:939 -#: gnucash/gtkbuilder/dialog-query-view.glade:22 -#: gnucash/gtkbuilder/dialog-report.glade:272 -#: gnucash/gtkbuilder/dialog-report.glade:679 -#: gnucash/gtkbuilder/dialog-search.glade:52 -#: gnucash/gtkbuilder/dialog-tax-table.glade:254 -#: gnucash/gtkbuilder/dialog-totd.glade:56 -#: gnucash/gtkbuilder/gnc-plugin-page-budget.glade:736 -#: gnucash/import-export/aqb/dialog-ab.glade:43 -msgid "_Close" -msgstr "_Fechar" - -#: gnucash/gnome-utils/gnc-main-window.c:303 +#: gnucash/gnome-utils/gnc-main-window.c:306 msgid "Close the currently active page" msgstr "Fechar a página actualmente activa" -#: gnucash/gnome-utils/gnc-main-window.c:308 +#: gnucash/gnome-utils/gnc-main-window.c:311 msgid "Quit this application" msgstr "Sair da aplicação" -#: gnucash/gnome-utils/gnc-main-window.c:330 +#: gnucash/gnome-utils/gnc-main-window.c:333 msgid "Pr_eferences" msgstr "Pr_eferências" -#: gnucash/gnome-utils/gnc-main-window.c:331 +#: gnucash/gnome-utils/gnc-main-window.c:334 msgid "Edit the global preferences of GnuCash" msgstr "Editar as preferências globais do GnuCash" -#: gnucash/gnome-utils/gnc-main-window.c:339 +#: gnucash/gnome-utils/gnc-main-window.c:342 msgid "Select sorting criteria for this page view" msgstr "Seleccionar critério de ordenação para esta página" -#: gnucash/gnome-utils/gnc-main-window.c:343 +#: gnucash/gnome-utils/gnc-main-window.c:346 msgid "Select the account types that should be displayed." msgstr "Seleccionar os tipos de contas a serem mostradas." -#: gnucash/gnome-utils/gnc-main-window.c:355 +#: gnucash/gnome-utils/gnc-main-window.c:358 msgid "Reset _Warnings..." msgstr "Repor _avisos..." -#: gnucash/gnome-utils/gnc-main-window.c:356 +#: gnucash/gnome-utils/gnc-main-window.c:359 msgid "Reset the state of all warning messages so they will be shown again." msgstr "" "Repor o estado de todos as mensagens de aviso para que sejam mostradas " "novamente." -#: gnucash/gnome-utils/gnc-main-window.c:360 +#: gnucash/gnome-utils/gnc-main-window.c:363 msgid "Re_name Page" msgstr "Re_nomear página" -#: gnucash/gnome-utils/gnc-main-window.c:361 +#: gnucash/gnome-utils/gnc-main-window.c:364 msgid "Rename this page." msgstr "Renomear esta página." -#: gnucash/gnome-utils/gnc-main-window.c:368 +#: gnucash/gnome-utils/gnc-main-window.c:371 msgid "_New Window" msgstr "_Nova janela" -#: gnucash/gnome-utils/gnc-main-window.c:369 +#: gnucash/gnome-utils/gnc-main-window.c:372 msgid "Open a new top-level GnuCash window." msgstr "Abrir uma nova janela de topo do GnuCash." -#: gnucash/gnome-utils/gnc-main-window.c:373 +#: gnucash/gnome-utils/gnc-main-window.c:376 msgid "New Window with _Page" msgstr "Nova janela com a _página" -#: gnucash/gnome-utils/gnc-main-window.c:374 +#: gnucash/gnome-utils/gnc-main-window.c:377 msgid "Move the current page to a new top-level GnuCash window." msgstr "Mover a página actual para uma nova janela de topo do GnuCash." -#: gnucash/gnome-utils/gnc-main-window.c:381 +#: gnucash/gnome-utils/gnc-main-window.c:384 msgid "Tutorial and Concepts _Guide" msgstr "Tutorial e _guia de conceitos" -#: gnucash/gnome-utils/gnc-main-window.c:382 +#: gnucash/gnome-utils/gnc-main-window.c:385 msgid "Open the GnuCash Tutorial" msgstr "Abrir o tutorial do GnuCash" -#: gnucash/gnome-utils/gnc-main-window.c:386 +#: gnucash/gnome-utils/gnc-main-window.c:389 msgid "_Contents" msgstr "_Conteúdos" -#: gnucash/gnome-utils/gnc-main-window.c:387 +#: gnucash/gnome-utils/gnc-main-window.c:390 msgid "Open the GnuCash Help" msgstr "Abrir a ajuda do GnuCash" -#: gnucash/gnome-utils/gnc-main-window.c:391 +#: gnucash/gnome-utils/gnc-main-window.c:394 msgid "_About" msgstr "_Sobre" -#: gnucash/gnome-utils/gnc-main-window.c:392 +#: gnucash/gnome-utils/gnc-main-window.c:395 msgid "About GnuCash" msgstr "Sobre o GnuCash" -#: gnucash/gnome-utils/gnc-main-window.c:404 +#: gnucash/gnome-utils/gnc-main-window.c:407 msgid "_Toolbar" msgstr "_Barra de ferramentas" -#: gnucash/gnome-utils/gnc-main-window.c:405 +#: gnucash/gnome-utils/gnc-main-window.c:408 msgid "Show/hide the toolbar on this window" msgstr "Mostrar/Ocultar a barra de ferramentas nesta janela" -#: gnucash/gnome-utils/gnc-main-window.c:409 +#: gnucash/gnome-utils/gnc-main-window.c:412 msgid "Su_mmary Bar" msgstr "Barra de su_mário" -#: gnucash/gnome-utils/gnc-main-window.c:410 +#: gnucash/gnome-utils/gnc-main-window.c:413 msgid "Show/hide the summary bar on this window" msgstr "Mostrar/Ocultar a barra de sumário nesta janela" -#: gnucash/gnome-utils/gnc-main-window.c:414 +#: gnucash/gnome-utils/gnc-main-window.c:417 msgid "Stat_us Bar" msgstr "Barra de estad_o" -#: gnucash/gnome-utils/gnc-main-window.c:415 +#: gnucash/gnome-utils/gnc-main-window.c:418 msgid "Show/hide the status bar on this window" msgstr "Mostrar/Ocultar a barra de estado nesta janela" -#: gnucash/gnome-utils/gnc-main-window.c:427 +#: gnucash/gnome-utils/gnc-main-window.c:430 msgid "Window _1" msgstr "Janela _1" -#: gnucash/gnome-utils/gnc-main-window.c:428 +#: gnucash/gnome-utils/gnc-main-window.c:431 msgid "Window _2" msgstr "Janela _2" -#: gnucash/gnome-utils/gnc-main-window.c:429 +#: gnucash/gnome-utils/gnc-main-window.c:432 msgid "Window _3" msgstr "Janela _3" -#: gnucash/gnome-utils/gnc-main-window.c:430 +#: gnucash/gnome-utils/gnc-main-window.c:433 msgid "Window _4" msgstr "Janela _4" -#: gnucash/gnome-utils/gnc-main-window.c:431 +#: gnucash/gnome-utils/gnc-main-window.c:434 msgid "Window _5" msgstr "Janela _5" -#: gnucash/gnome-utils/gnc-main-window.c:432 +#: gnucash/gnome-utils/gnc-main-window.c:435 msgid "Window _6" msgstr "Janela _6" -#: gnucash/gnome-utils/gnc-main-window.c:433 +#: gnucash/gnome-utils/gnc-main-window.c:436 msgid "Window _7" msgstr "Janela _7" -#: gnucash/gnome-utils/gnc-main-window.c:434 +#: gnucash/gnome-utils/gnc-main-window.c:437 msgid "Window _8" msgstr "Janela _8" -#: gnucash/gnome-utils/gnc-main-window.c:435 +#: gnucash/gnome-utils/gnc-main-window.c:438 msgid "Window _9" msgstr "Janela _9" -#: gnucash/gnome-utils/gnc-main-window.c:436 +#: gnucash/gnome-utils/gnc-main-window.c:439 msgid "Window _0" msgstr "Janela _0" -#: gnucash/gnome-utils/gnc-main-window.c:1239 +#: gnucash/gnome-utils/gnc-main-window.c:1253 #, c-format msgid "Save changes to file %s before closing?" msgstr "Gravar alterações ao ficheiro %s antes de sair?" -#: gnucash/gnome-utils/gnc-main-window.c:1242 +#: gnucash/gnome-utils/gnc-main-window.c:1256 #, c-format msgid "" "If you don't save, changes from the past %d hours and %d minutes will be " @@ -8875,7 +8890,7 @@ msgstr "" "Se não gravar, as alterações das últimas %d horas e %d minutos serão " "descartadas." -#: gnucash/gnome-utils/gnc-main-window.c:1244 +#: gnucash/gnome-utils/gnc-main-window.c:1258 #, c-format msgid "" "If you don't save, changes from the past %d days and %d hours will be " @@ -8884,59 +8899,74 @@ msgstr "" "Se não gravar, as alterações dos últimos %d dias e %d horas serão " "descartadas." -#: gnucash/gnome-utils/gnc-main-window.c:1292 +#: gnucash/gnome-utils/gnc-main-window.c:1306 msgid "Close _Without Saving" msgstr "Fechar _sem gravar" +#: gnucash/gnome-utils/gnc-main-window.c:1437 +msgid "This window is closing and will not be restored." +msgstr "" + +#: gnucash/gnome-utils/gnc-main-window.c:1443 +#, fuzzy +#| msgid "Close this window" +msgid "Close Window?" +msgstr "Fechar esta janela" + #. Translators: This string is shown in the window title if this #. document is, well, read-only. -#: gnucash/gnome-utils/gnc-main-window.c:1523 +#: gnucash/gnome-utils/gnc-main-window.c:1569 msgid "(read-only)" msgstr "(só de leitura)" -#: gnucash/gnome-utils/gnc-main-window.c:1531 +#: gnucash/gnome-utils/gnc-main-window.c:1577 msgid "Unsaved Book" msgstr "Livro por gravar" -#: gnucash/gnome-utils/gnc-main-window.c:1691 +#: gnucash/gnome-utils/gnc-main-window.c:1737 msgid "Last modified on %a, %b %d, %Y at %I:%M %p" msgstr "Última modificação a %a, %b %d, %Y às %I:%M %p" #. Translators: This message appears in the status bar after opening the file. -#: gnucash/gnome-utils/gnc-main-window.c:1694 +#: gnucash/gnome-utils/gnc-main-window.c:1740 #, c-format msgid "File %s opened. %s" msgstr "Ficheiro %s aberto. %s" -#: gnucash/gnome-utils/gnc-main-window.c:2778 +#: gnucash/gnome-utils/gnc-main-window.c:2793 +msgctxt "lower case key for short cut to 'Accounts'" +msgid "a" +msgstr "" + +#: gnucash/gnome-utils/gnc-main-window.c:2883 msgid "Unable to save to database." msgstr "Impossível gravar na base de dados." -#: gnucash/gnome-utils/gnc-main-window.c:2780 +#: gnucash/gnome-utils/gnc-main-window.c:2885 msgid "Unable to save to database: Book is marked read-only." msgstr "Impossível gravar na base de dados: livro só de leitura." -#: gnucash/gnome-utils/gnc-main-window.c:4122 +#: gnucash/gnome-utils/gnc-main-window.c:4231 msgid "Book Options" msgstr "Opções do livro" #. Translators: %s will be replaced with the current year -#: gnucash/gnome-utils/gnc-main-window.c:4507 +#: gnucash/gnome-utils/gnc-main-window.c:4616 #, c-format msgid "Copyright © 1997-%s The GnuCash contributors." msgstr "Copyright © 1997-%s The GnuCash contributors." -#: gnucash/gnome-utils/gnc-main-window.c:4519 +#: gnucash/gnome-utils/gnc-main-window.c:4628 #: gnucash/gnome-utils/gnc-splash.c:97 msgid "Version" msgstr "Versão" -#: gnucash/gnome-utils/gnc-main-window.c:4520 -#: gnucash/gnome-utils/gnc-splash.c:98 gnucash/gnucash-core-app.cpp:505 +#: gnucash/gnome-utils/gnc-main-window.c:4629 +#: gnucash/gnome-utils/gnc-splash.c:98 gnucash/gnucash-core-app.cpp:502 msgid "Build ID" msgstr "ID de compilação" -#: gnucash/gnome-utils/gnc-main-window.c:4528 +#: gnucash/gnome-utils/gnc-main-window.c:4637 msgid "Accounting for personal and small business finance." msgstr "Contabilidade de finanças pessoais e de pequenos negócios." @@ -8944,11 +8974,11 @@ msgstr "Contabilidade de finanças pessoais e de pequenos negócios." #. * Enter your name or that of your team and an email contact for feedback. #. * The string can have multiple rows, so you can also add a list of #. * contributors. -#: gnucash/gnome-utils/gnc-main-window.c:4537 +#: gnucash/gnome-utils/gnc-main-window.c:4646 msgid "translator-credits" msgstr "Pedro Albuquerque " -#: gnucash/gnome-utils/gnc-main-window.c:4540 +#: gnucash/gnome-utils/gnc-main-window.c:4649 msgid "Visit the GnuCash website." msgstr "Visite a página do GnuCash" @@ -9228,7 +9258,7 @@ msgstr "A conta %s não existe. Deseja criá-la?" msgid "You can not paste from the general journal to a register." msgstr "Não pode colar de um livro razão geral para um diário." -#: gnucash/gnome-utils/gnc-tree-model-account.c:753 +#: gnucash/gnome-utils/gnc-tree-model-account.c:754 msgid "New top level account" msgstr "Nova conta de topo" @@ -9274,7 +9304,7 @@ msgstr "Balcão" #: gnucash/register/ledger-core/gncEntryLedgerModel.c:529 #: gnucash/register/ledger-core/gncEntryLedgerModel.c:1093 #: gnucash/register/ledger-core/split-register.c:2627 -#: libgnucash/engine/Account.cpp:150 libgnucash/engine/Account.cpp:164 +#: libgnucash/engine/Account.cpp:151 libgnucash/engine/Account.cpp:165 msgid "Charge" msgstr "A crédito" @@ -9299,8 +9329,8 @@ msgstr "Recibo" #: gnucash/register/ledger-core/split-register.c:2680 #: gnucash/register/ledger-core/split-register.c:2691 #: gnucash/register/ledger-core/split-register.c:2723 -#: libgnucash/engine/Account.cpp:145 libgnucash/engine/Account.cpp:166 -#: libgnucash/engine/Account.cpp:174 libgnucash/engine/Account.cpp:175 +#: libgnucash/engine/Account.cpp:146 libgnucash/engine/Account.cpp:167 +#: libgnucash/engine/Account.cpp:175 libgnucash/engine/Account.cpp:176 msgid "Increase" msgstr "Acréscimo" @@ -9316,8 +9346,8 @@ msgstr "Acréscimo" #: gnucash/register/ledger-core/split-register.c:2681 #: gnucash/register/ledger-core/split-register.c:2692 #: gnucash/register/ledger-core/split-register.c:2724 -#: libgnucash/engine/Account.cpp:146 libgnucash/engine/Account.cpp:154 -#: libgnucash/engine/Account.cpp:155 libgnucash/engine/Account.cpp:165 +#: libgnucash/engine/Account.cpp:147 libgnucash/engine/Account.cpp:155 +#: libgnucash/engine/Account.cpp:156 libgnucash/engine/Account.cpp:166 msgid "Decrease" msgstr "Decréscimo" @@ -9380,8 +9410,8 @@ msgstr "Débito directo" #: gnucash/register/ledger-core/split-register.c:2693 #: gnucash/register/ledger-core/split-register.c:2698 #: gnucash/register/ledger-core/split-register.c:2725 -#: libgnucash/engine/Account.cpp:147 libgnucash/engine/Account.cpp:148 -#: libgnucash/engine/Account.cpp:149 +#: libgnucash/engine/Account.cpp:148 libgnucash/engine/Account.cpp:149 +#: libgnucash/engine/Account.cpp:150 msgid "Buy" msgstr "Compra" @@ -9403,8 +9433,8 @@ msgstr "Compra" #: gnucash/register/ledger-core/split-register.c:2694 #: gnucash/register/ledger-core/split-register.c:2699 #: gnucash/register/ledger-core/split-register.c:2726 -#: libgnucash/engine/Account.cpp:167 libgnucash/engine/Account.cpp:168 -#: libgnucash/engine/Account.cpp:169 +#: libgnucash/engine/Account.cpp:168 libgnucash/engine/Account.cpp:169 +#: libgnucash/engine/Account.cpp:170 msgid "Sell" msgstr "Venda" @@ -9424,7 +9454,7 @@ msgstr "Levantamento MB" #: gnucash/gnome-utils/gnc-tree-model-split-reg.c:2921 #: gnucash/gnome-utils/gnc-tree-view-split-reg.c:2981 #: gnucash/register/ledger-core/split-register.c:2686 -#: libgnucash/engine/Account.cpp:171 +#: libgnucash/engine/Account.cpp:172 msgid "Rebate" msgstr "Reembolso" @@ -9437,10 +9467,10 @@ msgstr "Cheque" #: gnucash/import-export/qif-imp/qif-dialog-utils.scm:72 #: gnucash/import-export/qif-imp/qif-dialog-utils.scm:76 #: gnucash/register/ledger-core/split-register.c:2700 -#: gnucash/report/reports/standard/balance-sheet.scm:502 +#: gnucash/report/reports/standard/balance-sheet.scm:503 #: gnucash/report/reports/standard/balsheet-pnl.scm:1099 -#: gnucash/report/reports/standard/budget-balance-sheet.scm:723 -#: libgnucash/app-utils/gnc-ui-util.c:1017 libgnucash/engine/Account.cpp:4324 +#: gnucash/report/reports/standard/budget-balance-sheet.scm:724 +#: libgnucash/app-utils/gnc-ui-util.c:1044 libgnucash/engine/Account.cpp:4371 msgid "Equity" msgstr "Capital próprio" @@ -9461,7 +9491,7 @@ msgstr "Capital próprio" #: gnucash/report/reports/standard/price-scatter.scm:312 #: gnucash/report/reports/standard/price-scatter.scm:326 #: gnucash/report/reports/standard/register.scm:150 -#: gnucash/report/reports/standard/register.scm:422 +#: gnucash/report/reports/standard/register.scm:393 #: gnucash/report/trep-engine.scm:955 gnucash/report/trep-engine.scm:1079 #: gnucash/report/trep-engine.scm:1262 msgid "Price" @@ -9488,8 +9518,8 @@ msgid "Dist" msgstr "Dist" #: gnucash/gnome-utils/gnc-tree-util-split-reg.c:45 -#: gnucash/import-export/import-main-matcher.c:1344 -#: gnucash/report/reports/standard/register.scm:229 +#: gnucash/import-export/import-main-matcher.c:1395 +#: gnucash/report/reports/standard/register.scm:218 #: libgnucash/engine/Split.c:1592 libgnucash/engine/Split.c:1609 msgid "-- Split Transaction --" msgstr "-- Transacção com parcelas --" @@ -9567,26 +9597,26 @@ msgstr "_Valor" msgid "_Recalculate" msgstr "_Recalcular" -#: gnucash/gnome-utils/gnc-tree-view-account.c:782 +#: gnucash/gnome-utils/gnc-tree-view-account.c:805 #: gnucash/gtkbuilder/assistant-csv-trans-import.glade:1005 #: gnucash/import-export/csv-exp/csv-transactions-export.c:613 #: gnucash/import-export/csv-exp/csv-transactions-export.c:627 #: gnucash/report/reports/locale-specific/de_DE/taxtxf.scm:291 #: gnucash/report/reports/standard/general-ledger.scm:72 #: gnucash/report/reports/standard/general-ledger.scm:92 -#: gnucash/report/reports/standard/trial-balance.scm:598 +#: gnucash/report/reports/standard/trial-balance.scm:599 #: gnucash/report/trep-engine.scm:147 gnucash/report/trep-engine.scm:981 #: gnucash/report/trep-engine.scm:1074 msgid "Account Name" msgstr "Nome da conta" -#: gnucash/gnome-utils/gnc-tree-view-account.c:793 +#: gnucash/gnome-utils/gnc-tree-view-account.c:816 #: gnucash/gnome-utils/gnc-tree-view-split-reg.c:2916 #: gnucash/gtkbuilder/dialog-price.glade:574 msgid "Commodity" msgstr "Mercadoria" -#: gnucash/gnome-utils/gnc-tree-view-account.c:799 +#: gnucash/gnome-utils/gnc-tree-view-account.c:822 #: gnucash/report/options-utilities.scm:197 #: gnucash/report/reports/standard/account-summary.scm:115 #: gnucash/report/reports/standard/general-ledger.scm:74 @@ -9596,108 +9626,115 @@ msgstr "Mercadoria" msgid "Account Code" msgstr "Código da conta" -#: gnucash/gnome-utils/gnc-tree-view-account.c:811 +#: gnucash/gnome-utils/gnc-tree-view-account.c:834 msgid "Last Num" msgstr "Último nº." -#: gnucash/gnome-utils/gnc-tree-view-account.c:817 +#: gnucash/gnome-utils/gnc-tree-view-account.c:840 msgid "Present" msgstr "Actual" -#: gnucash/gnome-utils/gnc-tree-view-account.c:824 +#: gnucash/gnome-utils/gnc-tree-view-account.c:847 msgid "Present (Report)" msgstr "Actual (relatório)" -#: gnucash/gnome-utils/gnc-tree-view-account.c:838 +#: gnucash/gnome-utils/gnc-tree-view-account.c:861 msgid "Balance (Report)" msgstr "Balanço (relatório)" -#: gnucash/gnome-utils/gnc-tree-view-account.c:845 +#: gnucash/gnome-utils/gnc-tree-view-account.c:868 msgid "Balance (Period)" msgstr "Balanço (período)" -#: gnucash/gnome-utils/gnc-tree-view-account.c:859 +#: gnucash/gnome-utils/gnc-tree-view-account.c:882 msgid "Cleared (Report)" msgstr "Confirmada (relatório)" -#: gnucash/gnome-utils/gnc-tree-view-account.c:873 +#: gnucash/gnome-utils/gnc-tree-view-account.c:896 msgid "Reconciled (Report)" msgstr "Reconciliada (relatório)" -#: gnucash/gnome-utils/gnc-tree-view-account.c:880 +#: gnucash/gnome-utils/gnc-tree-view-account.c:903 msgid "Last Reconcile Date" msgstr "Última data de reconciliação" -#: gnucash/gnome-utils/gnc-tree-view-account.c:886 +#: gnucash/gnome-utils/gnc-tree-view-account.c:909 msgid "Future Minimum" msgstr "Mínimo futuro" -#: gnucash/gnome-utils/gnc-tree-view-account.c:893 +#: gnucash/gnome-utils/gnc-tree-view-account.c:916 msgid "Future Minimum (Report)" msgstr "Mínimo futuro (relatório)" -#: gnucash/gnome-utils/gnc-tree-view-account.c:907 +#: gnucash/gnome-utils/gnc-tree-view-account.c:930 msgid "Total (Report)" msgstr "Total (relatório)" -#: gnucash/gnome-utils/gnc-tree-view-account.c:914 +#: gnucash/gnome-utils/gnc-tree-view-account.c:937 msgid "Total (Period)" msgstr "Total (período)" -#: gnucash/gnome-utils/gnc-tree-view-account.c:923 +#: gnucash/gnome-utils/gnc-tree-view-account.c:946 #, fuzzy #| msgid "C" msgctxt "Column header for 'Color'" msgid "C" msgstr "C" -#: gnucash/gnome-utils/gnc-tree-view-account.c:931 -#: gnucash/gnome-utils/gnc-tree-view-account.c:934 +#: gnucash/gnome-utils/gnc-tree-view-account.c:954 +#: gnucash/gnome-utils/gnc-tree-view-account.c:957 msgid "Account Color" msgstr "Cor da conta" -#: gnucash/gnome-utils/gnc-tree-view-account.c:944 +#: gnucash/gnome-utils/gnc-tree-view-account.c:967 msgid "Tax Info" msgstr "Informação de impostos" -#: gnucash/gnome-utils/gnc-tree-view-account.c:958 +#: gnucash/gnome-utils/gnc-tree-view-account.c:981 msgctxt "Column header for 'Hidden'" msgid "H" msgstr "" +#: gnucash/gnome-utils/gnc-tree-view-account.c:997 +#, fuzzy +#| msgid "OK" +msgctxt "Column header for 'Opening Balance'" +msgid "O" +msgstr "Aceitar" + #. Translators: %s is a currency mnemonic. -#: gnucash/gnome-utils/gnc-tree-view-account.c:1787 +#: gnucash/gnome-utils/gnc-tree-view-account.c:1818 #, c-format msgid "Present (%s)" msgstr "Actual (%s)" #. Translators: %s is a currency mnemonic. -#: gnucash/gnome-utils/gnc-tree-view-account.c:1790 +#: gnucash/gnome-utils/gnc-tree-view-account.c:1821 #: gnucash/gnome-utils/gnc-tree-view-owner.c:924 #, c-format msgid "Balance (%s)" msgstr "Saldo (%s)" #. Translators: %s is a currency mnemonic. -#: gnucash/gnome-utils/gnc-tree-view-account.c:1793 +#: gnucash/gnome-utils/gnc-tree-view-account.c:1824 #, c-format msgid "Cleared (%s)" msgstr "Confirmada (%s)" #. Translators: %s is a currency mnemonic. -#: gnucash/gnome-utils/gnc-tree-view-account.c:1796 +#: gnucash/gnome-utils/gnc-tree-view-account.c:1827 #, c-format msgid "Reconciled (%s)" msgstr "Reconciliada (%s)" #. Translators: %s is a currency mnemonic. -#: gnucash/gnome-utils/gnc-tree-view-account.c:1799 +#: gnucash/gnome-utils/gnc-tree-view-account.c:1830 #, c-format msgid "Future Minimum (%s)" msgstr "Mínimo futuro (%s)" #. Translators: %s is a currency mnemonic. -#: gnucash/gnome-utils/gnc-tree-view-account.c:1802 +#: gnucash/gnome-utils/gnc-tree-view-account.c:1833 #, c-format msgid "Total (%s)" msgstr "Total (%s)" @@ -9839,7 +9876,7 @@ msgstr "Barra de estado" #: gnucash/gnome-utils/gnc-tree-view-split-reg.c:1247 #: gnucash/report/reports/standard/balsheet-eg.scm:386 -#: libgnucash/engine/Scrub.c:392 +#: libgnucash/engine/Scrub.c:407 msgid "Imbalance" msgstr "Desequilíbrio" @@ -9937,19 +9974,19 @@ msgstr "Montante/Valor" #: gnucash/gnome-utils/gnc-tree-view-split-reg.c:2948 #: gnucash/import-export/csv-imp/gnc-imp-props-tx.cpp:67 -#: libgnucash/engine/Account.cpp:162 +#: libgnucash/engine/Account.cpp:163 msgid "Withdrawal" msgstr "Levantamento" #: gnucash/gnome-utils/gnc-tree-view-split-reg.c:2953 -#: libgnucash/engine/Account.cpp:163 +#: libgnucash/engine/Account.cpp:164 msgid "Spend" msgstr "Gastos" #: gnucash/gnome-utils/gnc-tree-view-split-reg.c:3003 #: gnucash/gnome-utils/gnc-tree-view-split-reg.c:3010 #: gnucash/report/reports/standard/reconcile-report.scm:89 -#: libgnucash/engine/Account.cpp:161 +#: libgnucash/engine/Account.cpp:162 msgid "Funds Out" msgstr "Fundos saídos" @@ -9960,12 +9997,12 @@ msgstr "Fórmula de crédito" #: gnucash/gnome-utils/gnc-tree-view-split-reg.c:3033 #: gnucash/import-export/csv-imp/gnc-imp-props-tx.cpp:66 -#: libgnucash/engine/Account.cpp:142 +#: libgnucash/engine/Account.cpp:143 msgid "Deposit" msgstr "Depósito" #: gnucash/gnome-utils/gnc-tree-view-split-reg.c:3038 -#: libgnucash/engine/Account.cpp:143 +#: libgnucash/engine/Account.cpp:144 msgid "Receive" msgstr "Recebimento" @@ -9975,7 +10012,7 @@ msgstr "Recebimento" #: gnucash/report/reports/standard/customer-summary.scm:326 #: gnucash/report/reports/standard/net-charts.scm:371 #: gnucash/report/reports/standard/net-charts.scm:420 -#: libgnucash/engine/Account.cpp:151 libgnucash/engine/Account.cpp:4323 +#: libgnucash/engine/Account.cpp:152 libgnucash/engine/Account.cpp:4370 #: libgnucash/engine/gncInvoice.c:1084 msgid "Expense" msgstr "Despesa" @@ -9983,7 +10020,7 @@ msgstr "Despesa" #: gnucash/gnome-utils/gnc-tree-view-split-reg.c:3084 #: gnucash/gnome-utils/gnc-tree-view-split-reg.c:3091 #: gnucash/report/reports/standard/reconcile-report.scm:86 -#: libgnucash/engine/Account.cpp:141 +#: libgnucash/engine/Account.cpp:142 msgid "Funds In" msgstr "Fundos entrados" @@ -10095,7 +10132,7 @@ msgstr "Insira fórmula de débito para a transacção real" #: gnucash/gnome-utils/gnc-tree-view-sx-list.c:140 #: gnucash/gtkbuilder/dialog-sx.glade:1041 -#: gnucash/report/html-utilities.scm:268 +#: gnucash/report/html-utilities.scm:292 msgid "Enabled" msgstr "Activo" @@ -10238,38 +10275,38 @@ msgstr "Pode também procurar e reportar erros em" msgid "To find the last stable version, please refer to {1}" msgstr "Para encontrar a última versão estável, por favor, veja em" -#: gnucash/gnucash-core-app.cpp:467 +#: gnucash/gnucash-core-app.cpp:464 msgid "- GnuCash, accounting for personal and small business finance" msgstr "- Gnucash, contabilidade para finanças pessoais e de pequenos negócios" -#: gnucash/gnucash-core-app.cpp:469 +#: gnucash/gnucash-core-app.cpp:466 msgid "{1} [options] [datafile]" msgstr "" -#: gnucash/gnucash-core-app.cpp:497 +#: gnucash/gnucash-core-app.cpp:494 #, fuzzy msgid "GnuCash {1}" msgstr "GnuCash " -#: gnucash/gnucash-core-app.cpp:498 +#: gnucash/gnucash-core-app.cpp:495 #, fuzzy msgid "GnuCash {1} development version" msgstr "Versão de desenvolvimento %s do GnuCash" -#: gnucash/gnucash-core-app.cpp:526 +#: gnucash/gnucash-core-app.cpp:523 #, fuzzy msgid "Common Options" msgstr "Opções do livro" -#: gnucash/gnucash-core-app.cpp:529 +#: gnucash/gnucash-core-app.cpp:526 msgid "Show this help message" msgstr "" -#: gnucash/gnucash-core-app.cpp:531 +#: gnucash/gnucash-core-app.cpp:528 msgid "Show GnuCash version" msgstr "Mostrar versão do GnuCash" -#: gnucash/gnucash-core-app.cpp:533 +#: gnucash/gnucash-core-app.cpp:530 msgid "" "Enable debugging mode: provide deep detail in the logs.\n" "This is equivalent to: --log \"=info\" --log \"qof=info\" --log \"gnc=info\"" @@ -10277,11 +10314,11 @@ msgstr "" "Activar modo de depuração: fornece detalhes profundos nos diários.\n" "É equivalente a: --log \"=info\" --log \"qof=info\" --log \"gnc=info\"" -#: gnucash/gnucash-core-app.cpp:535 +#: gnucash/gnucash-core-app.cpp:532 msgid "Enable extra/development/debugging features." msgstr "Activar funcionalidades extra/de desenvolvimento/de depuração." -#: gnucash/gnucash-core-app.cpp:537 +#: gnucash/gnucash-core-app.cpp:534 msgid "" "Log level overrides, of the form \"modulename={debug,info,warn,crit," "error}\"\n" @@ -10293,7 +10330,7 @@ msgstr "" "Exemplos: \"--log qof=debug\" ou \"--log gnc.backend.file.sx=info\"\n" "Pode ser chamado múltiplas vezes." -#: gnucash/gnucash-core-app.cpp:539 +#: gnucash/gnucash-core-app.cpp:536 msgid "" "File to log into; defaults to \"/tmp/gnucash.trace\"; can be \"stderr\" or " "\"stdout\"." @@ -10301,7 +10338,7 @@ msgstr "" "Ficheiro onde escrever; predefinido como \"/tmp/gnucash.trace\"; pode ser " "\"stderr\" ou \"stdout\"." -#: gnucash/gnucash-core-app.cpp:541 +#: gnucash/gnucash-core-app.cpp:538 msgid "" "Set the prefix for gsettings schemas for gsettings queries. This can be " "useful to have a different settings tree while debugging." @@ -10309,12 +10346,12 @@ msgstr "" "Definir o prefixo para esquemas gsttings como consultas gsettings. Pode ser " "útil ter uma árvore de diferentes definições ao depurar" -#: gnucash/gnucash-core-app.cpp:543 +#: gnucash/gnucash-core-app.cpp:540 #, fuzzy msgid "Hidden Options" msgstr "Opções do orçamento" -#: gnucash/gnucash-core-app.cpp:546 +#: gnucash/gnucash-core-app.cpp:543 msgid "[datafile]" msgstr "[ficheirodados]" @@ -11002,7 +11039,7 @@ msgid "Enable SKIP transaction action" msgstr "Activar acção SALTAR transacção" #: gnucash/gschemas/org.gnucash.dialogs.import.generic.gschema.xml.in:6 -#: gnucash/gtkbuilder/dialog-preferences.glade:1915 +#: gnucash/gtkbuilder/dialog-preferences.glade:2032 msgid "" "Enable the SKIP action in the transaction matcher. If enabled, a transaction " "whose best match's score is in the yellow zone (above the Auto-ADD threshold " @@ -11018,7 +11055,7 @@ msgid "Enable UPDATE match action" msgstr "Activar acção ACTUALIZAR comparação" #: gnucash/gschemas/org.gnucash.dialogs.import.generic.gschema.xml.in:11 -#: gnucash/gtkbuilder/dialog-preferences.glade:1934 +#: gnucash/gtkbuilder/dialog-preferences.glade:2051 msgid "" "Enable the UPDATE AND RECONCILE action in the transaction matcher. If " "enabled, a transaction whose best match's score is above the Auto-CLEAR " @@ -11118,12 +11155,12 @@ msgstr "" #. Preferences->Online Banking:Generic #: gnucash/gschemas/org.gnucash.dialogs.import.generic.gschema.xml.in:40 -#: gnucash/gtkbuilder/dialog-preferences.glade:2125 +#: gnucash/gtkbuilder/dialog-preferences.glade:2242 msgid "Automatically create new commodities" msgstr "Criar automaticamente novas mercadorias" #: gnucash/gschemas/org.gnucash.dialogs.import.generic.gschema.xml.in:41 -#: gnucash/gtkbuilder/dialog-preferences.glade:2131 +#: gnucash/gtkbuilder/dialog-preferences.glade:2248 msgid "" "Enables the automatic creation of new commodities if any unknown commodity " "is encountered during import. Otherwise the user will be asked what to do " @@ -11330,13 +11367,13 @@ msgstr "" "mostrado, caso contrário não é." #: gnucash/gschemas/org.gnucash.general.finance-quote.gschema.xml.in:5 -#: gnucash/gtkbuilder/dialog-preferences.glade:3497 +#: gnucash/gtkbuilder/dialog-preferences.glade:3614 msgid "Alpha Vantage API key" msgstr "Chave Alpha Vantage API" #: gnucash/gschemas/org.gnucash.general.finance-quote.gschema.xml.in:6 -#: gnucash/gtkbuilder/dialog-preferences.glade:3496 -#: gnucash/gtkbuilder/dialog-preferences.glade:3508 +#: gnucash/gtkbuilder/dialog-preferences.glade:3613 +#: gnucash/gtkbuilder/dialog-preferences.glade:3625 msgid "" "To retrieve online quotes from Alphavantage, this key needs to be set. A key " "can be retrieved from the Alpha Vantage website." @@ -11426,7 +11463,7 @@ msgid "Auto-save time interval" msgstr "Intervalo entre gravações automáticas" #: gnucash/gschemas/org.gnucash.gschema.xml.in:41 -#: gnucash/gtkbuilder/dialog-preferences.glade:1527 +#: gnucash/gtkbuilder/dialog-preferences.glade:1644 msgid "" "The number of minutes until saving of the data file to harddisk will be " "started automatically. If zero, no saving will be started automatically." @@ -11435,12 +11472,12 @@ msgstr "" "iniciada. Se for zero, não serão feitas gravações automáticas." #: gnucash/gschemas/org.gnucash.gschema.xml.in:45 -#: gnucash/gtkbuilder/dialog-preferences.glade:1644 +#: gnucash/gtkbuilder/dialog-preferences.glade:1761 msgid "Enable timeout on \"Save changes on closing\" question" msgstr "Permitir expiração de tempo na questão \"Gravar alterações ao sair?\"" #: gnucash/gschemas/org.gnucash.gschema.xml.in:46 -#: gnucash/gtkbuilder/dialog-preferences.glade:1648 +#: gnucash/gtkbuilder/dialog-preferences.glade:1765 msgid "" "If enabled, the \"Save changes on closing\" question will only wait a " "limited number of seconds for an answer. If the user didn't answer within " @@ -11456,7 +11493,7 @@ msgid "Time to wait for answer" msgstr "Tempo a esperar pela resposta" #: gnucash/gschemas/org.gnucash.gschema.xml.in:51 -#: gnucash/gtkbuilder/dialog-preferences.glade:1683 +#: gnucash/gtkbuilder/dialog-preferences.glade:1800 msgid "" "The number of seconds to wait before the question window will be closed and " "the changes saved automatically." @@ -11501,7 +11538,7 @@ msgstr "" "Forçar amostragem de cotações em decimais, mesmo as que serão arredondadas." #: gnucash/gschemas/org.gnucash.gschema.xml.in:71 -#: gnucash/gtkbuilder/dialog-preferences.glade:1087 +#: gnucash/gtkbuilder/dialog-preferences.glade:1204 msgid "" "If active, GnuCash will round prices as necessary to display them as " "decimals instead of displaying the exact fraction if the fractional part " @@ -11512,7 +11549,7 @@ msgstr "" "exactamente representada como decimal." #: gnucash/gschemas/org.gnucash.gschema.xml.in:75 -#: gnucash/gtkbuilder/dialog-preferences.glade:1596 +#: gnucash/gtkbuilder/dialog-preferences.glade:1713 msgid "Do not create log/backup files." msgstr "Não criar ficheiros de diário/segurança." @@ -11533,12 +11570,12 @@ msgstr "" "ficheiros um certo número de dias, definidos na chave \"retain-days\"." #: gnucash/gschemas/org.gnucash.gschema.xml.in:80 -#: gnucash/gtkbuilder/dialog-preferences.glade:1614 +#: gnucash/gtkbuilder/dialog-preferences.glade:1731 msgid "Delete old log/backup files after this many days (0 = never)." msgstr "Eliminar ficheiros de diário/segurança após estes dias (0=nunca)." #: gnucash/gschemas/org.gnucash.gschema.xml.in:85 -#: gnucash/gtkbuilder/dialog-preferences.glade:1632 +#: gnucash/gtkbuilder/dialog-preferences.glade:1749 msgid "Do not delete log/backup files." msgstr "Não eliminar ficheiros de diário/segurança." @@ -11555,7 +11592,7 @@ msgstr "" "de diário/segurança serão eliminados (0=nunca)." #: gnucash/gschemas/org.gnucash.gschema.xml.in:95 -#: gnucash/gtkbuilder/dialog-preferences.glade:519 +#: gnucash/gtkbuilder/dialog-preferences.glade:636 msgid "Don't sign reverse any accounts." msgstr "Não inverter o sinal de quaisquer contas." @@ -11578,7 +11615,7 @@ msgstr "" "\"nenhuma\" não inverte o sinal de nenhum saldo." #: gnucash/gschemas/org.gnucash.gschema.xml.in:100 -#: gnucash/gtkbuilder/dialog-preferences.glade:538 +#: gnucash/gtkbuilder/dialog-preferences.glade:655 msgid "" "Sign reverse balances on the following: Credit Card, Payable, Liability, " "Equity, and Income." @@ -11587,7 +11624,7 @@ msgstr "" "próprio e receitas." #: gnucash/gschemas/org.gnucash.gschema.xml.in:105 -#: gnucash/gtkbuilder/dialog-preferences.glade:557 +#: gnucash/gtkbuilder/dialog-preferences.glade:674 msgid "Sign reverse balances on income and expense accounts." msgstr "Inverter o sinal de balanços de contas de receitas e despesas." @@ -11664,7 +11701,7 @@ msgstr "" "cortado ao meio e substituído por reticências." #: gnucash/gschemas/org.gnucash.gschema.xml.in:135 -#: gnucash/gtkbuilder/dialog-preferences.glade:803 +#: gnucash/gtkbuilder/dialog-preferences.glade:920 msgid "Use the system locale currency for all newly created accounts." msgstr "" "Usar as configurações regionais de moeda para todas as contas recém-criadas." @@ -11684,7 +11721,7 @@ msgstr "" "especificada na chave currency-other." #: gnucash/gschemas/org.gnucash.gschema.xml.in:140 -#: gnucash/gtkbuilder/dialog-preferences.glade:783 +#: gnucash/gtkbuilder/dialog-preferences.glade:900 msgid "Use the specified currency for all newly created accounts." msgstr "Usar a moeda especificada para todas as contas recém-criadas." @@ -11730,7 +11767,7 @@ msgstr "" "Estados Unidos." #: gnucash/gschemas/org.gnucash.gschema.xml.in:160 -#: gnucash/gtkbuilder/dialog-preferences.glade:981 +#: gnucash/gtkbuilder/dialog-preferences.glade:1098 msgid "In the current calendar year" msgstr "completada com o ano de calendário actual" @@ -11758,7 +11795,7 @@ msgid "Maximum number of months to go back." msgstr "Número máximo de meses a recuar." #: gnucash/gschemas/org.gnucash.gschema.xml.in:171 -#: gnucash/gtkbuilder/dialog-preferences.glade:1007 +#: gnucash/gtkbuilder/dialog-preferences.glade:1124 msgid "" "Dates will be completed so that they are close to the current date. Enter " "the maximum number of months to go backwards in time when completing dates." @@ -11803,7 +11840,7 @@ msgstr "" "mostrado." #: gnucash/gschemas/org.gnucash.gschema.xml.in:190 -#: gnucash/gtkbuilder/dialog-preferences.glade:3231 +#: gnucash/gtkbuilder/dialog-preferences.glade:3348 msgid "Display the notebook tabs at the top of the window." msgstr "Mostrar os separadores do bloco de notas ao cimo da janela." @@ -11821,22 +11858,22 @@ msgstr "" "\"Fundo\", \"Esquerda\" e \"Direita\". Predefinida como \"Topo\"." #: gnucash/gschemas/org.gnucash.gschema.xml.in:195 -#: gnucash/gtkbuilder/dialog-preferences.glade:3250 +#: gnucash/gtkbuilder/dialog-preferences.glade:3367 msgid "Display the notebook tabs at the bottom of the window." msgstr "Mostrar os separadores do bloco de notas no fundo da janela." #: gnucash/gschemas/org.gnucash.gschema.xml.in:200 -#: gnucash/gtkbuilder/dialog-preferences.glade:3269 +#: gnucash/gtkbuilder/dialog-preferences.glade:3386 msgid "Display the notebook tabs at the left of the window." msgstr "Mostrar os separadores do bloco de notas à esquerda da janela." #: gnucash/gschemas/org.gnucash.gschema.xml.in:205 -#: gnucash/gtkbuilder/dialog-preferences.glade:3288 +#: gnucash/gtkbuilder/dialog-preferences.glade:3405 msgid "Display the notebook tabs at the right of the window." msgstr "Mostrar os separadores do bloco de notas à direita da janela." #: gnucash/gschemas/org.gnucash.gschema.xml.in:210 -#: gnucash/gtkbuilder/dialog-preferences.glade:3320 +#: gnucash/gtkbuilder/dialog-preferences.glade:3437 msgid "Display the summary bar at the top of the page." msgstr "Mostrar a barra de resumo no topo da página." @@ -11852,12 +11889,12 @@ msgstr "" "predefinição é \"Fundo\"." #: gnucash/gschemas/org.gnucash.gschema.xml.in:215 -#: gnucash/gtkbuilder/dialog-preferences.glade:3339 +#: gnucash/gtkbuilder/dialog-preferences.glade:3456 msgid "Display the summary bar at the bottom of the page." msgstr "Mostrar a barra resumo no fundo da página." #: gnucash/gschemas/org.gnucash.gschema.xml.in:220 -#: gnucash/gtkbuilder/dialog-preferences.glade:3189 +#: gnucash/gtkbuilder/dialog-preferences.glade:3306 msgid "Closing a tab moves to the most recently visited tab." msgstr "Fechar um separador move para o separador mais recentemente visitado." @@ -11870,7 +11907,7 @@ msgstr "" "visitou. Senão, fechar um separador move o foco um separador à esquerda." #: gnucash/gschemas/org.gnucash.gschema.xml.in:225 -#: gnucash/gtkbuilder/dialog-preferences.glade:1292 +#: gnucash/gtkbuilder/dialog-preferences.glade:1409 msgid "" "Set book option on new files to use split \"action\" field for \"Num\" field " "on registers/reports" @@ -11879,7 +11916,7 @@ msgstr "" "campo \"Núm\" em diários/relatórios" #: gnucash/gschemas/org.gnucash.gschema.xml.in:226 -#: gnucash/gtkbuilder/dialog-preferences.glade:1298 +#: gnucash/gtkbuilder/dialog-preferences.glade:1415 msgid "" "If selected, the default book option for new files is set so that the 'Num' " "cell on registers shows/updates the split 'action' field and the transaction " @@ -12027,7 +12064,7 @@ msgstr "" "após todas as transacções." #: gnucash/gschemas/org.gnucash.gschema.xml.in:285 -#: gnucash/gtkbuilder/dialog-preferences.glade:2625 +#: gnucash/gtkbuilder/dialog-preferences.glade:2742 msgid "Show all transactions on one line. (Two in double line mode.)" msgstr "" "Mostrar todas as transacções numa linha (duas, em modo de linha dupla)." @@ -12052,7 +12089,7 @@ msgstr "" "todas as transacções de forma expandida." #: gnucash/gschemas/org.gnucash.gschema.xml.in:290 -#: gnucash/gtkbuilder/dialog-preferences.glade:2644 +#: gnucash/gtkbuilder/dialog-preferences.glade:2761 msgid "" "Automatically expand the current transaction to show all splits. All other " "transactions are shown on one line. (Two in double line mode.)" @@ -12062,7 +12099,7 @@ msgstr "" "dupla)." #: gnucash/gschemas/org.gnucash.gschema.xml.in:295 -#: gnucash/gtkbuilder/dialog-preferences.glade:2663 +#: gnucash/gtkbuilder/dialog-preferences.glade:2780 msgid "All transactions are expanded to show all splits." msgstr "Todas as transacções são expandidas para mostrar todas as parcelas." @@ -12106,7 +12143,7 @@ msgid "Show the entered and reconcile dates" msgstr "Mostrar as datas de entrada e reconciliada" #: gnucash/gschemas/org.gnucash.gschema.xml.in:311 -#: gnucash/gtkbuilder/dialog-preferences.glade:2807 +#: gnucash/gtkbuilder/dialog-preferences.glade:2924 msgid "" "Show the date when the transaction was entered below the posted date and " "reconciled date on split row." @@ -12119,7 +12156,7 @@ msgid "Show entered and reconciled dates on selection" msgstr "Mostrar datas de entrada e reconciliação na selecção" #: gnucash/gschemas/org.gnucash.gschema.xml.in:316 -#: gnucash/gtkbuilder/dialog-preferences.glade:2855 +#: gnucash/gtkbuilder/dialog-preferences.glade:2972 msgid "Show the entered date and reconciled date on transaction selection." msgstr "Mostrar datas de entrada e reconciliação na selecção de transacção." @@ -12128,7 +12165,7 @@ msgid "Show the calendar buttons" msgstr "Mostrar botões de calendário" #: gnucash/gschemas/org.gnucash.gschema.xml.in:321 -#: gnucash/gtkbuilder/dialog-preferences.glade:2823 +#: gnucash/gtkbuilder/dialog-preferences.glade:2940 msgid "Show the calendar buttons Cancel, Today and Select." msgstr "Mostrar botões de calendário Cancelar, Hoje e Seleccionar." @@ -12137,7 +12174,7 @@ msgid "Move the selection to the blank split on expand" msgstr "Mover a selecção para a parcela em branco ao expandir" #: gnucash/gschemas/org.gnucash.gschema.xml.in:326 -#: gnucash/gtkbuilder/dialog-preferences.glade:2839 +#: gnucash/gtkbuilder/dialog-preferences.glade:2956 msgid "" "This will move the selection to the blank split when the transaction is " "expanded." @@ -12150,7 +12187,7 @@ msgid "Number of transactions to show in a register." msgstr "Número de transacções a mostrar num diário." #: gnucash/gschemas/org.gnucash.gschema.xml.in:331 -#: gnucash/gtkbuilder/dialog-preferences.glade:2694 +#: gnucash/gtkbuilder/dialog-preferences.glade:2811 msgid "" "Show this many transactions in a register. A value of zero means show all " "transactions." @@ -12164,7 +12201,7 @@ msgstr "Número de caracteres para conclusão automática." #. Register2 feature #: gnucash/gschemas/org.gnucash.gschema.xml.in:336 -#: gnucash/gtkbuilder/dialog-preferences.glade:2784 +#: gnucash/gtkbuilder/dialog-preferences.glade:2901 msgid "" "This sets the number of characters before auto complete starts for " "description, notes and memo fields." @@ -12185,7 +12222,7 @@ msgstr "" "abrem como novos separadores na janela principal." #: gnucash/gschemas/org.gnucash.gschema.xml.in:348 -#: gnucash/gtkbuilder/dialog-preferences.glade:3058 +#: gnucash/gtkbuilder/dialog-preferences.glade:3175 msgid "Use the system locale currency for all newly created reports." msgstr "Usar a configuração regional de moeda para novos relatórios." @@ -12203,7 +12240,7 @@ msgstr "" "definida na chave currency-other." #: gnucash/gschemas/org.gnucash.gschema.xml.in:353 -#: gnucash/gtkbuilder/dialog-preferences.glade:3038 +#: gnucash/gtkbuilder/dialog-preferences.glade:3155 msgid "Use the specified currency for all newly created reports." msgstr "Usar a moeda especificada para todos os novos relatórios." @@ -12216,7 +12253,7 @@ msgid "Zoom factor to use by default for reports." msgstr "Factor de ampliação predefinido para todos os relatórios." #: gnucash/gschemas/org.gnucash.gschema.xml.in:364 -#: gnucash/gtkbuilder/dialog-preferences.glade:3073 +#: gnucash/gtkbuilder/dialog-preferences.glade:3190 msgid "" "On high resolution screens reports tend to be hard to read. This option " "allows you to scale reports up by the set factor. For example setting this " @@ -12335,12 +12372,12 @@ msgstr "" "recentemente aberto." #: gnucash/gschemas/org.gnucash.warnings.gschema.xml.in:9 -#: gnucash/gschemas/org.gnucash.warnings.gschema.xml.in:107 +#: gnucash/gschemas/org.gnucash.warnings.gschema.xml.in:112 msgid "Print checks from multiple accounts" msgstr "Imprimir cheques de múltiplas contas" #: gnucash/gschemas/org.gnucash.warnings.gschema.xml.in:10 -#: gnucash/gschemas/org.gnucash.warnings.gschema.xml.in:108 +#: gnucash/gschemas/org.gnucash.warnings.gschema.xml.in:113 msgid "" "This dialog is presented if you try to print checks from multiple accounts " "at the same time." @@ -12349,12 +12386,24 @@ msgstr "" "mesmo tempo." #: gnucash/gschemas/org.gnucash.warnings.gschema.xml.in:14 -#: gnucash/gschemas/org.gnucash.warnings.gschema.xml.in:112 +#: gnucash/gschemas/org.gnucash.warnings.gschema.xml.in:117 +msgid "Confirm Window Close" +msgstr "" + +#: gnucash/gschemas/org.gnucash.warnings.gschema.xml.in:15 +#: gnucash/gschemas/org.gnucash.warnings.gschema.xml.in:118 +#, fuzzy +#| msgid "This dialog is presented when a read-only register is opened." +msgid "This dialog is presented when there is more than one window." +msgstr "Este diálogo é mostrado quando abre um diário só de leitura." + +#: gnucash/gschemas/org.gnucash.warnings.gschema.xml.in:19 +#: gnucash/gschemas/org.gnucash.warnings.gschema.xml.in:122 msgid "Commit changes to a invoice entry" msgstr "Submeter alterações a uma entrada de factura" -#: gnucash/gschemas/org.gnucash.warnings.gschema.xml.in:15 -#: gnucash/gschemas/org.gnucash.warnings.gschema.xml.in:113 +#: gnucash/gschemas/org.gnucash.warnings.gschema.xml.in:20 +#: gnucash/gschemas/org.gnucash.warnings.gschema.xml.in:123 msgid "" "This dialog is presented when you attempt to move out of a modified invoice " "entry. The changed data must be either saved or discarded." @@ -12362,13 +12411,13 @@ msgstr "" "Este diálogo é mostrado quando tenta sair de uma entrada de factura " "modificada. Os dados alterados têm de ser gravados ou descartados." -#: gnucash/gschemas/org.gnucash.warnings.gschema.xml.in:19 -#: gnucash/gschemas/org.gnucash.warnings.gschema.xml.in:117 +#: gnucash/gschemas/org.gnucash.warnings.gschema.xml.in:24 +#: gnucash/gschemas/org.gnucash.warnings.gschema.xml.in:127 msgid "Duplicating a changed invoice entry" msgstr "Duplicar uma entrada de factura alterada" -#: gnucash/gschemas/org.gnucash.warnings.gschema.xml.in:20 -#: gnucash/gschemas/org.gnucash.warnings.gschema.xml.in:118 +#: gnucash/gschemas/org.gnucash.warnings.gschema.xml.in:25 +#: gnucash/gschemas/org.gnucash.warnings.gschema.xml.in:128 msgid "" "This dialog is presented when you attempt to duplicate a modified invoice " "entry. The changed data must be saved or the duplication canceled." @@ -12376,23 +12425,23 @@ msgstr "" "Este diálogo é mostrado quando tenta duplicar uma entrada de factura " "modificada. Os dados alterados têm de ser gravados ou a duplicação cancelada." -#: gnucash/gschemas/org.gnucash.warnings.gschema.xml.in:24 -#: gnucash/gschemas/org.gnucash.warnings.gschema.xml.in:122 +#: gnucash/gschemas/org.gnucash.warnings.gschema.xml.in:29 +#: gnucash/gschemas/org.gnucash.warnings.gschema.xml.in:132 msgid "Delete a commodity" msgstr "Eliminar uma mercadoria" -#: gnucash/gschemas/org.gnucash.warnings.gschema.xml.in:25 -#: gnucash/gschemas/org.gnucash.warnings.gschema.xml.in:123 +#: gnucash/gschemas/org.gnucash.warnings.gschema.xml.in:30 +#: gnucash/gschemas/org.gnucash.warnings.gschema.xml.in:133 msgid "This dialog is presented before allowing you to delete a commodity." msgstr "Este diálogo é mostrado antes de poder eliminar uma mercadoria." -#: gnucash/gschemas/org.gnucash.warnings.gschema.xml.in:29 -#: gnucash/gschemas/org.gnucash.warnings.gschema.xml.in:127 +#: gnucash/gschemas/org.gnucash.warnings.gschema.xml.in:34 +#: gnucash/gschemas/org.gnucash.warnings.gschema.xml.in:137 msgid "Delete a commodity with price quotes" msgstr "Eliminar uma mercadoria com cotações de preço" -#: gnucash/gschemas/org.gnucash.warnings.gschema.xml.in:30 -#: gnucash/gschemas/org.gnucash.warnings.gschema.xml.in:128 +#: gnucash/gschemas/org.gnucash.warnings.gschema.xml.in:35 +#: gnucash/gschemas/org.gnucash.warnings.gschema.xml.in:138 msgid "" "This dialog is presented before allowing you to delete a commodity that has " "price quotes attached. Deleting the commodity will delete the quotes as well." @@ -12401,13 +12450,13 @@ msgstr "" "cotações de preço anexadas. Eliminar a mercadoria também eliminará as " "cotações." -#: gnucash/gschemas/org.gnucash.warnings.gschema.xml.in:34 -#: gnucash/gschemas/org.gnucash.warnings.gschema.xml.in:132 +#: gnucash/gschemas/org.gnucash.warnings.gschema.xml.in:39 +#: gnucash/gschemas/org.gnucash.warnings.gschema.xml.in:142 msgid "Delete multiple price quotes" msgstr "Eliminar múltiplas cotações de preços" -#: gnucash/gschemas/org.gnucash.warnings.gschema.xml.in:35 -#: gnucash/gschemas/org.gnucash.warnings.gschema.xml.in:133 +#: gnucash/gschemas/org.gnucash.warnings.gschema.xml.in:40 +#: gnucash/gschemas/org.gnucash.warnings.gschema.xml.in:143 msgid "" "This dialog is presented before allowing you to delete multiple price quotes " "at one time." @@ -12415,25 +12464,25 @@ msgstr "" "Este diálogo é mostrado antes de poder eliminar múltiplas cotações de preço " "de uma só vez." -#: gnucash/gschemas/org.gnucash.warnings.gschema.xml.in:39 -#: gnucash/gschemas/org.gnucash.warnings.gschema.xml.in:137 +#: gnucash/gschemas/org.gnucash.warnings.gschema.xml.in:44 +#: gnucash/gschemas/org.gnucash.warnings.gschema.xml.in:147 msgid "Replace existing price" msgstr "Substituir cotação existente" -#: gnucash/gschemas/org.gnucash.warnings.gschema.xml.in:40 -#: gnucash/gschemas/org.gnucash.warnings.gschema.xml.in:138 +#: gnucash/gschemas/org.gnucash.warnings.gschema.xml.in:45 +#: gnucash/gschemas/org.gnucash.warnings.gschema.xml.in:148 msgid "" "This dialog is presented before allowing you to replace an existing price." msgstr "" "Este diálogo é mostrado antes de poder substituir uma cotação existente." -#: gnucash/gschemas/org.gnucash.warnings.gschema.xml.in:44 -#: gnucash/gschemas/org.gnucash.warnings.gschema.xml.in:142 +#: gnucash/gschemas/org.gnucash.warnings.gschema.xml.in:49 +#: gnucash/gschemas/org.gnucash.warnings.gschema.xml.in:152 msgid "Edit account payable/accounts receivable register" msgstr "Editar diário de conta a pagar/contas a receber" -#: gnucash/gschemas/org.gnucash.warnings.gschema.xml.in:45 -#: gnucash/gschemas/org.gnucash.warnings.gschema.xml.in:143 +#: gnucash/gschemas/org.gnucash.warnings.gschema.xml.in:50 +#: gnucash/gschemas/org.gnucash.warnings.gschema.xml.in:153 msgid "" "This dialog is presented before allowing you to edit an accounts payable/" "accounts receivable account. These account types are reserved for the " @@ -12443,23 +12492,23 @@ msgstr "" "contas a receber. Estes tipos de contas estão reservados para " "funcionalidades de negócios e raramente devem ser manipuladas à mão." -#: gnucash/gschemas/org.gnucash.warnings.gschema.xml.in:49 -#: gnucash/gschemas/org.gnucash.warnings.gschema.xml.in:147 +#: gnucash/gschemas/org.gnucash.warnings.gschema.xml.in:54 +#: gnucash/gschemas/org.gnucash.warnings.gschema.xml.in:157 msgid "Read only register" msgstr "Diário só de leitura" -#: gnucash/gschemas/org.gnucash.warnings.gschema.xml.in:50 -#: gnucash/gschemas/org.gnucash.warnings.gschema.xml.in:148 +#: gnucash/gschemas/org.gnucash.warnings.gschema.xml.in:55 +#: gnucash/gschemas/org.gnucash.warnings.gschema.xml.in:158 msgid "This dialog is presented when a read-only register is opened." msgstr "Este diálogo é mostrado quando abre um diário só de leitura." -#: gnucash/gschemas/org.gnucash.warnings.gschema.xml.in:54 -#: gnucash/gschemas/org.gnucash.warnings.gschema.xml.in:152 +#: gnucash/gschemas/org.gnucash.warnings.gschema.xml.in:59 +#: gnucash/gschemas/org.gnucash.warnings.gschema.xml.in:162 msgid "Change contents of reconciled split" msgstr "Alterar conteúdo de uma parcela reconciliada" -#: gnucash/gschemas/org.gnucash.warnings.gschema.xml.in:55 -#: gnucash/gschemas/org.gnucash.warnings.gschema.xml.in:153 +#: gnucash/gschemas/org.gnucash.warnings.gschema.xml.in:60 +#: gnucash/gschemas/org.gnucash.warnings.gschema.xml.in:163 msgid "" "This dialog is presented before allowing you to change the contents of a " "reconciled split. Allowing these changes can make it hard to perform future " @@ -12469,13 +12518,13 @@ msgstr "" "reconciliada. Permitir estas alterações pode tornar difícil fazer futuras " "reconciliações." -#: gnucash/gschemas/org.gnucash.warnings.gschema.xml.in:59 -#: gnucash/gschemas/org.gnucash.warnings.gschema.xml.in:157 +#: gnucash/gschemas/org.gnucash.warnings.gschema.xml.in:64 +#: gnucash/gschemas/org.gnucash.warnings.gschema.xml.in:167 msgid "Mark transaction split as unreconciled" msgstr "Marcar parcela da transacção como não reconciliada" -#: gnucash/gschemas/org.gnucash.warnings.gschema.xml.in:60 -#: gnucash/gschemas/org.gnucash.warnings.gschema.xml.in:158 +#: gnucash/gschemas/org.gnucash.warnings.gschema.xml.in:65 +#: gnucash/gschemas/org.gnucash.warnings.gschema.xml.in:168 msgid "" "This dialog is presented before allowing you to mark a transaction split as " "unreconciled. Doing so will throw off the reconciled value of the register " @@ -12485,26 +12534,26 @@ msgstr "" "não reconciliada. Fazê-lo vai deitar fora o valor reconciliado no diário e " "pode tornar difícil fazer futuras reconciliações." -#: gnucash/gschemas/org.gnucash.warnings.gschema.xml.in:64 -#: gnucash/gschemas/org.gnucash.warnings.gschema.xml.in:162 +#: gnucash/gschemas/org.gnucash.warnings.gschema.xml.in:69 +#: gnucash/gschemas/org.gnucash.warnings.gschema.xml.in:172 msgid "Remove a split from a transaction" msgstr "Remover uma parcela de uma transacção" -#: gnucash/gschemas/org.gnucash.warnings.gschema.xml.in:65 -#: gnucash/gschemas/org.gnucash.warnings.gschema.xml.in:163 +#: gnucash/gschemas/org.gnucash.warnings.gschema.xml.in:70 +#: gnucash/gschemas/org.gnucash.warnings.gschema.xml.in:173 msgid "" "This dialog is presented before allowing you to remove a split from a " "transaction." msgstr "" "Este diálogo é mostrado antes de poder remover uma parcela de uma transacção." -#: gnucash/gschemas/org.gnucash.warnings.gschema.xml.in:69 -#: gnucash/gschemas/org.gnucash.warnings.gschema.xml.in:167 +#: gnucash/gschemas/org.gnucash.warnings.gschema.xml.in:74 +#: gnucash/gschemas/org.gnucash.warnings.gschema.xml.in:177 msgid "Remove a reconciled split from a transaction" msgstr "Remover uma parcela reconciliada de uma transacção" -#: gnucash/gschemas/org.gnucash.warnings.gschema.xml.in:70 -#: gnucash/gschemas/org.gnucash.warnings.gschema.xml.in:168 +#: gnucash/gschemas/org.gnucash.warnings.gschema.xml.in:75 +#: gnucash/gschemas/org.gnucash.warnings.gschema.xml.in:178 msgid "" "This dialog is presented before allowing you to remove a reconciled split " "from a transaction. Doing so will throw off the reconciled value of the " @@ -12514,15 +12563,15 @@ msgstr "" "uma transacção. Fazê-lo vai deitar fora o valor reconciliado no diário e " "pode tornar difícil fazer futuras reconciliações." -#: gnucash/gschemas/org.gnucash.warnings.gschema.xml.in:74 #: gnucash/gschemas/org.gnucash.warnings.gschema.xml.in:79 -#: gnucash/gschemas/org.gnucash.warnings.gschema.xml.in:172 -#: gnucash/gschemas/org.gnucash.warnings.gschema.xml.in:177 +#: gnucash/gschemas/org.gnucash.warnings.gschema.xml.in:84 +#: gnucash/gschemas/org.gnucash.warnings.gschema.xml.in:182 +#: gnucash/gschemas/org.gnucash.warnings.gschema.xml.in:187 msgid "Remove all the splits from a transaction" msgstr "Remover todas as parcelas de uma transacção" -#: gnucash/gschemas/org.gnucash.warnings.gschema.xml.in:75 -#: gnucash/gschemas/org.gnucash.warnings.gschema.xml.in:173 +#: gnucash/gschemas/org.gnucash.warnings.gschema.xml.in:80 +#: gnucash/gschemas/org.gnucash.warnings.gschema.xml.in:183 msgid "" "This dialog is presented before allowing you to remove all splits from a " "transaction." @@ -12530,8 +12579,8 @@ msgstr "" "Este diálogo é mostrado antes de poder remover todas as parcelas de uma " "transacção." -#: gnucash/gschemas/org.gnucash.warnings.gschema.xml.in:80 -#: gnucash/gschemas/org.gnucash.warnings.gschema.xml.in:178 +#: gnucash/gschemas/org.gnucash.warnings.gschema.xml.in:85 +#: gnucash/gschemas/org.gnucash.warnings.gschema.xml.in:188 msgid "" "This dialog is presented before allowing you to remove all splits (including " "some reconciled splits) from a transaction. Doing so will throw off the " @@ -12542,23 +12591,23 @@ msgstr "" "algumas reconciliadas) de uma transacção. Fazê-lo vai deitar fora o valor " "reconciliado no diário e pode tornar difícil fazer futuras reconciliações." -#: gnucash/gschemas/org.gnucash.warnings.gschema.xml.in:84 -#: gnucash/gschemas/org.gnucash.warnings.gschema.xml.in:182 +#: gnucash/gschemas/org.gnucash.warnings.gschema.xml.in:89 +#: gnucash/gschemas/org.gnucash.warnings.gschema.xml.in:192 msgid "Delete a transaction" msgstr "Eliminar uma transacção" -#: gnucash/gschemas/org.gnucash.warnings.gschema.xml.in:85 -#: gnucash/gschemas/org.gnucash.warnings.gschema.xml.in:183 +#: gnucash/gschemas/org.gnucash.warnings.gschema.xml.in:90 +#: gnucash/gschemas/org.gnucash.warnings.gschema.xml.in:193 msgid "This dialog is presented before allowing you to delete a transaction." msgstr "Este diálogo é mostrado antes de poder eliminar uma transacção." -#: gnucash/gschemas/org.gnucash.warnings.gschema.xml.in:89 -#: gnucash/gschemas/org.gnucash.warnings.gschema.xml.in:187 +#: gnucash/gschemas/org.gnucash.warnings.gschema.xml.in:94 +#: gnucash/gschemas/org.gnucash.warnings.gschema.xml.in:197 msgid "Delete a transaction with reconciled splits" msgstr "Eliminar uma transacção com parcelas reconciliadas" -#: gnucash/gschemas/org.gnucash.warnings.gschema.xml.in:90 -#: gnucash/gschemas/org.gnucash.warnings.gschema.xml.in:188 +#: gnucash/gschemas/org.gnucash.warnings.gschema.xml.in:95 +#: gnucash/gschemas/org.gnucash.warnings.gschema.xml.in:198 msgid "" "This dialog is presented before allowing you to delete a transaction that " "contains reconciled splits. Doing so will throw off the reconciled value of " @@ -12568,13 +12617,13 @@ msgstr "" "parcelas reconciliadas. Fazê-lo vai deitar fora o valor reconciliado no " "diário e pode tornar difícil fazer futuras reconciliações." -#: gnucash/gschemas/org.gnucash.warnings.gschema.xml.in:94 -#: gnucash/gschemas/org.gnucash.warnings.gschema.xml.in:192 +#: gnucash/gschemas/org.gnucash.warnings.gschema.xml.in:99 +#: gnucash/gschemas/org.gnucash.warnings.gschema.xml.in:202 msgid "Duplicating a changed transaction" msgstr "Duplicar uma transacção alterada" -#: gnucash/gschemas/org.gnucash.warnings.gschema.xml.in:95 -#: gnucash/gschemas/org.gnucash.warnings.gschema.xml.in:193 +#: gnucash/gschemas/org.gnucash.warnings.gschema.xml.in:100 +#: gnucash/gschemas/org.gnucash.warnings.gschema.xml.in:203 msgid "" "This dialog is presented when you attempt to duplicate a modified " "transaction. The changed data must be saved or the duplication canceled." @@ -12582,13 +12631,13 @@ msgstr "" "Este diálogo é mostrado quando tenta duplicar uma transacção modificada. Os " "dados alterados têm de ser gravados ou a duplicação cancelada." -#: gnucash/gschemas/org.gnucash.warnings.gschema.xml.in:99 -#: gnucash/gschemas/org.gnucash.warnings.gschema.xml.in:197 +#: gnucash/gschemas/org.gnucash.warnings.gschema.xml.in:104 +#: gnucash/gschemas/org.gnucash.warnings.gschema.xml.in:207 msgid "Commit changes to a transaction" msgstr "Submeter alterações a uma transacção" -#: gnucash/gschemas/org.gnucash.warnings.gschema.xml.in:100 -#: gnucash/gschemas/org.gnucash.warnings.gschema.xml.in:198 +#: gnucash/gschemas/org.gnucash.warnings.gschema.xml.in:105 +#: gnucash/gschemas/org.gnucash.warnings.gschema.xml.in:208 msgid "" "This dialog is presented when you attempt to move out of a modified " "transaction. The changed data must be either saved or discarded." @@ -12960,6 +13009,7 @@ msgstr "Contas seleccionadas:" #: gnucash/gtkbuilder/assistant-csv-export.glade:339 #: gnucash/gtkbuilder/dialog-tax-info.glade:384 +#: gnucash/gtkbuilder/gnc-plugin-page-register.glade:764 msgid "0" msgstr "0" @@ -12969,7 +13019,7 @@ msgid "_Select Subaccounts" msgstr "_Seleccionar sub-contas" #: gnucash/gtkbuilder/assistant-csv-export.glade:388 -#: gnucash/gtkbuilder/gnc-plugin-page-register2.glade:575 +#: gnucash/gtkbuilder/gnc-plugin-page-register2.glade:622 #: gnucash/gtkbuilder/gnc-plugin-page-register.glade:466 msgid "Select _All" msgstr "Seleccionar _tudo" @@ -12989,13 +13039,13 @@ msgstr "Selecciona_r intervalo" #. Filter By Dialog, Date Tab, Start section #: gnucash/gtkbuilder/assistant-csv-export.glade:488 -#: gnucash/gtkbuilder/gnc-plugin-page-register2.glade:277 +#: gnucash/gtkbuilder/gnc-plugin-page-register2.glade:324 #: gnucash/gtkbuilder/gnc-plugin-page-register.glade:168 msgid "Start" msgstr "Início" #: gnucash/gtkbuilder/assistant-csv-export.glade:497 -#: gnucash/gtkbuilder/gnc-plugin-page-register2.glade:286 +#: gnucash/gtkbuilder/gnc-plugin-page-register2.glade:333 #: gnucash/gtkbuilder/gnc-plugin-page-register.glade:177 msgid "_Earliest" msgstr "Mais recent_e" @@ -13005,13 +13055,13 @@ msgid "Cho_ose Date" msgstr "Esc_olher data" #: gnucash/gtkbuilder/assistant-csv-export.glade:531 -#: gnucash/gtkbuilder/gnc-plugin-page-register2.glade:318 +#: gnucash/gtkbuilder/gnc-plugin-page-register2.glade:365 #: gnucash/gtkbuilder/gnc-plugin-page-register.glade:209 msgid "Toda_y" msgstr "_Hoje" #: gnucash/gtkbuilder/assistant-csv-export.glade:548 -#: gnucash/gtkbuilder/gnc-plugin-page-register2.glade:335 +#: gnucash/gtkbuilder/gnc-plugin-page-register2.glade:382 #: gnucash/gtkbuilder/gnc-plugin-page-register.glade:226 msgid "_Latest" msgstr "Ú_ltima" @@ -13020,19 +13070,19 @@ msgstr "Ú_ltima" #: gnucash/gtkbuilder/assistant-csv-export.glade:578 #: gnucash/gtkbuilder/dialog-fincalc.glade:601 #: gnucash/gtkbuilder/dialog-sx.glade:424 -#: gnucash/gtkbuilder/gnc-plugin-page-register2.glade:365 +#: gnucash/gtkbuilder/gnc-plugin-page-register2.glade:412 #: gnucash/gtkbuilder/gnc-plugin-page-register.glade:256 msgid "End" msgstr "Fim" #: gnucash/gtkbuilder/assistant-csv-export.glade:587 -#: gnucash/gtkbuilder/gnc-plugin-page-register2.glade:374 +#: gnucash/gtkbuilder/gnc-plugin-page-register2.glade:421 #: gnucash/gtkbuilder/gnc-plugin-page-register.glade:265 msgid "C_hoose Date" msgstr "Escol_her data" #: gnucash/gtkbuilder/assistant-csv-export.glade:604 -#: gnucash/gtkbuilder/gnc-plugin-page-register2.glade:391 +#: gnucash/gtkbuilder/gnc-plugin-page-register2.glade:438 #: gnucash/gtkbuilder/gnc-plugin-page-register.glade:282 msgid "_Today" msgstr "_Hoje" @@ -14498,13 +14548,12 @@ msgstr "Mont_ante:" #: gnucash/gtkbuilder/assistant-stock-split.glade:300 #: gnucash/gtkbuilder/dialog-print-check.glade:1129 -#: gnucash/gtkbuilder/gnc-plugin-page-register.glade:757 +#: gnucash/gtkbuilder/gnc-plugin-page-register.glade:956 msgid "_Memo" msgstr "_Memorando" #. Default memo text for the remains of a stock split #: gnucash/gtkbuilder/assistant-stock-split.glade:316 -#| msgid "Cash in Lieu" msgid "Cash in lieu" msgstr "Montante auferido" @@ -14587,8 +14636,8 @@ msgstr "Preferências" #. Preferences Dialog, General Tab #: gnucash/gtkbuilder/business-prefs.glade:55 -#: gnucash/gtkbuilder/dialog-preferences.glade:1264 -#: gnucash/gtkbuilder/dialog-preferences.glade:1950 +#: gnucash/gtkbuilder/dialog-preferences.glade:1381 +#: gnucash/gtkbuilder/dialog-preferences.glade:2067 msgid "General" msgstr "Geral" @@ -14934,20 +14983,32 @@ msgstr "" "Use Editar->Opções de relatório Impostos para definir a bandeira tax-related " "e atribuir um código de imposto a esta conta." -#: gnucash/gtkbuilder/dialog-account.glade:1543 +#: gnucash/gtkbuilder/dialog-account.glade:1509 +#, fuzzy +#| msgid "Opening Balance" +msgid "Opening balance" +msgstr "Saldo inicial" + +#: gnucash/gtkbuilder/dialog-account.glade:1513 +msgid "" +"This account holds opening balance transactions. Only one account per " +"commodity can hold opening balance transactions." +msgstr "" + +#: gnucash/gtkbuilder/dialog-account.glade:1560 msgid "Acco_unt Type" msgstr "T_ipo de conta" -#: gnucash/gtkbuilder/dialog-account.glade:1569 +#: gnucash/gtkbuilder/dialog-account.glade:1586 msgid "_Parent Account" msgstr "_Conta-mãe" -#: gnucash/gtkbuilder/dialog-account.glade:1649 -#: gnucash/gtkbuilder/dialog-preferences.glade:1893 +#: gnucash/gtkbuilder/dialog-account.glade:1666 +#: gnucash/gtkbuilder/dialog-preferences.glade:2010 #: gnucash/report/report-core.scm:77 #: gnucash/report/reports/standard/equity-statement.scm:108 #: gnucash/report/reports/standard/equity-statement.scm:112 -#: gnucash/report/reports/standard/register.scm:376 +#: gnucash/report/reports/standard/register.scm:347 #: gnucash/report/reports/standard/trial-balance.scm:185 #: gnucash/report/reports/standard/trial-balance.scm:189 #: gnucash/report/reports/standard/view-column.scm:50 @@ -14978,39 +15039,39 @@ msgstr "_Conta-mãe" msgid "General" msgstr "Geral" -#: gnucash/gtkbuilder/dialog-account.glade:1674 +#: gnucash/gtkbuilder/dialog-account.glade:1691 msgid "Balance Information" msgstr "Informação de saldo" -#: gnucash/gtkbuilder/dialog-account.glade:1688 +#: gnucash/gtkbuilder/dialog-account.glade:1705 msgid "Initial Balance Transfer" msgstr "Transferência de saldo inicial" -#: gnucash/gtkbuilder/dialog-account.glade:1755 +#: gnucash/gtkbuilder/dialog-account.glade:1772 msgid "_Use equity 'Opening Balances' account" msgstr "_Usar a conta \"Capital próprio\"" -#: gnucash/gtkbuilder/dialog-account.glade:1772 +#: gnucash/gtkbuilder/dialog-account.glade:1789 msgid "_Select transfer account" msgstr "_Seleccionar conta de transferência" -#: gnucash/gtkbuilder/dialog-account.glade:1883 +#: gnucash/gtkbuilder/dialog-account.glade:1900 msgid "Renumber sub-accounts" msgstr "Renumerar sub-contas" -#: gnucash/gtkbuilder/dialog-account.glade:1916 +#: gnucash/gtkbuilder/dialog-account.glade:1933 msgid "_Renumber" msgstr "_Renumerar" -#: gnucash/gtkbuilder/dialog-account.glade:1948 +#: gnucash/gtkbuilder/dialog-account.glade:1965 msgid "Prefix" msgstr "Prefixo" -#: gnucash/gtkbuilder/dialog-account.glade:1986 +#: gnucash/gtkbuilder/dialog-account.glade:2003 msgid "Examples" msgstr "Exemplos" -#: gnucash/gtkbuilder/dialog-account.glade:1998 +#: gnucash/gtkbuilder/dialog-account.glade:2015 #: gnucash/report/reports/standard/balance-forecast.scm:42 msgid "Interval" msgstr "Intervalo" @@ -15024,7 +15085,7 @@ msgid "_Show documentation" msgstr "_Mostrar documentação" #: gnucash/gtkbuilder/dialog-account-picker.glade:50 -#: gnucash/gtkbuilder/gnc-plugin-page-register2.glade:511 +#: gnucash/gtkbuilder/gnc-plugin-page-register2.glade:558 #: gnucash/gtkbuilder/gnc-plugin-page-register.glade:402 msgid "_Reconciled" msgstr "_Reconciliada" @@ -16134,7 +16195,7 @@ msgid "Colors" msgstr "Cores" #: gnucash/gtkbuilder/dialog-import.glade:642 -#: gnucash/gtkbuilder/dialog-preferences.glade:2282 +#: gnucash/gtkbuilder/dialog-preferences.glade:2399 msgid "Actions" msgstr "Acções" @@ -16196,20 +16257,25 @@ msgstr "Lista de transacções transferidas (parcela origem mostrada)" #: gnucash/gtkbuilder/dialog-import.glade:929 #, fuzzy -msgid "Show the _Account column" +msgid "Show _Account column" msgstr "Mostrar a coluna Conta fonte" #: gnucash/gtkbuilder/dialog-import.glade:945 #, fuzzy +msgid "Show _Memo column" +msgstr "Mostrar a coluna Conta fonte" + +#: gnucash/gtkbuilder/dialog-import.glade:961 +#, fuzzy msgid "Show _matched information" msgstr "Informação do vale" -#: gnucash/gtkbuilder/dialog-import.glade:960 +#: gnucash/gtkbuilder/dialog-import.glade:976 #, fuzzy msgid "Reconcile after match" msgstr "Reconciliar correspondência (automático)" -#: gnucash/gtkbuilder/dialog-import.glade:983 +#: gnucash/gtkbuilder/dialog-import.glade:999 msgid "Generic import transaction matcher" msgstr "Comparador genérico de importação de transacções" @@ -16571,30 +16637,48 @@ msgstr "2015-07-31" msgid "Locale" msgstr "Regional" -#: gnucash/gtkbuilder/dialog-preferences.glade:125 +#: gnucash/gtkbuilder/dialog-preferences.glade:133 +#, fuzzy +#| msgid "_Resume" +msgid "_Reset" +msgstr "_Continuar" + +#: gnucash/gtkbuilder/dialog-preferences.glade:178 +#: gnucash/gtkbuilder/dialog-preferences.glade:579 +msgid "Separator Character" +msgstr "Carácter separador" + +#: gnucash/gtkbuilder/dialog-preferences.glade:204 +msgid "" +"Press 'Reset' to use the original account separator and close the preference " +"window\n" +"Press 'Close' to return to the preference window\n" +msgstr "" + +#: gnucash/gtkbuilder/dialog-preferences.glade:240 msgid "GnuCash Preferences" msgstr "Preferências do GnuCash" -#: gnucash/gtkbuilder/dialog-preferences.glade:198 +#: gnucash/gtkbuilder/dialog-preferences.glade:314 msgid "Summarybar Content" msgstr "Conteúdo da barra de sumário" -#: gnucash/gtkbuilder/dialog-preferences.glade:208 +#: gnucash/gtkbuilder/dialog-preferences.glade:324 msgid "Include _grand total" msgstr "Incluir total _geral" -#: gnucash/gtkbuilder/dialog-preferences.glade:214 +#: gnucash/gtkbuilder/dialog-preferences.glade:330 msgid "" "Show a grand total of all accounts converted to the default report currency." msgstr "" "Mostrar um total geral de todas as contas, convertido para a moeda " "predefinida." -#: gnucash/gtkbuilder/dialog-preferences.glade:226 +#: gnucash/gtkbuilder/dialog-preferences.glade:342 msgid "Include _non-currency totals" msgstr "Incluir totais de _não moeda" -#: gnucash/gtkbuilder/dialog-preferences.glade:232 +#: gnucash/gtkbuilder/dialog-preferences.glade:348 msgid "" "If checked, non-currency commodities will be shown in the summary bar. If " "clear, only currencies will be shown." @@ -16602,37 +16686,37 @@ msgstr "" "Se marcada, mercadorias não moeda serão mostradas na barra de sumário. Senão " "só são mostradas as moedas." -#: gnucash/gtkbuilder/dialog-preferences.glade:247 +#: gnucash/gtkbuilder/dialog-preferences.glade:363 msgid "Start Date" msgstr "Data inicial" -#: gnucash/gtkbuilder/dialog-preferences.glade:260 +#: gnucash/gtkbuilder/dialog-preferences.glade:376 msgid "End Date" msgstr "Data final" -#: gnucash/gtkbuilder/dialog-preferences.glade:270 +#: gnucash/gtkbuilder/dialog-preferences.glade:386 msgid "_Relative" msgstr "_Relativa" -#: gnucash/gtkbuilder/dialog-preferences.glade:276 +#: gnucash/gtkbuilder/dialog-preferences.glade:392 msgid "Use the specified relative starting date for profit/loss calculations." msgstr "" "Usar a data inicial relativa especificada para cálculo de lucros/perdas." -#: gnucash/gtkbuilder/dialog-preferences.glade:289 +#: gnucash/gtkbuilder/dialog-preferences.glade:405 msgid "_Absolute" msgstr "_Absoluta" -#: gnucash/gtkbuilder/dialog-preferences.glade:295 +#: gnucash/gtkbuilder/dialog-preferences.glade:411 msgid "Use the specified absolute starting date for profit/loss calculations." msgstr "" "Usar a data inicial absoluta especificada para cálculo de lucros/perdas." -#: gnucash/gtkbuilder/dialog-preferences.glade:308 +#: gnucash/gtkbuilder/dialog-preferences.glade:424 msgid "Re_lative" msgstr "Re_lativa" -#: gnucash/gtkbuilder/dialog-preferences.glade:314 +#: gnucash/gtkbuilder/dialog-preferences.glade:430 msgid "" "Use the specified relative ending date for profit/loss calculations. Also " "use this date for net assets calculations." @@ -16640,11 +16724,11 @@ msgstr "" "Usar a data final relativa especificada para cálculo de lucros/perdas. Usar " "esta data também para cálculo de activos líquidos." -#: gnucash/gtkbuilder/dialog-preferences.glade:327 +#: gnucash/gtkbuilder/dialog-preferences.glade:443 msgid "Ab_solute" msgstr "Ab_soluta" -#: gnucash/gtkbuilder/dialog-preferences.glade:333 +#: gnucash/gtkbuilder/dialog-preferences.glade:449 msgid "" "Use the specified absolute ending date for profit/loss calculations. Also " "use this date for net assets calculations." @@ -16652,82 +16736,78 @@ msgstr "" "Usar a data final absoluta especificada para cálculo de lucros/perdas. Usar " "esta data também para cálculo de activos líquidos." -#: gnucash/gtkbuilder/dialog-preferences.glade:444 +#: gnucash/gtkbuilder/dialog-preferences.glade:560 msgid "Accounting Period" msgstr "Período contabilístico" -#: gnucash/gtkbuilder/dialog-preferences.glade:462 -msgid "Separator Character" -msgstr "Carácter separador" - -#: gnucash/gtkbuilder/dialog-preferences.glade:472 +#: gnucash/gtkbuilder/dialog-preferences.glade:589 msgid "Use _formal accounting labels" msgstr "Usar rótulos contabilísticos _formais" -#: gnucash/gtkbuilder/dialog-preferences.glade:478 +#: gnucash/gtkbuilder/dialog-preferences.glade:595 msgid "Use only 'debit' and 'credit' instead of informal synonyms." msgstr "Usar só \"Débito\" e \"Crédito\" em vez de sinónimos informais." -#: gnucash/gtkbuilder/dialog-preferences.glade:493 +#: gnucash/gtkbuilder/dialog-preferences.glade:610 msgid "Labels" msgstr "Rótulos" -#: gnucash/gtkbuilder/dialog-preferences.glade:513 +#: gnucash/gtkbuilder/dialog-preferences.glade:630 #: gnucash/gtkbuilder/dialog-price.glade:447 msgid "_None" msgstr "_Nenhum" -#: gnucash/gtkbuilder/dialog-preferences.glade:532 +#: gnucash/gtkbuilder/dialog-preferences.glade:649 msgid "C_redit accounts" msgstr "Contas de c_rédito" -#: gnucash/gtkbuilder/dialog-preferences.glade:551 +#: gnucash/gtkbuilder/dialog-preferences.glade:668 msgid "_Income & expense" msgstr "_Receita & Despesa" -#: gnucash/gtkbuilder/dialog-preferences.glade:573 +#: gnucash/gtkbuilder/dialog-preferences.glade:690 msgid "Reverse Balanced Accounts" msgstr "Contas saldadas inversamente" -#: gnucash/gtkbuilder/dialog-preferences.glade:606 +#: gnucash/gtkbuilder/dialog-preferences.glade:723 msgid "Default Currency" msgstr "Moeda predefinida" -#: gnucash/gtkbuilder/dialog-preferences.glade:619 -#: gnucash/gtkbuilder/dialog-preferences.glade:2933 +#: gnucash/gtkbuilder/dialog-preferences.glade:736 +#: gnucash/gtkbuilder/dialog-preferences.glade:3050 msgid "US Dollars (USD)" msgstr "Dólares EUA (USD)" -#: gnucash/gtkbuilder/dialog-preferences.glade:642 +#: gnucash/gtkbuilder/dialog-preferences.glade:759 msgid "Character" msgstr "Carácter" -#: gnucash/gtkbuilder/dialog-preferences.glade:654 +#: gnucash/gtkbuilder/dialog-preferences.glade:771 #: gnucash/gtkbuilder/gnc-date-format.glade:206 msgid "Sample" msgstr "Exemplo" -#: gnucash/gtkbuilder/dialog-preferences.glade:679 +#: gnucash/gtkbuilder/dialog-preferences.glade:796 msgid "Account Color" msgstr "Cor da conta" -#: gnucash/gtkbuilder/dialog-preferences.glade:689 +#: gnucash/gtkbuilder/dialog-preferences.glade:806 msgid "Show the Account Color as background" msgstr "Mostrar a cor da conta como fundo" -#: gnucash/gtkbuilder/dialog-preferences.glade:695 +#: gnucash/gtkbuilder/dialog-preferences.glade:812 msgid "Show the Account Color as Account Name Background." msgstr "Mostrar a cor da conta como fundo do nome da conta." -#: gnucash/gtkbuilder/dialog-preferences.glade:717 +#: gnucash/gtkbuilder/dialog-preferences.glade:834 msgid "Show the Account Color on tabs" msgstr "Mostrar a cor da conta nos separadores" -#: gnucash/gtkbuilder/dialog-preferences.glade:723 +#: gnucash/gtkbuilder/dialog-preferences.glade:840 msgid "Show the Account Color as tab background." msgstr "Mostrar a cor da conta como fundo do separador." -#: gnucash/gtkbuilder/dialog-preferences.glade:756 +#: gnucash/gtkbuilder/dialog-preferences.glade:874 msgid "" "The character that will be used between components of an account name. A " "legal value is any single character except letters and numbers, or any of " @@ -16738,87 +16818,87 @@ msgstr "" "legais são letras e números únicos ou uma das seguintes cadeias: \"colon\", " "\"slash\", \"backslash\", \"dash\" e \"period\"." -#: gnucash/gtkbuilder/dialog-preferences.glade:777 -#: gnucash/gtkbuilder/dialog-preferences.glade:3032 +#: gnucash/gtkbuilder/dialog-preferences.glade:894 +#: gnucash/gtkbuilder/dialog-preferences.glade:3149 msgid "Ch_oose" msgstr "Esc_olha" -#: gnucash/gtkbuilder/dialog-preferences.glade:797 -#: gnucash/gtkbuilder/dialog-preferences.glade:3052 +#: gnucash/gtkbuilder/dialog-preferences.glade:914 +#: gnucash/gtkbuilder/dialog-preferences.glade:3169 msgid "Loc_ale" msgstr "Region_al" -#: gnucash/gtkbuilder/dialog-preferences.glade:881 +#: gnucash/gtkbuilder/dialog-preferences.glade:998 msgid "Fancy Date Format" msgstr "Formato de data elegante" -#: gnucash/gtkbuilder/dialog-preferences.glade:904 +#: gnucash/gtkbuilder/dialog-preferences.glade:1021 msgid "Date Format" msgstr "Formato de data" -#: gnucash/gtkbuilder/dialog-preferences.glade:917 +#: gnucash/gtkbuilder/dialog-preferences.glade:1034 msgid "Time Format" msgstr "Formato de hora" -#: gnucash/gtkbuilder/dialog-preferences.glade:937 +#: gnucash/gtkbuilder/dialog-preferences.glade:1054 msgid "U_se 24-hour clock" msgstr "U_sar horas em formato 24h" -#: gnucash/gtkbuilder/dialog-preferences.glade:943 +#: gnucash/gtkbuilder/dialog-preferences.glade:1060 msgid "Use a 24 hour (instead of a 12 hour) time format." msgstr "Usar um formato 24 horas (em vez de 12 horas)." -#: gnucash/gtkbuilder/dialog-preferences.glade:958 +#: gnucash/gtkbuilder/dialog-preferences.glade:1075 msgid "Date Completion" msgstr "Conclusão de datas" -#: gnucash/gtkbuilder/dialog-preferences.glade:971 +#: gnucash/gtkbuilder/dialog-preferences.glade:1088 #, fuzzy msgid "When a date is entered without year, it should be taken" msgstr "Quando uma data é inserida sem ano, deve ser:" -#: gnucash/gtkbuilder/dialog-preferences.glade:987 +#: gnucash/gtkbuilder/dialog-preferences.glade:1104 msgid "" "Dates will be completed so that they are within the current calendar year." msgstr "completada com o ano de calendário actual." -#: gnucash/gtkbuilder/dialog-preferences.glade:1000 +#: gnucash/gtkbuilder/dialog-preferences.glade:1117 #, fuzzy msgid "" "In a sliding 12-month window starting this\n" "many months before the current month" msgstr "escolhida numa janela começando este número de meses atrás" -#: gnucash/gtkbuilder/dialog-preferences.glade:1024 +#: gnucash/gtkbuilder/dialog-preferences.glade:1141 msgid "Enter number of months." msgstr "Insira o número de meses." -#: gnucash/gtkbuilder/dialog-preferences.glade:1045 +#: gnucash/gtkbuilder/dialog-preferences.glade:1162 msgid "Use the date format specified by the system locale." msgstr "Usar o formato de data especificado pela configuração regional." -#: gnucash/gtkbuilder/dialog-preferences.glade:1071 +#: gnucash/gtkbuilder/dialog-preferences.glade:1188 msgid "Numbers" msgstr "Números" -#: gnucash/gtkbuilder/dialog-preferences.glade:1081 +#: gnucash/gtkbuilder/dialog-preferences.glade:1198 #, fuzzy msgid "Force P_rices to display as decimals" msgstr "Fo_rçar amostragem de cotações em decimais." -#: gnucash/gtkbuilder/dialog-preferences.glade:1099 +#: gnucash/gtkbuilder/dialog-preferences.glade:1216 msgid "Display ne_gative amounts in red" msgstr "Mostrar montantes ne_gativos a vermelho" -#: gnucash/gtkbuilder/dialog-preferences.glade:1105 +#: gnucash/gtkbuilder/dialog-preferences.glade:1222 msgid "Display negative amounts in red." msgstr "Mostrar montantes negativos a vermelho." -#: gnucash/gtkbuilder/dialog-preferences.glade:1117 +#: gnucash/gtkbuilder/dialog-preferences.glade:1234 msgid "_Automatic decimal point" msgstr "Separador decimal _automático" -#: gnucash/gtkbuilder/dialog-preferences.glade:1123 +#: gnucash/gtkbuilder/dialog-preferences.glade:1240 msgid "" "Automatically insert a decimal point into values that are entered without " "one." @@ -16826,104 +16906,104 @@ msgstr "" "Inserir automaticamente um separador decimal em valores que são introduzidos " "sem um." -#: gnucash/gtkbuilder/dialog-preferences.glade:1138 +#: gnucash/gtkbuilder/dialog-preferences.glade:1255 #, fuzzy msgid "_Decimal places" msgstr "Casas _decimais:" -#: gnucash/gtkbuilder/dialog-preferences.glade:1153 +#: gnucash/gtkbuilder/dialog-preferences.glade:1270 msgid "How many automatic decimal places will be filled in." msgstr "Quantas casas decimais deverão ser automaticamente preenchidas." -#: gnucash/gtkbuilder/dialog-preferences.glade:1155 +#: gnucash/gtkbuilder/dialog-preferences.glade:1272 msgid "2" msgstr "" -#: gnucash/gtkbuilder/dialog-preferences.glade:1245 +#: gnucash/gtkbuilder/dialog-preferences.glade:1362 msgid "Numbers, Date, Time" msgstr "" -#: gnucash/gtkbuilder/dialog-preferences.glade:1274 +#: gnucash/gtkbuilder/dialog-preferences.glade:1391 msgid "Perform account list _setup on new file" msgstr "Configurar árvore de conta_s em ficheiro novo" -#: gnucash/gtkbuilder/dialog-preferences.glade:1280 +#: gnucash/gtkbuilder/dialog-preferences.glade:1397 msgid "Present the new account list dialog when you choose File->New File." msgstr "" "Mostrar o diálogo de nova lista de contas quando escolhe Ficheiro->Novo " "ficheiro." -#: gnucash/gtkbuilder/dialog-preferences.glade:1311 +#: gnucash/gtkbuilder/dialog-preferences.glade:1428 msgid "Display \"_tip of the day\" dialog" msgstr "Mos_trar diálogo Dica do dia" -#: gnucash/gtkbuilder/dialog-preferences.glade:1317 +#: gnucash/gtkbuilder/dialog-preferences.glade:1434 msgid "Display hints for using GnuCash at startup." msgstr "Mostrar dicas para a utilização do GnuCash no arranque." -#: gnucash/gtkbuilder/dialog-preferences.glade:1338 +#: gnucash/gtkbuilder/dialog-preferences.glade:1455 msgid "How many days to keep old log/backup files." msgstr "Quantos dias manter ficheiros de diário/segurança." -#: gnucash/gtkbuilder/dialog-preferences.glade:1357 +#: gnucash/gtkbuilder/dialog-preferences.glade:1474 #: gnucash/gtkbuilder/dialog-sx.glade:619 #: gnucash/gtkbuilder/dialog-sx.glade:658 msgid "days" msgstr "dias" -#: gnucash/gtkbuilder/dialog-preferences.glade:1376 +#: gnucash/gtkbuilder/dialog-preferences.glade:1493 #, fuzzy msgid "_Retain log/backup files" msgstr "_Reter diários/seguranças:" -#: gnucash/gtkbuilder/dialog-preferences.glade:1388 +#: gnucash/gtkbuilder/dialog-preferences.glade:1505 msgid "Com_press files" msgstr "Com_primir ficheiros" -#: gnucash/gtkbuilder/dialog-preferences.glade:1394 +#: gnucash/gtkbuilder/dialog-preferences.glade:1511 msgid "Compress the data file with gzip when saving it to disk." msgstr "Comprimir o ficheiro de dados com gzip ao gravar em disco." -#: gnucash/gtkbuilder/dialog-preferences.glade:1409 +#: gnucash/gtkbuilder/dialog-preferences.glade:1526 msgid "Files" msgstr "Ficheiros" -#: gnucash/gtkbuilder/dialog-preferences.glade:1442 +#: gnucash/gtkbuilder/dialog-preferences.glade:1559 msgid "Search Dialog" msgstr "Diálogo de procura" -#: gnucash/gtkbuilder/dialog-preferences.glade:1455 +#: gnucash/gtkbuilder/dialog-preferences.glade:1572 #, fuzzy msgid "New search _limit" msgstr "_Limite de nova procura" -#: gnucash/gtkbuilder/dialog-preferences.glade:1470 +#: gnucash/gtkbuilder/dialog-preferences.glade:1587 msgid "Default to 'new search' if fewer than this number of items is returned." msgstr "" "Predefinição para nova procura se forem devolvidos menos itens que este " "número." -#: gnucash/gtkbuilder/dialog-preferences.glade:1486 +#: gnucash/gtkbuilder/dialog-preferences.glade:1603 msgid "Show splash scree_n" msgstr "_Mostrar ecrã de logótipo" -#: gnucash/gtkbuilder/dialog-preferences.glade:1492 +#: gnucash/gtkbuilder/dialog-preferences.glade:1609 msgid "Show splash screen at startup." msgstr "Mostrar ecrã de logótipo no arranque." -#: gnucash/gtkbuilder/dialog-preferences.glade:1507 +#: gnucash/gtkbuilder/dialog-preferences.glade:1624 msgid "Auto-save time _interval" msgstr "_Intervalo de gravação automática" -#: gnucash/gtkbuilder/dialog-preferences.glade:1546 +#: gnucash/gtkbuilder/dialog-preferences.glade:1663 msgid "minutes" msgstr "minutos" -#: gnucash/gtkbuilder/dialog-preferences.glade:1562 +#: gnucash/gtkbuilder/dialog-preferences.glade:1679 msgid "Show auto-save confirmation _question" msgstr "Mostrar _confirmação de gravação automática" -#: gnucash/gtkbuilder/dialog-preferences.glade:1568 +#: gnucash/gtkbuilder/dialog-preferences.glade:1685 msgid "" "If active, GnuCash shows a confirmation question each time the auto-save " "feature is started. Otherwise no extra explanation is shown." @@ -16932,40 +17012,40 @@ msgstr "" "funcionalidade de gravação automática é mostrada. Senão, não é mostrada " "nenhuma explicação." -#: gnucash/gtkbuilder/dialog-preferences.glade:1608 +#: gnucash/gtkbuilder/dialog-preferences.glade:1725 #: gnucash/gtkbuilder/dialog-sx.glade:1208 #, fuzzy msgid "For" msgstr "Formulário" -#: gnucash/gtkbuilder/dialog-preferences.glade:1626 +#: gnucash/gtkbuilder/dialog-preferences.glade:1743 #: gnucash/gtkbuilder/dialog-sx.glade:1176 msgid "Forever" msgstr "Para sempre" -#: gnucash/gtkbuilder/dialog-preferences.glade:1665 +#: gnucash/gtkbuilder/dialog-preferences.glade:1782 msgid "Time to _wait for answer" msgstr "Tempo de espera da _resposta" -#: gnucash/gtkbuilder/dialog-preferences.glade:1702 +#: gnucash/gtkbuilder/dialog-preferences.glade:1819 msgid "seconds" msgstr "segundos" -#: gnucash/gtkbuilder/dialog-preferences.glade:1730 +#: gnucash/gtkbuilder/dialog-preferences.glade:1847 #, fuzzy msgid "Path head for Linked File Relative Paths" msgstr "Caminho para ficheiros associados à transacção " -#: gnucash/gtkbuilder/dialog-preferences.glade:1748 +#: gnucash/gtkbuilder/dialog-preferences.glade:1865 #, fuzzy msgid "Path head for Linked Files Relative Paths" msgstr "Caminho para os ficheiros é, " -#: gnucash/gtkbuilder/dialog-preferences.glade:1777 +#: gnucash/gtkbuilder/dialog-preferences.glade:1894 msgid "Enable horizontal grid lines on table displays" msgstr "Activar linhas de grelha horizontais em vistas de tabela" -#: gnucash/gtkbuilder/dialog-preferences.glade:1781 +#: gnucash/gtkbuilder/dialog-preferences.glade:1898 msgid "" "Enable horizontal grid lines on table displays. These will mainly be tree " "views like the Accounts page." @@ -16973,11 +17053,11 @@ msgstr "" "Activar linhas de grelha horizontais em vistas de tabela. Maioritariamente " "em árvores, tais como a página de contas." -#: gnucash/gtkbuilder/dialog-preferences.glade:1794 +#: gnucash/gtkbuilder/dialog-preferences.glade:1911 msgid "Enable vertical grid lines on table displays" msgstr "Activar linhas de grelha verticais em vistas de tabela" -#: gnucash/gtkbuilder/dialog-preferences.glade:1798 +#: gnucash/gtkbuilder/dialog-preferences.glade:1915 msgid "" "Enable vertical grid lines on table displays. These will mainly be tree " "views like the Accounts page." @@ -16985,23 +17065,23 @@ msgstr "" "Activar linhas de grelha verticais em vistas de tabela. Maioritariamente em " "árvores, tais como a página de contas." -#: gnucash/gtkbuilder/dialog-preferences.glade:1814 +#: gnucash/gtkbuilder/dialog-preferences.glade:1931 #, fuzzy #| msgid "Files" msgid "Linked Files" msgstr "Ficheiros" #. Preferences->Online Banking:Generic -#: gnucash/gtkbuilder/dialog-preferences.glade:1909 +#: gnucash/gtkbuilder/dialog-preferences.glade:2026 msgid "Enable skip transaction action" msgstr "Activar acção de salto de transacções" #. Preferences->Online Banking:Generic -#: gnucash/gtkbuilder/dialog-preferences.glade:1928 +#: gnucash/gtkbuilder/dialog-preferences.glade:2045 msgid "Enable update match action" msgstr "Activar acção de actualização de comparação" -#: gnucash/gtkbuilder/dialog-preferences.glade:1965 +#: gnucash/gtkbuilder/dialog-preferences.glade:2082 msgid "" "In some places commercial ATMs (not belonging to a financial institution) " "are installed in places like convenience stores. These ATMs add their fee " @@ -17021,11 +17101,11 @@ msgstr "" "sua área (em unidades da sua moeda local), para que a transacção seja " "reconhecida como correspondente." -#: gnucash/gtkbuilder/dialog-preferences.glade:1967 +#: gnucash/gtkbuilder/dialog-preferences.glade:2084 msgid "2,00" msgstr "" -#: gnucash/gtkbuilder/dialog-preferences.glade:1988 +#: gnucash/gtkbuilder/dialog-preferences.glade:2105 msgid "" "A transaction whose best match's score is in the green zone (above or equal " "to the Auto-CLEAR threshold) will be CLEARed by default." @@ -17033,7 +17113,7 @@ msgstr "" "Uma transacção cuja comparação está na zona verde (acima ou igual ao limite " "de confirmação automática) será CONFIRMADA por predefinição." -#: gnucash/gtkbuilder/dialog-preferences.glade:2010 +#: gnucash/gtkbuilder/dialog-preferences.glade:2127 msgid "" "A transaction whose best match's score is in the red zone (above the display " "threshold but below or equal to the Auto-ADD threshold) will be ADDed by " @@ -17043,7 +17123,7 @@ msgstr "" "exibição mas abaixo ou igual ao limite de adição automática) será ADICIONADA " "por predefinição." -#: gnucash/gtkbuilder/dialog-preferences.glade:2032 +#: gnucash/gtkbuilder/dialog-preferences.glade:2149 msgid "" "The minimum score a potential match must have to be displayed in the match " "list." @@ -17052,75 +17132,75 @@ msgstr "" "de comparações." #. Preferences->Online Banking:Generic -#: gnucash/gtkbuilder/dialog-preferences.glade:2053 +#: gnucash/gtkbuilder/dialog-preferences.glade:2170 msgid "Commercial ATM _fees threshold" msgstr "Limite de _taxas de ATMs comerciais" #. Preferences->Online Banking:Generic -#: gnucash/gtkbuilder/dialog-preferences.glade:2067 +#: gnucash/gtkbuilder/dialog-preferences.glade:2184 msgid "Auto-c_lear threshold" msgstr "_Limite de confirmação automática" #. Preferences->Online Banking:Generic -#: gnucash/gtkbuilder/dialog-preferences.glade:2081 +#: gnucash/gtkbuilder/dialog-preferences.glade:2198 msgid "Auto-_add threshold" msgstr "Limite de _adição automática" #. Preferences->Online Banking:Generic -#: gnucash/gtkbuilder/dialog-preferences.glade:2095 +#: gnucash/gtkbuilder/dialog-preferences.glade:2212 msgid "Match _display threshold" msgstr "Comparar limite de _exibição" #. Preferences->Online Banking:Generic -#: gnucash/gtkbuilder/dialog-preferences.glade:2106 +#: gnucash/gtkbuilder/dialog-preferences.glade:2223 msgid "Use _bayesian matching" msgstr "Usar comparação _bayesiana" -#: gnucash/gtkbuilder/dialog-preferences.glade:2112 +#: gnucash/gtkbuilder/dialog-preferences.glade:2229 msgid "" "Use bayesian algorithms to match new transactions with existing accounts." msgstr "" "Usar algoritmos bayesianos para comparar novas transacções com contas " "existentes." -#: gnucash/gtkbuilder/dialog-preferences.glade:2170 +#: gnucash/gtkbuilder/dialog-preferences.glade:2287 msgid "Checks" msgstr "Cheques" -#: gnucash/gtkbuilder/dialog-preferences.glade:2185 +#: gnucash/gtkbuilder/dialog-preferences.glade:2302 msgid "The default check printing font." msgstr "A letra predefinida para imprimir cheques." -#: gnucash/gtkbuilder/dialog-preferences.glade:2195 +#: gnucash/gtkbuilder/dialog-preferences.glade:2312 msgid "Print _date format" msgstr "Imprimir formato da _data" -#: gnucash/gtkbuilder/dialog-preferences.glade:2201 +#: gnucash/gtkbuilder/dialog-preferences.glade:2318 msgid "Below the actual date, print the format of that date in 8 point type." msgstr "" "Abaixo da data actual, imprimir o formato da data num tipo de 8 pontos." -#: gnucash/gtkbuilder/dialog-preferences.glade:2213 +#: gnucash/gtkbuilder/dialog-preferences.glade:2330 msgid "Print _blocking chars" msgstr "Imprimir caracteres de _bloqueio" -#: gnucash/gtkbuilder/dialog-preferences.glade:2219 +#: gnucash/gtkbuilder/dialog-preferences.glade:2336 msgid "Print '***' before and after each text field on the check." msgstr "Imprimir \"***\" antes e depois de cada campo de texto no cheque." -#: gnucash/gtkbuilder/dialog-preferences.glade:2234 +#: gnucash/gtkbuilder/dialog-preferences.glade:2351 msgid "Default _font" msgstr "Letra prede_finida" -#: gnucash/gtkbuilder/dialog-preferences.glade:2263 +#: gnucash/gtkbuilder/dialog-preferences.glade:2380 msgid "Printing" msgstr "Impressão" -#: gnucash/gtkbuilder/dialog-preferences.glade:2292 +#: gnucash/gtkbuilder/dialog-preferences.glade:2409 msgid "'_Enter' moves to blank transaction" msgstr "\"_Enter\" move para uma transacção em branco" -#: gnucash/gtkbuilder/dialog-preferences.glade:2298 +#: gnucash/gtkbuilder/dialog-preferences.glade:2415 msgid "" "If checked, pressing the 'Enter' key will move to the location of the blank " "transaction in the register. If clear, pressing the 'Enter' key will move " @@ -17129,45 +17209,45 @@ msgstr "" "Se activa, premir Enter move para a transacção em branco no final do diário. " "Senão, premir Enter move uma linha para baixo." -#: gnucash/gtkbuilder/dialog-preferences.glade:2310 +#: gnucash/gtkbuilder/dialog-preferences.glade:2427 msgid "_Auto-raise lists" msgstr "Mostrar listas _automaticamente" -#: gnucash/gtkbuilder/dialog-preferences.glade:2316 +#: gnucash/gtkbuilder/dialog-preferences.glade:2433 msgid "Automatically raise the list of accounts or actions during input." msgstr "" "Mostrar automaticamente a lista de contas ou acções durante a inserção." -#: gnucash/gtkbuilder/dialog-preferences.glade:2328 +#: gnucash/gtkbuilder/dialog-preferences.glade:2445 msgid "Tab order in_cludes Transfer on Memorised Transactions" msgstr "" "Ordem dos separadores in_clui Transferência nas transacções memorizadas" -#: gnucash/gtkbuilder/dialog-preferences.glade:2334 +#: gnucash/gtkbuilder/dialog-preferences.glade:2451 msgid "Move to Transfer field when memorised transaction auto filled." msgstr "" "Mover para o campo Transferência quando a transacção memorizada é preenchida " "automaticamente." -#: gnucash/gtkbuilder/dialog-preferences.glade:2359 +#: gnucash/gtkbuilder/dialog-preferences.glade:2476 msgid "Reconciling" msgstr "Reconciliação" -#: gnucash/gtkbuilder/dialog-preferences.glade:2369 +#: gnucash/gtkbuilder/dialog-preferences.glade:2486 msgid "Check cleared _transactions" msgstr "Marcar _transacções confirmadas" -#: gnucash/gtkbuilder/dialog-preferences.glade:2375 +#: gnucash/gtkbuilder/dialog-preferences.glade:2492 msgid "Pre-check cleared transactions when creating a reconcile dialog." msgstr "" "Marcar automaticamente transacções confirmadas ao abrir um diálogo de " "reconciliação." -#: gnucash/gtkbuilder/dialog-preferences.glade:2387 +#: gnucash/gtkbuilder/dialog-preferences.glade:2504 msgid "Automatic credit card _payment" msgstr "_Pagamentos automáticos de cartão de crédito" -#: gnucash/gtkbuilder/dialog-preferences.glade:2393 +#: gnucash/gtkbuilder/dialog-preferences.glade:2510 msgid "" "After reconciling a credit card statement, prompt the user to enter a credit " "card payment." @@ -17175,11 +17255,11 @@ msgstr "" "Após reconciliar um extracto de cartão de crédito, pedir ao utilizador para " "inserir um pagamento de cartão de crédito." -#: gnucash/gtkbuilder/dialog-preferences.glade:2405 +#: gnucash/gtkbuilder/dialog-preferences.glade:2522 msgid "Always reconcile to t_oday" msgstr "Reconciliar sempre _hoje" -#: gnucash/gtkbuilder/dialog-preferences.glade:2411 +#: gnucash/gtkbuilder/dialog-preferences.glade:2528 msgid "" "Always open the reconcile dialog using today's date for the statement date, " "regardless of previous reconciliations." @@ -17187,15 +17267,15 @@ msgstr "" "Abrir sempre o diálogo de reconciliação usando a data de hoje como data da " "declaração, independentemente de reconciliações anteriores." -#: gnucash/gtkbuilder/dialog-preferences.glade:2436 +#: gnucash/gtkbuilder/dialog-preferences.glade:2553 msgid "Graphics" msgstr "Gráficos" -#: gnucash/gtkbuilder/dialog-preferences.glade:2446 +#: gnucash/gtkbuilder/dialog-preferences.glade:2563 msgid "_Use GnuCash built-in color theme" msgstr "_Usar o tema de cor interno do GnuCash" -#: gnucash/gtkbuilder/dialog-preferences.glade:2452 +#: gnucash/gtkbuilder/dialog-preferences.glade:2569 msgid "" "GnuCash uses a yellow/green theme by default for register windows. Uncheck " "this if you want to use the system color theme instead." @@ -17203,11 +17283,11 @@ msgstr "" "O GnuCash usa um tema amarelo e verde predefinido para janelas de diários. " "Desmarque esta opção se quiser o tema de cores do sistema." -#: gnucash/gtkbuilder/dialog-preferences.glade:2464 +#: gnucash/gtkbuilder/dialog-preferences.glade:2581 msgid "Double _mode colors alternate with transactions" msgstr "Cores de _modo duplo alternam entre transacções" -#: gnucash/gtkbuilder/dialog-preferences.glade:2470 +#: gnucash/gtkbuilder/dialog-preferences.glade:2587 msgid "" "Alternate the primary and secondary colors by transaction instead of by " "alternating by row." @@ -17215,31 +17295,31 @@ msgstr "" "Alternar as cores primária e secundária entre cada transacção, não entre " "cada linha." -#: gnucash/gtkbuilder/dialog-preferences.glade:2482 +#: gnucash/gtkbuilder/dialog-preferences.glade:2599 msgid "Draw hori_zontal lines between rows" msgstr "Desenhar linhas _horizontais entre linhas" -#: gnucash/gtkbuilder/dialog-preferences.glade:2488 +#: gnucash/gtkbuilder/dialog-preferences.glade:2605 msgid "Show horizontal borders on the cells." msgstr "Mostrar contornos horizontais nas células." -#: gnucash/gtkbuilder/dialog-preferences.glade:2500 +#: gnucash/gtkbuilder/dialog-preferences.glade:2617 msgid "Draw _vertical lines between columns" msgstr "Desenhar linhas _verticais entre colunas" -#: gnucash/gtkbuilder/dialog-preferences.glade:2506 +#: gnucash/gtkbuilder/dialog-preferences.glade:2623 msgid "Show vertical borders on the cells." msgstr "Mostrar contornos verticais nas células." -#: gnucash/gtkbuilder/dialog-preferences.glade:2531 +#: gnucash/gtkbuilder/dialog-preferences.glade:2648 msgid "Layout" msgstr "Disposição" -#: gnucash/gtkbuilder/dialog-preferences.glade:2541 +#: gnucash/gtkbuilder/dialog-preferences.glade:2658 msgid "_Future transactions after blank transaction" msgstr "Transacções _futuras após o registo em branco" -#: gnucash/gtkbuilder/dialog-preferences.glade:2547 +#: gnucash/gtkbuilder/dialog-preferences.glade:2664 msgid "" "If checked, transactions with a date in the future will be displayed at the " "bottom of the register after the blank transaction. If clear, the blank " @@ -17249,31 +17329,31 @@ msgstr "" "diário, abaixo da transacção em branco. Se não a transacção em branco é a " "última no final do diário." -#: gnucash/gtkbuilder/dialog-preferences.glade:2586 +#: gnucash/gtkbuilder/dialog-preferences.glade:2703 msgid "Default Style" msgstr "Estilo predefinido" -#: gnucash/gtkbuilder/dialog-preferences.glade:2609 +#: gnucash/gtkbuilder/dialog-preferences.glade:2726 msgid "Other Defaults" msgstr "Outras predefinições" -#: gnucash/gtkbuilder/dialog-preferences.glade:2619 +#: gnucash/gtkbuilder/dialog-preferences.glade:2736 msgid "_Basic ledger" msgstr "Razão _básico" -#: gnucash/gtkbuilder/dialog-preferences.glade:2638 +#: gnucash/gtkbuilder/dialog-preferences.glade:2755 msgid "_Auto-split ledger" msgstr "Razão de parcelas _automáticas" -#: gnucash/gtkbuilder/dialog-preferences.glade:2679 +#: gnucash/gtkbuilder/dialog-preferences.glade:2796 msgid "Number of _transactions" msgstr "Número de _transacções" -#: gnucash/gtkbuilder/dialog-preferences.glade:2712 +#: gnucash/gtkbuilder/dialog-preferences.glade:2829 msgid "_Double line mode" msgstr "Modo de linha _dupla" -#: gnucash/gtkbuilder/dialog-preferences.glade:2718 +#: gnucash/gtkbuilder/dialog-preferences.glade:2835 msgid "" "Show two lines of information for each transaction instead of one. Does not " "affect expanded transactions." @@ -17281,11 +17361,11 @@ msgstr "" "Mostrar duas linhas de informação para cada transacção em vez de uma. Não " "afecta transacções expandidas." -#: gnucash/gtkbuilder/dialog-preferences.glade:2730 +#: gnucash/gtkbuilder/dialog-preferences.glade:2847 msgid "Register opens in a new _window" msgstr "Diário abre numa nova _janela" -#: gnucash/gtkbuilder/dialog-preferences.glade:2736 +#: gnucash/gtkbuilder/dialog-preferences.glade:2853 msgid "" "If checked, each register will be opened in its own top level window. If " "clear, the register will be opened in the current window." @@ -17293,11 +17373,11 @@ msgstr "" "Se marcada, o diário abre numa janela de topo própria. Senão, o diário abre " "na janela actual." -#: gnucash/gtkbuilder/dialog-preferences.glade:2748 +#: gnucash/gtkbuilder/dialog-preferences.glade:2865 msgid "_Only display leaf account names" msgstr "Mostrar só nomes de conta _finais" -#: gnucash/gtkbuilder/dialog-preferences.glade:2754 +#: gnucash/gtkbuilder/dialog-preferences.glade:2871 msgid "" "If checked, only the names of the leaf accounts are displayed in the " "register and in the account selection popup. The default behaviour is to " @@ -17310,47 +17390,47 @@ msgstr "" "implica usar só nomes finais." #. Register2 feature -#: gnucash/gtkbuilder/dialog-preferences.glade:2769 +#: gnucash/gtkbuilder/dialog-preferences.glade:2886 msgid "Number of _characters for auto complete" msgstr "Número de caracteres para _conclusão automática" #. Register2 feature -#: gnucash/gtkbuilder/dialog-preferences.glade:2803 +#: gnucash/gtkbuilder/dialog-preferences.glade:2920 msgid "Show the _entered and reconcile dates" msgstr "Mostrar as datas de _entrada e reconciliação" #. Register2 feature -#: gnucash/gtkbuilder/dialog-preferences.glade:2819 +#: gnucash/gtkbuilder/dialog-preferences.glade:2936 msgid "Show the calendar b_uttons" msgstr "_Mostrar botões de calendário" #. Register2 feature -#: gnucash/gtkbuilder/dialog-preferences.glade:2835 +#: gnucash/gtkbuilder/dialog-preferences.glade:2952 msgid "_Move the selection to the blank split on expand" msgstr "_Mover a selecção para a parcela em branco ao expandir" #. Register2 feature -#: gnucash/gtkbuilder/dialog-preferences.glade:2851 +#: gnucash/gtkbuilder/dialog-preferences.glade:2968 msgid "_Show entered and reconciled dates on selection" msgstr "Mo_strar datas entradas e reconciliadas ao seleccionar" -#: gnucash/gtkbuilder/dialog-preferences.glade:2914 +#: gnucash/gtkbuilder/dialog-preferences.glade:3031 msgid "Register Defaults" msgstr "Predefinições do diário" -#: gnucash/gtkbuilder/dialog-preferences.glade:2945 +#: gnucash/gtkbuilder/dialog-preferences.glade:3062 msgid "Default Report Currency" msgstr "Moeda predefinida de relatórios" -#: gnucash/gtkbuilder/dialog-preferences.glade:2968 +#: gnucash/gtkbuilder/dialog-preferences.glade:3085 msgid "Location" msgstr "Localização" -#: gnucash/gtkbuilder/dialog-preferences.glade:2978 +#: gnucash/gtkbuilder/dialog-preferences.glade:3095 msgid "Report opens in a new _window" msgstr "Relatório abre numa nova _janela" -#: gnucash/gtkbuilder/dialog-preferences.glade:2984 +#: gnucash/gtkbuilder/dialog-preferences.glade:3101 msgid "" "If checked, each report will be opened in its own top level window. If " "clear, the report will be opened in the current window." @@ -17358,73 +17438,73 @@ msgstr "" "Se marcada, cada relatório será aberto na sua própria janela de topo. Senão, " "será aberto na janela actual." -#: gnucash/gtkbuilder/dialog-preferences.glade:3012 +#: gnucash/gtkbuilder/dialog-preferences.glade:3129 msgid "Default zoom level" msgstr "Ampliação predefinida" -#: gnucash/gtkbuilder/dialog-preferences.glade:3090 +#: gnucash/gtkbuilder/dialog-preferences.glade:3207 #, fuzzy msgid "Default zoom level" msgstr "Ampliação predefinida" -#: gnucash/gtkbuilder/dialog-preferences.glade:3125 +#: gnucash/gtkbuilder/dialog-preferences.glade:3242 msgid "Reports" msgstr "Relatórios" -#: gnucash/gtkbuilder/dialog-preferences.glade:3144 +#: gnucash/gtkbuilder/dialog-preferences.glade:3261 msgid "Window Geometry" msgstr "Geometria da janela" -#: gnucash/gtkbuilder/dialog-preferences.glade:3164 +#: gnucash/gtkbuilder/dialog-preferences.glade:3281 msgid "_Save window size and position" msgstr "_Gravar posição e tamanho da janela." -#: gnucash/gtkbuilder/dialog-preferences.glade:3170 +#: gnucash/gtkbuilder/dialog-preferences.glade:3287 msgid "Save window size and location when it is closed." msgstr "Gravar posição e tamanho da janela quando é fechada." -#: gnucash/gtkbuilder/dialog-preferences.glade:3183 +#: gnucash/gtkbuilder/dialog-preferences.glade:3300 msgid "Bring the most _recent tab to the front" msgstr "Trazer o separador mais _recente para a frente" -#: gnucash/gtkbuilder/dialog-preferences.glade:3215 +#: gnucash/gtkbuilder/dialog-preferences.glade:3332 msgid "Tab Position" msgstr "Posição do separador" -#: gnucash/gtkbuilder/dialog-preferences.glade:3225 +#: gnucash/gtkbuilder/dialog-preferences.glade:3342 msgid "To_p" msgstr "To_po" -#: gnucash/gtkbuilder/dialog-preferences.glade:3244 +#: gnucash/gtkbuilder/dialog-preferences.glade:3361 msgid "B_ottom" msgstr "_Fundo" -#: gnucash/gtkbuilder/dialog-preferences.glade:3263 +#: gnucash/gtkbuilder/dialog-preferences.glade:3380 msgid "_Left" msgstr "_Esquerda" -#: gnucash/gtkbuilder/dialog-preferences.glade:3282 +#: gnucash/gtkbuilder/dialog-preferences.glade:3399 msgid "_Right" msgstr "_Direita" -#: gnucash/gtkbuilder/dialog-preferences.glade:3304 +#: gnucash/gtkbuilder/dialog-preferences.glade:3421 msgid "Summary Bar Position" msgstr "Posição da barra de sumário" -#: gnucash/gtkbuilder/dialog-preferences.glade:3333 +#: gnucash/gtkbuilder/dialog-preferences.glade:3450 #: gnucash/gtkbuilder/dialog-print-check.glade:270 msgid "Bottom" msgstr "Fundo" -#: gnucash/gtkbuilder/dialog-preferences.glade:3365 +#: gnucash/gtkbuilder/dialog-preferences.glade:3482 msgid "Tabs" msgstr "Separadores" -#: gnucash/gtkbuilder/dialog-preferences.glade:3375 +#: gnucash/gtkbuilder/dialog-preferences.glade:3492 msgid "Show close button on _notebook tabs" msgstr "Mostrar botão de _fecho em separadores" -#: gnucash/gtkbuilder/dialog-preferences.glade:3381 +#: gnucash/gtkbuilder/dialog-preferences.glade:3498 msgid "" "Show a close button on each notebook tab. These function identically to the " "'Close' menu item." @@ -17432,7 +17512,7 @@ msgstr "" "Mostrar um botão de fecho em cada separador do bloco de notas. Funciona tal " "como o item de menu \"Fechar\"." -#: gnucash/gtkbuilder/dialog-preferences.glade:3402 +#: gnucash/gtkbuilder/dialog-preferences.glade:3519 msgid "" "If the text in the tab is longer than this value (the test is approximate) " "then the tab label will have the middle cut and replaced with an ellipsis." @@ -17440,29 +17520,29 @@ msgstr "" "Se o texto no separador for maior que este valor (o teste é aproximado), o " "rótulo será cortado e preenchido com reticências." -#: gnucash/gtkbuilder/dialog-preferences.glade:3404 +#: gnucash/gtkbuilder/dialog-preferences.glade:3521 #, fuzzy msgid "30" msgstr "0" -#: gnucash/gtkbuilder/dialog-preferences.glade:3422 +#: gnucash/gtkbuilder/dialog-preferences.glade:3539 msgid "characters" msgstr "caracteres" -#: gnucash/gtkbuilder/dialog-preferences.glade:3441 +#: gnucash/gtkbuilder/dialog-preferences.glade:3558 msgid "_Width" msgstr "_Largura" -#: gnucash/gtkbuilder/dialog-preferences.glade:3478 +#: gnucash/gtkbuilder/dialog-preferences.glade:3595 msgid "Windows" msgstr "Janelas" -#: gnucash/gtkbuilder/dialog-preferences.glade:3521 +#: gnucash/gtkbuilder/dialog-preferences.glade:3638 #, fuzzy msgid "Online Quotes" msgstr "Cotações online" -#: gnucash/gtkbuilder/dialog-preferences.glade:3542 +#: gnucash/gtkbuilder/dialog-preferences.glade:3659 msgid "Online Quotes" msgstr "Cotações online" @@ -17750,7 +17830,7 @@ msgid "Amount (_numbers)" msgstr "Montante (_valor)" #: gnucash/gtkbuilder/dialog-print-check.glade:746 -#: gnucash/gtkbuilder/gnc-plugin-page-register.glade:814 +#: gnucash/gtkbuilder/gnc-plugin-page-register.glade:1013 msgid "_Notes" msgstr "_Notas" @@ -18998,75 +19078,87 @@ msgstr "Notas extra" #. Duplicate Transaction Dialog #: gnucash/gtkbuilder/gnc-plugin-page-register2.glade:13 -#: gnucash/gtkbuilder/gnc-plugin-page-register.glade:917 +#: gnucash/gtkbuilder/gnc-plugin-page-register.glade:565 msgid "Duplicate Transaction" msgstr "Transacção duplicada" -#: gnucash/gtkbuilder/gnc-plugin-page-register2.glade:93 -#: gnucash/gtkbuilder/gnc-plugin-page-register.glade:999 -msgid "_Number" -msgstr "_Número" - -#: gnucash/gtkbuilder/gnc-plugin-page-register2.glade:144 -#: gnucash/gtkbuilder/gnc-plugin-page-register.glade:1105 +#: gnucash/gtkbuilder/gnc-plugin-page-register2.glade:73 +#: gnucash/gtkbuilder/gnc-plugin-page-register.glade:624 msgid "New Transaction Information" msgstr "Nova informação de transacção" +#: gnucash/gtkbuilder/gnc-plugin-page-register2.glade:108 +#: gnucash/gtkbuilder/gnc-plugin-page-register.glade:661 +msgid "_Number" +msgstr "_Número" + +#: gnucash/gtkbuilder/gnc-plugin-page-register2.glade:146 +#: gnucash/gtkbuilder/gnc-plugin-page-register.glade:689 +msgid "_Transaction Number" +msgstr "Número de _transacção" + +#: gnucash/gtkbuilder/gnc-plugin-page-register2.glade:161 +#: gnucash/gtkbuilder/gnc-plugin-page-register.glade:719 +#, fuzzy +#| msgid "Delete the current entry" +msgid "Keep Linked Document Entry" +msgstr "Eliminar a transacção actual" + #. Filter register by... Dialog -#: gnucash/gtkbuilder/gnc-plugin-page-register2.glade:166 +#: gnucash/gtkbuilder/gnc-plugin-page-register2.glade:213 #: gnucash/gtkbuilder/gnc-plugin-page-register.glade:13 msgid "Filter register by..." msgstr "Filtrar diário por..." #. Filter By Dialog, Date Tab -#: gnucash/gtkbuilder/gnc-plugin-page-register2.glade:233 +#: gnucash/gtkbuilder/gnc-plugin-page-register2.glade:280 #: gnucash/gtkbuilder/gnc-plugin-page-register.glade:80 msgid "Show _All" msgstr "_Mostrar tudo" -#: gnucash/gtkbuilder/gnc-plugin-page-register2.glade:249 +#: gnucash/gtkbuilder/gnc-plugin-page-register2.glade:296 msgid "Select Range:" msgstr "Definir intervalo:" -#: gnucash/gtkbuilder/gnc-plugin-page-register2.glade:302 +#: gnucash/gtkbuilder/gnc-plugin-page-register2.glade:349 #: gnucash/gtkbuilder/gnc-plugin-page-register.glade:193 msgid "Choo_se Date" msgstr "E_scolher data" #. Filter By Dialog, State Tab -#: gnucash/gtkbuilder/gnc-plugin-page-register2.glade:495 +#: gnucash/gtkbuilder/gnc-plugin-page-register2.glade:542 #: gnucash/gtkbuilder/gnc-plugin-page-register.glade:386 msgid "_Unreconciled" msgstr "_Não reconciliada" -#: gnucash/gtkbuilder/gnc-plugin-page-register2.glade:527 +#: gnucash/gtkbuilder/gnc-plugin-page-register2.glade:574 #: gnucash/gtkbuilder/gnc-plugin-page-register.glade:418 msgid "C_leared" msgstr "C_onfirmada" -#: gnucash/gtkbuilder/gnc-plugin-page-register2.glade:543 +#: gnucash/gtkbuilder/gnc-plugin-page-register2.glade:590 #: gnucash/gtkbuilder/gnc-plugin-page-register.glade:434 msgid "_Voided" msgstr "_Esvaziada" -#: gnucash/gtkbuilder/gnc-plugin-page-register2.glade:559 +#: gnucash/gtkbuilder/gnc-plugin-page-register2.glade:606 #: gnucash/gtkbuilder/gnc-plugin-page-register.glade:450 msgid "_Frozen" msgstr "_Suspensa" #. Filter By Dialog, below tabs -#: gnucash/gtkbuilder/gnc-plugin-page-register2.glade:638 +#: gnucash/gtkbuilder/gnc-plugin-page-register2.glade:685 #: gnucash/gtkbuilder/gnc-plugin-page-register.glade:529 msgid "Sa_ve Filter" msgstr "Gra_var filtro" -#: gnucash/gtkbuilder/gnc-plugin-page-register2.glade:674 -#: gnucash/gtkbuilder/gnc-plugin-page-register.glade:1127 +#: gnucash/gtkbuilder/gnc-plugin-page-register2.glade:721 +#: gnucash/gtkbuilder/gnc-plugin-page-register.glade:1111 msgid "Void Transaction" msgstr "Esvaziar transacção" -#: gnucash/gtkbuilder/gnc-plugin-page-register2.glade:738 -#: gnucash/gtkbuilder/gnc-plugin-page-register.glade:1191 +#: gnucash/gtkbuilder/gnc-plugin-page-register2.glade:785 +#: gnucash/gtkbuilder/gnc-plugin-page-register.glade:1175 msgid "Reason for voiding transaction" msgstr "Motivo para esvaziar a transacção" @@ -19083,103 +19175,93 @@ msgstr "" "Se for 0, inclui todos os anteriores" #. Sort register by Dialog -#: gnucash/gtkbuilder/gnc-plugin-page-register.glade:570 +#: gnucash/gtkbuilder/gnc-plugin-page-register.glade:769 msgid "Sort register by..." msgstr "Ordenar diário por..." -#: gnucash/gtkbuilder/gnc-plugin-page-register.glade:633 +#: gnucash/gtkbuilder/gnc-plugin-page-register.glade:832 msgid "_Standard Order" msgstr "Ordem _padrão" -#: gnucash/gtkbuilder/gnc-plugin-page-register.glade:637 +#: gnucash/gtkbuilder/gnc-plugin-page-register.glade:836 msgid "Keep normal account order." msgstr "Manter a ordem normal da conta." -#: gnucash/gtkbuilder/gnc-plugin-page-register.glade:666 +#: gnucash/gtkbuilder/gnc-plugin-page-register.glade:865 #: gnucash/report/trep-engine.scm:162 msgid "Sort by date." msgstr "Ordenar por data." -#: gnucash/gtkbuilder/gnc-plugin-page-register.glade:685 +#: gnucash/gtkbuilder/gnc-plugin-page-register.glade:884 msgid "Sort by the date of entry." msgstr "Ordenar por data de entrada." -#: gnucash/gtkbuilder/gnc-plugin-page-register.glade:700 +#: gnucash/gtkbuilder/gnc-plugin-page-register.glade:899 msgid "S_tatement Date" msgstr "_Data do documento" -#: gnucash/gtkbuilder/gnc-plugin-page-register.glade:704 +#: gnucash/gtkbuilder/gnc-plugin-page-register.glade:903 msgid "" "Sort by the statement date (and group by cleared, unreconciled, reconciled)." msgstr "" "Ordenar por data de documento (e agrupar por confirmada, não reconciliada, " "reconciliada)." -#: gnucash/gtkbuilder/gnc-plugin-page-register.glade:719 +#: gnucash/gtkbuilder/gnc-plugin-page-register.glade:918 msgid "Num_ber" msgstr "Númer_o" -#: gnucash/gtkbuilder/gnc-plugin-page-register.glade:723 +#: gnucash/gtkbuilder/gnc-plugin-page-register.glade:922 msgid "Sort by number." msgstr "Ordenar por número." -#: gnucash/gtkbuilder/gnc-plugin-page-register.glade:738 +#: gnucash/gtkbuilder/gnc-plugin-page-register.glade:937 msgid "Amo_unt" msgstr "_Montante" -#: gnucash/gtkbuilder/gnc-plugin-page-register.glade:742 +#: gnucash/gtkbuilder/gnc-plugin-page-register.glade:941 #: gnucash/report/trep-engine.scm:208 msgid "Sort by amount." msgstr "Ordenar por montante." -#: gnucash/gtkbuilder/gnc-plugin-page-register.glade:761 +#: gnucash/gtkbuilder/gnc-plugin-page-register.glade:960 #: gnucash/report/trep-engine.scm:245 msgid "Sort by memo." msgstr "Ordenar por memorando." -#: gnucash/gtkbuilder/gnc-plugin-page-register.glade:780 +#: gnucash/gtkbuilder/gnc-plugin-page-register.glade:979 #: gnucash/report/trep-engine.scm:216 msgid "Sort by description." msgstr "Ordenar por descrição." -#: gnucash/gtkbuilder/gnc-plugin-page-register.glade:795 +#: gnucash/gtkbuilder/gnc-plugin-page-register.glade:994 msgid "_Action" msgstr "_Acção" -#: gnucash/gtkbuilder/gnc-plugin-page-register.glade:799 +#: gnucash/gtkbuilder/gnc-plugin-page-register.glade:998 msgid "Sort by action field." msgstr "Ordenar por campo de acção." -#: gnucash/gtkbuilder/gnc-plugin-page-register.glade:818 +#: gnucash/gtkbuilder/gnc-plugin-page-register.glade:1017 msgid "Sort by notes field." msgstr "Ordenar por campo de notas." -#: gnucash/gtkbuilder/gnc-plugin-page-register.glade:849 +#: gnucash/gtkbuilder/gnc-plugin-page-register.glade:1048 msgid "Sa_ve Sort Order" msgstr "Gra_var ordenação" -#: gnucash/gtkbuilder/gnc-plugin-page-register.glade:853 +#: gnucash/gtkbuilder/gnc-plugin-page-register.glade:1052 msgid "Save the sort order for this register." msgstr "Gravar a ordem escolhida para este diário." -#: gnucash/gtkbuilder/gnc-plugin-page-register.glade:869 +#: gnucash/gtkbuilder/gnc-plugin-page-register.glade:1068 msgid "_Reverse Order" msgstr "_Reverter ordem" -#: gnucash/gtkbuilder/gnc-plugin-page-register.glade:873 +#: gnucash/gtkbuilder/gnc-plugin-page-register.glade:1072 msgid "Sort in descending order." msgstr "Ordenar descendentemente." -#: gnucash/gtkbuilder/gnc-plugin-page-register.glade:1042 -msgid "_Transaction Number" -msgstr "Número de _transacção" - -#: gnucash/gtkbuilder/gnc-plugin-page-register.glade:1086 -#, fuzzy -#| msgid "Delete the current entry" -msgid "Keep Linked Document Entry" -msgstr "Eliminar a transacção actual" - #: gnucash/gtkbuilder/gnc-recurrence.glade:12 msgid "day(s)" msgstr "dia(s)." @@ -19241,14 +19323,46 @@ msgid "Show _zero balance owners" msgstr "Mostrar titulares com saldo _zero" #: gnucash/gtkbuilder/window-autoclear.glade:71 -msgid "Auto-Clear Information" -msgstr "Informação de confirmação automática" +#, fuzzy +#| msgid "Auto-clear" +msgid "About Auto-Clear" +msgstr "Auto-confirmar" -#: gnucash/gtkbuilder/window-autoclear.glade:92 +#: gnucash/gtkbuilder/window-autoclear.glade:86 +msgid "" +"Use this dialog if you want GnuCash to automatically find which transactions " +"are cleared, given an ending balance. For example, said ending balance can " +"be the current balance given by your bank online." +msgstr "" + +#: gnucash/gtkbuilder/window-autoclear.glade:101 +#, fuzzy +#| msgid "Fraction" +msgid "Caution!" +msgstr "Fracção" + +#: gnucash/gtkbuilder/window-autoclear.glade:116 +msgid "" +"This tool might be slow or abort if the number of uncleared splits is more " +"than approximately 20. In that case please clear at least some of them " +"manually." +msgstr "" + +#: gnucash/gtkbuilder/window-autoclear.glade:138 #: gnucash/gtkbuilder/window-reconcile.glade:117 msgid "_Ending Balance" msgstr "_Saldo final" +#: gnucash/gtkbuilder/window-autoclear.glade:177 +#, fuzzy +#| msgid "_Review created transactions" +msgid "_Review cleared splits" +msgstr "_Rever transacções criadas" + +#: gnucash/gtkbuilder/window-autoclear.glade:181 +msgid "Select this option to open a register tab with newly cleared splits." +msgstr "" + #: gnucash/gtkbuilder/window-reconcile.glade:71 msgid "Reconcile Information" msgstr "Reconciliar informação" @@ -20007,7 +20121,7 @@ msgid "Unspecified" msgstr "Não especificado" #: gnucash/import-export/aqb/gnc-ab-utils.c:543 -#: gnucash/report/report-utilities.scm:102 libgnucash/engine/Account.cpp:4314 +#: gnucash/report/report-utilities.scm:114 libgnucash/engine/Account.cpp:4361 msgid "Bank" msgstr "Banco" @@ -21555,91 +21669,91 @@ msgstr "a/m/d" msgid "y/d/m" msgstr "a/d/m" -#: gnucash/import-export/import-main-matcher.c:533 -#: gnucash/import-export/import-main-matcher.c:683 +#: gnucash/import-export/import-main-matcher.c:591 +#: gnucash/import-export/import-main-matcher.c:741 msgid "Destination account for the auto-balance split." msgstr "Conta destino da parcela de saldo automático." -#: gnucash/import-export/import-main-matcher.c:874 +#: gnucash/import-export/import-main-matcher.c:930 #, fuzzy msgid "Assign a transfer account to the selection." msgstr "Atribuir conta de transferência." -#: gnucash/import-export/import-main-matcher.c:1041 +#: gnucash/import-export/import-main-matcher.c:1093 #, fuzzy #| msgid "A" msgctxt "Column header for 'Adding transaction'" msgid "A" msgstr "Ad" -#: gnucash/import-export/import-main-matcher.c:1044 +#: gnucash/import-export/import-main-matcher.c:1096 #, fuzzy msgctxt "Column header for 'Updating plus Clearing transaction'" msgid "U+C" msgstr "At+R" -#: gnucash/import-export/import-main-matcher.c:1048 +#: gnucash/import-export/import-main-matcher.c:1100 #, fuzzy #| msgid "C" msgctxt "Column header for 'Clearing transaction'" msgid "C" msgstr "C" -#: gnucash/import-export/import-main-matcher.c:1054 +#: gnucash/import-export/import-main-matcher.c:1107 msgid "Info" msgstr "Informação" -#: gnucash/import-export/import-main-matcher.c:1061 +#: gnucash/import-export/import-main-matcher.c:1114 #: gnucash/report/stylesheets/head-or-tail.scm:102 msgid "Additional Comments" msgstr "Comentários adicionais" -#: gnucash/import-export/import-main-matcher.c:1427 +#: gnucash/import-export/import-main-matcher.c:1478 msgid "New, already balanced" msgstr "Nova, já saldada" #. Translators: %1$s is the amount to be #. transferred. %2$s is the destination account. -#: gnucash/import-export/import-main-matcher.c:1453 +#: gnucash/import-export/import-main-matcher.c:1504 #, c-format msgid "New, transfer %s to (manual) \"%s\"" msgstr "Nova, transferir %s para \"%s\" (manual)" #. Translators: %1$s is the amount to be #. transferred. %2$s is the destination account. -#: gnucash/import-export/import-main-matcher.c:1461 +#: gnucash/import-export/import-main-matcher.c:1512 #, c-format msgid "New, transfer %s to (auto) \"%s\"" msgstr "Nova, transferir %s para \"%s\" (automático)" #. Translators: %s is the amount to be transferred. -#: gnucash/import-export/import-main-matcher.c:1472 +#: gnucash/import-export/import-main-matcher.c:1523 #, c-format msgid "New, UNBALANCED (need acct to transfer %s)!" msgstr "Nova, NÃO SALDADA (precisa de conta para transferir %s)!" -#: gnucash/import-export/import-main-matcher.c:1489 +#: gnucash/import-export/import-main-matcher.c:1540 msgid "Reconcile (manual) match" msgstr "Reconciliar correspondência (manual)" -#: gnucash/import-export/import-main-matcher.c:1493 +#: gnucash/import-export/import-main-matcher.c:1544 msgid "Reconcile (auto) match" msgstr "Reconciliar correspondência (automático)" -#: gnucash/import-export/import-main-matcher.c:1500 -#: gnucash/import-export/import-main-matcher.c:1526 +#: gnucash/import-export/import-main-matcher.c:1551 +#: gnucash/import-export/import-main-matcher.c:1577 msgid "Match missing!" msgstr "Correspondência em falta!" -#: gnucash/import-export/import-main-matcher.c:1515 +#: gnucash/import-export/import-main-matcher.c:1566 msgid "Update and reconcile (manual) match" msgstr "Actualizar e reconciliar correspondência (manual)" -#: gnucash/import-export/import-main-matcher.c:1519 +#: gnucash/import-export/import-main-matcher.c:1570 msgid "Update and reconcile (auto) match" msgstr "Actualizar e reconciliar correspondência (automático)" -#: gnucash/import-export/import-main-matcher.c:1534 +#: gnucash/import-export/import-main-matcher.c:1585 msgid "Do not import (no action selected)" msgstr "Não importar (sem acção seleccionada)" @@ -21707,49 +21821,49 @@ msgstr "Conta de acções para a mercadoria \"%s\"" msgid "Income account for security \"%s\"" msgstr "Conta de receita para a mercadoria \"%s\"" -#: gnucash/import-export/ofx/gnc-ofx-import.c:935 +#: gnucash/import-export/ofx/gnc-ofx-import.c:937 msgid "Unknown OFX account" msgstr "Conta OFX desconhecida" -#: gnucash/import-export/ofx/gnc-ofx-import.c:958 +#: gnucash/import-export/ofx/gnc-ofx-import.c:960 msgid "Unknown OFX checking account" msgstr "Conta à ordem OFX desconhecida" -#: gnucash/import-export/ofx/gnc-ofx-import.c:962 +#: gnucash/import-export/ofx/gnc-ofx-import.c:964 msgid "Unknown OFX savings account" msgstr "Conta poupança OFX desconhecida" -#: gnucash/import-export/ofx/gnc-ofx-import.c:966 +#: gnucash/import-export/ofx/gnc-ofx-import.c:968 msgid "Unknown OFX money market account" msgstr "Conta de mercado monetário OFX desconhecida" -#: gnucash/import-export/ofx/gnc-ofx-import.c:970 +#: gnucash/import-export/ofx/gnc-ofx-import.c:972 msgid "Unknown OFX credit line account" msgstr "Conta de linha de crédito OFX desconhecida" -#: gnucash/import-export/ofx/gnc-ofx-import.c:975 +#: gnucash/import-export/ofx/gnc-ofx-import.c:977 msgid "Unknown OFX CMA account" msgstr "Conta CMA OFX desconhecida" -#: gnucash/import-export/ofx/gnc-ofx-import.c:979 +#: gnucash/import-export/ofx/gnc-ofx-import.c:981 msgid "Unknown OFX credit card account" msgstr "Conta de cartão de crédito OFX desconhecida" -#: gnucash/import-export/ofx/gnc-ofx-import.c:983 +#: gnucash/import-export/ofx/gnc-ofx-import.c:985 msgid "Unknown OFX investment account" msgstr "Conta de investimentos OFX desconhecida" -#: gnucash/import-export/ofx/gnc-ofx-import.c:1163 +#: gnucash/import-export/ofx/gnc-ofx-import.c:1177 #, c-format msgid "" "OFX file '%s' imported, %d transactions processed, no transactions to match" msgstr "" -#: gnucash/import-export/ofx/gnc-ofx-import.c:1214 +#: gnucash/import-export/ofx/gnc-ofx-import.c:1228 msgid "Open/Quicken Financial Exchange file (*.ofx, *.qfx)" msgstr "" -#: gnucash/import-export/ofx/gnc-ofx-import.c:1219 +#: gnucash/import-export/ofx/gnc-ofx-import.c:1233 #, fuzzy msgid "Select one or multiple OFX/QFX file(s) to process" msgstr "Seleccione um ficheiro OFX/QFX para processar" @@ -21993,11 +22107,11 @@ msgstr "Ganho cap. (curto)" #: gnucash/import-export/qif-imp/qif-dialog-utils.scm:73 #: gnucash/import-export/qif-imp/qif-dialog-utils.scm:77 -#: gnucash/report/reports/standard/balance-sheet.scm:509 +#: gnucash/report/reports/standard/balance-sheet.scm:510 #: gnucash/report/reports/standard/balsheet-pnl.scm:1108 #: gnucash/report/reports/standard/balsheet-pnl.scm:1123 #: gnucash/report/reports/support/balsheet-eg.eguile.scm:189 -#: libgnucash/app-utils/gnc-ui-util.c:945 +#: libgnucash/app-utils/gnc-ui-util.c:954 msgid "Retained Earnings" msgstr "Dividendos retidos" @@ -22431,7 +22545,7 @@ msgstr ">" #: gnucash/register/ledger-core/gncEntryLedgerLoad.c:130 #: gnucash/register/ledger-core/gncEntryLedgerModel.c:527 #: gnucash/register/ledger-core/gncEntryLedgerModel.c:1091 -#: gnucash/report/report-utilities.scm:103 libgnucash/engine/Account.cpp:4315 +#: gnucash/report/report-utilities.scm:115 libgnucash/engine/Account.cpp:4362 msgid "Cash" msgstr "Dinheiro" @@ -22953,79 +23067,79 @@ msgstr "A ajustar entradas" msgid "Load" msgstr "" -#: gnucash/report/html-fonts.scm:68 gnucash/report/html-fonts.scm:73 -#: gnucash/report/html-fonts.scm:78 gnucash/report/html-fonts.scm:83 -#: gnucash/report/html-fonts.scm:88 gnucash/report/html-fonts.scm:93 -#: gnucash/report/html-fonts.scm:98 gnucash/report/html-fonts.scm:104 -#: gnucash/report/html-fonts.scm:110 +#: gnucash/report/html-fonts.scm:92 gnucash/report/html-fonts.scm:97 +#: gnucash/report/html-fonts.scm:102 gnucash/report/html-fonts.scm:107 +#: gnucash/report/html-fonts.scm:112 gnucash/report/html-fonts.scm:117 +#: gnucash/report/html-fonts.scm:122 gnucash/report/html-fonts.scm:128 +#: gnucash/report/html-fonts.scm:134 msgid "Fonts" msgstr "Letras" -#: gnucash/report/html-fonts.scm:69 +#: gnucash/report/html-fonts.scm:93 msgid "Font info for the report title." msgstr "Informação de letra para o título do relatório." -#: gnucash/report/html-fonts.scm:74 +#: gnucash/report/html-fonts.scm:98 msgid "Account link" msgstr "Ligação de conta" -#: gnucash/report/html-fonts.scm:74 +#: gnucash/report/html-fonts.scm:98 msgid "Font info for account name." msgstr "Informação de letra para o nome da conta." -#: gnucash/report/html-fonts.scm:79 +#: gnucash/report/html-fonts.scm:103 msgid "Number cell" msgstr "Célula de número" -#: gnucash/report/html-fonts.scm:79 +#: gnucash/report/html-fonts.scm:103 msgid "Font info for regular number cells." msgstr "Informação de letra para células de número regulares." -#: gnucash/report/html-fonts.scm:84 +#: gnucash/report/html-fonts.scm:108 msgid "Negative Values in Red" msgstr "Valores negativos em vermelho" -#: gnucash/report/html-fonts.scm:84 +#: gnucash/report/html-fonts.scm:108 msgid "Display negative values in red." msgstr "Mostrar números negativos em vermelho." -#: gnucash/report/html-fonts.scm:89 +#: gnucash/report/html-fonts.scm:113 msgid "Number header" msgstr "Cabeçalho de número" -#: gnucash/report/html-fonts.scm:89 +#: gnucash/report/html-fonts.scm:113 msgid "Font info for number headers." msgstr "Informação de letra para cabeçalhos de número." -#: gnucash/report/html-fonts.scm:94 +#: gnucash/report/html-fonts.scm:118 msgid "Text cell" msgstr "Célula de texto" -#: gnucash/report/html-fonts.scm:94 +#: gnucash/report/html-fonts.scm:118 msgid "Font info for regular text cells." msgstr "Informação de letra para células de texto regulares." -#: gnucash/report/html-fonts.scm:99 +#: gnucash/report/html-fonts.scm:123 msgid "Total number cell" msgstr "Células de totais" -#: gnucash/report/html-fonts.scm:100 +#: gnucash/report/html-fonts.scm:124 msgid "Font info for number cells containing a total." msgstr "Informação de letra para células de número contento um total." -#: gnucash/report/html-fonts.scm:105 +#: gnucash/report/html-fonts.scm:129 msgid "Total label cell" msgstr "Célula de rótulo Total" -#: gnucash/report/html-fonts.scm:106 +#: gnucash/report/html-fonts.scm:130 msgid "Font info for cells containing total labels." msgstr "Informação de letra para células contendo rótulos Total." -#: gnucash/report/html-fonts.scm:111 +#: gnucash/report/html-fonts.scm:135 msgid "Centered label cell" msgstr "Célula de rótulo centrado" -#: gnucash/report/html-fonts.scm:111 +#: gnucash/report/html-fonts.scm:135 msgid "Font info for centered label cells." msgstr "Informação de letra para células de rótulos centrados." @@ -23033,43 +23147,43 @@ msgstr "Informação de letra para células de rótulos centrados." msgid "Can't save style sheet" msgstr "Impossível gravar a folha de estilo" -#: gnucash/report/html-utilities.scm:227 +#: gnucash/report/html-utilities.scm:229 gnucash/report/html-utilities.scm:246 +#, fuzzy +#| msgid "Exchange rate" msgid "Exchange rate" -msgstr "Taxa de câmbio" +msgid_plural "Exchange rates" +msgstr[0] "Taxa de câmbio" +msgstr[1] "Taxa de câmbio" -#: gnucash/report/html-utilities.scm:228 -msgid "Exchange rates" -msgstr "Taxas de câmbio" - -#: gnucash/report/html-utilities.scm:235 +#: gnucash/report/html-utilities.scm:259 msgid "No budgets exist. You must create at least one budget." msgstr "Não existem orçamentos. Tem de criar pelo menos um." -#: gnucash/report/html-utilities.scm:268 +#: gnucash/report/html-utilities.scm:292 #: gnucash/report/reports/standard/balsheet-pnl.scm:137 #: gnucash/report/reports/standard/balsheet-pnl.scm:138 #: gnucash/report/reports/standard/new-owner-report.scm:935 msgid "Disabled" msgstr "Inactivo" -#: gnucash/report/html-utilities.scm:321 +#: gnucash/report/html-utilities.scm:345 msgid "This report requires you to specify certain report options." msgstr "Este relatório requer que especifique determinadas opções." -#: gnucash/report/html-utilities.scm:328 +#: gnucash/report/html-utilities.scm:352 msgid "No accounts selected" msgstr "Sem contas seleccionadas" -#: gnucash/report/html-utilities.scm:329 +#: gnucash/report/html-utilities.scm:353 msgid "This report requires accounts to be selected in the report options." msgstr "Este relatório requer que seleccione contas nas opções do relatório." -#: gnucash/report/html-utilities.scm:336 +#: gnucash/report/html-utilities.scm:360 #: gnucash/report/reports/standard/price-scatter.scm:276 msgid "No data" msgstr "Sem dados" -#: gnucash/report/html-utilities.scm:337 +#: gnucash/report/html-utilities.scm:361 msgid "" "The selected accounts contain no data/transactions (or only zeroes) for the " "selected time period" @@ -23460,19 +23574,19 @@ msgstr "_Pessoal" #: gnucash/report/reports/standard/invoice.scm:337 #: gnucash/report/reports/standard/invoice.scm:342 #: gnucash/report/reports/standard/receipt.scm:40 -#: gnucash/report/reports/standard/register.scm:382 +#: gnucash/report/reports/standard/register.scm:353 +#: gnucash/report/reports/standard/register.scm:359 +#: gnucash/report/reports/standard/register.scm:363 +#: gnucash/report/reports/standard/register.scm:368 +#: gnucash/report/reports/standard/register.scm:373 +#: gnucash/report/reports/standard/register.scm:378 +#: gnucash/report/reports/standard/register.scm:383 #: gnucash/report/reports/standard/register.scm:388 -#: gnucash/report/reports/standard/register.scm:392 -#: gnucash/report/reports/standard/register.scm:397 -#: gnucash/report/reports/standard/register.scm:402 +#: gnucash/report/reports/standard/register.scm:393 +#: gnucash/report/reports/standard/register.scm:398 #: gnucash/report/reports/standard/register.scm:407 #: gnucash/report/reports/standard/register.scm:412 #: gnucash/report/reports/standard/register.scm:417 -#: gnucash/report/reports/standard/register.scm:422 -#: gnucash/report/reports/standard/register.scm:427 -#: gnucash/report/reports/standard/register.scm:436 -#: gnucash/report/reports/standard/register.scm:441 -#: gnucash/report/reports/standard/register.scm:446 #: gnucash/report/reports/standard/taxinvoice.scm:79 msgid "Display" msgstr "Mostrar" @@ -24070,7 +24184,7 @@ msgstr "Mostrar o saldo total na legenda?" #: gnucash/report/reports/standard/balsheet-pnl.scm:910 #: gnucash/report/reports/standard/budget.scm:513 #: gnucash/report/reports/standard/cashflow-barchart.scm:282 -#: gnucash/report/reports/standard/cash-flow.scm:188 +#: gnucash/report/reports/standard/cash-flow.scm:190 #: gnucash/report/reports/standard/category-barchart.scm:514 #: gnucash/report/reports/standard/net-charts.scm:334 #: gnucash/report/reports/standard/price-scatter.scm:212 @@ -24601,34 +24715,34 @@ msgstr "" "AVISO: há códigos de modelo de imposto atribuídos a algumas contas. Só podem " "ser repetidos códigos de modelo com origens de pagador." -#: gnucash/report/reports/locale-specific/de_DE/taxtxf.scm:818 +#: gnucash/report/reports/locale-specific/de_DE/taxtxf.scm:817 #, scheme-format msgid "Period from ~a to ~a" msgstr "Período de ~a a ~a" -#: gnucash/report/reports/locale-specific/de_DE/taxtxf.scm:855 +#: gnucash/report/reports/locale-specific/de_DE/taxtxf.scm:854 msgid "Tax Report & XML Export" msgstr "Relatório de IRS e exportação XML" -#: gnucash/report/reports/locale-specific/de_DE/taxtxf.scm:857 +#: gnucash/report/reports/locale-specific/de_DE/taxtxf.scm:856 msgid "Taxable Income / Deductible Expenses / Export to .XML file" msgstr "Receita colectável/Despesa dedutível/Exportar para ficheiro .XML" -#: gnucash/report/reports/locale-specific/de_DE/taxtxf.scm:861 -#: gnucash/report/reports/locale-specific/de_DE/taxtxf.scm:870 +#: gnucash/report/reports/locale-specific/de_DE/taxtxf.scm:860 +#: gnucash/report/reports/locale-specific/de_DE/taxtxf.scm:869 msgid "Taxable Income / Deductible Expenses" msgstr "Receita colectável/Despesa dedutível" -#: gnucash/report/reports/locale-specific/de_DE/taxtxf.scm:862 +#: gnucash/report/reports/locale-specific/de_DE/taxtxf.scm:861 msgid "This report shows your Taxable Income and Deductible Expenses." msgstr "" "Este relatório mostra a sua receita colectável e a sua despesa dedutível." -#: gnucash/report/reports/locale-specific/de_DE/taxtxf.scm:867 +#: gnucash/report/reports/locale-specific/de_DE/taxtxf.scm:866 msgid "XML" msgstr "XML" -#: gnucash/report/reports/locale-specific/de_DE/taxtxf.scm:871 +#: gnucash/report/reports/locale-specific/de_DE/taxtxf.scm:870 msgid "This page shows your Taxable Income and Deductible Expenses." msgstr "Esta página mostra a sua receita colectável e a sua despesa dedutível." @@ -24809,20 +24923,20 @@ msgid "Expense Accounts" msgstr "Contas de despesa" #: gnucash/report/reports/standard/account-piecharts.scm:60 -#: gnucash/report/reports/standard/balance-sheet.scm:485 -#: gnucash/report/reports/standard/budget-balance-sheet.scm:664 +#: gnucash/report/reports/standard/balance-sheet.scm:486 +#: gnucash/report/reports/standard/budget-balance-sheet.scm:665 #: gnucash/report/reports/standard/net-charts.scm:350 #: gnucash/report/reports/standard/net-charts.scm:421 -#: gnucash/report/report-utilities.scm:105 +#: gnucash/report/report-utilities.scm:117 msgid "Assets" msgstr "Activo" #: gnucash/report/reports/standard/account-piecharts.scm:62 -#: gnucash/report/reports/standard/balance-sheet.scm:386 -#: gnucash/report/reports/standard/budget-balance-sheet.scm:694 +#: gnucash/report/reports/standard/balance-sheet.scm:387 +#: gnucash/report/reports/standard/budget-balance-sheet.scm:695 #: gnucash/report/reports/standard/net-charts.scm:371 #: gnucash/report/reports/standard/net-charts.scm:421 -#: gnucash/report/report-utilities.scm:106 +#: gnucash/report/report-utilities.scm:118 msgid "Liabilities" msgstr "Passivo" @@ -25206,15 +25320,15 @@ msgstr "" "Ignorar completamente quaisquer contas abaixo do limite de profundidade." #. Translators: This is part of the report title, which is capitalzed in English, but not all other languages -#: gnucash/report/reports/standard/account-summary.scm:325 -#: gnucash/report/reports/standard/equity-statement.scm:302 +#: gnucash/report/reports/standard/account-summary.scm:326 +#: gnucash/report/reports/standard/equity-statement.scm:304 #: gnucash/report/reports/standard/income-statement.scm:407 -#: gnucash/report/reports/standard/trial-balance.scm:412 +#: gnucash/report/reports/standard/trial-balance.scm:413 #, scheme-format msgid "For Period Covering ~a to ~a" msgstr "Para período desde ~a até ~a" -#: gnucash/report/reports/standard/account-summary.scm:409 +#: gnucash/report/reports/standard/account-summary.scm:410 msgid "Account title" msgstr "Título da conta" @@ -25360,14 +25474,14 @@ msgstr "Base" #: gnucash/report/reports/standard/advanced-portfolio.scm:1081 #: gnucash/report/reports/standard/cashflow-barchart.scm:297 #: gnucash/report/reports/standard/cashflow-barchart.scm:332 -#: gnucash/report/reports/standard/cash-flow.scm:277 +#: gnucash/report/reports/standard/cash-flow.scm:279 msgid "Money In" msgstr "Dinheiro entrado" #: gnucash/report/reports/standard/advanced-portfolio.scm:1082 #: gnucash/report/reports/standard/cashflow-barchart.scm:303 #: gnucash/report/reports/standard/cashflow-barchart.scm:333 -#: gnucash/report/reports/standard/cash-flow.scm:298 +#: gnucash/report/reports/standard/cash-flow.scm:300 msgid "Money Out" msgstr "Dinheiro saído" @@ -25493,7 +25607,7 @@ msgid "Reserve" msgstr "Reserva" #: gnucash/report/reports/standard/balance-sheet.scm:72 -#: gnucash/report/reports/standard/trial-balance.scm:573 +#: gnucash/report/reports/standard/trial-balance.scm:574 msgid "Balance Sheet" msgstr "Folha de balanço" @@ -25607,52 +25721,52 @@ msgstr "Incluir total do capital próprio" msgid "Whether or not to include a line indicating total equity." msgstr "Se deve ou não incluir uma linha indicando o total do capital próprio." -#: gnucash/report/reports/standard/balance-sheet.scm:390 -#: gnucash/report/reports/standard/budget-balance-sheet.scm:716 +#: gnucash/report/reports/standard/balance-sheet.scm:391 +#: gnucash/report/reports/standard/budget-balance-sheet.scm:717 msgid "Total Liabilities" msgstr "Total do passivo" -#: gnucash/report/reports/standard/balance-sheet.scm:488 -#: gnucash/report/reports/standard/budget-balance-sheet.scm:685 +#: gnucash/report/reports/standard/balance-sheet.scm:489 +#: gnucash/report/reports/standard/budget-balance-sheet.scm:686 msgid "Total Assets" msgstr "Total do activo" -#: gnucash/report/reports/standard/balance-sheet.scm:510 +#: gnucash/report/reports/standard/balance-sheet.scm:511 #: gnucash/report/reports/support/balsheet-eg.eguile.scm:188 msgid "Retained Losses" msgstr "Prejuízos retidos" -#: gnucash/report/reports/standard/balance-sheet.scm:514 +#: gnucash/report/reports/standard/balance-sheet.scm:515 msgid "Trading Gains" msgstr "Ganhos de negociação" -#: gnucash/report/reports/standard/balance-sheet.scm:515 +#: gnucash/report/reports/standard/balance-sheet.scm:516 msgid "Trading Losses" msgstr "Perdas de negociação" -#: gnucash/report/reports/standard/balance-sheet.scm:519 +#: gnucash/report/reports/standard/balance-sheet.scm:520 #: gnucash/report/reports/standard/balsheet-pnl.scm:1103 #: gnucash/report/reports/standard/balsheet-pnl.scm:1118 -#: gnucash/report/reports/standard/budget-balance-sheet.scm:758 -#: gnucash/report/reports/standard/equity-statement.scm:472 -#: gnucash/report/reports/standard/trial-balance.scm:734 +#: gnucash/report/reports/standard/budget-balance-sheet.scm:759 +#: gnucash/report/reports/standard/equity-statement.scm:474 +#: gnucash/report/reports/standard/trial-balance.scm:735 msgid "Unrealized Gains" msgstr "Ganhos não realizados" -#: gnucash/report/reports/standard/balance-sheet.scm:520 -#: gnucash/report/reports/standard/budget-balance-sheet.scm:759 -#: gnucash/report/reports/standard/equity-statement.scm:473 -#: gnucash/report/reports/standard/trial-balance.scm:735 +#: gnucash/report/reports/standard/balance-sheet.scm:521 +#: gnucash/report/reports/standard/budget-balance-sheet.scm:760 +#: gnucash/report/reports/standard/equity-statement.scm:475 +#: gnucash/report/reports/standard/trial-balance.scm:736 msgid "Unrealized Losses" msgstr "Perdas não realizadas" -#: gnucash/report/reports/standard/balance-sheet.scm:524 -#: gnucash/report/reports/standard/budget-balance-sheet.scm:774 +#: gnucash/report/reports/standard/balance-sheet.scm:525 +#: gnucash/report/reports/standard/budget-balance-sheet.scm:775 msgid "Total Equity" msgstr "Total de capital próprio" -#: gnucash/report/reports/standard/balance-sheet.scm:534 -#: gnucash/report/reports/standard/budget-balance-sheet.scm:780 +#: gnucash/report/reports/standard/balance-sheet.scm:535 +#: gnucash/report/reports/standard/budget-balance-sheet.scm:781 msgid "Total Liabilities & Equity" msgstr "Total de passivo e capital próprio" @@ -25800,7 +25914,7 @@ msgstr "" "desta mensagem)" #: gnucash/report/reports/standard/balsheet-eg.scm:389 -#: libgnucash/engine/Scrub.c:107 +#: libgnucash/engine/Scrub.c:117 msgid "Orphan" msgstr "Orfã" @@ -25981,12 +26095,12 @@ msgid "missing" msgstr "em falta" #: gnucash/report/reports/standard/balsheet-pnl.scm:1092 -#: libgnucash/engine/Account.cpp:4316 +#: libgnucash/engine/Account.cpp:4363 msgid "Asset" msgstr "Activo" #: gnucash/report/reports/standard/balsheet-pnl.scm:1095 -#: libgnucash/engine/Account.cpp:4318 +#: libgnucash/engine/Account.cpp:4365 msgid "Liability" msgstr "Passivo" @@ -26010,7 +26124,7 @@ msgid " to " msgstr " para " #: gnucash/report/reports/standard/balsheet-pnl.scm:1272 -#: gnucash/report/reports/standard/trial-balance.scm:860 +#: gnucash/report/reports/standard/trial-balance.scm:861 msgid "Net Income" msgstr "Receita líquida" @@ -26046,55 +26160,55 @@ msgstr "" msgid "Budget to use." msgstr "Orçamento a usar." -#: gnucash/report/reports/standard/budget-balance-sheet.scm:676 +#: gnucash/report/reports/standard/budget-balance-sheet.scm:677 msgid "Existing Assets" msgstr "Activos existentes" -#: gnucash/report/reports/standard/budget-balance-sheet.scm:678 +#: gnucash/report/reports/standard/budget-balance-sheet.scm:679 msgid "Allocated Assets" msgstr "Activos alocados" -#: gnucash/report/reports/standard/budget-balance-sheet.scm:682 +#: gnucash/report/reports/standard/budget-balance-sheet.scm:683 msgid "Unallocated Assets" msgstr "Activos não alocados" -#: gnucash/report/reports/standard/budget-balance-sheet.scm:708 +#: gnucash/report/reports/standard/budget-balance-sheet.scm:709 msgid "Existing Liabilities" msgstr "Passivo existente" -#: gnucash/report/reports/standard/budget-balance-sheet.scm:713 +#: gnucash/report/reports/standard/budget-balance-sheet.scm:714 msgid "New Liabilities" msgstr "Novo passivo" -#: gnucash/report/reports/standard/budget-balance-sheet.scm:739 +#: gnucash/report/reports/standard/budget-balance-sheet.scm:740 msgid "Existing Retained Earnings" msgstr "Ganhos retidos existentes" -#: gnucash/report/reports/standard/budget-balance-sheet.scm:740 +#: gnucash/report/reports/standard/budget-balance-sheet.scm:741 msgid "Existing Retained Losses" msgstr "Perdas retidas existentes" -#: gnucash/report/reports/standard/budget-balance-sheet.scm:745 +#: gnucash/report/reports/standard/budget-balance-sheet.scm:746 msgid "New Retained Earnings" msgstr "Novos ganhos retidos" -#: gnucash/report/reports/standard/budget-balance-sheet.scm:746 +#: gnucash/report/reports/standard/budget-balance-sheet.scm:747 msgid "New Retained Losses" msgstr "Novas perdas retidas" -#: gnucash/report/reports/standard/budget-balance-sheet.scm:751 +#: gnucash/report/reports/standard/budget-balance-sheet.scm:752 msgid "Total Retained Earnings" msgstr "Total de ganhos retidos" -#: gnucash/report/reports/standard/budget-balance-sheet.scm:752 +#: gnucash/report/reports/standard/budget-balance-sheet.scm:753 msgid "Total Retained Losses" msgstr "Total de perdas retidas" -#: gnucash/report/reports/standard/budget-balance-sheet.scm:768 +#: gnucash/report/reports/standard/budget-balance-sheet.scm:769 msgid "Existing Equity" msgstr "Capital próprio existente" -#: gnucash/report/reports/standard/budget-balance-sheet.scm:771 +#: gnucash/report/reports/standard/budget-balance-sheet.scm:772 msgid "New Equity" msgstr "Novo capital próprio" @@ -26337,58 +26451,58 @@ msgstr "" "Faz com que o relatório seja mostrado na ordem padrão, colocando a receita " "antes da despesa." -#: gnucash/report/reports/standard/budget-income-statement.scm:442 +#: gnucash/report/reports/standard/budget-income-statement.scm:443 msgid "Reporting range end period cannot be less than start period." msgstr "" "O final do período do relatório não pode ser anterior ao início do período." -#: gnucash/report/reports/standard/budget-income-statement.scm:510 +#: gnucash/report/reports/standard/budget-income-statement.scm:511 #: gnucash/report/reports/standard/income-statement.scm:505 msgid "Revenues" msgstr "Rendimento" -#: gnucash/report/reports/standard/budget-income-statement.scm:513 +#: gnucash/report/reports/standard/budget-income-statement.scm:514 #: gnucash/report/reports/standard/income-statement.scm:508 msgid "Total Revenue" msgstr "Total de rendimento" -#: gnucash/report/reports/standard/budget-income-statement.scm:523 +#: gnucash/report/reports/standard/budget-income-statement.scm:524 #: gnucash/report/reports/standard/income-statement.scm:515 msgid "Total Expenses" msgstr "Total de despesa" -#: gnucash/report/reports/standard/budget-income-statement.scm:531 +#: gnucash/report/reports/standard/budget-income-statement.scm:532 #, scheme-format msgid "for Budget ~a" msgstr "para o orçamento ~a" -#: gnucash/report/reports/standard/budget-income-statement.scm:533 +#: gnucash/report/reports/standard/budget-income-statement.scm:534 #, scheme-format msgid "for Budget ~a Period ~d" msgstr "para o orçamento ~a, período ~d" -#: gnucash/report/reports/standard/budget-income-statement.scm:536 +#: gnucash/report/reports/standard/budget-income-statement.scm:537 #, scheme-format msgid "for Budget ~a Periods ~d - ~d" msgstr "para o orçamento ~a, períodos ~d - ~d" -#: gnucash/report/reports/standard/budget-income-statement.scm:564 -#: gnucash/report/reports/standard/equity-statement.scm:455 +#: gnucash/report/reports/standard/budget-income-statement.scm:565 +#: gnucash/report/reports/standard/equity-statement.scm:457 #: gnucash/report/reports/standard/income-statement.scm:525 msgid "Net income" msgstr "Receita líquida" -#: gnucash/report/reports/standard/budget-income-statement.scm:565 -#: gnucash/report/reports/standard/equity-statement.scm:456 +#: gnucash/report/reports/standard/budget-income-statement.scm:566 +#: gnucash/report/reports/standard/equity-statement.scm:458 #: gnucash/report/reports/standard/income-statement.scm:526 msgid "Net loss" msgstr "Perda líquida" -#: gnucash/report/reports/standard/budget-income-statement.scm:605 +#: gnucash/report/reports/standard/budget-income-statement.scm:606 msgid "Budget Income Statement" msgstr "Extracto de receita do orçamento" -#: gnucash/report/reports/standard/budget-income-statement.scm:606 +#: gnucash/report/reports/standard/budget-income-statement.scm:607 msgid "Budget Profit & Loss" msgstr "Orçamento de Lucro & Prejuízo" @@ -26587,21 +26701,21 @@ msgstr "Mostrar nomes de conta completos" msgid "Show full account names (including parent accounts)." msgstr "Mostrar nomes de conta completos (incluindo contas-mãe)." -#: gnucash/report/reports/standard/cash-flow.scm:203 +#: gnucash/report/reports/standard/cash-flow.scm:205 #, scheme-format msgid "~a and subaccounts" msgstr "~a e sub-contas" -#: gnucash/report/reports/standard/cash-flow.scm:204 +#: gnucash/report/reports/standard/cash-flow.scm:206 #, scheme-format msgid "~a and selected subaccounts" msgstr "~a e sub-contas seleccionadas" -#: gnucash/report/reports/standard/cash-flow.scm:268 +#: gnucash/report/reports/standard/cash-flow.scm:270 msgid "Money into selected accounts comes from" msgstr "Dinheiro entrado nas contas seleccionadas vem de" -#: gnucash/report/reports/standard/cash-flow.scm:289 +#: gnucash/report/reports/standard/cash-flow.scm:291 msgid "Money out of selected accounts goes to" msgstr "Dinheiro saído das contas seleccionadas vai para" @@ -26872,7 +26986,7 @@ msgstr "Sem cliente válido encontrado." msgid "No Customer" msgstr "Sem cliente" -#: gnucash/report/reports/standard/customer-summary.scm:514 +#: gnucash/report/reports/standard/customer-summary.scm:516 msgid "Customer Summary" msgstr "Resumo do cliente" @@ -26925,37 +27039,37 @@ msgstr "" "Faz com que a comparação entre padrões de entradas de fecho seja tratado " "como expressão regular" -#: gnucash/report/reports/standard/equity-statement.scm:423 +#: gnucash/report/reports/standard/equity-statement.scm:425 #: gnucash/report/reports/standard/income-statement.scm:481 -#: gnucash/report/reports/standard/trial-balance.scm:404 +#: gnucash/report/reports/standard/trial-balance.scm:405 msgid "for Period" msgstr "para Período" -#: gnucash/report/reports/standard/equity-statement.scm:450 -#: gnucash/report/reports/standard/equity-statement.scm:486 +#: gnucash/report/reports/standard/equity-statement.scm:452 +#: gnucash/report/reports/standard/equity-statement.scm:488 msgid "Capital" msgstr "Capital" -#: gnucash/report/reports/standard/equity-statement.scm:461 +#: gnucash/report/reports/standard/equity-statement.scm:463 msgid "Investments" msgstr "Investimentos" -#: gnucash/report/reports/standard/equity-statement.scm:466 +#: gnucash/report/reports/standard/equity-statement.scm:468 msgid "Withdrawals" msgstr "Levantamentos" -#: gnucash/report/reports/standard/equity-statement.scm:479 +#: gnucash/report/reports/standard/equity-statement.scm:481 msgid "Increase in capital" msgstr "Aumento de capital" -#: gnucash/report/reports/standard/equity-statement.scm:480 +#: gnucash/report/reports/standard/equity-statement.scm:482 msgid "Decrease in capital" msgstr "Decréscimo de capital" #: gnucash/report/reports/standard/general-journal.scm:94 #: gnucash/report/reports/standard/general-ledger.scm:68 #: gnucash/report/reports/standard/register.scm:135 -#: gnucash/report/reports/standard/register.scm:388 +#: gnucash/report/reports/standard/register.scm:359 #: gnucash/report/trep-engine.scm:943 gnucash/report/trep-engine.scm:1071 msgid "Num/Action" msgstr "Núm/Acção" @@ -26963,7 +27077,7 @@ msgstr "Núm/Acção" #: gnucash/report/reports/standard/general-journal.scm:102 #: gnucash/report/reports/standard/general-ledger.scm:82 #: gnucash/report/reports/standard/general-ledger.scm:102 -#: gnucash/report/reports/standard/register.scm:441 +#: gnucash/report/reports/standard/register.scm:412 #: gnucash/report/trep-engine.scm:958 gnucash/report/trep-engine.scm:1092 #: gnucash/report/trep-engine.scm:1380 msgid "Running Balance" @@ -26972,7 +27086,7 @@ msgstr "Saldo corrente" #: gnucash/report/reports/standard/general-journal.scm:103 #: gnucash/report/reports/standard/general-ledger.scm:83 #: gnucash/report/reports/standard/general-ledger.scm:103 -#: gnucash/report/reports/standard/register.scm:446 +#: gnucash/report/reports/standard/register.scm:417 #: gnucash/report/trep-engine.scm:959 msgid "Totals" msgstr "Totais" @@ -27297,8 +27411,8 @@ msgstr "" "Se deve ou não incluir uma linha indicando o saldo total de contas de bolsa." #: gnucash/report/reports/standard/income-statement.scm:518 -#: libgnucash/engine/Account.cpp:4328 libgnucash/engine/Scrub.c:457 -#: libgnucash/engine/Scrub.c:522 +#: libgnucash/engine/Account.cpp:4375 libgnucash/engine/Scrub.c:472 +#: libgnucash/engine/Scrub.c:537 msgid "Trading" msgstr "Bolsa" @@ -27307,7 +27421,7 @@ msgid "Total Trading" msgstr "Total de negócio" #: gnucash/report/reports/standard/income-statement.scm:572 -#: gnucash/report/reports/standard/trial-balance.scm:572 +#: gnucash/report/reports/standard/trial-balance.scm:573 msgid "Income Statement" msgstr "Declaração de rendimento" @@ -27413,14 +27527,14 @@ msgid "Location for Picture" msgstr "" #: gnucash/report/reports/standard/invoice.scm:213 -#: gnucash/report/reports/standard/register.scm:383 +#: gnucash/report/reports/standard/register.scm:354 #: gnucash/report/reports/standard/taxinvoice.scm:135 #: gnucash/report/trep-engine.scm:940 msgid "Display the date?" msgstr "Mostrar a data?" #: gnucash/report/reports/standard/invoice.scm:218 -#: gnucash/report/reports/standard/register.scm:398 +#: gnucash/report/reports/standard/register.scm:369 #: gnucash/report/trep-engine.scm:945 msgid "Display the description?" msgstr "Mostrar a descrição?" @@ -27919,7 +28033,7 @@ msgstr "Venda" #: gnucash/report/reports/standard/new-owner-report.scm:56 #: gnucash/report/reports/standard/owner-report.scm:57 -#: gnucash/report/report-utilities.scm:104 +#: gnucash/report/report-utilities.scm:116 msgid "Credits" msgstr "Créditos" @@ -28015,7 +28129,7 @@ msgid "Display the period credits column?" msgstr "Mostrar a coluna de créditos do período?" #: gnucash/report/reports/standard/new-owner-report.scm:928 -#: gnucash/report/reports/standard/register.scm:442 +#: gnucash/report/reports/standard/register.scm:413 #: gnucash/report/trep-engine.scm:958 msgid "Display a running balance?" msgstr "Mostrar um saldo em execução?" @@ -28438,7 +28552,7 @@ msgid "Reconciliation Report" msgstr "Relatório de reconciliação" #: gnucash/report/reports/standard/register.scm:148 -#: gnucash/report/reports/standard/register.scm:417 +#: gnucash/report/reports/standard/register.scm:388 #: libgnucash/engine/gnc-lot.c:779 msgid "Lot" msgstr "Lote" @@ -28451,97 +28565,97 @@ msgstr "Valor de débito" msgid "Credit Value" msgstr "Valor de crédito" -#: gnucash/report/reports/standard/register.scm:377 +#: gnucash/report/reports/standard/register.scm:348 msgid "The title of the report." msgstr "O título do relatório." -#: gnucash/report/reports/standard/register.scm:389 +#: gnucash/report/reports/standard/register.scm:360 msgid "Display the check number/action?" msgstr "Mostrar o número/acção do cheque?" -#: gnucash/report/reports/standard/register.scm:393 +#: gnucash/report/reports/standard/register.scm:364 #: gnucash/report/trep-engine.scm:943 gnucash/report/trep-engine.scm:944 msgid "Display the check number?" msgstr "Mostrar o número do cheque?" -#: gnucash/report/reports/standard/register.scm:403 +#: gnucash/report/reports/standard/register.scm:374 #: gnucash/report/trep-engine.scm:972 msgid "Display the memo?" msgstr "Mostrar o memorando?" -#: gnucash/report/reports/standard/register.scm:408 +#: gnucash/report/reports/standard/register.scm:379 msgid "Display the account?" msgstr "Mostrar a conta?" -#: gnucash/report/reports/standard/register.scm:413 +#: gnucash/report/reports/standard/register.scm:384 #: gnucash/report/trep-engine.scm:953 msgid "Display the number of shares?" msgstr "Mostrar o número de acções?" -#: gnucash/report/reports/standard/register.scm:418 +#: gnucash/report/reports/standard/register.scm:389 msgid "Display the name of lot the shares are in?" msgstr "Mostrar o nome do lote em que as acções estão?" -#: gnucash/report/reports/standard/register.scm:423 +#: gnucash/report/reports/standard/register.scm:394 #: gnucash/report/trep-engine.scm:955 msgid "Display the shares price?" msgstr "Mostrar a cotação das acções?" -#: gnucash/report/reports/standard/register.scm:428 +#: gnucash/report/reports/standard/register.scm:399 #: gnucash/report/trep-engine.scm:1017 msgid "Display the amount?" msgstr "Mostrar o montante?" -#: gnucash/report/reports/standard/register.scm:431 +#: gnucash/report/reports/standard/register.scm:402 #: gnucash/report/trep-engine.scm:1007 gnucash/report/trep-engine.scm:1021 msgid "Single" msgstr "Única" -#: gnucash/report/reports/standard/register.scm:431 +#: gnucash/report/reports/standard/register.scm:402 #: gnucash/report/trep-engine.scm:1021 msgid "Single Column Display." msgstr "Exibição em coluna única." -#: gnucash/report/reports/standard/register.scm:432 +#: gnucash/report/reports/standard/register.scm:403 #: gnucash/report/trep-engine.scm:1022 msgid "Double" msgstr "Dupla" -#: gnucash/report/reports/standard/register.scm:432 +#: gnucash/report/reports/standard/register.scm:403 #: gnucash/report/trep-engine.scm:1022 msgid "Two Column Display." msgstr "Exibição em coluna dupla." -#: gnucash/report/reports/standard/register.scm:437 +#: gnucash/report/reports/standard/register.scm:408 msgid "Display the value in transaction currency?" msgstr "Mostrar o valor na moeda da transacção?" -#: gnucash/report/reports/standard/register.scm:447 +#: gnucash/report/reports/standard/register.scm:418 #: gnucash/report/trep-engine.scm:959 msgid "Display the totals?" msgstr "Mostrar os totais?" -#: gnucash/report/reports/standard/register.scm:586 +#: gnucash/report/reports/standard/register.scm:557 msgid "Total Debits" msgstr "Total de débitos" -#: gnucash/report/reports/standard/register.scm:588 +#: gnucash/report/reports/standard/register.scm:559 msgid "Total Credits" msgstr "Total de créditos" -#: gnucash/report/reports/standard/register.scm:590 +#: gnucash/report/reports/standard/register.scm:561 msgid "Total Value Debits" msgstr "Valor total de débitos" -#: gnucash/report/reports/standard/register.scm:592 +#: gnucash/report/reports/standard/register.scm:563 msgid "Total Value Credits" msgstr "Valor total de créditos" -#: gnucash/report/reports/standard/register.scm:595 +#: gnucash/report/reports/standard/register.scm:566 msgid "Net Change" msgstr "Alteração líquida" -#: gnucash/report/reports/standard/register.scm:597 +#: gnucash/report/reports/standard/register.scm:568 msgid "Value Change" msgstr "Alteração de valor" @@ -28795,7 +28909,7 @@ msgstr "" "modelo eguile)" #: gnucash/report/reports/standard/trial-balance.scm:61 -#: gnucash/report/reports/standard/trial-balance.scm:569 +#: gnucash/report/reports/standard/trial-balance.scm:570 msgid "Trial Balance" msgstr "Balanço teste" @@ -28898,15 +29012,15 @@ msgstr "Folha de trabalho" msgid "Creates a complete end-of-period work sheet" msgstr "Cria uma folha de trabalho de final de período" -#: gnucash/report/reports/standard/trial-balance.scm:570 +#: gnucash/report/reports/standard/trial-balance.scm:571 msgid "Adjustments" msgstr "Ajustes" -#: gnucash/report/reports/standard/trial-balance.scm:571 +#: gnucash/report/reports/standard/trial-balance.scm:572 msgid "Adjusted Trial Balance" msgstr "Balanço teste ajustado" -#: gnucash/report/reports/standard/trial-balance.scm:860 +#: gnucash/report/reports/standard/trial-balance.scm:861 msgid "Net Loss" msgstr "Perda líquida" @@ -28948,7 +29062,7 @@ msgid "Equity Accounts" msgstr "Contas de capital próprio" #: gnucash/report/reports/support/balsheet-eg.eguile.scm:182 -#: gnucash/report/report-utilities.scm:119 +#: gnucash/report/report-utilities.scm:131 msgid "Trading Accounts" msgstr "Contas de bolsa" @@ -28997,58 +29111,58 @@ msgstr "Página web" msgid "Invoice Date" msgstr "Data da factura" -#: gnucash/report/report-utilities.scm:107 +#: gnucash/report/report-utilities.scm:119 msgid "Stocks" msgstr "Acções" -#: gnucash/report/report-utilities.scm:108 +#: gnucash/report/report-utilities.scm:120 msgid "Mutual Funds" msgstr "Fundos mutualistas" -#: gnucash/report/report-utilities.scm:109 +#: gnucash/report/report-utilities.scm:121 #: libgnucash/engine/gnc-commodity.h:116 msgid "Currencies" msgstr "Moedas" -#: gnucash/report/report-utilities.scm:112 +#: gnucash/report/report-utilities.scm:124 msgid "Equities" msgstr "Capital próprio" -#: gnucash/report/report-utilities.scm:113 +#: gnucash/report/report-utilities.scm:125 msgid "Checking" msgstr "À ordem" -#: gnucash/report/report-utilities.scm:114 +#: gnucash/report/report-utilities.scm:126 msgid "Savings" msgstr "Poupança" -#: gnucash/report/report-utilities.scm:115 +#: gnucash/report/report-utilities.scm:127 msgid "Money Market" msgstr "Mercado monetário" -#: gnucash/report/report-utilities.scm:116 +#: gnucash/report/report-utilities.scm:128 msgid "Accounts Receivable" msgstr "Contas cobráveis" -#: gnucash/report/report-utilities.scm:117 +#: gnucash/report/report-utilities.scm:129 msgid "Accounts Payable" msgstr "Contas pagáveis" -#: gnucash/report/report-utilities.scm:118 +#: gnucash/report/report-utilities.scm:130 msgid "Credit Lines" msgstr "Linhas de crédito" -#: gnucash/report/report-utilities.scm:618 +#: gnucash/report/report-utilities.scm:630 #, scheme-format msgid "Building '~a' report ..." msgstr "A construir o relatório \"~a\"..." -#: gnucash/report/report-utilities.scm:624 +#: gnucash/report/report-utilities.scm:636 #, scheme-format msgid "Rendering '~a' report ..." msgstr "A desenhar o relatório \"~a\"..." -#: gnucash/report/report-utilities.scm:626 +#: gnucash/report/report-utilities.scm:638 #, fuzzy msgid "Untitled" msgstr "Até" @@ -30627,6 +30741,24 @@ msgid "No exchange rate available in SX [%s] for %s -> %s, value is zero." msgstr "" "Sem taxa de câmbio disponível em SX [%s] para %s -> %s, o valor é zero." +#: libgnucash/app-utils/gnc-ui-balances.c:407 +msgid "Account is already at Auto-Clear Balance." +msgstr "" + +#: libgnucash/app-utils/gnc-ui-balances.c:451 +msgid "Too many uncleared splits" +msgstr "" + +#: libgnucash/app-utils/gnc-ui-balances.c:467 +msgid "The selected amount cannot be cleared." +msgstr "O montante seleccionado não pode ser confirmado." + +#: libgnucash/app-utils/gnc-ui-balances.c:473 +msgid "Cannot uniquely clear splits. Found multiple possibilities." +msgstr "" +"Impossível confirmar parcelas exclusivamente. Encontradas múltiplas " +"possibilidades." + #. Translators: This and the following strings appear on #. * the account tab if the Tax Info column is displayed, #. * i.e. if the user wants to record the tax form number @@ -30636,107 +30768,107 @@ msgstr "" #. * account generally corresponds to a specific line number #. * on a paper form and each form has a unique #. * identification (e.g., Form 1040, Schedule A). -#: libgnucash/app-utils/gnc-ui-util.c:625 +#: libgnucash/app-utils/gnc-ui-util.c:634 msgid "Tax-related but has no tax code" msgstr "Sujeita a impostos mas sem código de imposto" -#: libgnucash/app-utils/gnc-ui-util.c:639 +#: libgnucash/app-utils/gnc-ui-util.c:648 msgid "Tax entity type not specified" msgstr "Campo de imposto não especificado" -#: libgnucash/app-utils/gnc-ui-util.c:694 +#: libgnucash/app-utils/gnc-ui-util.c:703 #, c-format msgid "Tax type %s: invalid code %s for account type" msgstr "Tipo de imposto %s: código inválido %s para o tipo de conta" -#: libgnucash/app-utils/gnc-ui-util.c:698 +#: libgnucash/app-utils/gnc-ui-util.c:707 #, c-format msgid "Not tax-related; tax type %s: invalid code %s for account type" msgstr "" "Não sujeita a imposto; tipo de imposto %s: código inválido %s para o tipo de " "conta" -#: libgnucash/app-utils/gnc-ui-util.c:711 +#: libgnucash/app-utils/gnc-ui-util.c:720 #, c-format msgid "Invalid code %s for tax type %s" msgstr "Código %s inválido para o tipo de imposto %s" -#: libgnucash/app-utils/gnc-ui-util.c:715 +#: libgnucash/app-utils/gnc-ui-util.c:724 #, c-format msgid "Not tax-related; invalid code %s for tax type %s" msgstr "Não sujeita a imposto; código inválido %s para o tipo de imposto %s" -#: libgnucash/app-utils/gnc-ui-util.c:733 +#: libgnucash/app-utils/gnc-ui-util.c:742 #, c-format msgid "No form: code %s, tax type %s" msgstr "Sem formulário: código %s, tipo de imposto %s" -#: libgnucash/app-utils/gnc-ui-util.c:737 +#: libgnucash/app-utils/gnc-ui-util.c:746 #, c-format msgid "Not tax-related; no form: code %s, tax type %s" msgstr "Não sujeita a imposto; sem formulário: código %s, tipo de imposto %s" -#: libgnucash/app-utils/gnc-ui-util.c:754 -#: libgnucash/app-utils/gnc-ui-util.c:769 +#: libgnucash/app-utils/gnc-ui-util.c:763 +#: libgnucash/app-utils/gnc-ui-util.c:778 #, c-format msgid "No description: form %s, code %s, tax type %s" msgstr "Sem descrição: formulário %s, código %s, tipo de imposto %s" -#: libgnucash/app-utils/gnc-ui-util.c:758 -#: libgnucash/app-utils/gnc-ui-util.c:773 +#: libgnucash/app-utils/gnc-ui-util.c:767 +#: libgnucash/app-utils/gnc-ui-util.c:782 #, c-format msgid "Not tax-related; no description: form %s, code %s, tax type %s" msgstr "" "Não sujeita a imposto; sem descrição: formulário %s, código %s, tipo de " "imposto %s" -#: libgnucash/app-utils/gnc-ui-util.c:796 +#: libgnucash/app-utils/gnc-ui-util.c:805 #, c-format msgid "Not tax-related; %s%s: %s (code %s, tax type %s)" msgstr "Não sujeita a imposto; %s%s: %s (código %s, tipo de imposto %s)" -#: libgnucash/app-utils/gnc-ui-util.c:843 +#: libgnucash/app-utils/gnc-ui-util.c:852 #, c-format msgid "(Tax-related subaccounts: %d)" msgstr "(Sub-contas sujeitas a imposto: %d)" -#: libgnucash/app-utils/gnc-ui-util.c:863 +#: libgnucash/app-utils/gnc-ui-util.c:872 msgctxt "Reconciled flag 'not cleared'" msgid "n" msgstr "" -#: libgnucash/app-utils/gnc-ui-util.c:865 +#: libgnucash/app-utils/gnc-ui-util.c:874 msgctxt "Reconciled flag 'cleared'" msgid "c" msgstr "" -#: libgnucash/app-utils/gnc-ui-util.c:867 +#: libgnucash/app-utils/gnc-ui-util.c:876 #, fuzzy msgctxt "Reconciled flag 'reconciled'" msgid "y" msgstr "y" -#: libgnucash/app-utils/gnc-ui-util.c:869 +#: libgnucash/app-utils/gnc-ui-util.c:878 msgctxt "Reconciled flag 'frozen'" msgid "f" msgstr "" -#: libgnucash/app-utils/gnc-ui-util.c:871 +#: libgnucash/app-utils/gnc-ui-util.c:880 msgctxt "Reconciled flag 'void'" msgid "v" msgstr "" -#: libgnucash/app-utils/gnc-ui-util.c:911 +#: libgnucash/app-utils/gnc-ui-util.c:920 msgctxt "Document Link flag for 'web'" msgid "w" msgstr "" -#: libgnucash/app-utils/gnc-ui-util.c:913 +#: libgnucash/app-utils/gnc-ui-util.c:922 msgctxt "Document Link flag for 'file'" msgid "f" msgstr "" -#: libgnucash/app-utils/gnc-ui-util.c:942 +#: libgnucash/app-utils/gnc-ui-util.c:951 msgid "Opening Balances" msgstr "Saldos iniciais" @@ -30752,7 +30884,7 @@ msgstr "" "Este relatório foi gravado com uma versão mais recente do Gnucash. Uma das " "novas opções tipo ~a \"~a\" não está disponível, a reverter para \"~a\"." -#: libgnucash/app-utils/option-util.c:1696 +#: libgnucash/app-utils/option-util.c:1663 #, c-format msgid "" "There is a problem with option %s:%s.\n" @@ -30761,7 +30893,7 @@ msgstr "" "Há um problema com a opção %s:%s.\n" "%s" -#: libgnucash/app-utils/option-util.c:1697 +#: libgnucash/app-utils/option-util.c:1664 msgid "Invalid option value" msgstr "Valor de opção inválido" @@ -30823,7 +30955,7 @@ msgid_plural "The following files could not be moved to {1}:" msgstr[0] "Impossível mover o ficheiro seguinte para {1}:" msgstr[1] "Impossível mover os ficheiros seguintes para {1}:" -#: libgnucash/engine/Account.cpp:255 +#: libgnucash/engine/Account.cpp:256 #, c-format msgid "" "The separator character \"%s\" is used in one or more account names.\n" @@ -30842,40 +30974,40 @@ msgstr "" "Abaixo encontrará a lista dos nomes de conta inválidos:\n" "%s" -#: libgnucash/engine/Account.cpp:4317 +#: libgnucash/engine/Account.cpp:4364 msgid "Credit Card" msgstr "Cartão de crédito" -#: libgnucash/engine/Account.cpp:4319 +#: libgnucash/engine/Account.cpp:4366 msgid "Stock" msgstr "Acção" -#: libgnucash/engine/Account.cpp:4320 +#: libgnucash/engine/Account.cpp:4367 msgid "Mutual Fund" msgstr "Fundo de investimento" -#: libgnucash/engine/Account.cpp:4325 +#: libgnucash/engine/Account.cpp:4372 msgid "A/Receivable" msgstr "C/Cobrável" -#: libgnucash/engine/Account.cpp:4326 +#: libgnucash/engine/Account.cpp:4373 msgid "A/Payable" msgstr "C/Pagável" -#: libgnucash/engine/Account.cpp:4327 +#: libgnucash/engine/Account.cpp:4374 msgid "Root" msgstr "Raiz" -#: libgnucash/engine/Account.cpp:4769 +#: libgnucash/engine/Account.cpp:4816 msgid "Orphaned Gains" msgstr "Ganhos orfãos" -#: libgnucash/engine/Account.cpp:4783 libgnucash/engine/cap-gains.c:806 +#: libgnucash/engine/Account.cpp:4830 libgnucash/engine/cap-gains.c:806 #: libgnucash/engine/cap-gains.c:811 libgnucash/engine/cap-gains.c:812 msgid "Realized Gain/Loss" msgstr "Ganho/Perda realizado" -#: libgnucash/engine/Account.cpp:4785 +#: libgnucash/engine/Account.cpp:4832 msgid "" "Realized Gains or Losses from Commodity or Trading Accounts that haven't " "been recorded elsewhere." @@ -30931,7 +31063,7 @@ msgstr "" msgid "Value appears to contain a year while the selected format forbids this." msgstr "O valor parece conter um ano enquanto o formato seleccionado o proíbe." -#: libgnucash/engine/gnc-features.c:118 +#: libgnucash/engine/gnc-features.c:119 msgid "" "This Dataset contains features not supported by this version of GnuCash. You " "must use a newer version of GnuCash in order to support the following " @@ -31060,7 +31192,7 @@ msgstr "%s %s" msgid "Unknown, %d-size list." msgstr "Desconhecido, %d na lista" -#: libgnucash/engine/ScrubBusiness.c:547 +#: libgnucash/engine/ScrubBusiness.c:548 msgid "" "Please delete this transaction. Explanation at https://wiki.gnucash.org/wiki/" "Business_Features_Issues#Double_posting" @@ -31068,7 +31200,7 @@ msgstr "" "Por favor, elimine esta transacção. Explicação em https://wiki.gnucash.org/" "wiki/Business_Features_Issues#Double_posting" -#: libgnucash/engine/ScrubBusiness.c:563 +#: libgnucash/engine/ScrubBusiness.c:564 msgid "" "Please delete this transaction. Explanation at https://wiki.gnucash.org/wiki/" "Business_Features_Issues#I_can.27t_delete_a_transaction_of_type_.22I.22_from_the_AR.2FAP_account" @@ -31077,22 +31209,22 @@ msgstr "" "wiki/" "Business_Features_Issues#I_can.27t_delete_a_transaction_of_type_.22I.22_from_the_AR.2FAP_account" -#: libgnucash/engine/ScrubBusiness.c:614 +#: libgnucash/engine/ScrubBusiness.c:615 #, c-format msgid "Checking business lots in account %s: %u of %u" msgstr "A verificar lotes na conta %s: %u de %u" -#: libgnucash/engine/ScrubBusiness.c:664 +#: libgnucash/engine/ScrubBusiness.c:669 #, c-format msgid "Checking business splits in account %s: %u of %u" msgstr "A verificar desdobramentos na conta %s: %u de %u" -#: libgnucash/engine/Scrub.c:124 +#: libgnucash/engine/Scrub.c:134 #, c-format msgid "Looking for orphans in account %s: %u of %u" msgstr "A procurar órfãs na conta %s: %u de %u" -#: libgnucash/engine/Scrub.c:329 +#: libgnucash/engine/Scrub.c:344 #, c-format msgid "Looking for imbalances in account %s: %u of %u" msgstr "A procurar desequilíbrios na conta %s: %u de %u" @@ -31116,6 +31248,15 @@ msgstr "Transacção esvaziada" msgid "No help available." msgstr "Sem ajuda disponível" +#~ msgid "Searching for splits to clear ..." +#~ msgstr "A procurar parcelas para confirmar..." + +#~ msgid "Auto-Clear Information" +#~ msgstr "Informação de confirmação automática" + +#~ msgid "Exchange rates" +#~ msgstr "Taxas de câmbio" + #, c-format #~ msgid "Bad URL %s" #~ msgstr "URL incorrecto: %s" @@ -32210,9 +32351,6 @@ msgstr "Sem ajuda disponível" #~ "\n" #~ "Se já não pensa executar " -#~ msgid "OK" -#~ msgstr "Aceitar" - #~ msgid "" #~ "\n" #~ "\n" From 93f500bd4d312d279db7fe9add17de42403477c8 Mon Sep 17 00:00:00 2001 From: "Frank H. Ellenberger" Date: Fri, 27 Nov 2020 16:56:19 +0100 Subject: [PATCH 163/167] Move pt translation to Translation Project https://lists.gnucash.org/pipermail/gnucash-devel/2020-November/045581.html --- po/CMakeLists.txt | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/po/CMakeLists.txt b/po/CMakeLists.txt index 28622d07bf..d2120782f1 100644 --- a/po/CMakeLists.txt +++ b/po/CMakeLists.txt @@ -2,9 +2,9 @@ add_subdirectory(glossary) # Set of available languages: # * managed at the Translation Project (TP): -set (TP_LINGUAS ca cs da eu fa ja ro rw sk sr sv tr uk zh_CN) +set (TP_LINGUAS ca cs da eu fa ja pt ro rw sk sr sv tr uk zh_CN) # * already marked as external at TP or they have no language team: -set (GC_LINGUAS ar as az bg brx de doi el en_GB es es_NI et fi fr gu he hi hr hu id it kn ko kok kok@latin ks lt lv mai mni mni@bengali mr nb ne nl pl pt pt_BR ru ta te ur vi zh_TW) +set (GC_LINGUAS ar as az bg brx de doi el en_GB es es_NI et fi fr gu he hi hr hu id it kn ko kok kok@latin ks lt lv mai mni mni@bengali mr nb ne nl pl pt_BR ru ta te ur vi zh_TW) # * New or unmarked: The release manager should announce them to TP # and when listed there move in the respective group above. set (NEW_LINGUAS) From 9d99ebe30cc1978ef769f4d19b25369b64f83c3b Mon Sep 17 00:00:00 2001 From: Robert Fewell <14uBobIT@gmail.com> Date: Sun, 22 Nov 2020 10:52:45 +0000 Subject: [PATCH 164/167] Bug 309943 - When unable to obtain a lock, no option to open another file Currently when you get the message that GnuCash could not obtain a lock for the file to be opened you have four options... Open Read-Only, Create New File, Open Anyway, Quit This commit changes the 'Create new File' to 'Open with No File' which allows the user to then select... 'File->New' to create a new file, 'File->Open' to open a different file or one chosen from the history or 'File->Quit' to exit. --- gnucash/gnome-utils/gnc-file.c | 13 ++++++------- 1 file changed, 6 insertions(+), 7 deletions(-) diff --git a/gnucash/gnome-utils/gnc-file.c b/gnucash/gnome-utils/gnc-file.c index 86b45725e9..37a0fc79b8 100644 --- a/gnucash/gnome-utils/gnc-file.c +++ b/gnucash/gnome-utils/gnc-file.c @@ -695,7 +695,7 @@ gnc_file_query_save (GtkWindow *parent, gboolean can_cancel) /* private utilities for file open; done in two stages */ -#define RESPONSE_NEW 1 +#define RESPONSE_NO_FILE 1 #define RESPONSE_OPEN 2 #define RESPONSE_QUIT 3 #define RESPONSE_READONLY 4 @@ -848,8 +848,8 @@ RESTART: gnc_gtk_dialog_add_button(dialog, _("_Open Read-Only"), "document-revert", RESPONSE_READONLY); - gnc_gtk_dialog_add_button(dialog, _("_Create New File"), - "document-new", RESPONSE_NEW); + gnc_gtk_dialog_add_button(dialog, _("_Open with No File"), + "document-new", RESPONSE_NO_FILE); gnc_gtk_dialog_add_button(dialog, _("Open _Anyway"), "document-open", RESPONSE_OPEN); if (shutdown_cb) @@ -861,7 +861,7 @@ RESTART: if (rc == GTK_RESPONSE_DELETE_EVENT) { - rc = shutdown_cb ? RESPONSE_QUIT : RESPONSE_NEW; + rc = shutdown_cb ? RESPONSE_QUIT : RESPONSE_NO_FILE; } switch (rc) { @@ -881,10 +881,9 @@ RESTART: break; default: /* Can't use the given file, so just create a new - * database so that the user will get a window that - * they can click "Exit" on. + * Gnucash window so they can choose File->New, File->Open + * or just "Exit". */ - gnc_file_new (parent); break; } } From 72d742e29b7f1c101122b76f55b82da58f41676a Mon Sep 17 00:00:00 2001 From: Robert Fewell <14uBobIT@gmail.com> Date: Sun, 22 Nov 2020 10:57:12 +0000 Subject: [PATCH 165/167] Change the icons used for the file lock message --- gnucash/gnome-utils/gnc-file.c | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/gnucash/gnome-utils/gnc-file.c b/gnucash/gnome-utils/gnc-file.c index 37a0fc79b8..dd22ea08c6 100644 --- a/gnucash/gnome-utils/gnc-file.c +++ b/gnucash/gnome-utils/gnc-file.c @@ -847,11 +847,11 @@ RESTART: gtk_window_set_skip_taskbar_hint(GTK_WINDOW(dialog), FALSE); gnc_gtk_dialog_add_button(dialog, _("_Open Read-Only"), - "document-revert", RESPONSE_READONLY); + "emblem-readonly", RESPONSE_READONLY); gnc_gtk_dialog_add_button(dialog, _("_Open with No File"), - "document-new", RESPONSE_NO_FILE); + "document-new-symbolic", RESPONSE_NO_FILE); gnc_gtk_dialog_add_button(dialog, _("Open _Anyway"), - "document-open", RESPONSE_OPEN); + "document-open-symbolic", RESPONSE_OPEN); if (shutdown_cb) gtk_dialog_add_button(GTK_DIALOG(dialog), _("_Quit"), RESPONSE_QUIT); From 161ab691d68c80fa8b99b6250adbed2eda09040f Mon Sep 17 00:00:00 2001 From: Robert Fewell <14uBobIT@gmail.com> Date: Sat, 28 Nov 2020 14:10:29 +0000 Subject: [PATCH 166/167] Bug 343647 - Keep scrolled report location If you have a large report and have scrolled down to the bottom and decide to tab to a different page and come back the report is back at the top. This was due to reloading the report before focusing so change this so it only loads once, if the report needs refreshing then there is the reload toolbar button. --- gnucash/gnome/gnc-plugin-page-report.c | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/gnucash/gnome/gnc-plugin-page-report.c b/gnucash/gnome/gnc-plugin-page-report.c index e7f260e576..8cebd4f733 100644 --- a/gnucash/gnome/gnc-plugin-page-report.c +++ b/gnucash/gnome/gnc-plugin-page-report.c @@ -124,6 +124,7 @@ typedef struct GncPluginPageReportPrivate /* The page is in the process of reloading the html */ gboolean reloading; + gboolean loaded; /// the gnc_html abstraction this PluginPage contains // gnc_html *html; @@ -255,7 +256,8 @@ gnc_plugin_page_report_focus_widget (GncPluginPage *report_plugin_page) { GtkWidget *widget = gnc_html_get_webview (priv->html); - gnc_plugin_page_report_load_uri (report_plugin_page); + if (!priv->loaded) // so we only do the load once + gnc_plugin_page_report_load_uri (report_plugin_page); if (GTK_IS_WIDGET(widget)) { @@ -384,6 +386,8 @@ gnc_plugin_page_report_load_uri (GncPluginPage *page) gnc_html_show_url(priv->html, type, url_location, url_label, 0); g_free(url_location); + priv->loaded = TRUE; + gnc_plugin_page_report_set_progressbar( page, FALSE ); // this resets the window for the progressbar to NULL @@ -460,6 +464,7 @@ gnc_plugin_page_report_create_widget( GncPluginPage *page ) // priv->html = gnc_html_new( topLvl ); priv->html = gnc_html_factory_create_html(); gnc_html_set_parent( priv->html, topLvl ); + priv->loaded = FALSE; gnc_html_history_set_node_destroy_cb(gnc_html_get_history(priv->html), gnc_plugin_page_report_history_destroy_cb, From 979f6acf91555300cb57efa3f412ac0268ae4e81 Mon Sep 17 00:00:00 2001 From: Robert Fewell <14uBobIT@gmail.com> Date: Sat, 28 Nov 2020 15:22:48 +0000 Subject: [PATCH 167/167] Change the mnemonic of '_Open with No File' to 'Open with _No File' to fix conflict. --- gnucash/gnome-utils/gnc-file.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/gnucash/gnome-utils/gnc-file.c b/gnucash/gnome-utils/gnc-file.c index dd22ea08c6..1c20ea37b5 100644 --- a/gnucash/gnome-utils/gnc-file.c +++ b/gnucash/gnome-utils/gnc-file.c @@ -848,7 +848,7 @@ RESTART: gnc_gtk_dialog_add_button(dialog, _("_Open Read-Only"), "emblem-readonly", RESPONSE_READONLY); - gnc_gtk_dialog_add_button(dialog, _("_Open with No File"), + gnc_gtk_dialog_add_button(dialog, _("Open with _No File"), "document-new-symbolic", RESPONSE_NO_FILE); gnc_gtk_dialog_add_button(dialog, _("Open _Anyway"), "document-open-symbolic", RESPONSE_OPEN);