diff options
author | John Wiegley <johnw@newartisans.com> | 2004-08-09 17:49:06 -0400 |
---|---|---|
committer | John Wiegley <johnw@newartisans.com> | 2004-08-09 17:49:06 -0400 |
commit | 799e97e420133eb25a321f30a61f857831a93dac (patch) | |
tree | 1814819ec53b198e8785f2242522786fd314c605 | |
parent | 6e6246c927ab0d39dfd65f20e51c3f1b036c8ea9 (diff) | |
download | fork-ledger-799e97e420133eb25a321f30a61f857831a93dac.tar.gz fork-ledger-799e97e420133eb25a321f30a61f857831a93dac.tar.bz2 fork-ledger-799e97e420133eb25a321f30a61f857831a93dac.zip |
more bug fixes
-rw-r--r-- | format.cc | 22 | ||||
-rw-r--r-- | walk.h | 3 |
2 files changed, 17 insertions, 8 deletions
@@ -191,12 +191,16 @@ void format_t::format_elements(std::ostream& out, out << ""; break; - case element_t::CODE: - if (details.entry && ! details.entry->code.empty()) - out << "(" << details.entry->code << ") "; - else - out << ""; + case element_t::CODE: { + std::string temp; + if (details.entry && ! details.entry->code.empty()) { + temp += "("; + temp += details.entry->code; + temp += ") "; + } + out << temp; break; + } case element_t::PAYEE: if (details.entry) @@ -211,15 +215,19 @@ void format_t::format_elements(std::ostream& out, std::string name = (elem->type == element_t::ACCOUNT_FULLNAME ? details.account->fullname() : partial_account_name(details.account)); - if (elem->max_width > 0) - name = truncated(name, elem->max_width); if (details.xact && details.xact->flags & TRANSACTION_VIRTUAL) { + if (elem->max_width > 2) + name = truncated(name, elem->max_width - 2); + if (details.xact->flags & TRANSACTION_BALANCE) name = "[" + name + "]"; else name = "(" + name + ")"; } + else if (elem->max_width > 0) + name = truncated(name, elem->max_width); + out << name; } else { out << " "; @@ -69,7 +69,8 @@ void handle_transaction(transaction_t * xact, for (transactions_list::iterator i = xact->entry->transactions.begin(); i != xact->entry->transactions.end(); i++) - if (! ((*i)->flags & TRANSACTION_AUTO) && + if ((! (flags & OTHER_TRANSACTIONS) || + ! ((*i)->flags & TRANSACTION_AUTO)) && ! ((*i)->dflags & TRANSACTION_HANDLED) && (*i == xact ? (flags & MATCHING_TRANSACTIONS) : (flags & OTHER_TRANSACTIONS))) { |