The "astyle" indent tool unfortunately behaves significantly different
in its different versions (1.22, 1.23, 1.24) even with identical
options. That is, the basic indentation is the same, but in a large
project such as ours, there are just too many special cases which
astyle doesn't get identical due to its bugfixes and new features.
Hence, please use the result of this target with great care, and
if in doubt, just use it for your own amusement but don't commit the
resulting changes. Thanks!
git-svn-id: svn+ssh://svn.gnucash.org/repo/gnucash/trunk@18760 57a11ea4-9604-0410-9ed3-97b8803252fd
Those were introduced in r17724, bug#539957, but apparently this
C99 is not supported by MSVC and won't be for some time to come.
Hence, for MSVC we need the workaround to define a macro that will
shadow the member names. However, the initialization itself works
fine and non-MSVC code is unchanged, so I think we can live with that.
git-svn-id: svn+ssh://svn.gnucash.org/repo/gnucash/trunk@18755 57a11ea4-9604-0410-9ed3-97b8803252fd
Somehow, the struct initialization containing a gnc_numeric
doesn't work. As an exception, we hand-initialize that member
afterwards.
git-svn-id: svn+ssh://svn.gnucash.org/repo/gnucash/trunk@18754 57a11ea4-9604-0410-9ed3-97b8803252fd
This is required by MSVC because we do some pointer arithmetic
in the memcpy() argument, but in order to do this, MSVC wants to
know the pointed-to type of the pointer because pointer arithmetic
increases the pointer not by a number a bytes but a number of
sizeof(type). MSVC thinks for void* it doesn't count bytes. We
achieve the desired effect by using a char* pointer so that bytes
are counted.
git-svn-id: svn+ssh://svn.gnucash.org/repo/gnucash/trunk@18752 57a11ea4-9604-0410-9ed3-97b8803252fd
That is, gcc accepts a constant variable in many cases now, but
MSVC doesn't accept it. So it must be turned into an old preprocessor
define.
git-svn-id: svn+ssh://svn.gnucash.org/repo/gnucash/trunk@18750 57a11ea4-9604-0410-9ed3-97b8803252fd
This also strips trailing whitespaces from lines where they existed.
This re-indentation was done using astyle-1.24 using the following options:
astyle --indent=spaces=4 --brackets=break --pad-oper --pad-header --suffix=none
git-svn-id: svn+ssh://svn.gnucash.org/repo/gnucash/trunk@18746 57a11ea4-9604-0410-9ed3-97b8803252fd
Latest patch by Yasuaki Taniguchi to fix two problems 1) Can't use account separator char when entering account name in a split, and 2) Can't use <SHIFT>+ and <SHIFT>- to go forward/backward a week.
git-svn-id: svn+ssh://svn.gnucash.org/repo/gnucash/trunk@18742 57a11ea4-9604-0410-9ed3-97b8803252fd
The mingw website has changed quite a lot since the README
was written and some of the url's used in it were confusing.
I have changed the url's to point to the actual packages
on sourceforge (current at the time of this writing)
and added some extra details where I had trouble understanding
the actions to perform.
git-svn-id: svn+ssh://svn.gnucash.org/repo/gnucash/trunk@18740 57a11ea4-9604-0410-9ed3-97b8803252fd
- Have this file show up under module "Utility Functions"
- Normalize the function descriptions (some were not in doxygen format)
- Add a global file description
- rename parameter 'file' to 'filename' for better consistency (note
this required an internal parameter to be renamed from filename to
new_filename)
git-svn-id: svn+ssh://svn.gnucash.org/repo/gnucash/trunk@18739 57a11ea4-9604-0410-9ed3-97b8803252fd
However, this code doesn't compile with MSVC9.0 for a few reasons:
1. libguile.h comes with its own scmconfig.h which contains HAVE_STDINT_H
whereas MSVC doesn't have that. This is stupid guile which doesn't accept
the fact that the user uses a different compiler than how they compiled guile.
2. Some initializations are not supported: Account.c:3312 etc.
3. The C99 "designated initializers" of e.g. Account.c:4661 ff. (r17724,
bug#539957) are not supported by MSVC9.0 - this is the hardest problem
of these all.
git-svn-id: svn+ssh://svn.gnucash.org/repo/gnucash/trunk@18738 57a11ea4-9604-0410-9ed3-97b8803252fd
Also, add a test executable to check that we got all the
library dependencies.
git-svn-id: svn+ssh://svn.gnucash.org/repo/gnucash/trunk@18737 57a11ea4-9604-0410-9ed3-97b8803252fd
This commit had 2 problems:
1) when entering an account name, the account separator would no longer accept at the current level of the account tree and move to the next level
2) <SHIFT>+ and <SHIFT>- in a date field would not change the field by 1 week.
git-svn-id: svn+ssh://svn.gnucash.org/repo/gnucash/trunk@18732 57a11ea4-9604-0410-9ed3-97b8803252fd
GnuCash no longer uses gnome print. It has been replaced with gtk print.
git-svn-id: svn+ssh://svn.gnucash.org/repo/gnucash/trunk@18729 57a11ea4-9604-0410-9ed3-97b8803252fd
GnuCash doesn't use it.
At the same time, I removed a check that has been commented out
since the beginning of the revision history (somewhere in 2007).
This check tested for the presence of popt.h to then run some
libtool changes. As I said this whole block has been commented
out since the beginning of time, so I considered it to be obsolete,
more even so now that the popt requirement has been removed.
git-svn-id: svn+ssh://svn.gnucash.org/repo/gnucash/trunk@18727 57a11ea4-9604-0410-9ed3-97b8803252fd
- popt has been replaced with the GOption infrastructure.
So there's no need to include the popt.h file.
- Also rewritten the comment that was elaborating on popt
vs GOption
- Finally removed the loglevel option (which was excluded from
the compile anyway) that still referred to popt.
git-svn-id: svn+ssh://svn.gnucash.org/repo/gnucash/trunk@18726 57a11ea4-9604-0410-9ed3-97b8803252fd
Except for the scheme wrappers this seems to work until
at least the engine module. However, I didn't tackle the issue
with the generated headers which contain some installation
paths - but those we should get rid of anyway.
git-svn-id: svn+ssh://svn.gnucash.org/repo/gnucash/trunk@18721 57a11ea4-9604-0410-9ed3-97b8803252fd
From comment 23:
"The PDF in comment 2 is about 8 times smaller than it should be. One possible cause of this bug is if gtk_print_operation_set_unit (op, GTK_UNIT_POINTS) is not called. gtkprint defaults to GTK_UNIT_PIXEL - a useless unit to be using with printers.
On Linux GTK_UNIT_PIXEL units are 1 unit = 1/72 inch (the same as GTK_UNIT_POINTS as well as PostScript and PDF units). On Windows GTK_UNIT_PIXEL units are the GDI device units which for printers is the dpi resolution. So for a 600dpi printer 1 unit is 1/600".
If the application was developed on Linux and assumes the default gtkprint units are always 1/72" inch the output on Windows using a 600dpi printer will be 72/600 = 0.12 of the size (or approximately 1/8 of the size)."
Solution was to use webkit_web_frame_print_full() which allows us to provide our own GtkPrintOperation object with units set to GTK_UNIT_POINTS. Tested on both Linux and Windows.
git-svn-id: svn+ssh://svn.gnucash.org/repo/gnucash/trunk@18720 57a11ea4-9604-0410-9ed3-97b8803252fd
core-utils depends on glib and additionally guile and gconf, but
not (yet) gtk. Those two files which do are moved to the next
module which already depends on gtk, which is gnome-utils.
git-svn-id: svn+ssh://svn.gnucash.org/repo/gnucash/trunk@18719 57a11ea4-9604-0410-9ed3-97b8803252fd
I'm interested in some tests with the cmake build system, but
if it doesn't prove useful I will remove it again within a
few weeks.
git-svn-id: svn+ssh://svn.gnucash.org/repo/gnucash/trunk@18717 57a11ea4-9604-0410-9ed3-97b8803252fd
The main change is that the syntax for variadic macros is
slightly different in MSVC compared to gcc. But they exist, so
offering the log macros in the different syntax is sufficient.
git-svn-id: svn+ssh://svn.gnucash.org/repo/gnucash/trunk@18716 57a11ea4-9604-0410-9ed3-97b8803252fd