(Cherry picked from master)
It's a bit of a hack based on the assumption DESTDIR is never set on Windows.
A install time guard is added to assert this.
It needed a few changes to make this working:
- Have cmake expand DESTDIR instead of delaying this to bash
If not, bash would see "$DESTDIRC:/gcdev64/..." and we'd loose
the drive letter in bash' expansion of $DESTDIRC.
So work with $ENV{DESTDIR} instead
- To prevent cmake from already expanding this in the
build system generation step add the appropriate escapes to
that variable.
- Add guard code in the install command that asserts
DESTDIR is not set on Windows. Use similar escapes as
necessary to ensure the evaluation happens at install time
rather than in the generation step.
It's silly to input start-period > end-period. Nevertheless handle it
by swapping them instead of crashing. i.e. report budget periods from
end to start.
Patch by Mike Pieper. Thanks!
Explanation for why this is necessary: The previous (old) behaviour
changed in 62f7aa66. Before this commit (or when AQBANKING6 is not
set) it calls AB_JobSepaTransfer_new. For AQBANKING6 it calls
AB_Transaction_new. AB_Transaction_new is not using gui. Therefore
gui->state stays on INIT, while before it made several status changes
(=> RUNNING, FINISHED, HIDDEN). On second call to gnc_GWEN_Gui_get it
checks the state and finds it still in INIT which seems to be wrong.
So the right fix is to either use gui in AB_Transaction_new or to
remove first allocation, which is done here.
If you use a filter and then use Ctrl-A to select all rows for deletion
all entries are deleted. This is due to the use of a tree store and the
Ctrl-A selecting the parent rows also.
To fix this a tree view 'select' function is used that does not allow
the parent rows to be selected with a filter.
Caused by a previous commit that did not allow for just pressing the
enter key without changes to move to the next transaction. This was
part of a change to stop being asked to create a new account many times
when the transfer cell had been changed and declining it. To fix this
when gnc_split_reg_record returns false, test for the current cursor
changed flag being not set to proceed to do the move.
With this commit the col headers are now properly formatted. Change
tests because the tag is now th instead of td therefore sxml (looking
for td) can't find them anymore.
* shorten identifier names
* compact functions
* use eq? as appropriate instead of equal? when comparing symbols
* omit splitting up and recombining accounts
* minimise use of set! and define vars in let* formals
* instead of (if pred? (begin ...)) use (when pred? ...)
* use efficient gnc:accounts-and-all-descendants