From 5c13da0e59901bbcdad97dc9511fb9a1e17bc5bc Mon Sep 17 00:00:00 2001 From: Geert Janssens Date: Fri, 12 Feb 2021 18:52:04 +0100 Subject: [PATCH] Move fetching quotes info to gnc-commands It needs gnc-prefs which I don't want to add by default to gnucash-cli. --- gnucash/gnucash-cli.cpp | 19 +------------------ gnucash/gnucash-commands.cpp | 24 ++++++++++++++++++++++++ gnucash/gnucash-commands.hpp | 1 + 3 files changed, 26 insertions(+), 18 deletions(-) diff --git a/gnucash/gnucash-cli.cpp b/gnucash/gnucash-cli.cpp index d384675a94..90e6a1b8cf 100644 --- a/gnucash/gnucash-cli.cpp +++ b/gnucash/gnucash-cli.cpp @@ -131,24 +131,7 @@ Gnucash::GnucashCli::start ([[maybe_unused]] int argc, [[maybe_unused]] char **a { if (*m_quotes_cmd == "info") { - GncQuotes quotes; - if (quotes.cmd_result() == 0) - { - std::cout << bl::format (bl::translate ("Found Finance::Quote version {1}.")) % quotes.version() << "\n"; - std::cout << bl::translate ("Finance::Quote sources: "); - for (auto source : quotes.sources()) - std::cout << source << " "; - std::cout << std::endl; - return 0; - } - else - { - std::cerr << bl::translate ("Finance::Quote isn't " - "installed properly.") << "\n"; - std::cerr << bl::translate ("Error message:") << "\n"; - std::cerr << quotes.error_msg() << std::endl; - return 1; - } + return Gnucash::quotes_info (); } else if (*m_quotes_cmd == "get") { diff --git a/gnucash/gnucash-commands.cpp b/gnucash/gnucash-commands.cpp index 3d84c6183e..290c97c877 100644 --- a/gnucash/gnucash-commands.cpp +++ b/gnucash/gnucash-commands.cpp @@ -352,6 +352,30 @@ scm_report_list ([[maybe_unused]] void *data, return; } +int +Gnucash::quotes_info (void) +{ + gnc_prefs_init (); + GncQuotes quotes; + if (quotes.cmd_result() == 0) + { + std::cout << bl::format (bl::translate ("Found Finance::Quote version {1}.")) % quotes.version() << "\n"; + std::cout << bl::translate ("Finance::Quote sources: "); + for (auto source : quotes.sources()) + std::cout << source << " "; + std::cout << std::endl; + return 0; + } + else + { + std::cerr << bl::translate ("Finance::Quote isn't " + "installed properly.") << "\n"; + std::cerr << bl::translate ("Error message:") << "\n"; + std::cerr << quotes.error_msg() << std::endl; + return 1; + } +} + int Gnucash::add_quotes (const bo_str& uri) { diff --git a/gnucash/gnucash-commands.hpp b/gnucash/gnucash-commands.hpp index 01511d5847..d5958ae5f7 100644 --- a/gnucash/gnucash-commands.hpp +++ b/gnucash/gnucash-commands.hpp @@ -32,6 +32,7 @@ using bo_str = boost::optional ; namespace Gnucash { + int quotes_info (void); int add_quotes (const bo_str& uri); int run_report (const bo_str& file_to_load, const bo_str& run_report,