This means they will always exist in the value store after parsing and
are set to true or false. This eliminates the need to test for their
existence first.
Contrary to gtk_init, boost::program_options won't remove parsed options from
the argument list so there's no need to provide the option to update
the list.
* As the gtk command line options are only relevant for
gnucash and not gnucash-cli, remove the bit that adds
them from Gnucash::CoreApp.
* As the gtk command line options are parsed out by gtk_init_check
it's sufficient to run that before parsing our own command line
options to have gtk handle them for us.
* That just leaves us with the loss of a help message for the
gtk command line options. To handle that we derive a class
Gnucash::Gnucash from Gnucash::CoreApp which will generate an
option context for the gtk options purely to extract the help message.
This will then be used if the users pass option --help-gtk.
This is a bit clumsy to do with GOptionContext as it requires to store
a few gnucash only parameters in Gnucash::CoreApp. The plan is to
improve this in a future commit.
Note however we will still be stuck with the dummy option context generation
for the gtk option help message. There's just no other way to extract this
message otherwise.
KDevelop erroneously interprets [[ as the beginning of a C++17 attribute which
messes up all subsequent formatting. Changing this to '[ [' (with a space in between)
resolves the issue.
- Remove unneeded includes, required a few fixes in other header files
- Silence unused parameter warnings using c++17 attribute [[maybe_unused]]
- Remove some duplicate, unused functions from gnucash and gnucash-cli
They were a left over from a previous commit
This is just a first start, more refactoring will follow in later commits.
The idea is to have an application class that provides the basic framework
gnucash and gnucash-cli will become specializations of this class adding their
specific functionality. I'm splitting this over several commits to be able to
keep track of all the many changes.
This tool is intended to expose certain gnucash functions to a command line interface.
The first one is --add-price-quotes. This option currently also exists in gnucash.
It will be marked deprecated there. Future extensions to this can be things like
report generation, non-interactive imports,...
For release notes:
* new reports are now using different options and renderer
* options and layout are different
* Old reports still accessible via --extras
make gnc_path_get_localedir() and GETTEXT_PACKAGE available for python
to access locales. Import gettext module to provide _ as translator
method. Provide null _-method returning english text in case of missing gettext.
Make a lot of messages translatable by adding _-method. Include python
files to create .pot-files.
Displays the Transaction Association link in the Transaction Report and
when selected will open the association outside of Gnucash as it
currently does when opened from the register.
Use the existing associations functions to do the updating, opening and
removing of the association for invoices and all objects that use the
invoice interface. The actual association when present is added as a
link button which is shown below the notes.