diff options
-rw-r--r-- | balance.cc | 15 | ||||
-rw-r--r-- | ledger.cc | 2 | ||||
-rw-r--r-- | ledger.h | 9 |
3 files changed, 16 insertions, 10 deletions
@@ -43,7 +43,7 @@ void report_balances(std::ostream& out, std::vector<entry *>& ledger, std::cout.width(10); std::cout << std::right << "Cleared" << std::endl; - for (std::map<const std::string, account *>::iterator i = accounts.begin(); + for (accounts_iterator i = accounts.begin(); i != accounts.end(); i++) { if (! show_empty && ! (*i).second->future) @@ -108,13 +108,12 @@ void report_balances(std::ostream& out, std::vector<entry *>& ledger, #if 0 if (regexps.empty()) { #endif - // jww (2003-09-29): Let `totals' be streamed - future_balance.print(std::cout); - std::cout << " "; - current_balance.print(std::cout); - std::cout << " "; - cleared_balance.print(std::cout); - std::cout << std::endl; + std::cout.width(10); + std::cout << std::right << future_balance << " "; + std::cout.width(10); + std::cout << std::right << current_balance << " "; + std::cout.width(10); + std::cout << std::right << cleared_balance << std::endl; #if 0 } #endif @@ -89,7 +89,7 @@ totals::operator bool() const void totals::print(std::ostream& out) const { for (const_iterator_t i = amounts.begin(); i != amounts.end(); i++) - std::cout << (*i).first << " = " << *((*i).second) << std::endl; + std::cout << (*i).first << " = " << *((*i).second); } amount * totals::value(const std::string& commodity) @@ -1,5 +1,5 @@ #ifndef _LEDGER_H -#define _LEDGER_H "$Revision: 1.1 $" +#define _LEDGER_H "$Revision: 1.2 $" ////////////////////////////////////////////////////////////////////// // @@ -210,6 +210,13 @@ class totals } }; +template<class Traits> +std::basic_ostream<char, Traits> & +operator<<(std::basic_ostream<char, Traits>& out, const totals& t) { + t.print(out); + return out; +} + struct account { std::string name; |