- all files maintained in qb64pe/settings now and addressed using file name variables instead of hardcoded names
- maintain recent/search histories according to the limits set in Options>Undo/History... dialog (saved in config.ini)
- update recent files in the File Menu only when needed (i.e. right before the menu is displayed) rather than on every change to the history
- IDEsettings.bas cannot longer used, it's split into the usual global/methods pair and saved in source/ide/config
- new $INCLUDE lines in qb64pe.bas
- moved wiki methods $INCLUDE to a more appropriate place in ide_methods.bas
- the old Backup/Undo limit dialog was replaced by the new Undo/History limits dialog, which also allows to set the limits for Recent files and Search history
- fixed spacing calculation for action buttons (wrong string tested, dates back to SDL age, unbelievable nobody before recognized the spacing was wrong)
- in messagebox raise max. lines (needed later)
- also move bound check before index increment, formerly the index was incremented once more which lead to a subscript out of range later in the function
- using the new _READFILE$ and _WRITEFILE commands where applicable
- moved error handler changes inside CopyFile&() so we don't need to remember to do this before calling the function
- fixed file tests complaining about missing error handlers
- moved converter function from file.bas to qb64pe.bas, as it's rather compiler related than a common file function
- also fixed several "change state" related bugs (i.e. switching certain settings in the Options Menu will no longer mark the current code as "changed")
This commit reverts 38e0ec379f81ba1e and 55c36576 which attempted
to fix the capitalisation of array names used with L/UBOUND, and
introduced the code-eating bug. It is replaced with an alternative
solution to the capitalisation issue.